Sunteți pe pagina 1din 10

1.

INTRODUCERE

Lucrarea de fa trateaz aspecte func ionale, constructive i rela ionale ale


blocurilor unui sistem de calcul numeric. Aplica iile derulate pe calculatoare sunt:
prelucr rile de date;
prelucr rile de informa ii;
prelucr rile de cuno tin e;
prelucr rile inteligente (inteligen a artificial ).

Fig. 1.1. Structura piramidal a tipurilor de prelucr ri.

Spa iul datelor. Materialul prelucrat la baza piramidei este considerat un spa iu
de date din care fac parte numere reprezentate n diverse formate. Datele prelucrate
sunt considerate mutual independente n spa iul lor. Spa iul datelor este cel mai mare
spa iu al obiectelor prelucrate cu sistemul de calcul, incluznd caractere, simboluri
i/sau reprezent ri multidimensionale ale acestora, numere n diverse formate.
Spa iul informa iilor. Termenul de informa ie reprezint o colec ie de date
legate ntre ele printr-o anumit rela ie sau structur sintactic . El se prezint ca un
subspa iu al spa iului de date. Prin sintax se n elege un set de reguli care
guverneaz alc tuirea propozi iilor dintr-un limbaj.
Spa iul cuno tin elor. Formeaz un subspa iu n cadrul spa iului informa iilor.
Informa iile sunt legate ntre ele printr-o structur semantic . Semantica reprezint
un set de reguli care extrag n elesul propozi iilor dintr-un limbaj.
Spa iul prelucr rilor de tip inteligen artificial . Lucreaz cu baze de
cuno tin e, reguli de inferen (ra ionament) sau cu alte mijloace specifice
domeniului de inteligen artificial . Calculatoarele de ast zi au devenit suficient
de rapide. Cu toate acestea, nici un calculator actual nu este un sistem inteligent
care gnde te independent.

10

ARHITECTURA SISTEMELOR DE CALCUL

Un calculator este o ma in capabil de a rezolva probleme aplicnd


instruc iuni definite n prealabil. Circuitele electronice ale fiec rui calculator nu pot
recunoa te i executa direct dect un num r limitat de instruc iuni. Ansamblul de
instruc iuni executate direct de un calculator formeaz un limbaj care permite
oamenilor s comunice cu calculatorul. Este ceea ce se nume te limbajul ma in .
Problema care se pune n acest caz este c limbajele ma in sunt att de primitive
nct este extrem de greoi a le utiliza. Sunt dou lucruri de rezolvat n privin a
acestei probleme, ambele viznd construirea unui nou set de instruc iuni mai
practic de utilizat dect limbajul ma in . n ansamblu, aceste noi instruc iuni
formeaz un nou limbaj care va fi numit L2, n timp ce ansamblul instruc iunilor
corespunz toare limbajului ma in formeaz nivelul L1.
Prima sarcin de executat a unui program scris n limbajul L2 este de a
nlocui fiecare instruc iune a programului cu instruc iunile corespunz toare
limbajului L1 care i sunt echivalente. Calculatorul va executa deci noul program n
limbajul L1 i nu vechiul program care a fost scris n limbajul L2. Se poate spune
are loc o conversie de limbaj, aceast tehnic numindu-se traducere.
Al doilea lucru este de a scrie un program n limbajul L1 capabil, dup
examinarea fiec rei instruc iuni a programului din L2, s execute direct secven a de
instruc iuni n limbajul L1 echivalent. Aceast tehnic , cu ajutorul c reia nu mai
este nevoie s se genereze un program echivalent n L1 care va examina i executa
fiecare instruc iune din L2, poart denumirea de interpretare.
Traducerea i interpretarea se aseam
mult. n fiecare caz, toate
instruc iunile n L2 sunt convertite n final ntr-o suit echivalent de instruc iuni
corespunz toare lui L1. Dar trebuie notat c n fiecare caz al traducerii, programul
scris n L2 este mai nti convertit ntr-un program scris n L1; apoi programul n
L2 dispare i programul n L1 va fi cel executat. n replic , interpretarea const n
analizarea i apoi executarea imediat a fiec rei instruc iuni din limbajul L2.
Aceste dou metode sunt foarte utilizate n propor ii aproximativ identice.
Pentru a simplifica lucrurile, este mai u or de imaginat existen a unui
calculator virtual, al c rui limbaj ma in este L2. Dac se poate construi aceast
ma in la un pre rezonabil nu va mai fi nevoie de limbajul L1 i nici de o ma in
capabil s execute acest limbaj. Utilizatorii vor scrie tot mai simplu programele
lor n limbajul L2 i calculatorul va executa direct aceste programe.

1.1. Limbaje i ma ini virtuale


Limbajul i ma ina virtual sunt ntr-o rela ie foarte limitat . Orice ma in prin
limbajul s u formeaz un ansamblu de instruc iuni de baz pe care le poate executa. Se
poate spune deci c o ma in define te un limbaj. Reciproc, un limbaj define te o
ma in i, mai precis, un limbaj define te o ma in care poate executa toate programele
scrise n acel limbaj. Binen eles, ma ina definit printr-un limbaj oarecare poate fi
extraordinar de complex i cu un cost prohibitiv. Dar, cu toate acestea, ea poate exista.

Introducere

11

Un calculator alc tuit din n nivele poate fi v zut ca n ma ini virtuale distincte,
fiecare ma in virtual avnd propriul s u limbaj. Programele scrise n limbajele L2,
L3, , Ln trebuie s fie interpretate de un interpretor avnd un nivel mai mic sau s
fie traduse ntr-un limbaj inferior. Programatorul care are programele scrise pentru o
ma in virtual de nivelul n nu este interesat de compilatoare i nici de
interpretoarele aflate la un nivel inferior. Pentru acesta nu este interesant de tiut n
acest caz dac programele sunt traduse ntr-un limbaj cunoscut de calculator sau dac
ele sunt executate direct de c tre circuitele aflate la nivelul fizic. n ambele cazuri se
va ajunge la acela i rezultat: programele sunt executate, indiferent de metod .

1.2. Calculatoarele actuale calculatoare multinivel


Cea mai mare parte a calculatoarelor actuale au mai mult de dou nivele.
Predomin foarte mult calculatoarele care au curent 6 nivele. La primul nivel
nivelul 0 se afl logica cablat .

Fig. 1.2. Prezentarea nivelelor unui calculator.

12

ARHITECTURA SISTEMELOR DE CALCUL

