CATEGORII DOCUMENTE |
la care se mai adauga o perioada (sau mai multe, in functie de tipul memeoriei) de asteptare la memorie.
Prin inspectie se stabileste numarul de perioade de ceas pentru diferite categorii de instructiuni:
Tip instructiune Cicluri de ceas Cicluri de asteptare la Memorie
Memorare: 4 1
Citire 5 1
LB, LBU,..,LW 6 1
UAL 3 --
Set 4 --
Beq (ex neex.) 2 --
Bne (executat) 2 --
Bne (neexecutat) 1 --
Jmp 1 --
Jmp & Link 2 --
Folosind mixul cunoscut GCC si considerand un ciclu de asteptare pentru operatia cu memoria rezulta: CPI = 7,68 . Rezultatul este cu o unitate mai mare decat in cazul controlului Hardware, din cauza ciclului suplimentar de testare a existentei unei cereri de intrerupere.
In raport cu implementarea Hardware a controlului sunt mai lente instructiunile: Memorare, Citire si Beq (ex)
Reducerea costurilor si cresterea performantelor DLX pentru comanda microprogramata.
Lungimea microinstructiunii in variantele campurilor necodificate si codificate:
Necodificat 7 10 9 9 5 6 10 6
Codificat 3 4 4 4 5 3 4 6
In varianta campurilor necodificate lungimea microinstructiunii este de 62 biti.
In varianta campurilor codificate (unde este cazul) lungimea microinstructiunii se reduce la 33 de biti. Campurile Constanta si Adresa de salt nu se decodifica.
Format unic si formate multiple de microinstructiuni.
S-a constatat ca, in cazul formatului unic codificat pe campuri, lungimea microinstructiunii este de 33 de biti. In continuare se vor considera doua formate pentru:
instructiunile UAL/Jmp, care formeaza grupul/tipul A/J si
instructiunile Transfer/Diverse/Ramificare, care formeaza grupul/tipul T/D/B.
Formatul A/J:
Numar biti: 1 3 4 4 4 6 22
Formatul T/D/B:
Numar biti: 1 3 4 4 4 6 22
Observatii:
conditia testata este stabilita de operatia precedenta;
campul Div a fost extins la 4 biti pentru a corespunde ca lungime cu Sursa1;
cele doua tipuri de microinstructiuni se deosebesc prin bitii cei mai semnificativi.
Exemplu: Sa se rescrie microcodul pentru fazele: citire instructiune si testare intrerupere, folosind cele doua tipuri de microinstructiuni T/D/B si A/J.
Pentru faza de citire a instructiunii si pentru tratarea intreruperii vor aparea 6 instructiuni, fata de cele 5 originale, intrucat microinstructiunea 2 se expandeaza in doua microinstructiuni.
0 ifetch: T/D/B -- -- -- intr? intr:
1 iloop: T/D/B -- -- cit.instr. Mready? iloop:
2 -- A/J CP ADD CP const 4
3 -- T/D/B -- -- TS1 <- RG[rd] DCD1? --
TS2 <- RG[rt]
4 intr: A/J RAI PASS S1 CP necond 5
5 -- A/J CP SUB TEMP TEMP ifetch:
Pentru a elimina ciclul, care apare in plus fata de solutia cablata , la BEQZ, cand nu se efectueaza ramificarea (doua cicluri), se poate introduce un test "nonzero", deoarece campul pentru conditie permite acest lucru.
Loc. Etich. Dest OpUAL Sursa1 Sursa2
50 beq: -- SUB TS1 const. 0 -- not 0? ifetch:
51 -- CP ADD CP imed16 -- -- necond ifetch:
CPI se reduce de la 7,68 la 7,63, dar ramane mai mare decat la comanda cablata (5,9/6,3).
O alta solutie pentru reducerea CPI . Testul pentru intrerupere necesita o perioada de ceas. Daca DCD1 efectueaza testul si pentru intrerupere, realizand saltul la microinstructiunea corespunzatoare, se economiseste un ciclu la fiecare instructiune.
Loc. Etich. Dest OpUAL Sursa1 Sursa2 Const. Div. Cond. Adr.Salt
0 ifetch: -- -- -- -- -- cit.instr Mready? ifetch:
1 -- CP ADD CP const. 4 TS1<-RG[rd] DCD1? --
TS2<-RG[rt]
2 intr: RAI SUB CP const. 4 -- -- --
3 -- CP PASS S2 -- const. 0 -- necond. ifetch:
CPI se reduce la 6,62.
Nota: La VAX11 20% dintre instructiuni ocupa 60% din microcod si se executa in 0,2% din timp!
Plecand de la aceasta observatie s-au realizat doua variante: (1) Set complet de instructiuni - implementare VLSI si (2) Subset de instructiuni- Microvax32- implementare VLSI.
(1) Set complet de instr. (2) Subset de instr.
% Implementare din Set 100% 80%
Dimens. Mem. de control 480K 64K
Nr. circuite pt. procesor. 9 2
% din performanta VAX11/780 100% 9%
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 1172
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved