Documente Academic
Documente Profesional
Documente Cultură
DENSUSIANU
CALAN
Nr./..
TEMA proiectului:
Microprocesoare
EXAMEN
DE CERTIFICARE A
COMPETENELOR PROFESIONALE
PENTRU OBINEREA CERTIFICATULUI
DE CALIFICARE PROFESIONAL
NIVEL 5
MICROPROCESOARE
CUPRINS:
Argument.......................................................................................................................2
1. Arhitectura microprocesorului...4
1.1 Nucleul procesorului..4
1.1.1 Unitatea de comand-control (cu-control unit)5
1.1.2 Unitatea aritmetic i logic (alu-aritmetic logic unit)...7
1.2 Memoria cache..8
2. Parametrii de evaluare a microprocesorului..9
2.1 Viteza de lucru a unui microprocesor ...9
2.2 Capacitatea de adresare a memoriei interne12
2.3 Setul de instruciuni.....12
3. Evoluia microprocesoarelor calculatoarelor personale...15
Bibliografie.20
Anexa..21
2
ARGUMENT
4
1.1.1 UNITATEA DE COMANDO-CONTROL (CU-Control Unit)
Unitatea de comand-control realizeaz n principal urmatoarele funcii:
Primete instruciunile programului de aplicatie stocat n memoria intern, instruciune
cu instruciune, le decodific i apoi comand intrarea n funciune a acelor componente
ale calculatorului care trebuie s le execute
Controleaz memoria intern n timp ce stocheaz date i instruciuni
Controleaz memoria intern n timpul schimbului de informaii ntre memoria intern
i unitatea de comand-control
Controleaz schimbul de informaii ntre microprocesor i echipamentele periferice de
intrare-ieire
Convertete instruciunile programelor de aplicare scrise n limbaje de program de nivel
nalt, n limbaje masin.
Microprocesorul, pentru a-i realiza sarcinile este format din dou categorii de regitrii:
De uz general
Cu destinaie special
5
n localizarea adreselor de memorie, controlul ordinal lucreaz cu un circuit specializat
numit pointer de instructiune (IP-Instruction Pointer). Acest circuit memoreaz ntotdeauna poziia
procesorului n cadrul derulrii programului aflat n curs de executie. Pointerul de instruciune, la
rndul su lucreaz n strns legatur cu regitrii de stiv care gestioneaz i manipuleaz
informaiile continute n aa-zisa stiv a calculatorului. Pe msur ce un procesor ruleaz un
program n plin desfurare, apare necesitatea de a tii n orice moment unde se afl i ce are de
fcut n continuare. Pentru a comuta de la un tip de prelucrare la alta, procesorul are nevoie de a
pstra rezultatele intermediare ale muncii sale. Aceste informaii oarecum temporale i utile
prelucrrilor viitoare sunt pstrate n procesor cu ajutorul regitrilor de stiv, care joac un rol de
depozit pentru toate informaiile curente despre activitile procesorului.
Atunci cnd un procesor execut o procedur sau ntrerupe temporar o activitate pentru a se
concentra asupra alteia, informaiile legate despre locaia unde se afla n program i ce anume se
prelucra n momentul ntreruperii sunt depozitate n stiv, astfel nct procesorul s tie de unde i
cum s continue procedura ntrerupt.
n momentul n care procesorul va trece la o alt activitate, informaiile despre aceasta vor fi
depuse n vrful stivei. Atunci cnd procesorul termin de executat procedura sau programul,
informaiile despre vechea activitate sunt eliminate din stiv, sarcina anterioar reluandu-i locul n
vrful stivei, devenind astfel nou sarcin curent (n acest mod, calculatorul revine la operaia
anterioar).
Extractorul de instruciuni identific i extrage din memorie instruciunea ce tocmai a fost
localizat de ctre pointerul de instruciune. Instruciunea extras din memorie circul pe magistrala
de data ctre procesor, urmnd a fi stocat ntr-un registru special. Dupa ce o instruciune este
memorat, decodificat i executat, unitatea de comand-control comunic extractorului de
instruciuni s extrag potrivit logicii programului aflat n curs de execuie, urmtoarea
instruciune de executat.
Registrul de instruciuni este o a treia unitate funcional a unitaii de comand-control i are
rolul de a stoca instruciunea aflat n curs de execuie care tocmai a fost extras din memorie.
Registrul de instruciuni trebuie s fie perfect compatibil ca numr de bii care se stocheaz cu
bus-ul (magistrala de date) i locaia de memorie adresat de procesor n timpul citirii unei
instruciuni.
Decodorul de funciuni este singurul circuit capabil s recunoasc funcia definit de
instruciunea de executat. Acest circuit recunoate sensul instruciunii dintr-un program aflat n
execuie, deosebind grupuri de operaiuni elementare care semnific localizarea unei adrese de
memorie, citirea i scrierea ntr-o astfel de adres, transferul de date binare, ramificarea execuiei
ctre o nou adres, etc. Din construcie, un sistem electronic de calcul este dotat cu un set de
instruciuni de baz susceptibile de a fi recunoscute i executate. Acesta inseamn c unitatea de
comand-control poate decoda i interpreta instruciunile unui program memorat.
Orice procesor, pentru a executa secvene complexe de operaii pe baza instruciunilor unui
program memorat utilizeaz un set de instruciuni de baz n decodorul su de funciuni.
Ceasul intern (sau generatorul de tact) este un circuit electronic, care distribuie regulat
impulsuri pentru sincronizarea diferitelor operaiuni elementare (micro-operaii) ce se efectueaz n
timpul derulrii unei instruciuni.
Generatorul de tact este n fapt un cristal de cuar, care intr n rezonan atunci cnd este
bombardat cu impulsuri electrice, emiand (ca un metronom) impulsuri regulate i egal distaniate n
timp.
Impulsurile distribuite i egal distanate la viteze de zeci de milioane de cicluri pe secund,
conduc la introducerea unei reguli privind momentele la care au loc sincronizrile diferitelor
operaiuni ce se desfoar n microprocesor. Intervalul n care acest generator de tact sincronizeaz
diferitele operaiuni elementare care au loc n microprocesor se desfoar n megahertz sau
gigahertzi (1 MHz=1milion de pulsuri pe secund i 1 GHz=1miliard de pulsuri pe secund).
n concluzie, se poate spune c frecvenele emise de ceasul intern stabilesc ritmul n care
opereaz toate circuitele procesorului.
6
Circuitele de comand permit efectuarea unei anumite actiuni asupra unitailor comandate,
dup ce s-au format diferitele comenzi corespondente operaiunilor elementare. Altfel spus,
circuitele de comand administreaz i coordoneaz toate fluxurile informaionale care au loc n
procesor.
Aceste circuite de comand anunt contorul ordinal asupra necesitaii localizrii unei adrese
de memorie, de unde extractorul de instruciuni s ncarce n registrul specializat o instruciune, pe
care apoi decodorul de funciuni s o ineleag, iar apoi anunt unitatea de prelucrare (aritmetico-
logic) cnd trebuie s proceseze datele.
Unitatea aritmetic i logic sau unitatea de calcul este acea component a procesorului
capabil s prelucreze informaia prin calculele matematice i funciile logice pe care le execut. O
unitate de protecie controleaz procesul de prelucrare a datelor din unitatea aritmetico-logic.
Tendina manifestat de ctre productorii de procesoare este de a dubla sau cvadrupla numrul
regitrilor unitaii aritmetico-logice, n fapt fiind vorba de mrimea capacitii de calcul a
procesorului.
Unitatea aritmetico-logic, conine dou tipuri de circuite specializate n procesarea datelor
i anume:
Dispozitive de lucru
Dispozitive de stocaj intermediar
Dispozitivele de lucru prelucreaz datele sub forma operaiilor aritmetice (de adunare,
scdere, nmulire, mprire) i logice. Aceste dispozitive sunt din punct de vedere material circuite
care combin impulsurile electrice ce reprezint informaia n form binar.
Astfel, prin intermediul operanzilor aritmetici, este permis efectuarea tuturor operaiilor
aritmetice de calcul precum i a unor operaii simple cum ar fi de exemplu mutarea datelor dintr-o
locatie n alta.
Prin intermediul operanzilor logici, este posibil efectuarea a trei categorii de operaii
indispensabile programelor i anume: teste, ramificri ale execuiei n funcie de precizarea unor
condiii de mplinit i iteraii (un numr de reluri ale prelucrrilor n funcie de anumite condiii
precizate).
Dispozitivele de stocaj intermediar sunt circuite sub form de regitrii i memorii
specializate de capacitate limitat, ce permit nregistrarea la fiecare operaie, a operanzilor i a
rezultatelor intermediare.
Procesorul poate fi ajutat n efectuarea calculelor de un circuit specializat n efectuarea unor
prelucrari specifice (calculi n virgule mobile), mrindu-se astfel considerabil viteza de prelucrare a
datelor numerice. Acest circuit specializat n efectuarea de calcule matematice, poart denumirea de
coprocesor matematic sau unitate n virgul flotant (FPU-Floating Point Unit).
Unitatea de calcul n virgule mobile este capabil s manipuleze numere extrem de mari sau
de mici. n timp ce aceasta trateaz calcule complexe n virgule mobile, unitatea aritmetico-logic
poate executa alte prelucrri, ceea ce duce la creterea performanelor microprocesorului n termeni
de vitez de procesare.
7
memoriei interne - n termeni de timpi de acces i de rspuns-fa de cerinele de prelucrare ale
procesorului.
Pentru ca procesorul s nu execute cicluri-main n gol, pierznd timpi de calcul, o parte
din cele mai accesate informaii din RAM se gsesc salvate ntr-o mic memorie a procesorului -
numit memorie cache. Astfel, datele i instruciunile pot fi stocate temporar direct n procesor,
micorndu-se numrul de accesri ale memoriei RAM. Prin aceast soluie, viteza
microprocesorului este mult sporit, datorit faptului c schimburile de informaii se efectueaz la
frecvena ceasului intern.
n principiu un procesor modern posed dou (sau chiar trei) niveluri de memorie cache, i
anume: cache-ul primar sau de nivel 1 (LI - Level 1) i cache-ul secundar sau de nivel 2 (L2 - Level
2).
Cache-ul primar, de dimensiuni relativ mici (32, 64, 128), stocheaz datele foarte rapid n
interiorul procesorului, funcionnd la aceeai frecven de tact cu acesta. Cache-ul utilizeaz
algoritmi pentru predicia i completarea datelor ce nu sunt disponibile imediat, fapt ce duce la
creterea accelerat a vitezei de prelucrare.
Prin iterarea ideii de cache, productorii de sisteme de calcul au plasat o memorie de tip
RAM de mare vitez - numit cache de nivel 2 sau extern ntre primul nivel de
cache i memoria RAM.
8
II. PARAMETRII DE EVALUARE A
MICROPROCESORULUI
Un microprocesor trebuie s fie n primul rnd adaptat exigenelor prelucrrii automate a
datelor i ca atare trebuie s fie cuantificat n termeni de vitez de prelucrare, de volum de
informaii procesate i nu n ultimul rnd de eficien a prelucrrii.
Microprocesorul se poate caracteriza prin urmtorii parametri de baz:
1. viteza de lucru;
2. capacitatea de memorie adresabil;
3. setul de instruciuni pe care Ic poate executa.;
4. articularea configuraiei ntr-o arhitectur multiprocesor.
9
b) Viteza unui microprocesor depinde n mod nemijlocit i de dimensiunea
revistrilor interni ai procesorului.
Cu ct dimensiunea regitrilor este mai mare, cu att capacitatea de stocare n procesor
crete, iar numrul biilor transferai ntre microprocesor i memoria intern este mai mare. Astfel,
cu ct regitrii interni au o capacitate mai mare de stocare a informaiei, numrul de tranzacii dintre
procesor i memorie scade. In concluzie, la un puls al ceasului intern volumul datelor transferate
este mai mare. Dimensiunile standard pentru regitrii interni ai microprocesorului sunt de 32, 64,
128 i 256 de bii.
c) Limea de band a magistralelor de comunicaii.
Arhitectura magistralei este important pentru c de ea depind performanele
microprocesorului i performanele echipamentelor periferice. O magistral nseamn modul n
care sunt interconectate componentele calculatorului. O magistral este o cale electronic de
comunicaie ntre procesor si celelalte componente ale sistemului i ntre cele doua componente ale
microprocesorului.
O arhitectur de magistral (BUS) influeneaz viteza microprocesorului n primul rnd prin
lrgimea sa de band i prin rata de transfer. Lrgimea de band a magistralei reprezint numrul de
bii care pot circula n paralel pe magistral (8, 16, 32, 64, 128 bii). Rata de transfer reprezint
volumul de datelor transferate n unitatea de timp (8bii 1Mb/s , 64 bii 528Mb/s). Magistrala
influeneaz performanele microprocesorului pentru c ea trebuie s fac fa noilor aplicaii
multimedia
d) Numrul de uniti pipeline.
Pipelining-ul este tehnica utilizat de procesoarele avansate, la care se execut urmtoarea
instruciune, nainte ca prima s fie ncheiat. Atunci cnd un segment al canalului ncheie o
operaie (sau ncheie un stagiu), el transfer rezultatul intermediar urmtorului segment i apeleaz
urmtoarea operaie de la segmentul precedent.
Sistemul pipeline este mprit n uniti, stagii sau etape care stabilesc procesele de execuie
paralel a instruciunilor, de exemplu, urmtoarea instruciune de extras i executat, operaia
aritmetico-logic care urmeaz a fi executat sau unde este stocat rezultatul acesteia. n aceste
"conducte" cu instruciuni, etapele sunt optimizate, astfel nct fiecare stagiu s fie ct mai simplu,
pentru a fi executat ct mai rapid. Cu ct microprocesorul implementeaz n structura sa funcional
mai multe stagii, cu att se pun bazele teoretice ale creterii vitezei de prelucrare.
Cu ct un procesor are n nucleul su mai multe stagii sau uniti de tip pipeline, cu att
instruciunile programelor sunt executate mai rapid. Aceast cretere de vitez ete explicat prin
faptul c existena mai multor uniti de execuie a instruciunilor elementare poate accelera
execuia instruciunii ce asambleaz aceste microoperaii elementare. Pentru demonstraia acestei
afirmaii, presupunem o frecven de lucru a magistralei procesor de 533 MHz, ceea ce nseamn
potrivit principiului divizrii, c frecvena ce revine unui pipeline este de 133MHz (533/4). Dac
procesorul conine 17 uniti pipeline, atunci frecvena ceasului intern va fi urcat la 2,26 GHz (133
MHz x 17), iar dac procesorul ar conine 31 pipeline-uri ce funcioneaz la o frecven a plcii de
baz de 133MHz, atunci viteza sa va depi 4 GHz (133 MHz x 31= 4,12 GHz).
Creterea numrului de stagii ale arhitecturii pipeline poate influena i negativ viteza
microprocesorului, n sensul n care la aplicaiile business (la care codul programului este dificil de
anticipat), cu ct sunt mai multe stagii, cu att dureaz mai mult ncrcarea i golirea sistemului
pipeline.
e) Tipul i capacitatea de calcul a coprocesorului matematic influeneaz hotrtor viteza
la care se efectueaz calculele (n special cele n virgul mobil) n unitatea aritmetico-logic a
procesorului.
Microprocesoarele vechi (din clasa 8086; 80286 i 80386) nu integrau i coprocesorul
matematic, care era livrat opional n diferite configuraii (nume de cod: 8087; 80287 i respectiv
80387). Primul microprocesor care a incorporat n nucleul su un coprocesor matematic a fost
80486 DX. Astzi, toate microprocesoarele de generaie nou (de la Pentium, n sus), conin funcii
integrate pentru calcule n virgul flotant, deci implicit posed coprocesor matematic (numit i
10
unitate n virgul mobil). Viteza de calcul a unui procesor depinde n mare msur de calitatea
unitii n virgul mobil.
f) Existenta memoriei cache si mrimea acesteia are influene pozitive asupra vitezei de
prelucrare, n sensul c micoreaz timpii de ateptare ai procesorului la preluarea din memoria
intern a informaiilor solicitate. La majoritatea procesoarelor de astzi, viteza de acces la
informaiile din cache este dat de frecvena ceasului intern i nu de frecvena plcii de baz.
g) Tehnologia de miniaturizare a tramistorilor
Un microprocesor este traversat de un curent electric cu un voltaj redus. Pentru a-i
reprezenta i pentru a prelucra informaia binar, procesorul opereaz la viteze de zeci i sute de
milioane de cicluri pe secund, alternnd n tranzistorii si o tensiune electric de un anumit voltaj
(pentru a reprezenta logica binar 1) i absena tensiunii (pentru reprezentarea informaiei prin
logica binar 0).
Acest curent electric, conform legilor fizicii, genereaz o cldur datorat rezistenei
circuitelor traversate. Pentru a diminua acest efect rezistiv, tranzistorii sunt alimentai cu tensiuni
din ce n ce mai mici (1,3 V pentru ca o tehnologie de 0,13 microni s permit atingerea unei
viteze de 3GHz). Atunci cnd temperatura crete, comportamentul procesorului se schimb,
iar materialul semiconductor din care este confecionat pastila de siliciu, nu mai conduce curentul
electric.
Tehnologiile de miniaturizare a tranzistorilor se evalueaz prin distana dintre aceste circuite
ale procesorului (tranzistori), exprimat n nanometri sau microni (de la o tehnologie de 0,35
microni- la Pentium I, la tehnologii de 0,13 microni- la Pentium IV Extreme Edition i 0,09
microni- Pentium IV Prescott).
La o aglomerare din ce n ce mai mare a tranzistorilor pe un cip, singura soluie const n
reducerea dimensiunilor tranzistorilor procesorului, pentru a diminua rezistenta acestora la
traversarea curentului electric. n plus, interconexiunile dintre tranzistori sunt nlocuite cu cupru,
care are proprieti electrice mai bune dect aluminiul.
Odat cu procesul de miniaturizare a tranzistorilor, va scade i tensiunea necesar alimentrii
circuitelor pentru a se reprezenta logic cele dou stri (poziii) binare (0 i 1). Acest fapt, va produce
n mod sigur o reducere a cldurii degajate n procesor i n consecin va avea un impact pozitiv
asupra accelerrii vitezei procesorului.
h) Sistemul de operare si aplicaiile informatice cu care lucreaz un microprocesor
Alturi de elementele hardware prezentate n msur s influeneze creterea vitezei unui
microprocesor, trebuie specificate i anumite elemente de natur software, menite s asigure o
accelerare a prelucrrilor.
n primul rnd, pentru ca un procesor s funcioneze la viteza pentru care a fost proiectat,
acesta trebuie s se coreleze cu un sistem de operare n msura s gestioneze prelucrrile, memoria,
intrrile i ieirile, astfel nct s confere platformei hardware maximum de eficien n prelucrarea
datelor. De exemplu, pe sistemele hardware pe 32 de bii (create n 1985 prin procesoarele 80386),
pentru ca procesorul s-i conserve performanele, acesta trebuie s ruleze sisteme de operare tot pe
32 de bii (Windows ca SO - n 1995). Astzi, se nregistreaz un nou salt evolutiv n tehnologia
procesoarelor, prin dezvoltarea platformelor hard pe 64 de bii, fapt ce va antrena implicit difuzarea
n mas a sistemelor de operare pe 64 de bii (Microsoft Windows XP 64-Bit Edition i Microsoft
Windows Server 2004 64-bit).
In egal msur, aplicaiile informatice trebuie s aib aceeai tehnologie de prelucrarea
informaiilor ca i a procesoarelor, pentru ca acestea din urm s ating vitezele optime de
procesare. De exemplu, un procesor superscalar pe 64 de bii, funcioneaz mult mai lent cu
aplicaii scrise pe 32 bii, chiar dac ar utiliza un sistem de operare pe 64 de bii.
11
II.2 CAPACITATEA DE ADRESARE A MEMORIEI INTERNE
12
Simplificarea formatului instruciunilor pentru a facilita decodificarea lor. n acest
format, zona codului de apariie i zona de adresare la operanzi ocup ntotdeauna aceai poziie.
Utilizarea memoriei cache de mare capacitate. Se poate afirma c utilizarea
memoriei cache este fundamentat pentru procesorul RISC.
Frecvene ale ceasului intern din ce n ce mai mari.
Utilizarea coprocesoarelor materiale puternice.
13
III. EVOLUIA MICROPROCESOARELOR
CALCULATOARELOR PERSONALE
8088 a fost primul microprocesor realizat i lansat n anul 1981 de corporaia Intel pentru
calculatoarele personale IBM i compatibile IBM. Magistrala extern de date (de intrri ieiri) a
microprocesorului era de 8 bii, n timp ce magistrala de date a procesorului avea 16 bii. Diferena
de 8 bii ntre magistrala intern i cea extern este motivat de raiuni de compatibilitate a
magistralei externe cu perifericele disponibile i cu circuitele asociate microprocesorului (n
majoritate de 8 bii la acea vreme). Frecvena de tact pe magistral msura numai 4,77 MHz.
Microprocesorul 8088 putea s adreseze maximum 640 KB memorie RAM. Pentru a se putea mri
puterea de calcul, un coprocesor matematic 8087 putea completa configuraia sistemului de calcul.
Un an mai trziu, apare pe pia varianta integral pe 16 bii a microprocesorului 8088,
(magistrala intern era egal cu cea extern), cunoscut sub numele de cod 8086. Microprocesorul
8086 ce integra pe cip aproximativ 10 mii de tranzistori i funciona la o vitez de 8 MHz, putea
accesa n mod direct 1 MB de memorie intern datorit unei magistrale de adrese pe 20 de bii.
Microprocesoarele 8088 i 8086 integrate n platforme hardware corespunztoare au fost
cunoscute i sub numele de XT-uri (Extended Technology). Astzi valoarea lor de pia este nul,
fiind anacronice cu aplicaiile soft actuale.
Odat cu 8088 / 8086 productorii de procesoare au ncercat s dezvolte n paralel propriile
arhitecturi, n ncercarea de a obine un segment de pia ct mai mare, ns era prea trziu, deoarece
14
cota de pia a lui Intel i existena unei abundene a software-ului pentru arhitectura x86, vor
mpiedica apariia unei alte arhitecturi majore pe piaa utilizatorilor finali. Lupta ntre concureni se
va da utiliznd arhitectura Intel, iar competitorii vor trebui s creasc performana procesoarelor
proprii fr a rupe compatibilitatea cu aplicaiile informatice aprute anterior (compatibilitate
software retroactiv).
Microprocesorul Intel 80286, ce integra 30 mii tranzistori, a fost introdus pe pia n anul
1984 i a reprezentat un real succes, deoarece microprocesorul a fost conceput pe o platform
integral pe 16 bii, ce lucra la viteze de pn la 20 MHz i putea adresa pn la 16 MB de memorie
RAM (datorit magistralei de adrese care a fost extins la 24 de bii).
Pn la apariia procesorului 80286, calculatoarele personale au fost limitate la accesarea a
numai 1 MB de memorie RAM, din care numai primii 640 KB erau accesibili aplicaiilor. Odat cu
80286 a aprut un nou sistem de adresare a memoriei, numit mod protejat. Acest mod a permis
aplicaiilor s depeasc bariera de 1 MB de maniera urmtoare: memoria era mprit n
segmente, care se adresau dup formula: adresa de baz + un factor de decalare plecnd de la
aceast adres. Acest mod de acces la memorie a fost numit protejat, deoarece a implementat
dispozitive de protecie a accesului la segmentele de memorie. Datorit facilitii de acces protejat
la datele din memorie, procesorul 80286 a fcut posibil multitaskingul i n consecin a permis
dezvoltarea integratorului de aplicaii Windows 286.
Coprocesorul matematic care putea suplimenta puterea de calcul a procesorului 80286, s-a
numit 80287, iar mainile echipate cu un astfel de procesor au fost cunoscute sub numele de AT-uri
(Advanced Technology).
In anul 1986, a fost lansat pe pia microprocesorul Intel 80386. Noul procesor care rula
programe cu viteze de 16, 20, 25 sau 33 MHz, avea o structur de magistral de 32 de bii, fiind
capabil s adreseze pn la 4 GB memorie RAM. Setul de instruciuni de baz al microprocesorului
a fost completat cu instruciuni noi.
80386 a inclus un mod de gestiune a memoriei care permite sistemului de operare s mpart
i s gestioneze memoria n blocuri separate de 640 KB, rulndu-se astfel "aparent concomitent"
mai multe programe. Acest fapt a permis simularea mai multor "maini" dotate "virtual" cu
procesoare 8086 i n consecin a asigurat compatibilitatea cu programele scrise pentru vechile
procesoare 8086/8088, dar i crearea premiselor de exploatare "multitasking" a aplicaiilor.
Administrarea memoriei pe blocuri de memorie, iar n cadrul acestora pe pagini de memorie, a
permis procesorului att accesul la memoria intern, ct i accesul la memoria virtual pe un spaiu
rezervat pe hard disc.
Au existat dou modele de microprocesor 386 i anume DX, SX. Modelul 386DX este cel
standard, adic integreaz 275 mii tranzistori pe cip i are o arhitectur complet pe 32 de bii.. 386
SX este un procesor ce funcioneaz la 16 sau 20 MHz dar care are magistrala de date pe 16 bii i
magistrala de adrese pe 24 bii (adresnd astfel numai 16 MB de RAM). Un procesor 80386 i
poate completa puterea computaional printr-un coprocesor matematic 80387.
Generaia a IV-a este a fost marcat prin apariia n anul 1989 a microprocesorului Intel
80486. Procesorul care ngloba peste 1,2 milioane de tranzistori avea o structur complet de
magistral de 32 de bii i putea accesa 64 GB de memorie intern. Cipul 486 includea din fabricaie
un minimum de memorie cache de 8 KB pentru evitarea timpilor de ateptare n furnizarea datelor
de la memorie ctre procesor. Microprocesorul 486 includea i coprocesorul matematic, care la
sistemele anterioare era livrat opional.
15
Tehnologia superioar implementat pe procesorul 80486 a permis ca o instruciune s
parcurg mai multe etape izocrone (frecvene de tact ale ceasului intern), n fiecare etap,
instruciunea trecnd printre-o singur unitate a procesorului. Aceast fapt a condus la creterea vitezei
de lucru, prin creterea frecvenei ceasului intern, iar posibilitatea de a ncepe o nou instruciune n
fiecare ciclu exploateaz paralelismul la nivelul codului i implic o cretere a performanelor
microprocesorului. Acest mod de lucru este cunoscut sub numele de pipelining, i nu este prezent la
sistemele 386 sau anterioare, care pentru a executa o instruciune (format din mai multe
microinstruciuni) ntr-o unitate oarecare a procesorului, aveau nevoie de dou sau mai multe
frecvene de tact.
Procesorul 486 putea atinge viteze de prelucrare ntre 25 i 50 MHz, reuind astfel s
prelucreze pn la 54 MIPS (milioane de instruciuni pe secund). Referinele prezentate anterior
caracterizeaz modelul DX, care fa de modelul SX prezint cteva avantaje certe: un SX nu are
nglobat un coprocesor matematic, avnd cu 300 mii tranzistori mai puin pe cip, iar magistrala
extern de date este funcional pe numai 16 bii.
Variante mbuntite ale microprocesorului 486 DX au fost DX2 i DX4. Cei doi hibrizi au
fost construii multiplicnd frecvena de tact a lui DX cu 2 sau cu 3. Un procesor DX2 execut
instruciunile elementare de dou ori mai rapid dect un DX dublnd frecvena ceasului intern de la
25 la 50 de MHz sau de la 33 la 66 MHz. Microprocesorul DX2 era integrat din fabric, dar putea fi
disponibil i ca circuit separat OverDrive pentru modernizarea procesoarelor 486SX sau DX de
ctre utilizator. Procesorul DX4 lucra la frecvene de ceas de 75 sau 100 MHz i se baza pe triplarea
frecvenei de 25 sau de 33 MHz. De asemenea, un DX4 dubla memoria cache minim instalat a
unui calculator 486DX, aceasta fiind de 16 KB.
16
instruciuni de baz cu procesare n ordine, "y" etape de procesare n afara ordinii i "z" etape de
reordonare a codului i de scriere in memorie a rezultatelor.
Tendina tehnologiei pipeline este de a dubla, tripla sau cvadrupla lungimea pipeline-urilor,
pentru a micora de dou sau de mai multe timpul necesar execuiei unei etape, n condiiile
pstrrii sau creterii frecvenei de ceas intern. Fixarea acestui obiectiv, face ca pipeline-ul s fie
meninut ntotdeauna plin, neexistnd goluri ce poate ncetini succesiunea operaiilor elementare, i
astfel se evit situaia n care procesorul pierde timpi de calcul la execuia instruciunilor. n general,
existena unor pipeline-uri mai lungi, coroborat cu frecvene de ceas din ce n ce mai rapide, a fcut
s creasc eficacitatea prelucrrii datelor multimedia, datorit predictibilittii codului audio sau video.
Aceste aspecte pozitive sunt contrabalansate de aplicaiile de birou, care au un cod mai greoi de
executat i mai puin predictibil. Din aceast cauz, un procesor poate decide n mod eronat asupra
urmtoarei instruciuni de executat. n aceast situaie, pipeline-ul trebuie golit de instruciuni i
rencrcat, fapt ce atrage dup sine cicluri inutile ale microprocesorului, traduse n frecvene de tact
ale ceasului intern care nu atrag dup sine nici o prelucrare.
Decodorul de funciuni al procesorului are ataat un dispozitiv de predicie a salturilor, acesta
fiind de fapt un set de regitrii de instruciuni care stocheaz instruciunea urmtoare uneia de salt. Cu
alte cuvinte, prin prezicerea salturilor, procesorul calculeaz in avans cursul cel mai probabil pe care-l va
lua programul In derularea lui logic. Cnd un procesor scalar sau subscalar execut un salt ntr-o alt
zon a programului, dnd curs unei instruciuni de salt, acesta pierde un timp pentru a citi o nou
instruciune din memorie. Un procesor superscalar reuete s evite acest lucru prin intermediul
unui buffer pentru legturi (branch-uri), care prevede rezultatul instruciunilor de salt condiionat,
executnd citirea anticipat a instruciunilor de la o nou adres. Pentru noile procesoare
superscalare, construite pe o platform de 64 de bii, predicia codului a fost mult dezvoltat, astfel
nct procesorul poate ti cu anticipaie n ce direcie se va ndrepta codul, nainte de executarea
propriu-zis a operaiilor condiionale. mbuntirea fa de clasica predicie a salturilor, const n
determinarea adresei de memorie la care se va efectua saltul i aprecierea distanei fa de adresa
curent din program, urmnd ca procesorul s decid sau nu efectuarea propriu-zis a saltului.
Execuia speculativ a instruciunilor reprezint capacitatea procesorului de a executa acele
instruciuni situate dup adresa curent de program, care au cele mai mari anse de a fi utilitate
(alegerea unor instruciuni cu o mare probabilitate a necesitii de execuie). Atunci cnd procesorul
execut instruciuni, acesta utilizeaz tehnica speculativ de execuie a lor. tiind faptul c
instruciunile n curs de prelucrare se bazeaz pe mecanismul de predicie a salturilor, rezultatele
sunt nregistrate ca fiind "speculative". Odat ce utilizarea lor final a fost determinat,
instruciunile vor fi plasate n ordinea lor fireasc, conform logicii programului.
Arhitectura superscalar presupune existena unui secveniator intern (MIS - Microcode
Instruction Sequenzer), care identific grupuri de instruciuni ce nu vor intra n conflict unele cu
altele i nu necesit utilizarea simultan a unei anumite uniti, transmind mai departe acest grup spre
prelucrare. Aceast facilitate, numit i analiza dinamic a fluxurilor de date presupune o analiz n
timp real a datelor din procesor, pentru a determina dependenele dintre date i gradul de ocupare al
regitrilor de instruciuni n vederea detectrii posibilitilor de execuie n "in-ordine" a
instruciunilor. Altfel spus, procesorul analizeaz care instruciuni pot fi prelucrate independent i
verific dac acestea depind logic i funcional de alte instruciuni. Aplicnd principiul "Out of
Order" procesorul definete ordinea optim de execuie a instruciunilor, evitnd succesiunile de
instruciuni care ar duce la apariia unor timpi mori n prelucrarea datelor. n concluzie, se poate
afirma conform principiului de prelucrare n afara ordinii, c procesorul reuete s evite ateptrile
deoarece unitatea de control a execuiei programeaz instruciunile ntr-o ordine care s foloseasc
la maximum resursele procesorului, iar acestea sunt rulate imediat ce operanzii devin disponibili,
fr a face schimbri permanente n memorie. Pasul final const n scrierea ordonat n memorie a
rezultatelor, asigurnd compatibilitatea cu setul complex de instruciuni x86 i cu buna funcionare
a programului.
Pentru asigurarea unui nalt grad de ocupare a multiplelor conducte, aplicaiile informatice
trebuie rescrise pentru 64 de bii, firete folosind sisteme de operare pe 64 de bii. Ca s suporte
17
execuia mai multor instruciuni, microcalculatoarele superscalare au nevoie de un sistem de
magistrale de comunicaii cu o lime de band semnificativ (debit de date n unitatea de timp) i o
vitez corespunztoare unui transfer performant de date.
Microprocesorul PentiumPro (PPro sau P6), realizat n 1996, a fost un continuator a tot ce a
inovat i realizat Pentium n domeniul tehnologiei RISC. Pentium Pro a beneficiat de o arhitectur
superscalar pe trei ci, dispunnd de uniti de asamblare a instruciunilor prin care se pot prelucra
i executa n paralel trei instruciuni pe o frecven de tact.
PentiumPro a fost conceput iniial cu o tehnologie de 0,6 microni, urmnd ca la a doua
generaie de astfel de microprocesoare s beneficieze de o tehnologie superioar de 0,4 microni.
Cipul, care nglobeaz mai mult de 15,5 milioane tranzistori, beneficiaz de un design nou, avnd o
form dreptunghiular. Ulterior, pentru unele modele s-a revenit la forma ptrat.
PPro are dou nivele de cache : primar i secundar, fiind proiectat pentru prelucrarea
paralel a comenzilor, avnd n acest sens trei canale. Triplul sistem pipcline decupeaz
instruciunile x86 care sosesc n format RISC, nainte de a le transmite celor trei uniti de
asamblare a execuiei. Procesorul este proiectat s funcioneze la frecvene de tact de peste 150
MHz (modelele consacrate fiind la 200 i 233 MHz) i este integrat ntr-o logic de multiprocesare
simetric (SMP - Symetrical Multi Processing), ntr-un calculator putnd exista pn la patru
procesoare P6 ce pot comunica intre ele.
Procesorul este compus din dou cipuri separate, primul coninnd procesorul propriu-zis si
cache-ul primar (ce conine 8 KB pentru date i 8 KB pentru instruciuni), iar al doilea integreaz
cache-ul secundar de 256 KB (10 milioane de tranzistori), care este legat de procesor printr-o
magistral de 64 de bii prin care se realizeaz transferul de date la jumtate din viteza
microprocesorului.
Pentium MMX, aprut n 1997 este un microprocesor superscalar cu dou instruciuni pe
frecvena de tact ce cuprinde un set lrgit de instruciuni x86 (57 noi instruciuni) capabile s
prelucreze noi tipuri de date i s mreasc performanele aplicaiilor multimedia.
Tehnologia MMX (Muli Media eXtension) permite prelucrarea rapid a unor mari iruri de
date simple care se repet de un numr de ori ntr-o aplicaie multimedia (grafic, imagine, sunet,
etc). De exemplu, aplicaiile multimedia sau de comunicaii utilizeaz bucle repetitive care nu ocup
mai mult de 10% din codurile (instruciunile) aplicaiei, dar care ocup aproximativ 90% din timpul
afectat execuiei respectivelor programe. Puternica tehnologie MMX utilizeaz cu mare eficien
facilitile execuiei dinamice, fapt care permite creterea de o manier important a performanelor
aplicaiilor multimedia i de comunicaii.
Procesorul Pentium II (7,5 milioane de tranzistori pe cip) a fost un sistem superscalar pe trei
ci ce combina micro-arhitectura avansat a lui PentiumPro (multiprelucrare simetric i execuie
dinamic pe trei ci) cu tehnologia MMX (set de instruciuni i cache L1 mrit).
18
procesorului, performanele lui PII n termeni de vitez de execuie s-au triplat fa de predecesorul
Pentium. Explicaia acestei creteri de vitez mai rezid n arhitectura DIB (Dual Independent Bus),
prin care bus-ul cache-ului de nivel 2 este independent de busul plcii de baz. Astfel, procesorul
Pentium II poate utiliza dou magistrale n mod simultan (frecvena magistralei externe: 50MHz;
frecvena plcii de baz-FSB: 100 MHz).
Procesorul Pentium III, construit iniial n 1999 pe o tehnologie de 0,18 microni a funcionat
la frecvene cuprinse ntre 450 i 600MHz. Pentru a atinge pragul de 1GHz, frecvena plcii de baz
a fost modificat de la 100MHz, la 133 MHz i ulterior la 200MHz. Acest procesor implementeaz
n decodorul su de funciuni 71 de instruciuni noi, orientate ctre prelucrarea fluxurilor de date. n
plus, pe arhitectura superscalar a procesorului Pentium III au fost introdui 8 regitrii de 128 de
bii, destinai calculelor n virgul mobil. Principala modificare a arhitecturii pe 0,18 microni
const n integrarea chiar pe pastila de siliciu a unei memorii cache de nivel 2 de 256 KB.
Tot n anul 1999 apare pe pia principalul concurent a lui P III, n persoana procesorului
AMD Athlon. Acest procesor integreaz n cele 9 pipeline-uri ale sale mai multe stagii specializate
(10 stagii pentru calculele cu ntregi, 15 stagii pentru calcule n virgul mobil), 3 decodoare de
funciuni CISC-RISC i o magistral procesor superlarg.
n anul 2000 apare pe pia ultimul procesor de generaia a VII-a: Pentium IV (cu nume de
cod Willamette). Nucleul acestui procesor coninea un sistem pipeline cu 20 de stagii, un puternic i
evoluat motor execuie a instruciunilor, o memorie cache de nivel 2 de mare vitez, o frecven
FSB de 400 MHz.
19
Bibliografie:
Bazele tehnologiei informaiei i comunicaiilor, Editura InfoMega Bucureti 2004.
Autori: Prof. univ. dr. Ilie Tama, Prof. univ. dr. Florentina Berbec, Prof. univ. dr. Pavel Nstase,
Prof. univ. dr. Bogdan Ionescu, Lect. Univ. dr. Marinela Vrncianu, Lect. Univ. dr. Mirela Oancea,
Lect. Univ. dr. Florin Mihai, Conf. univ. dr. Iuliana Ionescu.
Cursuri Bazele tehnologiei informaiei ASE Bucureti, profesor Florentina Berbec
Internet
20
Anexa:
21
22
23
24
25