Nivelul 0, primul nivel care intr n alc tuirea unui calculator, poart
denumirea de nivel fizic. Obiectele utilizate la acest nivel sunt por i, care prin
defini ie pot fi privite ca ni te componente logice interconectate ntre ele. Fiecare
poart dispune de una sau mai multe intr ri logice i ntoarce ca rezultat o func ie
simpl ob inut conform semnifica iei de la intrare (de exemplu I, SAU, NU). O
poart este realizat cu ajutorul tranzistorilor. Acest nivel execut instruc iunile
limbajului microprogramat (urm torul nivel ierarhic), care ac ioneaz asupra
nivelului 0 ca ni te comenzi. De re inut este faptul c nivelul 0 poate s nu fie
nivelul cel mai sc zut, sub el putnd exista un alt nivel care poart denumirea de
nivel component , i care de regul nu apare n schema nivelurilor unui calculator.
Nivelul urm tor este nivelul 1 sau nivelul microprogramat. El este nivelul
limbajului intern al ma inii. Aici exist un microprogram care interpreteaz
instruc iunile de nivel 2 i care este realizat cu un set restrns de instruc iuni simple
(n medie cam 20 de instruc iuni), de transfer i teste simple ale unor condi ii. Este
scris ntr-o memorie ROM intern , la ea avnd acces numai produc torul.
Deasupra nivelului 1 se afl nivelul 2 sau nivelul ma inii tradi ionale.
Fiecare procesor define te n mod implicit un limbaj de nivel 2 i o ma in virtual
al c rei limbaj ma in este interpretat de un microprogram. Denumirea de nivel al
ma inii tradi ionale este dat deoarece componentele au caracteristici comune.
Aceea i structur fizic poate corespunde la dou sau mai multe ma ini dac
microprogramul de pe nivelul 1 este scris n mod adecvat i aceea i ma in
tradi ional se poate implementa prin diverse structuri fizice. Exist i excep ii:
unele calculatoare nu dispun de nivelul microprogramat (nivelul 1), n acest caz
instruc iunile de pe nivelul 2 fiind tratate direct de nivelul 0.
Al treilea nivel este un nivel hibrid, n sensul c cea mai mare parte a
instruc iunilor care definesc limbajul 3 sunt de tip ma in . Se g sesc aici sarcini
specifice privind gestionarea memoriei i capacitatea de executare a mai multor
programe n paralel. Acest nivel poart denumirea de nivelul sistemului de operare.
De remarcat c nivelele 1 i 2 nu sunt accesibile programatorului mediu. Ele
sunt necesare pentru interpretarea nivelului inferior i sunt scrise de c tre speciali ti.
Limbajele de nivel 1, 2 i 3 sunt orientate c tre modul numeric, iar ncepnd cu
nivelul 4 apar limbaje formate din simboluri i cuvinte, care au o sintax .
Nivelul 4 este nivelul limbajului de asamblare. Este un nivel care nu poate s
lipseasc . Aici compilatorul genereaz cod direct pentru nivelul 3. Exist o
caracteristic specific acestui nivel: nivelurile inferioare (nivelul 2, nivelul 3) sunt
ntotdeauna interpretate, iar nivelurile superioare au asociate programe traduc toare.
Programele realizate n limbaj de asamblare sunt mai nti traduse n limbaje pentru
nivelurile 1, 2 i 3 i apoi interpretate de ma inile reale sau virtuale corespondente.
Urm torul nivel ierarhic este nivelul 5, numit nivelul limbajului de aplica ie.
Aici se afl limbaje concepute pentru a fi utilizate de c tre programatorii de
aplica ii. Ele mai sunt adesea denumite i limbaje de nivel nalt i sunt extrem de
numeroase. Printre cele mai cunoscute pot fi amintite: Basic, C, Cobol, Pascal,
Fortran etc. Programele scrise n unul din aceste limbaje sunt adesea traduse pentru
nivelele 3 sau 4 de c tre programe traduc toare specializate numite compilatoare.

Introducere

13

Nivelul 6, care este i cel mai de sus nivel, este reprezentat de un ansamblu
de programe. Ele con in numeroase date pentru aplica ii care pot ine de domenii
diferite de lucru.
n concluzie, se poate spune c un calculator poate fi v zut ca o suit de
nivele, fiecare nivel nglobnd toate nivelele precedente. Un nivel reprezint un
grad oarecare de abstractizare i con ine diverse obiecte i opera ii cu aceste
obiecte. n sens ascendent cre te complexitatea prelucr rii, iar n sens descendent
cre te volumul materialului prelucrat.
Ansamblul tipurilor de date, opera iilor i caracteristicilor fiec rui nivel
poart denumirea de arhitectura nivelului. n particular, arhitectura calculatoarelor
i structura lor semnific aproape acela i lucru.

1.3. Etapele evolu iei arhitecturii calculatoarelor


Cea mai mare parte a vechilor calculatoare utilizate au ie it ast zi din uz,
ajungnd piese de muzeu. Cu toate acestea, au existat cteva ma ini care au avut un
rol important n evolu ia calculatoarelor. Pentru acestea se vor analiza n continuare
cteva din principalele caracteristici.

1.3.1. Genera ia 0: calculatoarele mecanice (1642-1945)


Meritul de a fi realizat prima ma in de calcul i revine lui Blaise Pascal. n
onoarea sa a fost denumit i primul limbaj de programare care a fost inventat.
Acest prim calculator a fost n ntregime un calculator mecanic, bazat pe angrenajul
unor ro i din ate ac ionate manual, principalele opera ii care puteau fi efectuate
fiind adun ri i sc deri. Treizeci de ani mai trziu acestei ma ini de calcul i-au fost
ad ugate de c tre Leibnitz alte dou noi opera ii: nmul irea i mp irea.
Au urmat apoi alte asemenea ma ini, dintre care poate fi amintit prima
ma in analitic . Aceasta cuprindea patru p i: memoria (magazia), unitatea de
calcul, intrarea (cititorul de cartele perforate) i ie irea. Memoria dispunea de 1000
de cuvinte de 50 de cifre zecimale care puteau fi utilizate pentru stocarea
variabilelor i rezultatelor. Unitatea de calcul prelua operanzii proveni i din
memorie, f cea diverse opera ii asupra lor (adunare, sc dere, nmul ire, mp ire)
i ntorcea rezultatul tot n memorie. Toate aceste blocuri erau n ntregime
mecanice. Marea noutate a acestei ma ini consta n faptul c putea citi instruc iuni
de pe cartelele perforate i apoi le putea trata. Unele instruc iuni puteau comanda
ma inii s preia doi operanzi din memorie, s efectueze o opera ie asupra lor i s
trimit rezultatul n memorie. Procesul continu pn n anul 1944 cnd a fost
construit prima ma in , Mark I, care avea 72 cuvinte a 23 cifre i un ciclu ma in
de 6 secunde. A urmat ndeaproape succesoarea sa Mark II. Se poate afirma c ,
practic, era electronicii ncepuse.

