1 / 23

Structura de principiu pentru execuţie multiciclu

Structura de principiu pentru execuţie multiciclu. Structura multiciclu adaptat ă MIPS. Semnificaţia comenzilor pe un bit. Semnificaţia comenzilor pe doi biţi. Principii ȋn analiza funcțion ă rii.

solada
Download Presentation

Structura de principiu pentru execuţie multiciclu

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Structura de principiu pentru execuţie multiciclu

  2. Structura multiciclu adaptată MIPS

  3. Semnificaţia comenzilor pe un bit

  4. Semnificaţia comenzilor pe doi biţi

  5. Principii ȋn analiza funcționării • Unitatea temporală ȋn analiza funcționării este ciclul, adică perioada semnalului de tact. • Toate registrele sunt acționate pe un front al impulsului de tact deci modificarea informației de la intrare pe durata unui ciclu nu are importanță. • Pe durata unui ciclu se pot desfăşura ȋn paralel mai multe operații. • Citirea sau scrierea din/ȋntr-un registru independent se realizează pe durata ciclului in care se utilizeaza datele citite sau se produc datele inscrise. • Citirea din memorie şi scrierea ȋntr-un registru general necesită un ciclu adițional. • Pentru simplificarea schemei de comandă se acceptă uneori operații redundante benigne (care nu influențează rezultatul final).

  6. Arhitectura maşinii de stare

  7. Ciclul 1 - faza de FETCH • Necesită un singur ciclu. • IR <= Memory[PC]; • PC <= PC+4; Ciclul 2 - decodificarea instrucțiunii şi extragerea datelor din registrele generale • Necesită un singur ciclu. • A <= Reg[IR[25:21]]; • B <= Reg[IR[20:16]]; • ALUOut <= PC+(sign-extended (IR[15:0]) << 2);

  8. Faza de FETCH

  9. Ciclul 3 - execuție, calcul adresă de memorie, finalizarea ramificării • Instrucțiuni cu referire la memorie(lw, sw) ALUOut <= A+sign-extend (IR[15:0]); • Instrucțiuni tip R ALUOut <= A op B ; • Instrucțiuni de ramificare if (A==B) then PC <= ALUOut; • Instructiuni de salt PC <= ( PC[31:28]&(IR[25:0]]&B”00”) ;

  10. Ciclul 4 - acces la memorie sau ȋncheierea instrucțiunilor tip R • Instrucțiuni cu referire la memorie(lw, sw) MDR <= Memory [ALUOut]; sau Memory [ALUOut] <= B; • Instrucțiuni tip R Reg [IR[15:11]] <= ALUOut ;

  11. Ciclul 5 – ȋncheierea citirii memoriei • Load Reg[IR[20:16]] <= MDR;

  12. FSM pentru LW şi SW

  13. FSM pentru instrucţiuni tip R

  14. FSM pentru branch şi tip J

  15. FSM complet

  16. Implementare MOORE pentru FSM

  17. Calea de date pentru o operaţie aritmetică

  18. Calea de date pentru o operaţie LW

  19. Calea de date pentru o operaţie SW

  20. Calea de date pentru o operaţie BEQ

  21. Calea de date pentru o operaţie de salt

  22. Întrebări?

More Related