Documente noi - cercetari, esee, comentariu, compunere, document
Documente categorii

Structura hardware a unui sistem de calcul

STRUCTURA HARDWARE A UNUI SISTEM DE CALCUL


1. Dispozitive de intrare/iesire.

Tastatura este dispozitivul care permite introducerea de informatii sub forma de caractere, similar cu masina de scris. Prin succesiunea/ combinatia de caractere introduse se pot furniza sistemului de calcul atat date cat si comenzi sau programe. Pe langa tastele care reprezinta cifre si litere, tastatura contine si o serie de taste 'functionale', carora le sunt atasate diferite functii (prelucrari). Aceste functii sunt specifice sistemelor de operare in care este utilizata tastatura.

Mouse-ul este un dispozitiv folosit de regula in mediile puternic interactive, bazate pe interfete grafice sau semigrafice. Principiul de functionare se bazeaza pe transformarea deplasarilor dispozitivului pe o suprafata plana in coordonate ale punctelor de pe ecranul calculatorului. Dispozitivul contine o bila aderenta care antreneaza doua rotite corespunzatoare deplasarilor sus - jos si stanga - dreapta, deplasarile fiind in legatura cu miscarea in plan a dispozitivului de catre utilizator. Dispozitivul mai contine doua - trei butoane prin a caror apasare se trimit semnale ce se adauga semnalului obtinut prin pozitionare.



Din aceasta categorie face parte si joystick-ul, care transforma miscarile stanga-dreapta si fata-spate ale unei manete in deplasari ale cursorului pe ecran.Tot din aceasta categorie fac parte si alte dispozitive dedicate, complexe, care intra mai mult in categoria simulatoarelor decat in cea a dispozitivelor standard de intrare.

Ecranul (tubul catodic) are ca principiu de functionare fluorescenta substantei de pe suprafata ecranului la bombardarea cu un fascicol de electroni directionat intr-un camp magnetic, principiu folosit si la fomarea imaginii la televizor. Imaginea formata pe ecranul video are o remanenta scazuta si din aceasta cauza ea trebuie reinprospatata. Pentru aceasta se ataseaza terminalului video o memorie, in care se stocheaza informatia ce trebuie afisata pe ecran. Memoria este explorata si reafisata cu o anumita frecventa, astfel incat imaginea formata pe ecran sa dea impresia de stabilitate.

Printre numeroasele caracteristici ale unui terminal video se numara finetea imaginii. Aceasta este data de numarul de spoturi (pixeli) afisate pe unitatea de suprafata.

Numarul de pixeli pe verticala si pe orizontala determina clasificarea terminalelor in diferite categorii (standarde). Pixelului ii sunt atasate informatii de pozitie si informatii de culoare.

Imprimanta. Este un echipament de iesire care transfera informtiile pe suport de hartie. In functie de tehnologia de tiparire imprimantele pot fi:

  • cu tambur (banda) de caractere.
  • matriciale.
  • cu jet de cerneala.
  • laser.

In functie de dimensiunea colii de hartie cele mai raspandite sunt:

  • imprimante ce utilizeaza hartie format A3
  • imprimante ce utilizeaza hartie format A4

In functie de cromartica afisarii distingem:

  • imprimante color
  • imprimante monocrome

In functie de posibilitatile de afisare imprimantele pot fi:

  • grafice
  • alfanumerice

Cei mai importanti parametrii sunt viteza de imprimare masurata in caractere/sec. , linii/min. sau pagini/min., si calitatea imprimarii.

Memoria.

Intr-un sistem de calcul, memoria reprezinta componenta functionala destinata pastrarii informatiei. Informatia memorata este formata din programele si datele necesare utilizatorului sistemului de calcul. Memoria se interpune intre celelalte componente functionale ale sistemului de calcul. Astfel, informatiile preluate in calculator prin intermediul unitatilor de intrare sunt stocate mai intai in memorie, de unde sunt preluate de celelalte unitati functionale ale sistemului de calcul (procesorul, unitatile de iesire). Informatia memorata se compune din:

  • secvente de instructiuni (programe);
  • datele preluate din mediul exterior sistemului de calcul;
  • rezultate intermediare obtinute in timpul prelucrarii datelor;
  • informatii rezultate in urma executiei programelor care, de regula, vor fi transmise mediului exterior prin dispozitivele de iesire.

Din punct de vedere al memoriei nu este deosebit de importanta natura informatiei memorate, ci modul de stocare, si mai ales regasirea acesteia. Fizic, memoria este constituita din elemente care pot avea doua stari stabile: 0 sau 1. Rezulta ca putem defini memoria ca pe o succesiune de dispozitive logice elementare, capabile sa retina fiecare o valoare binara, adica un BIT (1b) de informatie.

Functional, memoria poate fi privita ca o insiruire de biti care se caracterizeaza prin valoare si prin pozitia (adresa) lor in aceasta secventa. Prin constructia sistemului de calcul, accesul la informatia din memorie se poate realiza, la nivelul unui grup de biti numit locatie de memorie. Locatia de memorie este deci unitatea adresabila a memoriei. Fiecare locatie de memorie se caracterizeaza in mod unic prin:

  • adresa ei in memorie;
  • cantitatea de informatie pe care o poate memora, masurata in numar de biti; de regula este vorba de un numar de 8 biti, adica de un octet sau de 1 Byte (1B).

Caracteristici ale memoriei.

  1. Cuvantul de memorie reprezinta numarul de octeti de informatie care pot fi cititi sau scrisi intr-o singura operatie de transfer cu memoria. Transferul cu memoria este operatia prin care, de la o adresa de memorie sunt tranferati un numar de biti corespunzator citirii sau scrierii in memorie. Unitatea de transfer cu memoria este cuvantul de memorie.
  2. Lungimea cuvantului de memorie este o caracteristica constructiva a unui sistem de calcul. Ea reprezinta unul dintre criteriile de grupare a calculatoarelor: 8b, 16b, 32b, 64b etc.
  3. Capacitatea memoriei reprezinta numarul maxim de biti de informatie care pot fi memorati la un moment dat. Altfel spus, capacitatea de memorie este data de numarul total de locatii de memorie. Ca unitate de masura se folosesc multiplii Byte-ului, in functie de ordinul de marime al memoriei. informatie care caracterizeaza diferitele generatii de calculatoare.
  4. Timpul de acces la memorie. Orice acces la memorie este precedat de furnizarea de catre procesor a adresei de memorie, unde se va face operatia de scriere sau citire. Timpul de acces la memorie reprezinta intervalul scurs intre momentul furnizarii adresei de catre procesor si momentul obtinerii informatiei. Cand memoria este prea lenta in comparatie cu viteza de lucru a procesorului, pe durata accesului la o locatie de memorie apar, pentru procesor, timpi suplimentari de asteptare. Noile tehnologii de realizare a memoriei urmaresc o scadere a timpului de acces, astfel incat memoria sa lucreze sincron cu procesorul, fara a introduce stari de asteptare.
  5. Ciclul de memorie este timpul minim necesar intre doua accesari succesive la memorie. Aceasta cuprinde timpul rezervat accesului propriu-zis, dar si timpii 'de regie' ai unitatii de memorie, necesari pentru desavarsirea acestuia.
  6. Viteza de transfer se mai numeste si rata de transfer. Rata de transfer este similara unui debit, care reprezinta viteza cu care se furnizeaza o informatie. Viteza de transfer reprezinta numarul de unitati de informatie transferate in unitatea de timp. Se masoara in octeti sau multipli de octeti pe secunda. Viteza de transfer poate fi imbunatatita daca accesarea unei adrese de memorie este urmata nu de citirea unui singur cuvant de memorie, ci de citirea mai multor cuvinte succesive.
  7. Costul este pretul memoriei raportat la capacitatea de memorare.

Clasificari ale memoriei.

