You are on page 1of 2

Arhitectura P6 utilizeaz! tehnica pipe line cu "4 stagii de prelucrare dup! cum urmeaz!

:


Stagiul
pipe
line
Descriere
" - determin! valoare pointer-ului de instruc#iuni
- predic#ia dinamic! a salturilor ( se utilizeaza un algoritm adaptive cu 2 niveluri :
primul nivel pe 4 biti al doilea nivel cu contor cu saturare pe 2 biti figura ")
2-4 - nc!rcarea instruc#unii din mamoria cache ( maxim 2 instruc#iuni de 32 biti fiecare)
- determinarea limitelor fiec!rei instruc#iuni
- transferul instruc#iunilor c!tre decodorul de instruc#iuni ( n cuvinte de "6 bi#i)
5-6 - decodificarea instruc#iunilor ntr-o serie de micro-opera#ii
- preg!tire pentru execu#ia out-of order
- trei decodificatoare opereaz! n paralel :
- 2 decodificatoare simple ( pentru majoritatea opera#iilor pe ntregi)
- " decodificator complex ( pentru instruc#iuni complexe)
- rezultatul final este o secven#! de micro-opera#ii
- fiecare micro-opera#ie con#ine 3 operanzi: 2 operanzi surs! $i " operand destina#ie
- micro-opera#iile au lungime mai mare dect n cazul arhitecturii RISC deoarece
trebuie s! acopere $i cazul opera#iilor de virgul! mobil!
- majoritatea instruc#iunilor snt translatate n " pn! la 4 micro-opera#ii
- dac! snt necesare mai mult de 4 micro-opera#ii atunci instruc#iunea este transferat!
la secven#orul de microinstruc#iuni ( Microcode Instruction Sequencer)
- se efectueaz! predic#ia salturilor statice
7-8 - reasignarea registrelor logice cu registre fizice cu ajutorul unei tabele de asociere
- procesorul are doar 8 registre de ntregi $i 8 registre de virgul! mobil! ca register
de uz general, vizibile de c!tre programator
- redenumirea registrelor adaug! 40 de registre de uz general
- micro-opera#iile snt transferate n buffer-ul de reordodare ( Reorder Buffer)
- buffer-ul de reordonare (ROB) este o memorie adresabil! prin con#inut organizat!
dup! o politic! FIFO
- micro-opera#iile snt stocate n ROB n diferite stadii de execu#ie (n a$teptarea
rezolv!rii dependen#ei ntre instruc#iuni sau a eliber!rii resurselor necesare)
- micro-opera#iile snt transferate unit!#ii de rezervare (reservation station)
9-"0 - unitatatea de rezervare are 20 de intr!ri
- unitatea de rezervare distribuie micro-opera#iile c!tre " pn! la 5 unit!#i de
execu#ie:
- dou! unit!#i aritmetice pentru ntregi
- dou! unit!#i de adresare a datelor ( pentru instruc#iuni load / store)
- o unitate aritmetic! de virgul! mobil!
- unitatea de rezervare poate distribui micro-opera#iile ntr-o perioad! de ceas pna la
3 perioade de ceas ( dac! unit!#ile de calcul snt ocupate)
- distribu#ia micro-instruc#iunilor c!tre unit!#ile de calcul este determinat! de bi#ii de
stare din ROB
- dac! mai mult de o singur! micro-opera#ie este gata pentru transfer n unitatea de
rezervare, se vor allege acele micr-opera#ii care snt generate n secven#!
"" - se execut! micro-opera#iile


"2-"4 - se semnalizeaz! ( printr-un flag) completarea micro-opera#iile
- cnd unitatea de a$teptare (retirement unit) g!se$te o micro-opera#ie completat!
atunci unitatea de a$teptare stocheaz! rezultatele n RRF ( Retirement Register File);
RRF reprezint! un set de 8 registre de ntregi $i 8 registre de virgul! mobil!
- unitatea de a$teptare rearanjeaz! micro-opera#iile n ordinea original! $i
monitorizeaz! apari#ia ntreruperilor, excep#iilor, punctelor de ntrerupere $ a
salturilor prezise n mod eronat



Figura " Predic#ia salturilor cu algoritm adaptive cu 2 niveluri

You might also like