14

ARHITECTURA SISTEMELOR DE CALCUL

1.3.2. Prima genera ie: tuburile cu vid (1945-1955)


Se poate spune c al doilea r zboi mondial a gr bit apari ia apari iei primelor
calculatoare echipate cu componente electronice, chiar dac acestea aveau s fie
tuburile cu vid. Primul calculator construit i folosit a fost ENIGMA, folosit pentru
criptarea mesajelor care urmau a fi trimise de c tre armata german prin radio
submarinelor. Nici armata britanic nu a stat cu minile n sn, ea reu ind s pun
la punct un calculator numit COLOSSUS, folosit pentru decodarea mesajelor,
deoarece erau foarte multe calcule de f cut. P rintele lui COLOSSUS a fost omul
de tiin englez Alan Turing. Urmeaz apoi un nou model numit ENIAC. Acest
a zis calculator cuprindea 18000 tuburi cu vid i 1500 de relee; cnt rea peste 30
de tone i consuma 150 kW. Din punct de vedere al unit ii de calcul dispunea de
20 registre a 10 cifre zecimale. La foarte pu in timp dup aceasta i face apari ia
un nou calculator, al c rui realizator, John von Neumann, va intra n istorie, putnd
fi considerat pe drept cuvnt p rintele calculatoarelor actuale. Schema unei ma ini
von Neumann este redat n figura 1.3.

Fig. 1.3. Schema unei ma ini von Neumann.

Ma ina von Neumann era alc tuit din 5 p i: memoria, unitatea aritmetic
i logic , unitatea de control, dispozitivele de intrare i cele de ie ire. Memoria
dispunea de 4096 cuvinte, fiecare cuvnt avnd 40 de bi i (0 sau1). Instruc iunile
cuprindeau dou cmpuri: 8 bi i pentru tipul instruc iunii i 12 bi i pentru adres .
Unitatea aritmetic i logic con inea un registru intern special numit acumulator.
Ma ina nu dispunea de capacitate de calcul n virgul mobil .
cnd un salt peste timp se ajunge la modelul IBM 704 care avea aceea i
structur cu 4 K de memorie, instruc iuni de 36 de bi i i dispozitive speciale de
calcul n virgul mobil .

1.3.3. A doua genera ie: tranzistorii (1955-1965)


Primul calculator echipat cu tranzistori a fost realizat n laboratoarele
Lincoln, fiind denumit TX 0 (Transistorized eXperimental Computer 0). n 1961
apare PDP-1, o ma in de 4 K cuvinte de 18 bi i, avnd ciclul ma in de 5 ms. n
compara ie cu IBM 7090, care avea un pre exorbitant, calculatorul PDP-1 costa

Introducere

15

120.000 de dolari, fapt care a determinat vnzarea sa de c tre firma DEC i deci
participarea la na terea unei industrii mini-informatice.
n 1964 apare pe pia modelul 6600 al firmei CDC, o ma in aproape de 10
ori mai rapid dect b trnul IBM 7094. Impactul asupra publicului a fost unul
foarte puternic, numeroase firme exprimndu- i dorin a de a cump ra un astfel de
calculator. Diferen a fa de modelul IBM: o arhitectur paralel . n concluzie,
dispunea de mai multe unit i func ionale capabile s execute simultan diverse
opera ii. Acest model putea executa 10 instruc iuni n acela i timp.

1.3.4. A treia genera ie: circuitele integrate (1965-1980)