Modul de realizare a accesului la o locatie de memorie depinde de operatiile ce se executa pentru obtinerea informatiilor de la adresa data, de sensul transferului si de parametrii fizici ai memoriei. In functie de aceste elemente memoriile pot fi clasificate:


a) Dupa tipul de acces, memoriile pot fi:

    • cu acces direct (aleator): RAM (Random Access Memory). In acest caz, timpul de acces la orice locatie de memorie este acelasi. El nu depinde de adresa locatiei de memorie, ci numai de caracteristicile constructive ale memoriei. Timpul de acces este comparabil cu viteza de lucru a procesorului.
    • cu acces pozitional, in care sunt necesare operatii de pozitionare care preced accesul la memorie. In acest caz timpul de acces depinde de adresa

b) Dupa posibilitatea conservarii informatiei la intreruperea tensiunii de alimentare, memoriile pot fi:

    • volatile, la care informatia se pierde la intreruperea tensiunii de alimentare (exemplu memoria cu semiconductori);
    • nevolatile, la care informatia se conserva la intreruperea tensiunii de alimentare (exemplu memoria cu ferite);

c) Dupa tehnologia de realizare memoriile pot fi:

    • memorii cu ferite. Informatia este memorata pe baza sensului campului magnetic produs in jurul unor inele (tor) de ferita. Acest tip de memorie nu este volatila, dar are dezavantajul ca citirea este distructiva. In consecinta, ciclul de memorie cuprinde citirea si rescrierea, in cazul operatiei de citire, sau stergerea si scrierea in memorie, in cazul operatiilor de memorare. Aceste tipuri de memorie pot functiona numai in anumite limite de temperatura, au o dimensiune semnificativa si reprezinta o tehnologie depasita.
    • memorii cu semiconductori. Informatia este memorata folosind circuite care permit sau nu trecerea curentului electric. Aceste memorii sunt volatile si pentru a nu se pierde informatia au nevoie de o baterie de alimentare proprie, sau trebuie sa existe, la nivelul intregului sistem de calcul, un program de intrerupere la avaria de alimentare, care face apel la o baterie suplimentara (sursa de putere neintreruptibila - UPS) pentru salvarea datelor pe un suport de memorie nevolatila. Aceste memorii nu au citirea distructiva.

d) Dupa operatiile care pot fi executate, acestea pot fi:

    • memorii cu citire-scriere (read-write). Care permit atat scrierea cat si citirea informatiilor din memorie. Memoria RAM este o memorie de tipul citire-scriere (read-write);
    • memorii permanente, numite ROM (Read Only Memory). Sunt memorii care, in principiu, permit doar operatiile de citire a informatiilor memorate. Sunt memorii nevolatile, iar informatia memorata este scrisa o singura data si nu poate fi suprascrisa prin metode obisnuite. Sunt folosite pentru memorarea sigura si ieftina a unor secvente de program frecvent utilizate in sistemele de calcul. Aceste memorii sunt in general mai lente decat memoria RAM. In consecinta, se utilizeaza transferul programelor din memoria ROM in memoria RAM pentru a fi executate acolo cu performante sporite. Aceste memorii ROM sunt de mai multe tipuri:

o       memorii PROM , sunt memorii programabile de catre utilizator, care nu contin informatii scrise din fabricatie;

o       memorii EPROM, sunt programabile de catre utilizator, dar care pot fi sterse si reinscrise cu alte informatii.

Ierarhizarea memoriilor. Pornind de la functiile realizate de fiecare tip de memorie, de la rolul si locul ocupat in sistemul de calcul putem distinge mai multe categorii de memorii ilustrate in figura 1.

Registrele de memorie reprezinta dispozitivele de memorie cele mai rapide, dar si cele mai scumpe. Sunt utilizate de procesor avand o destinatie precisa, adica memoreaza numai anumite tipuri de informatie. Din acest motiv, pentru ca procesorul sa realizeze o anumita operatie, este accesat un anumit registru, si anume acela care memoreaza tipul de informatie dorit. In acest fel nu este necesar ca registrul sa fie accesat prin adresa, fapt care mareste viteza de acces la informatia memorata in registre.


Figura 1. Ierarhizarea memoriei.

Pot exista insa si registre nespecializate, numite registre generale, care pot fi utilizate explicit prin instructiuni-program.

Capacitatea registrului depinde de tipul procesorului, si nu depaseste de obicei lungimea cuvantului de memorie. Numarul de registre de memorie este mic, utilizandu-se de regula 16-20 registre.

Memoria interna contine programele si datele pentru toate procesele in curs de executie in sistemul de calcul. Cat timp functioneaza procesorul, el citeste si scrie date in aceasta memorie. Memoria interna este o memorie read-write cu acces direct (RAM). Ea trebuie sa aiba un timp de acces redus, pentru a nu intarzia activitatea procesorului. Tipuri de memorie din aceasta categorie sunt:

  • Memorii DRAM (Dynamic Random Access Memory), sunt memorii RAM dinamice. Sunt memorii in care, pentru a se pastra informatia, periodic trebuie restabilita sarcina electrica cu care a fost incarcat condensatorul circuitului de memorie. Pentru aceasta este necesar un circuit de reimprospatarea memoriei.
  • Memorii SRAM (S=static), sunt memorii RAM statice. Sunt memorii realizate din circuite bistabile de memorie, care pastraza informatia atata timp cat sistemul este sub tensiune.

La calculatoarele PC, cipurile de memorie sunt ansamblate pe placi de memorie numite SIMM (Single Inline Memory Modul) sau DIMM (Dual Inline Memory Modul). Aceste bancuri de memorie se instaleaza in placa de baza a PC-ului, in soclurile (locurile) rezervate memoriei interne. Acest mecanism permite modificarea dimensiunii memoriei interne a PC-ului prin adaugarea de noi bancuri de memorie in locurile disponibile sau prin schimbarea bancurilor cu altele de capacitate mai mare.

Memoria cache este o memorie specializata, utilizata in scopul scaderii timpului de acces la informatiile din memoria interna. Ea este o memorie de capacitate mica si viteza mare, inserata logic intre procesor si memoria principala. Constructiv, memoria cache este o memorie mai rapida decat memoria principala, facuta de regula din circuite SRAM. Si acest tip de memorie poate fi estins prin adaugarea de cipuri suplimentare de memorie. Utilizarea memoriei cache se bazeaza pe doua caracteristici ale executiei programelor in sistemele de calcul clasice, si anume:

  1. Programele tind sa utilizeze date si instructiuni situate unele langa altele sau in zone apropiate (principiul vecinatatii).
  2. Programele folosesc in mod repetat adresarea la aceleasi blocuri de memorie.

Plecand de la aceste constatari, memoria cache contine la un moment dat copii ale unor informatii din memoria principala. Inainte de orice acces la memoria principala se verifica daca nu cumva informatia cautata se gaseste in memoria cache. Daca exista, se preia de acolo cu o viteza superioara.

Memoria expandata este o memorie suplimentara la calculatoarele de tipul PC, pe care utilizatorul o acceseaza prin intermediul mecanismului EMS (Extended Memory Specification). Este alcatuita din bancuri de memorie de 64 KB RAM si este gestionata de un program sistem specializat, numit EMM386.EXE (in sistemul de operare MS-DOS).

Memoria extinsa este memoria suplimentara accesibila utilizatorului prin mecanismul XMS (eXtended Memory Specification), care poate fi implementat pe procesoare care lucreaza cu cuvinte de adresa de 32 biti. Programele trebuie scrise ca utilizand special aceste mecanisme. Programul sistem care gestioneaza acest tip de memorie in sistemul de operare MS-DOS este HIMEM.SYS.

