Înregistrați fișierul

Din Wikipedia, enciclopedia gratuită

Sistemul de instruire al microprocesorului (arhitectura) definește aproape întotdeauna un set de registre care vor stoca datele pentru procesare de către dispozitivele funcționale ale cipului. În procesoarele cele mai simple, astfel de registre arhitecturale sunt afișate unul câte unul într-un fișier de registru fizic. În procesoare mai complexe, se utilizează redenumirea înregistrărilor, ceea ce vă permite să modificați dinamic corespondența dintre registrele hardware și cele arhitecturale în timpul execuției.

punerea în aplicare

În mod tradițional, fișierul de registru este implementat ca o serie de celule de stocare, citite pe verticală. Cuvintele sunt aranjate în linii orizontale (linii de cuvinte), iar la citirea celulelor le dau valoarea liniilor de biți verticale (linii de biți). În partea de jos, aceste linii sunt conectate la amplificatoare care convertesc semnalele de la celule slăbite în timpul transmisiei la semnale booleene cu amplitudine completă. În partea stângă există decodoare, activând un șir corespunzător registrului sau registrelor ordonate. Fișierele cu registru mare sunt uneori organizate ca un mozaic al mai multor fișiere de registru simplificate și redate.

Fișierele de înregistrare conțin o linie de cuvinte pe port, câte unul câte unul pentru fiecare bit al cuvântului pentru fiecare port de citire și două linii de biți pe bit pentru fiecare port de înregistrare. De asemenea, fiecare celulă trebuie să aibă intrări de putere Vdd și Vss. În consecință, odată cu creșterea numărului de porturi, suprafața necesară cablajului crește în mod quadratic, iar zona ocupată de tranzistori este liniară. La un moment dat, poate fi mai optim pentru zona sau întârzieri au mai multe fișiere de registru cu informații duplicat, și o jumătate de lectură porturi în fiecare fișier de un registru mare, dintr-o dată cu toate porturile de citire.

De exemplu, un fișier de registru în întregul ALU al microprocesorului MIPS R8000. 9 având un port de citire, scriere portul 4, care conține 32 de registre de 64 biți implementate pe tehnologia de proces și 0,7 microni, este dimensionat astfel încât este vizibil cu ochiul liber chiar și de la o distanță de aproximativ 30 cm.

  • Decodorul este de obicei împărțit într-un decodor și decodor propriu-zis.
  • Decodorul este o secvență de elemente AND (gate-AND) care expun liniile de cuvinte.
  • Pentru fiecare port de citire sau scriere, este necesar un decodor. De exemplu, dacă un fișier are 4 porturi de citire și 2 porturi, va avea 6 linii de cuvânt în fiecare celulă de memorie din matrice și 6 elemente AND (poarta AND) pentru fiecare rând din decodor.

Un fișier de registru tipic cu 3 porturi, în care este posibil să se citească din două registre simultan și să se scrie într-un singur registru, constă din celule similare cu cel prezentat.

Schema de bază a celulei biți:

  • Starea este stocată într-o pereche de invertoare.
  • Citirea are loc prin intermediul tranzistorului NMOS pe linia de biți (tranzistorul este deschis de linia de cuvânt a acestui port)
  • Datele sunt înregistrate prin închiderea uneia sau a celeilalte părți la masă prin intermediul a două tranzistoare NMOS.

Deci, fiecare port de citire necesită un tranzistor suplimentar per celulă, portul de scriere necesită 4 tranzistoare.

microarhitecturii

În multe implementări ale fișierelor de registru, nu există o protecție specială împotriva încercărilor de scriere în aceeași celulă din mai multe porturi de înregistrare. În schimb, dispozitivul de planificare trebuie să se asigure că la fiecare ciclu de ceas nu se va scrie mai mult de o instrucțiune în nicio celulă. Dacă mai multe instrucțiuni sunt scrise în aceeași celulă, numai una dintre ele trebuie să aibă o linie "enable enable" activată.

O pereche de invertoare de rezervă necesită ceva timp pentru a stabiliza starea după începerea operației de scriere, în timpul căreia citirea din celulă va fi fie mai lungă, fie vor fi returnate gunoi. Prin urmare, în multe implementări, sunt introduse multiplexoare prin care se pot închide datele de scriere direct la porturile de citire atunci când se înregistrează simultan scrierea și citirea în același registru. Aceste multiplexoare sunt adesea doar o parte a unei rețele complexe de by-pass care transferă rezultatele direct între diferitele dispozitive funcționale ale procesorului, fără a aștepta ca acestea să fie scrise în registre. (Aceasta este, în cazul în care această măsură este una FU necesită, la datele de intrare este de ieșire a unui alt FU în ciclul anterior, acestea pot fi trimise pe șoseaua de centură și nu prin citirea și scrierea la dosar registru, care poate necesita mai multe cicluri. Citirea vine de la ocolitoare, Aceeași intrare în registru are loc simultan cu funcționarea primului FU.)

Scrieți o recenzie despre "Înregistrați fișierul"

notițe

Articole similare