Inventarea circuitului integrat a permis plasarea de numeroase tranzistoare
ntr-o singur capsul de siliciu, cea ce a condus la calculatoare mai mici, mai
rapide i mai ieftine.
n anul 1965, firma IBM, num rul unu n domeniul informaticii, scoate pe
pia modelul IBM 360, acesta fiind primul calculator capabil de a simula un alt
calculator. Apari ia circuitelor integrate a dus la dezvoltarea industriei
microinformaticii, prin apari ia unor noi modele, dintre care pot fi amintite
calculatorul PDP-11 realizat de firma DEC. El este asem tor cu modelul 360 al
firmei IBM, dar cu un raport performan /cost mult mai bun.

1.3.5. A patra genera ie: circuitele VLSI (1980-1990)


Aceast etap este cea n care ncep s apar primele calculatoare personale,
acest lucru fiind posibil datorit unor factori decisivi:
perfec ionarea tehnologiei de fabrica ie;
dezvoltarea re elelor de calculatoare;
diversitatea mare de modele de arhitecturi;
apari ia conceptelor de multimedia i de programare orientat pe obiecte.
Un pas important n aceast etap a fost reprezentat de apari ia primelor
calculatoare personale realizate de firma IBM n colaborare cu Intel. Au rezultat
cteva modele care au avut o mare priz la public, dintre care IBM PS1, PS2. Un
alt mare consor iu format din Apple i Motorola scoate pe pia modelele
MacIntosh 68000, 68040. Trebuie remarcat faptul c toate aceste modele erau
calculatoare personale, deci accesibile ca pre persoanelor fizice.

1.3.6. A cincia genera ie: prelucrarea masiv paralel (dup 1990)


nceputul genera iei a cincia este marcat de dezvoltarea calculatoarelor cu
prelucrare masiv paralel , de exemplu CM 2 i CM 5 de la Thinking Machines Co.

16

ARHITECTURA SISTEMELOR DE CALCUL

Un alt element esen ial este apari ia i dezvoltarea serviciului www (World
Wide Web) ini iat de Laboratorul CERN din Geneva n colaborare cu mai multe
universit i americane.
n 1993, firma Intel construie te microprocesorul cu structur superscalar
Pentium. Apar sistemele masiv paralele cu memorie partajat
i distribuit
(Cray/MPP). Interactivitatea serviciului www este asigurat prin introducerea
tehnologiei Java.
Evolu ia procesoarelor a luat apoi un avnt puternic, frecven ele de lucru
crescnd n numai opt ani de la 100 MHz la peste 3 GHz, nregistrndu-se n
acela i timp i o mbun ire a arhitecturii microprocesoarelor prin specializare,
memorie cache, paralelism (pipe-line), optimizarea algoritmilor
Este prezentat n continuare un scurt istoric al dezvolt rii domeniului.
AN

NUME

SUBIECT

1642
1834

Blaise Pascal
C. Babbage

1904
1906
1936
1943

J.A. Flemming
L. De Forest
K. Zuse
Guvernul britanic,
cu concursul lui A. Turing
H. Aiken

Prima ma in de calculat mecanic


Ma ina analitic de la Cambridge cu instruc iuni
pe cartel perforat
Dioda
Trioda
Primul calculator cu relee Berlin
Primul calculator electronic cu tuburi cu vid
Colossus
Primul calculator american Mark 1 (72 cuvinte a
23 cifre, ciclu ma in de 6 sec.); nceputul erei
electronicii
Debutul genera iei I de calculatoare Eniac, Univ.
Pennsylvania (18.000 tuburi electronice, 1.500
relee, 600 comutatoare, 30 tone, 150 KW)
Tranzistorul

1944

1946

J. Mauchly i J.P. Eckert

1948

J. Bardeen, W. Shockley,
W. Brattain
N. Wiener
M. Wilkes, cu arhitectur
propus de J. von Neumann
MIT
J. Mauchly i J.P. Eckert
J. von Neumann

1948
1949
1951
1951
1952
1955
1956
1960
1960-61

Laboratoarele Lincoln
Firma IBM

1961
1962

Firma IBM
Firma IBM

Firma DEC