Memoria externa. Pentru a utiliza informatiile memorate in memoria externa ele trebuie aduse intai in memoria principala. Prin comparatie cu memoria interna, memoria externa se caracterizeaza prin viteza de acces mai scazuta, cost mai redus, capacitate mai mare, si are rolul de a mari spatiul de memorare al unui sistem de calcul. Memoria secundara este organizata pe un suport extern de memorie, de regula disc magnetic, si are rolul de a realiza o extindere a memoriei principale, conform conceptului de memorie virtuala. Conceptul de memorie virtuala se refera la capacitatea procesorului de a utiliza un spatiu de memorie externa pentru a simula o capacitate mai mare a memoriei interne disponibile. Altfel spus, este vorba de capacitatea procesorului de a accesa un spatiu de adrese care depaseste spatiul de adrese al memoriei principale. Acest concept a aparut inca din anul 1960, iar la PC este disponibil incepand cu seria 286.

Memoria externa este o memorie de arhivare, ceea ce inseamna ca asigura stocarea datelor preluate din mediul extern pe o perioada de timp nedeterminata si in volume semnificative. Se poate spune ca memoria de arhivare este cea care asigura forma de stocare suplimentara a datelor din sistemul de calcul. Tot in memoria externa sunt stocate si programele cu ajutorul carora se realizeaza prelucrarea datelor. In comparatie cu memoria interna, memoria externa este:

  • nevolatila.
  • cu acces pozitional.
  • cu timp de acces mai mare.
  • cu viteza de treansfer mai mica.
  • cu cost mai mic.
  • cu capacitate mult mai mare.
  • este o memorie read-write.
  • are densitate de memorare variabila de la un echipament la altul si de la un suport la altul.

Accesul la memoria externa nu se face direct, ci prin intermediul memoriei interne.



Se folosesc in prezent doua tehnologii de realizare a mediului de memorare pentru memorii interne:

  • tehnologia magnetica.
  • tehnologia optica.

Suportii de memorare utilizati sunt:

  • discul/banda magnetica.
  • discul optic.

Tehnica de memorare bazata pe proprietati magnetice este asemanatoare tehnicii de realizare a inregistrarilor de sunet de pe banda magnetica. Spre deosebire de sunet, care este un semnal analogic, informatia memorata in calculator este digitala (formata din siruri de biti 0 sau 1).

Materialul magnetic se depune pe suprafata suportului fizic de memorare sub forma unor matrici de puncte care pot fi sau nu magnetizate. Fiecare bit de informatie reprezinta starea magnetizat/nemagnetizat a punctului respectiv Pentru a inregistra informatia, se utilizeaza un dispozitiv numit cap de citire-scriere, prin care circula un curent electric. Variatia curentului electric in capul de citire-scriere genereaza un camp electromagnetic ce magnetizeaza stratul magnetic depus pe suportul de informatii. La citire are loc procesul invers. Campul magnetic al punctelor din stratul magnetic induce in capul de citire-scriere un curent electric variabil. Acest curent furnizeaza informatia memorata in stratul magnetic.

In cazul memoriilor optice, materialul care acopera suportul fizic este ars cu un fascicol laser puternic atunci cand se scriu informatiile pe suport. Citirea informatiilor se bazeaza pe reflexia unei raze laser, reflexie care este difuza in zonele arse si puternica in zonele nearse. Observam ca la acest tip de echipamente scrierea informatiilor se face cu un dispozitiv, iar citirea cu alt dispozitiv.

Banda magnetica este mediul traditional de arhivare. Are capacitati intre 20-40 GB. Dispozitivele curente, cu preturi mai accesibile, sunt de 3-10 GB. Pentru calculatoarele PC, acest echipament este cunoscut sub numele de "streamer". La acest dispozitiv este folosita banda magnetica incasetata.

Trebuie facuta deosebirea dintre banda magnetica, dispozitiv (derulator sau echipament) si banda magnetica, suport de informatie (panglica acoperita cu strat magnetic). Mecanismul (derulorul) cuprinde:

  • dispozitivul de antrenare, care realizeaza pozitionarea benzii in actiunile de localizare, accelerare /franare, rebobinare si deplasare cu viteza constanta
  • circuitele de comanda
  • dispozitivul pentru realizarea schimbului de informatie.

Aceste dispozitive sunt: cap de scriere, cap de citire si cap de stergere.

Din punct de vedere al organizarii fizice a informatiei banda magnetica este impartita transversal intr-un numar de noua piste sau canale. Fiecare caracter este inregistrat transversal pe banda, cate un bit pe fiecare din primele 8 piste, a noua pista fiind folosita pentru a inregistra informatia redundanta aferenta bitului de paritate. Informatia se inregistreaza pe banda, in grupe contigui de caractere numite blocuri fizice. Blocurile fizice constituie unitatea adresabila pe banda magnetica. Accesul la o anumita adresa de pe banda este precedat de pozitionarea la inceputul blocului cu adresa solicitata. Blocurile fizice sunt separate intre ele prin zone neinregistrate, de lungime fixa, numite GAP-uri. Un GAP este folosit ca spatiu de franare sau accelerare pentru mecanismul de antrenare la pozitionarea pe un anumit bloc. Pentru optimizarea utilizarii benzii magnetice trebuie ca raportul dintre spatiul ocupat de blocurile fizice si spatiul total de pe banda sa fie cat mai mare (lungimea GAP-urilor sa fie minima).

Principala caracteristica functionala a benzii magnetice o reprezinta densitatea de inregistrare, adica numarul de octeti memorati pe unitatea de masura a lungimii benzii. Densitatea de inregistrare se masoara in octeti pe inch, unitatea de masura avand simbolul BPI (byte per inch).

Blocul fizic este unitatea de transfer a informatiei cu memoria interna. Blocurile contin informatie redundanta pentru realizarea controlului de paritate prin sistemul paritate incrucisata. Acest mecanism de control permite verificarea corectitudinii transferului intre dispozitivele periferice si memoria principala. Bitii cititi intra intr-un algoritm de calcul al paritatii, iar rezultatul acestui algoritm este comparat cu informatia de paritate citita de pe suport. In caz de coincidenta inseamna ca operatia s-a defasurat corect, iar in caz de diferenta, operatia se reia.

Accesul la informatia de pe banda magnetica este de tipul pozitional, avand in plus restrictia de secventialitate. Pentru accesul la blocul 'n' de pe banda este necesara parcurgerea celor 'n-1' blocuri care il preced. Din acest motiv, timpul de acces la o anumita informatie nu este constant, ci depinde de distanta dintre pozitia curenta de pe banda (blocul curent) si pozitia pe banda a informatiei dorite. Parcurgerea benzii magnetice pentru localizare pe un bloc se face intotdeauna intr-un singur sens: de la primul la ultimul bloc. Principalul inconvenient pentru utilizarea benzii magnetice este timpul de acces mai mare utilizat, datorita accesului secvential la informatie.

Discul magnetic. Discurile magnetice sunt formate din una sau mai multe placi circulare, care constituie suportul pentru substanta magnetica ce memoreaza informatia. Aceste placi circulare formeaza volumul de disc. In functie de gradul de mobilitate, discurile pot fi:

  • fixe (amovibile).
  • mobile (movibile).

Pentru a fi utilizat, un volum de disc, se monteaza pe o unitate de disc care cuprinde:

  • mecanismul de antrenare a discului, care asigura rotirea continua a discului cu o viteza constanta;
  • mecanismul de sustinere si manevrare a capetelor de citire-scriere;
  • mecanismul de acces la informatie, care este constituit din capetele de citire-scriere;
  • mecanismul de control al unitatii.

