Știu, zSeries prelegere Intuit micro-arhitectură

procesoare micro-arhitectură

procesoare microarhitectura z9HH modele, z8XX eServer zSeries [2.17, 2.18] este o dezvoltare în continuare a procesoarelor S390 G4 patra micro-arhitectură generație [2.16]. procesoare G4 au organizație pe 32 de biți, o instrucțiune combinată și date cache, banda transportoare șase niveluri și permis de asociere în schema modulului MCM multicip (10 + 2) -way (10 și procesorul auxiliar centrale 2). BFP (G5), o creștere a numărului de procesoare în schema IMS (12 + 2) -WAY etc. - In modelele ulterioare au fost adăugate S390 noi soluții arhitecturale, cum ar fi formatul în virgulă mobilă în conformitate cu standardul IEEE-754 binar Floating Point. La modelele z9HH, z8XX z / Arhitectura adăugări majore sunt:


Fig. 2.23. Structura procesorului duplicat

CACHE - primul nivel de memorie implementat pe același cip cu un procesor și canale în modelul / Arhitectura Z este împărțit în două instrucțiuni și date cache independente. În arhitecturile anterioare utilizați comenzile cache-ul și datele Unite. Ambele Cache și controlerele lor sunt concentrate în unitatea de control ien (tampon element de control).


Fig. 2,24. organizare procesor pe banda rulanta

În E unitate de procesare efectuează comenzi de operație de citire din coada de instrucțiuni, pe operanzi care sunt în registrele de program accesibil și tamponul operandului. Pentru aceasta, sunt utilizate două nivele, primul (E1) implementează operația în ALU. iar al doilea (WR) - stochează rezultatul într-un registru sau memorie. Cele mai multe dintre operațiunile din punctul ALU fix are un ciclu de ceas, și un punct ALU plutitor cu - trei etape, operații complicate pentru numărul de cicluri poate ajunge la 100 sau mai mult. Pentru a accelera operațiunile din ALU cu ajutorul unui transportor intern. Înregistrarea rezultatul operațiunilor efectuate în registrele sau cache - memorie.

Schema bloc a procesorului prezentat în Fig. 2.25.


Fig. 2.25. circuite de prelucrare structurală

Unitatea de procesare E include o memorie registru și două ALU pentru efectuarea operațiunilor de pe fix și virgulă mobilă. Ca surse de operanzilor ALU folosite registre programatică accesibile, de uz general înregistrează GR și un punct de flotant FPR. Registrele de acces AR și operanzi tampon de citire din memorie. Rezultatele operațiunilor pot fi stocate în registre GR, FPR sau în memorie.

Main ALU pentru operare punct fix cuprinde trei intrare de 64 biți registrele A-reg, B-reg, E-reg, registrul de ieșire C-reg, și următoarele căi de procesare:

  • 64-bit sumator binar pentru a schimba octetul biți oportunitate și inversoare operanzii de intrare;
  • bloc de 64 de biți pentru efectuarea de operații logice la nivel de bit și operațiunile de transfer;
  • 64-bit sumator zecimală pentru operații cu numere zecimale codificate în mod binar, inclusiv diviziunea și multiplicarea performante;
  • transformări bloc BCD pentru a trece de la o prezentare la alta.

ALU pentru virgulă mobilă (FPU) include 2 de intrare A-reg, B-reg și o ieșire C-reg registre de 64 biți, cu formate pipeline numere de cale de prelucrare a HFP, BFP. FPU de conducte este format din 5 nivele și efectuează cele mai multe operații, cu o capacitate de o operație pe ciclu de ceas.

operațiuni ale accelerației în ALU se realizează prin introducerea de procesare a conductei. care niveluri suplimentare (E-1. E0 în Fig. 2.24) sunt aranjate în nivelurile de transportor de bază anterioare executării operațiunilor în ALU. Nivelul E-1 generează un cuvânt de control cifre pentru a prelua operanzi din memorie registru și formarea măștii. Nivelul E0 este utilizat pentru citirea operanzilor.

Unitatea de control accesează memoria în ien include două instrucțiuni independente și memoria cache de date, precum și o interfață cu memorie cache L2-al doilea nivel. Ambele au același volum cache 256 KB, circuite de control similare și sunt parțial dimensiunii asociative (patru way- set-asociativ) cache linie de 256 octeți. Bit de eșantionare de echipe Cache - patru cuvinte (16 bytes). cache-ul de date permite o trecere (write-through) de înregistrare și stratificat în două blocuri, care permite tratamentul simultan cuvinte duble, de exemplu, pentru a efectua citirea și scrierea de la un bloc la altul. Comunicarea între instrucțiunea și cache-ul de date, cum ar fi intrările de date cache din comenzile cache pot fi executate prin L2 cache, Reversed (write-back) și își dă seama de înregistrare conținutul cache pentru a menține comenzi de protocol și de date pentru coerență toate procesoarele de sistem.

Atunci când se injectează în primul schimb de date cache de nivel se realizează într-un ciclu, altfel tratamentul a început ciclul în al doilea L2 cache de nivel.

Informații de caractere de conversie de unități de compresie efectuate comenzi definite TR, TRT, TRE et al., Și este un singur octet de conversie a operandului sursă în rezultatul operanzi folosind tabelul de conversie octet indexat operandului sursă.

Date de intrare în unitatea vine în E coprocesor unitate de procesare de autobuz de ieșire, iar rezultatul este dat în blocul R cu o intrare ulterioară în memorie. In blocul oferă intrare și ieșire tampoane de 256 bytes. În plus, unitatea are o interfață cu memoria printr-un cache comenzi pentru a citi din memoria de dicționare și tabele necesare pentru a efectua conversii. Atunci când ambalarea / despachetarea dicționar volum poate ajunge la 64 și HF este citit linie cu linie. Tabelul de comenzi pentru conversia caracterelor are un volum de 256 de octeți este citit și complet disponibil la buffer suplimentar bloc.

  • completat toate intrările din memoria cache L2, inițiată de performanța echipei;
  • în blocuri I, E, resetari BCE;
  • tampoanele TLB, ALB. directorul cache este purjat și matrice;
  • stocate de recuperare de întrerupere, care va fi executat după procesul de recuperare;
  • toate înregistrările din memoria registru bloc R verificat corectitudinea prin codul de control și restaurat în toate blocurile, în cazul în care acestea au fost primite, în cazul în care procesorul cauza de eroare permanentă se traduce într-o stare de FAIL;
  • este lansat comanda, în conformitate cu starea redusă, în cazul în care în viitorul apropiat, după ce se produce din vina timp de pornire, procesorul este transferat la FAULT de stat, în caz contrar în continuare funcționarea normală a procesorului.

Deoarece blocurile R, BCE nu este duplicat, controlul lor se realizează prin utilizarea de codificare redundante pentru detectarea erorilor și de corectare.