Cibernetica
Primul calculator cu program nregistrat, EDSAC
Primul calculator n timp real, Whirlwind
Primul calculator comercializat Univac 1
Calculatorul IAS (Princeton) r spnde te
arhitectura de baz von Neumann
Primul calculator echipat cu tranzistoare TX 0
Calculatorul IBM 704
Circuite integrate
Primul minicalculator, PDP-1, practic nceputul
genera iei a doua de calculatoare (tranzistorizate)
i a miniinformaticii
Ma ina de gestiune 1401
Primul calculator tiin ific puternic
(pe 36 de bi i) IBM 7094

Introducere
1963

Firma Borroughs

1964

Firma IBM

1964
1965

Firma CDC
Firma DEC

1970

Firma DEC

1970
1971
1972
1974
1974

Firma Intel
Firma Intel
Firma Cray
Firma Intel

1978
1978
1979
1980

Firma Intel
Firma DEC
Firma Motorola
Firma IBM

1982
1983

Firma Intel
S.U.A.

1984
1985
1987

Firma Motorola
Firma Intel
Firma Motorola

1989

Firma Intel

1990 1991
1992

Thinking Machines Co.


CM 2 i CM 5
Laboratorul CERN, Geneva

1993

Firma Intel

1993

Firma Cray Research

1995

Firma Sun Microsystems

1996

Firma Cyrix

1997
1998
1998
1999
1999
2000

Firma AMD
Firma AMD
Firma Intel
Firma Intel
Firma AMD
Firma AMD

17

Calculatorul B 5000 primul calculator dedicat


unui limbaj de programare: Algol 60
Prima familie de calculatoare, IBM 360; firma
IBM preia suprema ia n informatic ;
multiprogramare; nceputul genera iei a treia
(cu circuite integrate)
Primul calculator paralel 6600
Primul calculator cu produc ie de mas
(pe 12 bi i), PDP-8
Minicalculatorul PDP-11, firma DEC
preia suprema ia n miniinformatic
Circuite integrate pe scar larg
Primul microprocesor de 4 bi i 4004
Primul microprocesor de 8 bi i 8008
Primul supercalculator: Cray-1
Microprocesorul 8080:
prima unitate central pe un cip
Primul microprocesor de 16 bi i 8086
Primul superminicalculator de 32 bi i VAX
Primul procesor al familiei 680x0 68000
nceputul genera iei a patra de calculatoare (cu
circuite VLSI); era calculatoarelor personale, PC
Microprocesorul de 16 bi i 80286
Tehnologia LAN (Local Area Network) este
folosit pe scar larg
Primul microprocesor de 32 bi i 68020
Microprocesorul de 32 bi i 80386
Microprocesorul de 32 bi i cu unitate de gestiune a
memoriei 68030
Microprocesorul de 32 bi i cu coprocesor i
memorie cache 80486
nceputul genera iei a cincia de calculatoare
(prelucrare masiv paralel )
Serviciul de informa ii www
(World Wide Web) oferit pe Internet
Microprocesorul cu structur superscalar
Pentium
Cray/MPP Sistem masiv paralel
Cu memorie partajat distribuit
Tehnologia JAVA asigur interactivitatea
serviciului www
Microprocesorul n arhitectur superpipe-line
686 P200+
Microprocesoarele RISC K5, K6
Microprocesorul K6-2 3D
Microprocesorul Mendocino/333 MHz
Microprocesorul Pentium III/600 MHz
Microprocesorul Athlon/K7
Microprocesorul Sharptooth /K6-3

18
2002
2002
2003
2005
2005
2006
2007
2007
2007
2008

ARHITECTURA SISTEMELOR DE CALCUL


Firma Intel
Firma AMD
Firma AMD
Firma AMD
Firma Intel
Firma Intel
Firma AMD
Firma Intel
Firma Intel
... ... ...

Microprocesorul Pentium 4 (> 3 GHz)


Microprocesorul AMD Athlon XP 2600+
Microprocesorul AMD Opteron (64 bi i)
Microprocesorul AMD Opteron (2)
Microprocesorul Intel Pentium D
Microprocesorul Intel Core (1, 2)
Microprocesorul AMD Phenom (2, 3, 4)
Microprocesorul Intel Dual Core
Microprocesorul Intel Core 2 (1, 2, 4)
... ... ...

S-ar putea să vă placă și