Pe un volum de disc, informatia se memoreaza pe fetele active, adica pe acele fete ale placilor circulare care sunt acoperite cu substanta magnetica de memorare. Un volum de disc format dintr-o singura placa circulara are doua fete active, iar la volumele cu mai multe placi se scad cele doua fete exterioare. Numarul fetelor active este o constanta constructiva a pachetului de discuri. Suprafata fiecarei fete active este divizata in coroane circulare, concentrice, numite piste. Acestea reprezinta suprafetele pe care se realizeaza efectiv memorarea informatiei. Pentru accesul la informatia memorata este necesar sa existe posibilitatea de pozitionare a capetelor de citire-scriere pe fiecare pista. Numarul de piste este dat de numarul de pozitionari distincte care pot fi realizate de catre un cap de citire-scriere de-a lungul razei placii circulare. Volumele cu mai multe placi circulare au acelasi numar de piste pe fiecare fata activa. Informatia se memoreaza in lungul unei piste a discului, existand o pozitie initiala marcata fizic. Pe fiecare pista este memorat acelasi numar de caractere, indiferent de lungimea pistei. In cazul discurilor cu mai multe placi circulare, pentru a usura identificarea unei piste, se introduce notiunea de cilindru. Un cilindru este format din toate pistele care au aceeasi raza de pe toate fetele active ale discului. Cilindrii se numeroteaza incepand de la exterior spre interior. Numarul de piste reprezinta a doua constanta constructiva a discului. Fiecare pista este impartita in mai multe sectoare. Sectorul reprezinta unitatea adresabila a discului. Toate pistele unui cilindru contin acelasi numar de sectoare. Pozitionarea la inceputul sectorului se face prin rotirea volumului de disc prin fata capetelor de citire-scriere. Sectorul este unitatea de schimb de informnatie cu memoria interna. Pe parcursul schimbului de informatie, discul se roteste cu aceeasi viteza prin fata capetelor de citire-scriere. Numarul de octeti care se pot memora intr-un sector al discului este fix, indiferent de pozitia sectorului pe disc. Capacitatea unui disc se obtine prin produsul dintre numarul de octeti din sector, numarul de sectoare, numarul de piste si numarul de fete active. Informatia este organizata pe disc pe trei nivele de acces:

  • cilindrul.
  • pista dn cilindru.
  • sectorul de pe pista.

Mecanismul de acces la informatie este realizat de capetele de citire-scriere. Accesul la informatia memorata pe discurile magnetice se face prin pozitionarea capetelor de citire scriere in dreptul sectorului dorit de pe pista si cilindrul cerut, concomitent cu miscarea de rotire a volumului de disc.

Memorii externe pe suport optic. Unitatile de discuri compacte (CD-urile) functioneaza pe baza fenomenelor electro-optice, folosind o tehnologie laser. In general, suportul de inregistrare este nereutilizabil scrierea fiind o operatie ireversibila. Din aceasta cauza, unitatile se mai numesc CD-ROM-uri. Exista insa si alte tipuri, si anume:

  • CD-WORM (Write One, Read Many)
  • CD-R (Recordable), unde informatia poate fi si scrisa.

CD-ROM-urile se realizeaza de catre producatori, informatia fiind inregistrata pe o pista unica, in spirala. Citirea se face secvential. Sunt utilizate pentru distributia de software. Se realizeaza un etalon, care este utilizat la producerea matritei cu care sunt create apoi copiile pentru distributie. Aceste CD-uri au un cost foarte scazut, reducand costul de distributie a software-ului. Capacitatea uzuala a unui CD este de 650 MB.

CD-WORM - sunt folosite pentru arhivare, scrierea facandu-se o singura data. Toate datele care se memoreaza trebuie sa fie disponibile in memoria interna in momentul scrierii.

CD-R - este folosit pentru arhivare, putandu-se scrie in continuare.

Capacitatea de stocare a CD-urilor este mare, datorita densitatii ridicate, ajungandu-se pana la 16.000 TPI (piste pe inch). Informatia pe suport este mult mai stabila, garantata cca. 10 ani. Suprafata fiind protejata de un strat transparent de material plastic, suportul nu este afectat astfel de umiditate, temperatura sau campuri magnetice. Intre capul de citire si suprafata discului este o distanta de cativa milimetri, aproximativ de 000 de ori mai mare decat la hard-discuri, de unde rezulta o protectie mai buna a capului de citire-scriere. CD-urile sunt mult mai fiabile. O mare parte din spatiul CD-ului este rezervata memorarii informatiilor suplimentare pentru corectarea si detectarea erorilor. In cosecinta rezulta o serie de dezavantaje pentru CD-uri:

  • timp de acces mai mare decat la hard-discuri;
  • o rata de transfer a informatiei mai mica decat la hard-discuri.

Cuprins capitol3. Unitatea centrala.

Setul de instructiuni Activitatea generala a unui sistem de calcul consta in stocarea si prelucrarea informatiilor. Intregul proces de tratare a informatiei in cadrul unui sistem de calcul are loc conform unui algoritm de prelucrare. Acest algoritm poate fi modelat prin seturi de instructiuni specifice unui limbaj de programare. Instructiunile alcatuiesc un program. Indiferent de limbajul de programare utilizat, instructiunile unui program trebuie aduse, printr-un set de transformari succesive, pana la nivelul unui set de comenzi elementare care pot fi executate de sistemul de calcul si care formeaza setul de instructiuni al calculatorului. Aceste instructiuni apartin unui limbaj intern, propriu fiecarui sistem de calcul. Limbajul se numeste limbaj-masina. Limbajul-masina cuprinde un set restrans de instructiuni elementare de forma unor coduri binare de lungime data.

Componenta sistemului de calcul care realizeaza executarea instructiunilor este unitatea centrala de prelucrare. (UCP). Pentru aceasta, unitatea centrala de prelucrare trebuie sa poata efectua urmatoarele functii:

  • citirea si scrierea informatiilor in memoria interna (MI);
  • recunoasterea si executarea instructiunilor-masina;
  • transmiterea de comenzi celorlalte componente ale sistemului de calcul, realizand astfel coordonarea functionarii sistemului de calcul.

Formatul instructiunilor specifica numarul de cuvinte de memorie utilizate pentru codificarea fiecarui tip de instructiune si semnificatia campurilor care formeaza instructiunea.

Formatul folosit se stabileste in faza de proiectare a masinii, atunci cand se proiecteaza setul de instructiuni-masina. In general o instructiune-masina trebuie sa cuprinda doua campuri:

  • codul operatiei, adica operatia ce trebuie efectuata (operatie aritmetica, logica);
  • zona de adrese, care trebuie sa cuprinda la randul ei un numar de adrese pentru operanzi, o adresa pentru rezultat si adresa instructiunii care urmeaza.

Pentru reducerea lungimii instructiunilor-masina s-au stabilit conventii de reprezentare a unei instructiuni.

  1. Instructiunea poate opera cu cel mult doi operanzi.
  2. Adresa urmatoarei instructiuni ce trebuie executata se citeste intotdeauna dintr-un registru specializat, numit registru-contor de adrese. La executarea fiecarei instructiuni, acest registru este marit (incrementat) cu lungimea instructiunii pe care a executat-o.
  3. Intr-un program incarcat in memorie, pentru a fi executat, instructiunile succesive se afla la adrese consecutive de memorie.
  4. Pentru realizarea unei ramificari in executia unui program se folosesc instructiuni speciale de salt, care modifica valoarea memorata in registrul contor de adresa, incarcand in acesta valoarea adresei noii instructiuni la care se va face saltul.
  5. Adresa de destinatie a unei operatii este identica cu una din adresele-sursa, caz in care acest operand-sursa este distrus in urma executarii instructiunii.
  6. Cel putin una dintre adresele celor doi operanzi trebuie sa fie adresa unuia dintre registrii unitatii centrale de prelucrare.Un calculator care respecta aceasta regula se numeste calculator cu o singura adresa.

Timpul de executie a unei instructiuni-masina este mult mai mic decat timpul de citire a instructiunii din memorie.

O conditie de baza pentru proiectarea unui sistem de calcul este cresterea vitezei de calcul prin:

  • reducerea timpului de prelucrare, care reprezinta numarul de instructiuni-masina executate de procesor intr-o secunda;
  • cresterea frecventei de ceas a procesorului.

In functie de lungimea cuvantului de memorie, instructiunile se pot codifica pe unul sau mai multe cuvinte de memorie. Pentru lungimi mari ale cuvantului de memorie se pot codifica chiar mai multe instructiuni pentru un cuvant de memorie.

