Microarhitectura PENTIUM

10
Microarhitectura PENTIUM Arhitectura Pentium a fost introdus ă de firma Intel pentru procesoarele IA-32. Aces arhitectur ă se reg ăse ş te în procesoarele Pentium III ( arhitectura P6) ş i în procesoarele Pentium IV ( arhitectura P4). Arhitectura Pentium este o arhitectur ă superscalar ă ş i pipe-line. e utili!ea! ă tehnici de prelucrare paralel ă astfel încît" în medie" procesoarele Pentium sînt capa#il ă e$ecute complet 3 instruc ţ iuni într-o perioad ă de tact. Arhitectura Pentium utili!ea! ă o structur ă pipe-line cu %2 stagii. Principalele caracteristici a P6 sînt urm ătoarele& tructura pipe-line a arhitecturii este di'i!at ă în 4 sec ţ iuni & memoria cache (primul ş i al doilea ni'el)" înc ărcare decodificare ( fetch/decode )" unitatea de e$ecu ţ ie (inclusi' e$ecu ţ ia instruc ţ iunilor out of order * + adic ă a instruc ţ iunilor care nu urmea! ă ordinea de la înc ărcare ci se e$ecut ă înainte de instruc ţ iuni înc ăcate anterior" dar care a şteapt ă eli#erarea anumitor resurse pentru a fi încheiate) ş i sec ţ iunea de asteptare ( retirement ) pentru instruc ţ iunile completate care asteapta reasam#larea lor in flu$ul normal ,$ist ă dou ă nilele de memorie cache. Primul ni'el ( o de instruc ţ iuni ş i o de date) este imediat lîng ă structura pipe-line. Al doilea ni'el (de dimensiune 2/6 o pîn ă la %0o) este conectat direct cu procesorul printr-un #us de 64 de #i ţ i. Partea central ă a arhitecturii P6 este dat ă de mecanismul performant de e$ecu ţ ie a intruc ţ iunilor ( inclusi' a intruc ţ iunilor out of order *) numit ş i execuţie dinamică . ,$ecu ţ ia dinamic ă încorporea! ă trei concepte de procesare a datelor& predic ţ ia salturilor anali!a dinamic ă a flu$urilor de date şi instruc ţ iuni e$ecu ţ ia speculati' ă Predic ţ ia salturilor repre!int ă o tehnic ă modern ă pentru o# ţ inerea unei performan ţ e ridicate în structurile pipe-line. Aceast ătehnic ă permite procesorului s ă decodifice instruc ţ iuni în afara #uclelor de program pentru a ţ ine ocupat ă tot timpul structura pipe-line. Arhitectura P implementea! ă un algoritm optimi!at de predic ţ ie a direc ţ iei salturilor.

description

despre Microarhitectura PENTIUM

Transcript of Microarhitectura PENTIUM

Microarhitectura PENTIUM

Arhitectura Pentium a fost introdus de firma Intel pentru procesoarele IA-32. Acest tip de arhitectur se regsete n procesoarele Pentium III ( arhitectura P6) i n procesoarele Pentium IV ( arhitectura P4).Arhitectura Pentium este o arhitectur superscalar i pipe-line.Se utilizeaz tehnici de prelucrare paralel astfel nct, n medie, procesoarele Pentium snt capabile s execute complet 3 instruciuni ntr-o perioad de tact.

Arhitectura Pentium utilizeaz o structur pipe-line cu 12 stagii. Principalele caracteristici ale arhitecturii P6 snt urmtoarele:

1. Structura pipe-line a arhitecturii este divizat n 4 seciuni : memoria cache (primul i al doilea nivel), ncrcare/decodificare (fetch/decode), unitatea de execuie (inclusiv execuia instruciunilor out of order adic a instruciunilor care nu urmeaz ordinea de la ncrcare ci se execut nainte de instruciuni nccate anterior, dar care ateapt eliberarea anumitor resurse pentru a fi ncheiate) i seciunea de asteptare (retirement) pentru instruciunile completate care asteapta reasamblarea lor in fluxul normal de instructiuni..

2. Exist dou nilele de memorie cache. Primul nivel ( 8ko de instruciuni i 8 ko de date) este imediat lng structura pipe-line. Al doilea nivel (de dimensiune 256ko pn la 1Mo) este conectat direct cu procesorul printr-un bus de 64 de bii.

3. Partea central a arhitecturii P6 este dat de mecanismul performant de execuie a intruciunilor ( inclusiv a intruciunilor out of order) numit i execuie dinamic. Execuia dinamic ncorporeaz trei concepte de procesare a datelor:

predicia salturilor analiza dinamic a fluxurilor de date i instruciuni execuia speculativ

Predicia salturilor reprezint o tehnic modern pentru obinerea unei performane ridicate n structurile pipe-line. Aceasttehnic permite procesorului s decodifice instruciuni n afara buclelor de program pentru a ine ocupat tot timpul structura pipe-line. Arhitectura P6 implementeaz un algoritm optimizat de predicie a direciei salturilor.

Analiza dinamic a fluxului de date i instruciuni se realizeaz n timp real; se determin dependena dintre date i registre i se detecteaz oportunitile pentru execuia instruciunilor out of order.

Unitatea de execuie poate monitoriza simultan mai multe instruciuni i va executa instruciunile n ordinea n care se optimizeaz utilizarea multipl a unitilor de execuie ale procesorului, evident cu meninerea integrit ii datelor i a corectitudinii programului. n acest mod se menin unitile de execu ie ocupate ct mai mult timp chiar atunci cnd apar dependene ntre instruciuni i situaii de cache miss (negasire a informaiei dorite n memoria cache).

1

Execuia speculativ se refer la abilitatea procesorului de a executa instruc iuni n afara unei bucle condiionale care nu a fost nc rezolvat i n final de a produce rezultatele n ordinea execuiei originale a fluxului de instruciuni.

Pentru a face execuia speculativ posibil, arhitectura P6 decupleaz fazele de transmitere i execuie n raport cu faza de producere a rezultatelor finale.

Unitatea de execuie va analiza fluxul de date i instruciuni i va executa toate instruciunile pregtite pentru aceasta ( cu toate resursele i datele disponibile).

Rezultalele vor fi stocate n registre temporare urmnd ca ulterior s fie asamblate n mod corespunztor ordinii originale de execuie a fluxului de instruciuni.

Unitatea de ateptare (retirement ) va conine toate instruciunile care datorit unor depeendene a datelor (operanzilor) sau a faptului c unitile de calcul necesare nu snt disponibile (snt ocupate de alte instruciuni) nu pot fi executate sau completate.

Prin combinarea prediciei salturilor, analizei dinamice a fluxului de date i instruciuni i a execuiei speculative, arhitectura P6 nltur constrngerea unei secvenri lineare a instruciunilor ntre fazele tradiionale de ncrcare (fetch) i execuie. Procesorul poate continua s decodifice i s execute instruc iuni chiar dac exist mai multe nivele de salturi n program. Implementarea prediciei salturilor i a decodificatoarelor de instruciuni performante menin structura pipe-line plin . Pe de alt parte execuia speculativ permite utilizarea, n paralel, a tutiror unitilor de calcul ale

procesorului. n final rezultatele temporare vor fi asamblate n aa fel nct s se menin integritatea datelor i coerena programului.

Arhitectura P6 de baz este prezentat n figura 2.1.n figura 2.2 este prezentat arhitectura P6 cu adaugarea nivelului 2 al memoriei

cache.

2

Figura 2.1 Microarhitectura P6

3

Figura 2.2 Microarhitectura P6 cu 2 nivele de memorie cache

4