ESERCIZIO 1 Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTER-STADIO
|
|
|
- Paolina Gallo
- 10 anni fa
- Просмотров:
Транскрипт
1 ESERCIZIO Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTER-STADIO Sono dati il seguente frammento di codice assemblatore che comincia all indirizzo indicato, e i valori iniziali specificati per alcuni registri. indirizzo codice assemblatore registro contenuto iniziale x 4 add $t, $zero, $a a x 5F E37 add $t, $t, $t2 t x F 482 lw $t, ($a) t2 x 3 ABCD Si consideri il ciclo di clock in cui l esecuzione delle istruzioni nei vari stadi è la seguente: IF non di interesse ID lw $t, ($a) EX add $t, $t, $t2 MEM add $t, $zero, $a WB non di interesse Si noti che le istruzioni precedenti a quelle indicate non hanno modificato il contenuto dei registri riportato. Si chiede di compilare le seguenti Tabelle. Il ciclo di clock considerato è il ciclo 4.
2 I campi Istruzione e di tipo NumeroRegistro possono essere indicati in forma simbolica, tutti gli altri in esadecimale, (omettendo il prefisso x) Segnali all ingresso dei registri di interstadio (subito prima del fronte di SALITA del clock) IF ID EX MEM registro IF/ID registro ID/EX: registro EX/MEM registro MEM/WB 4.Istruzione 4C.(Rs) 5F E37 F 482.Rt 8.Rd (primi 5 bit di offset!).imm/offset esteso.ex.alusrc.ex.regdest ******** 3 ABCD.R 8.ALU_out 2 F3EE.Zero.R 9.ALU_out 5F E37.DatoLetto n.d Segnali relativi al RF (subito prima del fronte di DISCESA interno al ciclo di clock) RF.regScritt RF.DatoLetto 5F E37 RF.regLett 4 RF.regLett2 8 RF.daScrivere n.d RF.DatoLetto2 F 482 Segnali di valtre Unità funzionali (subito prima del fronte di SALITA del clock) MEM.indirizzo PCSrc 5F E37 MEM.datoScrivere 5F E37
3 ESERCIZIO variante Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTERSTADIO Dato il seguente frammento di codice assembler che comincia all indirizzo indicato e i valori iniziali specificati per alcuni registri indirizzo codice assemblatore registro contenuto iniziale x 4 addi $a, $a, 5 $a x 5F E37 add $t, $zero, $t2 $t x F 482 add $t, $t, $t2 $t2 x 3 ABCD lw $t, xf($a) Si consideri il ciclo di clock in cui l esecuzione delle istruzioni nei vari stadi è la seguente: IF non di interesse ID lw $t, xf($a) EX add $t, $t, $t2 MEM add $t, $zero, $t2 WB addi $a, $a, 5 Si chiede di compilare le seguenti tabelle. Il ciclo di clock considerato è il ciclo 5.
4 I campi Istruzione e di tipo NumeroRegistro possono essere indicati in forma simbolica, tutti gli altri in esadecimale, (omettendo il prefisso x, implicito) Segnali all ingresso dei registri di interstadio (subito prima del fronte di SALITA del clock) IF ID EX MEM registro IF/ID registro ID/EX: registro EX/MEM registro MEM/WB 44.Istruzione 4.(Rs) 5F E376 (a nuovo) F 482 (t).rt 8 t.rd E fp.imm/offset esteso FFFF F.EX.ALUsrc.EX.RegDest ************** 3 ABCD.R 8 t.alu_out 2 F3EE.Zero.R 9 t.alu_out 3 ABCD.DatoLetto Segnali relativi al RF (subito prima del fronte di DISCESA interno al ciclo di clock) RF.regLett 4 a RF.regScritt 4 RF.DatoLetto 5F E37 (a iniz) RF.regLett2 8 t RF.daScrivere 5F E376 (a nuovo) RF.DatoLetto2 F 482 (t iniz, add t in EX) Segnali di valtre Unità funzionali (subito prima del fronte di SALITA del clock) MEM.indirizzo 3 ABCD MEM.datoScrivere 3 ABCD PCSrc ALUmain_in F 482 ALUSrc
5 ESERCIZIO 2 - Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTERSTADIO (esempio con conflitto di dato) Dato il seguente frammento di codice assembler che comincia all indirizzo indicato, i valori iniziali specificati per alcuni registri e il contenuto (e relativo indirizzo) di alcune parole della memoria dati indirizzo codice assemblatore registro contenuto iniziale x 4 add $t, $t, $t2 $a x F E37 sw $t, x72($a) $t x F 482 add $t, $t2, $a $t2 x 3 ABCD indirizzo Memoria dati parola x x AAAA 2 x 4373 x FFFF x x FFFF x x AAAA FFFF Si consideri il ciclo di clock in cui l esecuzione delle istruzioni nei vari stadi è la seguente: IF non di interesse ID non di interesse EX add $t, $t2, $a MEM sw $t, x72($a) WB add $t, $t, $t2 Si chiede di compilare le seguenti tabelle e si evidenzi il segnale associato al valore errato che si genera a causa del conflitto di dato e quello associato al valore corretto. Il ciclo di clock considerato è il ciclo 5.
6 I campi Istruzione e di tipo NumeroRegistro possono essere indicati in forma simbolica, tutti gli altri in esadecimale, (omettendo il prefisso x, implicito) Segnali all ingresso dei registri di interstadio (subito prima del fronte di SALITA del clock) IF ID EX MEM registro IF/ID registro ID/EX: registro EX/MEM registro MEM/WB 44.Istruzione 4.(Rs).Rt.Rd.Imm/offset esteso.ex.alusrc.ex.regdest ************** F E37.R 9 t.alu_out 3 8F3E.Zero X.R 8 t.alu_out 4373 (ind store).datoletto Segnali relativi al RF (subito prima del fronte di DISCESA interno al ciclo di clock) RF.regScritt RF.DatoLetto 8 t RF.regLett RF.regLett2 RF.daScrivere 2 F3EE (valore corretto) RF.DatoLetto2 Segnali di valtre Unità funzionali (subito prima del fronte di SALITA del clock) MEM.indirizzo RegWrite 4373 MEM.datoScrivere F 482 (valore errato) ALUmain_in2 F E37 MEMWrite ALUmain_in 3 ABCD ALUSrc MemtoReg
7 ESERCIZIO 3 Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTERSTADIO Dato il seguente frammento di codice assembler che comincia all indirizzo indicato e i valori iniziali specificati per alcuni registri indirizzo codice assemblatore registro contenuto iniziale x 4 add $t, $t, $t2 $t x 5F E37 beq $t2, $t3, 6 $t2 x F 482 nop $t3 x F 482 add $t2, $t, $t3 Si consideri il ciclo di clock in cui l esecuzione delle istruzioni nei vari stadi è la seguente: IF non di interesse ID add $t2, $t, $t3 EX nop MEM beq $t2, $t3, 6 WB add $t, $t, $t2 Si chiede di compilare le seguenti tabelle. Il ciclo di clock considerato è il ciclo 5.
8 I campi Istruzione e di tipo NumeroRegistro possono essere indicati in forma simbolica, tutti gli altri in esadecimale, (omettendo il prefisso x, implicito) Segnali all ingresso dei registri di interstadio (subito prima del fronte di SALITA del clock) IF ID EX MEM registro IF/ID registro ID/EX: registro EX/MEM registro MEM/WB.Istruzione.(Rs).Rt.R.R.Rd.Imm/offset esteso.alu_out.alu_out.ex.alusrc.zero.datoletto.ex.regdest Segnali relativi al RF (subito prima del fronte di DISCESA interno al ciclo di clock) RF.regLett RF.regScritt RF.DatoLetto RF.regLett2 RF.daScrivere RF.DatoLetto2 Segnali di valtre Unità funzionali (subito prima del fronte di SALITA del clock) MUXB_in_ PCSrc MUXB_in_ ANDbranch_in ANDbranch_in2
9 ESERCIZIO 3 VARIANTE Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTERSTADIO Dato il seguente frammento di codice assembler che comincia all indirizzo indicato e i valori iniziali specificati per alcuni registri indirizzo codice assemblatore registro contenuto iniziale x 4 add $t, $t, $t2 $t x 5F E37 beq $t2, $t3, 32 $t2 x F 482 nop $t3 x F 482 add $t2, $t, $t3 Si consideri il ciclo di clock in cui l esecuzione delle istruzioni nei vari stadi è la seguente: IF non di interesse ID add $t2, $t, $t3 EX nop MEM beq $t2, $t3, 32 WB add $t, $t, $t2 Si chiede di compilare le seguenti tabelle. Il ciclo di clock considerato è il ciclo 5. SOLUZIONE GIA PUBBLICATA IN ALTRO FILE
10 I campi Istruzione e di tipo NumeroRegistro possono essere indicati in forma simbolica, tutti gli altri in esadecimale, (omettendo il prefisso x, implicito) Segnali all ingresso dei registri di interstadio (subito prima del fronte di SALITA del clock) IF ID EX MEM registro IF/ID registro ID/EX: registro EX/MEM registro MEM/WB.Istruzione.(Rs).Rt.R.R.Rd.Imm/offset esteso.alu_out.alu_out.ex.alusrc.zero.datoletto.ex.regdest Segnali relativi al RF (subito prima del fronte di DISCESA interno al ciclo di clock) RF.regLett RF.regScritt RF.DatoLetto RF.regLett2 RF.daScrivere RF.DatoLetto2 Segnali di valtre Unità funzionali (subito prima del fronte di SALITA del clock) MUXB_in_ PCSrc MUXB_in_ ANDbranch_in ANDbranch_in2
11 ESERCIZIO 4 Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTERSTADIO (esempio con stallo) Sono dati il seguente frammento di codice assemblatore che comincia all indirizzo indicato, e i valori iniziali specificati per alcuni registri. indirizzo codice assemblatore registro contenuto x 4 add $t, $t, $t2 a x 5F E37 sw $t, ($a) t x F 482 beq $t2, $t3, 6 t2 x 3 ABCD Si consideri l esecuzione delle istruzioni nei vari stadi nei due cicli di clock seguenti: stadio ciclo di clock 3 stadio ciclo di clock 5 IF stallo IF beq $t2, $t3, 6 ID stallo ID sw $t, ($a) EX add $t, $t, $t2 EX stallo MEM non di interesse MEM stallo WB non di interesse WB add $t, $t, $t2 Si chiede di riportare i valori degli ingressi ai campi dei registri inter-stadio (al termine del ciclo), e i valori dei segnali indicati, relativi a varie unità funzionali, nei cicli di clock indicati. ciclo di clock 3 IF registro IF/ID ID registro ID/EX EX registro EX/MEM = x 4C = x 48 = x 44.istruzione = beq.tutti i comandi WB, M e EX =.ALU out = (t) + (t2).r = t IF registro IF/ID ciclo di clock 5 ID registro ID/EX = x 4C = x 48 MemtoReg =.istruzione = beq.comandi! = se serve RegWrite = WB USCITE registro MEM/WB
12 segnali delle unità funzionali ciclo di clock 3 ciclo di clock 5 reg PC = x 48 reg PC = x 48 RF reg lettura = a (sw stallata qui) RF reg lettura 2 = t (sw stallata qui) RF reg scrittura = RF dato da scrivere = RF reg lettura = a (sw riparte) RF reg lettura 2 = t (sw riparte) RF reg scrittura = t RF dato da scrivere = (t) + (t2) Nota sui segnali delle unità funzionali: nel ciclo 3, l istruzione sw è già nel registro inter-stadio IF/ID, ancorché sia ivi stallata, e dunque i numeri dei registri in lettura sono a e t, mentre il numero del registro in scrittura è poiché lo stadio WB è ancora vuoto o comunque non noto; nel ciclo di clock 5, l istruzione sw è ancora nel registro inter-stadio IF/ID, ma è ripartita, e dunque i numeri dei registri in lettura sono ancora a e t, mentre il numero del registro in scrittura è t, che è pertinente all istruzione add ormai nello stadio WB.
ESERCIZIO 1 Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTER-STADIO
ESERCIZIO 1 Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTER-STADIO Sono dati il seguente frammento di codice assemblatore che comincia all indirizzo indicato, e i valori iniziali specificati per
Esercitazione sulle CPU pipeline
Esercitazione sulle CPU pipeline Una CPU a ciclo singolo come pure una CPU multi ciclo eseguono una sola istruzione alla volta. Durante l esecuzione parte dell hardware della CPU rimane inutilizzato perché
CALCOLATORI ELETTRONICI 15 aprile 2014
CALCOLATORI ELETTRONICI 15 aprile 2014 NOME: COGNOME: MATR: Scrivere nome, cognome e matricola chiaramente in caratteri maiuscoli a stampa 1 Di seguito è riportato lo schema di una ALU a 32 bit in grado
CALCOLATORI ELETTRONICI 29 giugno 2010
CALCOLATORI ELETTRONICI 29 giugno 2010 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si disegni lo schema di un flip-flop master-slave S-R sensibile ai fronti di salita e
L unità di controllo di CPU multi-ciclo
L unità di controllo di CPU multi-ciclo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione [email protected] Università degli Studi di Milano A.A. 23-24 /2 Sommario I segnali di controllo
Hazard sul controllo. Sommario
Hazard sul controllo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione [email protected] Università degli Studi di Milano Riferimento al Patterson: 4.7, 4.8 1/28 Sommario Riorganizzazione
CALCOLATORI ELETTRONICI 31 marzo 2015
CALCOLATORI ELETTRONICI 31 marzo 2015 NOME: COGNOME: MATR: Scrivere nome, cognome e matricola chiaramente in caratteri maiuscoli a stampa 1. Tradurre in linguaggio assembly MIPS il seguente frammento di
CALCOLATORI ELETTRONICI 29 giugno 2011
CALCOLATORI ELETTRONICI 29 giugno 2011 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si implementi per mezzo di una PLA la funzione combinatoria (a 3 ingressi e due uscite)
Architettura di tipo registro-registro (load/store)
Caratteristiche principali dell architettura del processore MIPS E un architettura RISC (Reduced Instruction Set Computer) Esegue soltanto istruzioni con un ciclo base ridotto, cioè costituito da poche
Architettura (10/9/2003) Pag. 1/6. Cognome e Nome (in stampatello):
Architettura (10/9003) Pag. 1/6 Esame di Architettura (matr.0-1) del 10/9003 Per Fondamenti di Architettura NON rispondere Per le domande a risposta multipla cerchiare la risposta scelta. Non alle domande
AXO Architettura dei Calcolatori e Sistemi Operativi
Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Luca Breveglieri prof. Roberto Negrini prof. Giuseppe Pelagatti prof.ssa Donatella Sciuto prof.ssa Cristina Silvano
Calcolatori Elettronici. La Pipeline Criticità sui dati Criticità sul controllo Cenni sull unità di controllo
Calcolatori Elettronici La Pipeline Criticità sui dati Criticità sul controllo Cenni sull unità di controllo La pipeline CRITICITÀ SUI DATI Calcolatori Elettronici - Pipeline (2) - Slide 2 L. Tarantino
MODELLO DLX IN UNISIM
Architettura e descrizione del modello MODELLO DLX IN UNISIM RINGRAZIAMENTI : I materiali per questa presentazione sono tratti dal tutorial ufficiale di UNISIM - https://unisim.org/site/tutorials/start
Calcolatori Elettronici
Calcolatori Elettronici CPU a singolo ciclo assimiliano Giacomin Schema del processore (e memoria) Unità di controllo Condizioni SEGNALI DI CONTROLLO PC emoria indirizzo IR dato letto UNITA DI ELABORAZIONE
Il pipelining: tecniche di base
Il pipelining: tecniche di base Il pipelining E una tecnica per migliorare le prestazioni del processore basata sulla sovrapposizione dell esecuzione di più istruzioni appartenenti ad un flusso di esecuzione
Il pipelining: tecniche di base
Definizione di pipelining Il pipelining: tecniche di base Architetture Avanzate dei Calcolatori E una tecnica per migliorare le prestazioni del processore basata sulla sovrapposizione dell esecuzione di
Tutorato Architettura degli elaboratori
Tutorato Architettura degli elaboratori Dott. Damiano Braga Before we start.. Orario 12 Aprile h. 14.00-16.00 aula F6 20 Aprile h. 11.30-13.30 aula F6 10 Maggio h. 14.00-16.00 aula F4 18 Maggio h. 11.30-13.30
Gestione delle eccezioni (CPU multiciclo) La CPU pipeline
Architettura degli Elaboratori e delle Reti Lezione 22 Gestione delle eccezioni (CPU multiciclo) La CPU pipeline A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi
Architettura degli Elaboratori Lez. 8 CPU MIPS a 1 colpo di clock. Prof. Andrea Sterbini
Architettura degli Elaboratori Lez. 8 CPU MIPS a 1 colpo di clock Prof. Andrea Sterbini [email protected] Argomenti Progetto della CPU MIPS a 1 colpo di clock - Istruzioni da implementare - Unità
Il Processore: l Unità di Controllo Principale Barbara Masucci
Architettura degli Elaboratori Il Processore: l Unità di Controllo Principale Barbara Masucci Punto della situazione Ø Abbiamo visto come costruire l Unità di Controllo della ALU per il processore MIPS
L unità di controllo di CPU a singolo ciclo
L unità di controllo di CPU a singolo ciclo Prof. Alberto Borghese Dipartimento di Informatica [email protected] Università degli Studi di Milano Riferimento sul Patterson: capitolo 4.2, 4.4, D1,
CPU. Maurizio Palesi
CPU Central Processing Unit 1 Organizzazione Tipica CPU Dispositivi di I/O Unità di controllo Unità aritmetico logica (ALU) Terminale Stampante Registri CPU Memoria centrale Unità disco Bus 2 L'Esecutore
Calcolatori Elettronici B a.a. 2008/2009
Calcolatori Elettronici B a.a. 2008/2009 Tecniche Pipeline: Gestione delle criticità Massimiliano Giacomin 1 Pipeline: i problemi Idealmente, il throughput è di una istruzione per ciclo di clock! Purtroppo,
Università degli Studi di Cassino e del Lazio Meridionale
di Cassino e del Lazio Meridionale Corso di Pipeline Anno Accademico Francesco Tortorella Progettazione del datapath Prima soluzione: d.p. a ciclo singolo Semplice da realizzare Condizionato dal worst
ARCHITETTURE AVANZATE DEI CALCOLATORI, A.A. 2007/08 Soluzione esercizi sul pipelining
ARCHITETTURE AVANZATE DEI CALCOLATORI, A.A. 2007/08 Soluzione esercizi sul pipelining Esercizio 1) N.B. Nei diagrammi a cicli multipli non sono indicati i registri di pipeline (per semplicità) a) Si tratta
Architettura degli Elaboratori. Classe 3 Prof.ssa Anselmo. Appello del 18 Febbraio Attenzione:
Cognome.. Nome.... Architettura degli Elaboratori Classe 3 Prof.ssa Anselmo Appello del 18 Febbraio 2015 Attenzione: Inserire i propri dati nell apposito spazio sottostante e in testa a questa pagina.
Richiami sull architettura del processore MIPS a 32 bit
Caratteristiche principali dell architettura del processore MIPS Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini E un architettura RISC
Aggiornato il 18 giugno 2015. 1 Questa affermazione richiede una precisazione. A parità di altre condizioni, l eliminazione dello stadio ME allunga la
8 Questo documento contiene le soluzioni ad un numero selezionato di esercizi del Capitolo 8 del libro Calcolatori Elettronici - Architettura e organizzazione, Mc-Graw Hill 2009. Sarò grato a coloro che
Richiami sull architettura del processore MIPS a 32 bit
Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini Caratteristiche principali dell architettura del processore MIPS E un architettura RISC
L unità di controllo. Il processore: unità di controllo. Le macchine a stati finiti. Struttura della macchina a stati finiti
Il processore: unità di lo Architetture dei Calcolatori (lettere A-I) L unità di lo L unità di lo è responsabile della generazione dei segnali di lo che vengono inviati all unità di elaborazione Alcune
CPU a ciclo multiplo
Architettura degli Elaboratori e delle Reti Lezione CPU a ciclo multiplo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L /9 Sommario! I problemi
Il simulatore SPIM SPIM
Il simulatore SPIM Architetture dei Calcolatori (lettere A-I) SPIM SPIM: un simulatore per eseguire programmi assembler scritti per processori MIPS32 Download e materiale relativo alla pagina Web http://www.cs.wisc.edu/~larus/spim.html
CPU pipeline hazards
Architettura degli Elaboratori e delle Reti Lezione 23 CPU pipeline hazards Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 23 /24 Sommario!
Lezione n.19 Processori RISC e CISC
Lezione n.19 Processori RISC e CISC 1 Processori RISC e Superscalari Motivazioni che hanno portato alla realizzazione di queste architetture Sommario: Confronto tra le architetture CISC e RISC Prestazioni
Calcolatori Elettronici
Calcolatori Elettronici La Pipeline Superpipeline Pipeline superscalare Schedulazione dinamica della pipeline Processori reali: l architettura Intel e la pipeline dell AMD Opteron X4 Ricapitolando Con
Implementazione semplificata
Il processore 168 Implementazione semplificata Copre un sottoinsieme limitato di istruzioni rappresentative dell'isa MIPS aritmetiche/logiche: add, sub, and, or, slt accesso alla memoria: lw, sw trasferimento
Corso di Informatica Applicata. Lezione 3. Università degli studi di Cassino
Università degli studi di Cassino Corso di Laurea in Ingegneria della Produzione Industriale Corso di Informatica Applicata Lezione 3 Ing. Saverio De Vito e-mail: [email protected] Tel.: +39
Schedulazione dinamica. Elettronica dei Calcolatori 1
Schedulazione dinamica Elettronica dei Calcolatori 1 Schedulazione dinamica delle operazioni Impossibile risolvere tutti i conflitti staticamente I possibile predire tutti i salti condizionati HW fa durante
Calcolatori Elettronici
Calcolatori Elettronici ISA di riferimento: MIPS Massimiliano Giacomin 1 DOVE CI TROVIAMO Livello funzionale Livello logico Livello circuitale Livello del layout istruzioni macchina, ISA Reti logiche:
Quinto Homework. Indicare il tempo necessario all'esecuzione del programma in caso di avvio e ritiro fuori ordine.
Quinto Homework 1) Si vuole progettare una cache a mappatura diretta per un sistema a 32 bit per una memoria da 2 GB (quindi sono solo 31 i bit utili per gli indirizzi) e blocchi di 64 byte. Rispondere
Progetto CPU (ciclo singolo) Salvatore Orlando
Progetto CPU (ciclo singolo) Salvatore Orlando Arch. Elab. - S. Orlando 1 Processore: Datapath & Control Possiamo finalmente vedere il progetto di un processore MIPS-like semplificato Semplificato in modo
Architettura del calcolatore
Architettura del calcolatore La prima decomposizione di un calcolatore è relativa a due macro-componenti: Hardware Software Architettura del calcolatore L architettura dell hardware di un calcolatore reale