Lungimea campului cod operatie se determina in functie de numarul total de instructiuni distincte din setul de instructiuni.

Lungimea campului de adresa este determinata de spatiul de memorie al calculatorului. de modul de adresare al memoriei. si de lungimea cuvantului de memorie adresat.

Modul de adresare reprezinta algoritmul de calcul al adresei operanzilor. Din acest punct de vedere avem:

  • unitati centrale de prelucrare cu doua adrese, adica cu doi operanzi;
  • instructiuni imediate, care nu contin adresa operandului, ci valoarea lui;
  • instructiuni cu un operand memorat in unul din registrii unitatii centrale de prelucrare;
  • instructiuni cu operandul memorat in memoria interna a sistemului de calcul;
  • instructiuni cu operandul memorat intr-un buffer (zona-tampon) al unui dispozitiv de intrare-iesire, in cazul instructiunilor care executa operatii de intrare-iesire.

Executarea unei instructiuni. Sub controlul unui program si cu datele memorate in memoria interna, unitatea centrala de prelucrare executa fiecare instructiune in doua etape, ca o secventa de pasi sincronizati in timp.


Figura  Executia unei instructiuni masina.



In figura 2 avem:

  1. instructiunea se incarca de UCC
  2. decodificare instructiune si emitere ordin catre UAL
  3. citire date
  4. prelucrare
  5. rezultate
  • Citirea instructiunii si pregatirea operanzilor care reprezinta interpretarea de fapt a instructiunii. In aceasta etapa se transfera adresa instructiunii de executat din registrul contor-program in registrul de adresa al memoriei; de aici se transfera in registrul de instructiuni instructiunea citita din memoria interna. Pentru instructiunile mai lungi secventa se repeta. Se modifica valoarea memorata in contorul de adrese pentru a puncta urmatoarea instructiune.
  • Executarea instructiunii presupune executarea unui set de comenzi succesive corespunzatoare codului operatiei descrise in instructiunea ce se executa.
  • O comanda se concretizeaza intr-un cuvant de comanda care determina o actiune a unitatii aritmetice logice, a memoriei sau a dispozitivelor de intrare-iesire. Aceste comenzi succesive se mai numesc si micro-operatii.
  • O micro-operatie se desfasoara pe parcursul unui ciclu-masina.
  • Ciclul-masina reprezinta timpul total necesar executarii comenzii, masurat in impulsuri de tact.
  • Cu cat o instructiune se compune din mai multe micro-operatii, cu atat durata ei de executie creste.
  • Timpul total pentru executia instructiunii se numeste ciclu-instructiune si se masoara tot in impulsuri de tact.

Pentru a reduce timpul de executie al unei instructiuni se poate recurge la executarea concurenta a mai multor micro-operatii. Ciclul-instructiune al unui sistem de calcul este cu atat mai bun cu cat frecventa impulsurilor de tact este mai mare, cu cat micro-operatiile sunt mai complexe sau cand micro-operatiile se pot executa concurent.

Structura unei instructiuni-masina. Codul operatiei reprezinta ceea ce trebuie sa faca instructiunea respectiva, si acest cod trebuie sa se regaseasca in setul de coduri admise de unitatea centrala de prelucrare. Zona operanzilor difera de la o instructiune la alta, dar in principal cuprinde urmatoarele elemente:

  • modul de adresare.
  • adrese operanzi.

Modul de adresare al unui operand defineste algoritmul de localizare in memorie a operandului.Exista mai multe moduri de adresare:

  • adresare imediata.
  • adresare prin registri.
  • adresare prin locatii de memorie.

Adresarea este imediata atunci cand in instructiune se specifica valoarea operandului si nu adresa lui.

Adresarea prin registri este atunci cand in zona de adresa se specifica un registru de memorie. In acest caz este necesar ca, in prealabil, registrul respectiv sa fie incarcat cu valoarea dorita. Acest mod de adresare are avantajul unui numar redus de biti (lungime redusa a instructiunii), intrucat sunt putini registri in care se pot gasi operanzi.Accesul la registri este mult mai rapid decat accesul la memorie. Respecta conditia ca un operand sa fie preluat din registru in cazul sistemului de calcul cu o singura adresa. Ca dezavantaj, are loc un schimb permanent de date intre memorie si registri, orice operatie intre cei doi operanzi din memorie executandu-se prin cel putin doua instructiuni-masina: una de transfer memorie-registu si alta de operatie efectiva.

Adresarea prin locatii de memorie este atunci cand informatia folosita pentru calculul adresei operandului se preia din memorie. Acest mod de adresare necesita un algoritm de calcul pentru localizarea operandului. Din punct de vedere al algoritmului de calcul avem:

  • adresare directa.
  • adresare indirecta.
  • adresare indexata.

Adresarea directa - informatia din instructiune reprezinta chiar locatia unde se memoreaza operandul.

Adresarea indirecta - informatia din instructiune reprezinta adresa adresei operandului. Aceasta modalitate necesita un ciclu suplimentar de calcul a adresei.

Adresarea indexata - valoarea din instructiune se aduna algebric cu valoarea unui registru pentru a determina adresa operandului.

Tipuri de instructiuni-masina. Dupa operatia pe care o genereaza, avem:

  • instructiuni de transfer de date intre memorie, registri sau stiva.
  • instructiuni aritmetice. Orice procesor executa:
    • operatii elementare cu numere intregi sau cu numere reale, ori operatii complexe, implementate hardware sau software;
    • operatii logice si de deplasare, care lucreaza la nivel de bit, folosite pentru determinarea bitilor de control din cuvintele de stare sau pentru realizarea rapida a unor operatii aritmetice (impartirea la 2, inmultirea cu 2).
  • instructiuni de compatatie si de salt. Aceste instructiuni genereaza continuarea executiei programului de la o alta adresa decat cea imediat urmatoare.
  • instructiuni de repetare, folosite pentru executia repetata a unei secvente de instructiuni, folosind o variabila-contor. Aceasta variabila memoreaza numarul de cicluri care trebuiesc efectuate.
  • instructiuni de apel procedura, in care, pentru executarea unei proceduri se memoreaza pe stiva adresa de revenire utilizata dupa executia procedurii apelate.
  • instructiuni de intrare-iesire, folosite pentru transferul de date, cu dispozitivele periferice. Contin adresa unui dispozitiv sau a unui registru de interfata cu dispozitivul de intrare-iesire.

Dupa modul de reprezentare a operanzilor, instructiunile se impart in:

  • instructiuni in virgula fixa.
  • instructiuni in virgula mobila.
  • instructiuni zecimale.
  • instructiuni pe siruri de caractere.
  • instructiuni matriciale.
  • instructiuni care opereaza asupra structurilor de date tabelare.

Orice sistem de calcul cuprinde setul standard de instructiuni, adica instructiunile in virgula fixa.

Dupa forma instructiunii, structura si lungimea ei, instructiunile se impart in:

  • instructiuni cu format fix - instructiunile au aceeasi lungime si implica o structura simpla a procesorului, dar o utilizare ineficienta a memoriei;
  • instructiuni cu format variabil, in care lungimea depinde de tipul operanzilor, de numarul de operanzi si de modul de adresare. Pentru executarea unor astfel de instructiuni, procesorul trebuie sa determine, la citirea instructiunilor din memorie, lungimea instructiunii si sa citeasca, in cicluri succesive, toate cuvintele de memorie aferente instructiunii.

Dupa modul de adresare al operanzilor, instructiunile pot fi:

  • cu nici o adresa - operanzii sunt cautati rapid in stiva sistemului de calcul;
  • cu o singura adresa - codifica de regula operatii unare;
  • cu doua adrese - pentru operatii binare in care una din adrese este un registru iar cealalta o adresa de memorie.

Tipuri de procesoare. Procesoarele sunt impartite de regula dupa setul de instructiuni, astfel:

  • Procesoarele CISC (Complex Instructions Set Computer). Sunt procesoare cu set complet de instructiuni, cu format variabil, care permit un numar mare de moduri de adresare. Executarea unei instructiuni presupune efectuarea mai multor operatii in mai multe cicluri-masina. Procesoarele rezultate sunt complexe, cu un numar mare de cablaje care realizeaza implementarea setului de instructiuni. Aceste procesoare utilizeaza eficient memoria interna. Un exemplu este tipul MMX de la procesorul Pentium care are un set extins de instructiuni pentru multimedia.
  • Procesoarele RISC (Reduce Instructions Set Computer). Sunt procesoare cu set redus de instructiuni, care au instructiuni elementare, majoritatea putand fi executate intr-o singura perioada de ceas. Instructiunile au lungime fixa, folosind un singur acces la memorie. Au un numar minim de moduri de adresare si, in compensatie, un numar mare de registi in care se depun operanzii. Instructiunile lucreaza cu operanzii de preferat in registri, operatiile fiind elementare. Datorita simplitatii operatiilor elementare, pot fi construite unitati de prelucrare paralele rezultand executia simultana a mai multor instructiuni. Cu aceste procesoare se implementeaza tehnica PIPE-LINE de executare a instructiunilor, in care, in fiecare perioada de ceas se preia cate o instructiune. La un moment dat sunt in executie mai multe instructiuni, in diverse stadii. Acest mecanism a fost preluat de INTEL incepand cu seria 486.

Structura procesorului. Componentele functionale ale unitatii centrale de prelucrare sunt: (figura )

  • Setul de registri. Un registru este in esenta o mica memorie, cu destinatie speciala. Spre deosebire de o locatie de memorie, un registru de memorie ofera un acces rapid, fiind usor de adresat. Ca zone de memorie, registrii sunt utilizati pentru memorarea unui anume gen de informatie asupra careia se opereaza intr-un anumit mod. Acestia sunt registrii specializati.Tot ca zone de memorie, registrii sunt folositi drept zone de prelucrare a datelor de catre unitatea aritmetica-logica si in transferul datelor cu memoria interna. Tot registrii generali sunt folositi si in transferul de informatii cu echipamentele de intrare-iesire. Numarul registrilor din unitatea centrala de prelucrare este diferit de la un procesor la altul. Exista un numar de registri la dispozitia utilizatorului, care pot fi folositi prin intermediul setului de instructiuni. In plus exista registri folositi exclusiv de catre unitatea centrala de prelucrare si la care utilizatorul nu are acces (registrul - segment, folosit pentru localizarea segmentelor de memorie in care sunt memorate informatiile).

In functie de tipul de informatie care se vrea localizata, avem:

  • registrul segment de cod
  • registrul segment de date
  • registrul extrasegment, folosit pentru suplimentarea dimensiunii segmentului de date
  • registrul segment de stiva, folosit pentru localizarea stivei in memoria interna.

Alte categorii de registri sunt registrii de lucru cu memoria interna:

  • registrul de adresa al memoriei - contine adresa locatiei de memorie care va fi accesata la un moment dat. Orice operatie cu memoria se realizeaza prin consultarea informatiei din acest registru;
  • registrul de date contine cuvantul de date sau de instructiune care a fost citit din memoria interna sau care va fi scris in memoria interna;
  • registrul - acumulator (pot fi mai multe) memoreaza operanzi si rezultate ale operatiilor executate de unaitatea aritmetica logica in procesul de calcul;
  • registrul de index, utilizat in cazul adresarii indexate si a modurilor de adresare derivate din acesta;
  • registrul contor-program, contine adresa instructiunii ce trebuie executata dupa terminarea executiei instructiunii curente. Continutul lui se mareste cu lungimea instructiunii executate sau se incarca adresa unei instructiuni la care se face un salt.
  • registrul de instructiune contine zona care descrie codul operatiei si modul de adresare din instructiunea curenta. Aceasta informatie este folosita de unitatea de comanda a unitatii centrale de prelucrare;
  • registrul indicator de stiva contine adresa varfului stivei, valoarea lui, modificandu-se ori de cate ori se depun sau se extrag informatii din stiva.
  • Registrul de stare al procesorului, care memoreaza cuvantul de stare al procesorului ce sintetizeaza starea sistemului la un moment dat. Aici se memoreaza informatii privind procesul in curs de executie, iar continutul acestui registru se salveaza in memoria interna in cazul intreruperii procesului, pentru a fi reincarcat in cazul reluarii procesului intrerupt.
  • Unitatea aritmetica logica. Este un ansamblu de circuite logice care compun unitatea functionala a sistemului de calcul. Ea are rolul de a realiza toate operatiile aritmetice si logice asupra datelor. Unitatea aritmetica logica preia operanzii cu care lucreaza din registrele specializate a unitatii centrale de prelucrare. In general unitatea aritmetica logica primeste la intrare doi operanzi si un cod de operatie. Ea furnizeaza la iesire un rezultat si un set de informatii suplimentare despre rezultat, concretizate in asa-numitii indicatori de conditii. Acesti indicatori pot fi testati cu instructiuni specializate, determinand prelucrari diferite in program. Acesti indicatori se reprezinta pe cate un bit, fiind spre exemplu:
    • bitul de transport, pozitionat in cazul in care a aparut un transport la o operatie de adunare;
    • bitul de depasire, care se pozitioneaza daca rezultatul a fost mai mare decat valoarea maxima admisa in modul de reprezentare ales;
    • bitul de zero, se pozitioneaza daca rezultatul este nul. Este folosit in instructiunile de comparare care se executa prin scaderea elementelor comparate, egalitatea fiind confirmata de pozitionarea bitului de zero;
    • bitul de paritate, intervine la bitii de control si specifica paritatea rezultatului;
    • bitul de semn, care defineste semnul rezultatului, fiind pozitionat cand rezultatul este negativ.
  • Unitatea de comanda (UC), numita si unitatea de comanda si control (UCC) contine logica de comanda pentru executia instructiunilor din registrul de instructiuni. Ea determina secventa de operatii elementare ce trebuie executate de unitatea centrala de prelucrare. Unitatea de comanda primeste la intrare semnale de stare, determinate de instructiunea care se executa si genereaza semnale de comanda care determi-na executarea operatiilor necesare. Unitatea de comanda foloseste generatorul semnalelor de tact, numit si ceasul sistemului de calcul. Frecventa semnalelor de tact generate determina viteza cu care actioneaza componentele sincrone ale sistemului de calcul. In cazul procesoarelor mai noi, frecventa ceasului este multiplicata in interiorul procesorului, acesta lucrand la viteze mai mari decat componentele externe lui. La procesoarele din seria 486 DX2 a fost dublata frecventa semnalelor de ceas de la 33 MHz la 66 MHz, la 486 DX4 a fost triplata de la 33 MHz la 100 MHz, dar in fond a ramas acelasi ceas. Implementarea instructiunilor masina in logica de comanda a procesorului se face fie prin circuite electronice cablate (care este tehnologia conventionala, fiind dependenta de densitatea circuitelor electronice, dependenta la randul ei de tehnologia constructiva utilizata), fie prin microprogramare, in care pentru fiecare cod de opertie se defineste o secventa de micro-instructiuni, care genereaza o operatie elementara.
  • Magistralele unitatii centrale de prelucrare. Reprezinta linii pasive care interconecteaza componentele functionale ale sistemului in vederea schimbului de informatii intre ele. Schimbul de informatii prin intermediul magistralelor utilizeaza transmisia in paralel, adica magistrala este formata din n linii pe care se transmit concomitent n biti de informatie. La un moment dat, pe o magistrala se poate executa un singur transfer de date de un anumit tip. In functie de natura informatiilor transferate, magistralele pot fi:
    • magistrale de adrese, care contin linii de adrese pe care se transfera informatiile de adresa;
    • magistrale de comenzi, care contin linii de comenzi si de stare;
    • magistrale de date, care contin linii de date.

O anumita categorie de sisteme de calcul este aceea care foloseste magistrala unica. In acest caz, toate resursele sistemului sunt conectate la aceasta magistrala. Ea este alcatuita din linii grupate in:



    • linii de adrese.
    • linii de date.
    • linii de comenzi si de stare.

Dezavantajul, in acest caz, este ca la un moment dat se poate efectua doar un singur transfer de un anumit tip. In sistemele de calcul cu magistrale multiple o magistrala leaga o pereche de unitati functionale ce trebuie sa comunice intre ele. O astfel de organizare permite transferul de informatii in paralel intr-o perioada de ceas, intre mai multe unitati, pe magistrale diferite.Dupa sensul transferului de informatii, magistralele pot fi:

    • unidirectionale, cand transferul se realizeaza intr-un singur sens (ex.: magistrala de adresa, care are ca destinatie intotdeauna registrul de adresa);
    • bidirectionale, cand informatia poate fi vehiculata in ambele sensuri, alternativ (ex. magistrala de date).

Magistralele se caracterizeaza prin:

    • numarul de linii pe care se face transferul de informatii;
    • frecventa de ceas la care lucreaza;
    • rata de transfer a datelor;
    • arhitectura magistralei.


Figura 3. Conectarea echipamentelor periferice la sistemul de calcul

Arhitectura magistralei defineste tipul de adaptoare pe care le accepta si implicit tipul de echipamente periferice, numarul si natura extensiilor. La calculatoarele PC din seria XT, magistrala era pe 8 biti, cu o rata de transfer de 1 MB/sec. La Pentium magistrala este de 64 biti, cu peste 500 MB/sec. Magistrala ISA (Industry Standard Architecture) este prima arhitectura standard industriala creata de INTEL. Magistrala MCA (Micro Chanel Architecture), creata de IBM, include un sistem ce permite unui adaptor sa preia controlul de la procesor pe timpul efectuarii unei operatii de transfer. Magistrala VESA (Video Electronics Standards Asociations), realizata pentru cresterea performantelor adaptorului video, este standardul de magistrala din seria PC 486 si permite conectarea a trei periferice rapide, adaptoare de hard-disk si de retea. Magistrala PCI (Periferic Conection Interface) se conecteaza la magistrala locala printr-un singur cip. Lucreaza pe 32 sau 64 biti, cu rate de transfer de  500 Mb/sec. Echipamentele care se conecteaza la magistrala sunt de tipul MASTER sau SLAVE. Echipamentele de tipul MASTER pot avea initiativa de conectare, iar cele de tipul SLAVE pot doar sa raspunda la initiativele de conectare. Legatura unui echipament la magistrala se realizeaza de obicei printr-un conector fizic, numit PORT si printr-o componenta de interfata numita ADAPTOR. Porturile sunt:

  • seriale cand datele se transmit bit cu bit pe o singura cale;
  • paralele cand transferul se face concomitent pentru un numar de biti, pe mai multe cai.

Adaptoarele sunt circuite integrate care permit procesorului sa comunice si sa conecteze echipamente periferice. Adaptoarele au rolul de pregatire a informatiei in forma ceruta de magistrala, in cazul preluarii informatiilor de la dispozitivele periferice sau invers. Este posibil ca un adaptor sa controleze mai multe dispozitive periferice de acelasi fel, caz in care adaptoarele au si rol de adresare a dispozitivelor periferice conectate. Spre exemplu adaptorul SCSI (Small Computer System Interface) defineste o magistrala care poate conecta unul sau mai multe calculatoare cu dispozitive periferice. Fiecare echipament periferic trebuie sa posede un CONTROLER (o interfata inteligenta locala), iar echipamentele conectate pot fi de tipul:

    • unitati de disc.
    • CD-ROM.
    • unitati de banda rapide.

La calculatoarele PC mai sunt folosite porturile IDE (Inteligent Drive Electronics), ATA, ATA 2, EIDE etc.

Sisteme de calcul cu procesoare multiple.

Necesitatea cresterii vitezei de prelucrare a unui sistem de calcul a dus la ideea prelucrarii in paralel a instructiunilor unui program in executie. Pentru a fi posibil acest lucru a fost necesara modificarea structurii unitatii centrale de prelucrare a sistemului de calcul. Au rezultat urmatoarele variante de sisteme de calcul:

  • Sisteme de calcul cu procesor vectorial. Sunt sisteme de calcul multiprocesor. Sistemele de calcul sunt dotate cu mai multe procesoare care partajeaza o memorie interna comuna. Procesoarele sunt independente, fiecare ruland un alt program. In cazul aplicatiilor in care se doreste executarea acelorasi prelucrari pe seturi de date diferite, se pot utiliza sisteme de calcul cu memorie interna si unitate de comanda unice, un singur registru contor program, dar cu mai multe unitati aritmetice logice.O unitate centrala de prelucrare cu aceasta structura executa un singur program la un moment dat, dar simultan, pentru mai multe seturi de date.
  • Sisteme de calcul cu unitati de calcul multiple. In cazul in care unitatea centrala de prelucrare este dotata cu cate o unitate aritmetica logica specializata pentru fiecare tip de operatie aritmetica, se pot realiza in paralel instructiunile care corespund cate unei unitati specializate. In acest caz trebuie sa existe un analizor care sa distribuie instructiunile spre executie unitatilor aritmetice specializate.
  • Un alt mod de organizare a unitatii centrale de prelucrare este structura PIPE-LINE. In acest caz fiecare etapa de executie a unor instructiuni se realizeaza pe o alta unitate. De exemplu unitatea de citire a instructiunii din memoria interna in registrul de instructiuni, unitatea de citire a operanzilor din memoria interna in registrul de date, unitatea de executie a instructiunii etc. Fiecare unitate foloseste informatiile furnizate de unitatea functionala anterioara si pregateste date pentru unitatea functionala care ii succede. La un moment dat, un astfel de sistem poate executa in paralel mai multe instructiuni, fiecare instructiune fiind in alt stadiu de executie, aplicata fiind unei alte unitati functionale.
  • Un caz general este utilizarea in sistemele de calcul a unor procesoare dedicate unor anumite echipamente, cum ar fi procesoarele grafice sau procesoarele de intrare-iesire, numite si canale de intrare-iesire. Acestea executa functii de lucru cu periferia sistemului de calcul in paralel cu unitatea centrala de prelucrare, utilizand un set propriu de instructiuni.
  • Procesorul de tip bit-slice. Aceasta tehnologie a fost folosita pe vremea cand procesoarele (unitatile centrale de prelucrare) performante erau scumpe. S-a optat atunci pentru alipirea (slice=lipire) mai multor unitati centrale de prelucrare de dimensiuni si performante reduse pentru a realiza un procesor puternic. Spre exemplu pentru realizarea unui procesor de 16 biti se foloseau 4 procesoare de 4 biti. Fiecare procesor de 4 biti avea propriul sau set de instructiuni, diferit de setul de instructiuni al procesorului rezultat. Adaptarea celor doua seturi de instructiuni s-a efectuat prin microprogramare.

Considerente generale asupra sistemelor de calcul. Performantele unui sistem de calcul sunt determinate de performantele procesorului, adica de complexitatea setului de instructiuni, viteza de executie a instructiunilor, frecventa de ceas, numarul de registri, tipurile de date folosite, modurile de adresare a datelor. Performantele procesorului trebuie corelate cu performantele celorlalte componente ale sistemului de calcul. In primul rand, in ceea ce priveste viteza de operare pentru magistrala, memorie, echipamente periferice, iar in al doilea rand cu domeniul de utilizare a sistemului de calcul.

Cronologic, P.C.-urile din seria 286 aparute din 1982 foloseau magistrale de 16 biti si aveau o viteza de ceas de 8-16 MHz.

Prin 1985 apar seriile 386 SX, cu magistrala locala pe 16 biti, si 386 DX, cu magistrala locala pe 32 biti. La acestea din urma viteza procesorului depasea viteza memoriei. Acest neajuns s-a rezolvat prin aparitia memoriilor cache externe. Vitezele de lucru erau intre 33 si 50 MHz. A fost extins setul de registri si tipul de date utilizat. La aceste calculatoare, magistrala PCAT este doar o magistrala de extensie pentru conectarea echipamentelor periferice si nu mai lucreaza la frecventa ceasului procesorului.

In 1989 apare seria 486, care are memorie cache integrata, procesor matematic integrat, foloseste o tehnologie de integrare de peste 1,2 milioane tranzistori pe cip, implementeaza tehnica PIPE-LINE de executare a instructiunilor si are conectori de extensie legati la magistrala locala pentru echipamente cu viteza mare de lucru.

Prin 1993 apare seria PENTIUM, care foloseste o tehnologie de integrare de 3,1 milioane tranzistori pe cip, prin cresterea densitatii, foloseste magistrala de 64 biti, are memorie cache care merge pana la 64 KB, are unitate de executie RISC (care poate executa doua instructiuni intr-un singur ciclu de ceas), are caracteristici de verificare a integritatii sistemului.

Procesoarele pentium.

In 1993, Intel a lansat microprocesorul Pentium. Desi multa lume astepta ca noul cip sa se numeasca 80586, aliniindu-se la celelalte cipuri din familia de microprocesoare Intel, compania a optat pentru numele Pentium. Acest nume ceva mai ciudat, are probabil la origine o decizie a Curtii Federale, care a stabilt ca numele 386 este generic si descrie un tip de produse, nu un produs care apartine unui anumit producator.

Ca urmare, Intel a ales un nume propriu, astfel ca atunci cand alte companii au clonat cipul, nu au putut folosi acelasi nume cu al produsului original.

Cipul Pentium s-a rupt de familia 386/486, avand o interfata pe 64 de biti in locul conexiunilor pe 32 de biti ale microprocesoarelor mai vechi. Totusi, in interior, microprocesorul Pentium folosea tehnologia pe 32 de biti, dar intr-un mod mai putin obisnuit. In locul unei singure unitati centrale de prelucrae pe 32 de biti, microprocesor ul Pentium continea cipuri 486, interconectate prin circuite care isi partajeaza sarcinile

Pentru a imbunatatii colaborarea dintre microprocesorul Pentium si restul PC-ului, firma Intel a incorporat in cip o memorie cache de 16 KB. Acesta memorie cache este organizata complet diferit fata de cea a microprocesoarelor 486. ea este efectiv impartita in doua, 8 kb fiind folositi ca buffer pentru date, si 8 kb pentru instructiuni. Acest model reprezinta o cale mai buna prin care datele sunt folosite pentru prelucrare.

Microprocesorul Pentium continua traditia Intel de compatibilitate cu cipurile anterioare. In ciuda proiectului revolutionar, microprocesorul pentium va continua sa execute aceleasi programe ca si microprocesoarele 386 si 486, in exact acelesi moduri de operare. Cu alte cuvinte, microprocesorul Pentium se initializeaza in modul real, apoi poate fi comutat in modurile protejat si virtual 8086 (si inapoi). Setul de instructiuni al microprocesorului Pentium include toate comenzile folosite de circuitul 486, la care se adauga instructiuni proprii.

Principala diferenta dintre Pentium si microprocesoarele precedente (si cea mai interesanta din punct de vedere al modernizarii) este viteza mai mare.

Primele cipuri Pentium au fost proiectate sa ruleze aproximativ de doua ori mai repede decat microprocesoarele 486 cu sceeasi frecventa de ceas si cu posibilitati si mai mari in cazul folosirii unor ceasuri mai rapide. Desi viteza maxima a primelor cipuri Pentium abia egala viteza interna de 66 Mhz a celor mai rapide cipuri Intel 486 cu dublarea frecventei de ceas, Intel s-a apropiat de scopul propus, obtinand rezultatele cu aproximativ 80% mai repede in cazul aplicatiilor DOS. a doua generatie de microprocesoare Pentium, lansata in 1994, a adus doua inovatii. Cipurile lucrau la viteze mai mari, gratie unui multiplicator de ceas intern. Cresterea vitezei s-a facut cu un factor de 1,5 de la 60 Mhz la 90 Mhz si de la 66Mhz la 100Mhz. Noile cipuri nu puteau fi folosite ca inlocuitor direct al cipurilor predecesoare, din cauza celei de-a doua inovatii: noile microprocesoare Pentium foloseau o logica la 3,3 volti. In afara acestor modificari, noile microprocesoare Pentium erau identice cu cele anterioare.

Pentru a profita de avantajele oferite de viteza mai mare , fabricantii placilor de baza trebuiau sa-si reproiecteze produsele pentru ca acestea sa accepte tensiunile mai mici cerute de cip-uri. Ca solutie de moment, unele companii au dezvoltat placi adaptoarre, care asigura corespondenta dintre microprocesoarele Pentium la 3,3 volti si soclurile la 5 volti.

Catre sfarsitul anului 1994, Intel a dezvaluit faptul ca microprocesoarele Pentium contin o eroare de proiectare in unitatea cu virgula mobila - la impartirea anumitor numere se obtin rezultate gresite. Lipsurile departamentului de relatii cu publicul al firmei Intel a facut notorie o asemenea eroare de proiectare.

Desi majoritatea aplicatiilor nu sunt afectate de aceasta eroare, la presiunile intense ale presei, firma Intel a anuntat o politica de inlocuire a cipurilor defecte. Aceasta eroere exista numai in primele doua versiuni ale cipului, care opereaza la 60 si 66 Mhz.

In ianuarie 1997, firma Intel a lansat primul microprocesor Pentium MMX. Primele cipuri Pentium MMX operau la 166 sau 200 de Mhz cu magistrala externa de 66 Mhz. Asa cum sugera si numele, noul cip recunoastea setul de instructiuni MMX, pe care le trata ca instructiuni pentru coprocesor. In plus, Intel a dublat dimensiunea memoriei cache primare inglobate in cip, ajungand la 32 kiloocteti.

Prelucrand mai multe blocuri de date in acelasi timp, microprocesorul MMX putea imbunatatii performantele unei aplicatii optimizate in acest sens cu pana la 60%, conform declaratiilor celor de la Intel. Totusi, cu exceptia imbunatatirilor determinate de memoria cache mai mare, cipurile Pentium MMX nu au imbunatatit performantele programelor conventionale.

Pentru a obtine viteza sa maxima, cipul trebuia sa execute instructiuni MMX, ceea ce inseamna programe scise cu astfel de instructiuni. Intel a lansat un program de certificare pentru a identifica produsele software care foloseau instructiuni MMX, astfel incat sa se poata recunoaste usor aplicatiile ce pot beneficia de tehnologia MMX.

Recunoscut sub numele de cod P6, Pentium Pro marcheaza o ruptura dramatica fata de cipurile Intel anterioare. Fiind complet reproiectat, acest microprocesor renunta complet la arhitectura clasica CISC a firmei Intel in favoarea vitezei oferite de arhitectura RISC.

Folosind propriile circuite interne, microprocesorul converteste instructiunile Intel clasice in micro-operatii care pot fi prelucrate in nucleul RISC pentru a obtine viteze mai mari de prelucrare a codului.

In ciuda proiectului sau revolutionar, nucleul logic al microprocesorului Pentium Pro este considerat a fi ultimul cip Intel clasic.

Microprocesorul Pentium II, poate executa simultandoua instructiuni MMX prin 'canalele' separate de prelucrare paralela. Aceasta capacitate ofera un avantaj deosebit fata de alte microprocesoare in cazul executarii aplicatiilor multimedia , prin tehnologia MMX. Atat tehnologia MMX, cat si arhitectura pe 32 de biti a microprocesorului Pentium Pro necesita programe noi, specializate, care sa profite de aceste avantaje.