Architettura degli Elaboratori

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Architettura degli Elaboratori"

Transcript

1 Progetto CPU (multiciclo) slide a cura di Salvatore Orlado e Marta Simeoi

2 Problemi co progetto a sigolo ciclo Problemi del sigolo ciclo Ciclo di clock lugo Istruzioi potezialmete più veloci soo ralletate impiegao lo stesso tempo dell istruzioe più leta Uità fuzioali e collegameti del Datapath soo replicati dobbiamo poter eseguire i parallelo tutti i passi computazioali ecessari per l esecuzioe di qualsiasi istruzioe dell ISA

3 Problemi co progetto a sigolo ciclo Possibile soluzioe: datapath multiciclo usiamo u ciclo più corto istruzioi differeti impiegao u umero di cicli diversi uità fuzioali possoo essere usate più volte per eseguire la stessa istruzioe meo replicazioe basta usarle i cicli differeti registri aggiutivi usati per memorizzare i risultati parziali ell esecuzioe delle istruzioi

4 Esempio di riduzioe del ciclo di clock Effettua u taglio su grafo diretto aciclico corrispodete al circuito combiatorio, e iserisci u registro el mezzo Fai lo stesso lavoro di prima i 2 cicli più corti (più veloci), ivece che i 1 sigolo ciclo più lugo (più leto) elemeto di memoria elemeto di memoria Logica Combiatoria Aciclica Logica Combiatoria Aciclica (A) elemeto di memoria Logica Combiatoria Aciclica (B) elemeto di memoria elemeto di memoria

5 Datapath multiciclo Addr dati Registri iteri addizioali usati per memorizzare valori itermedi, da usare el ciclo di clock successivo per cotiuare l esecuzioe della stessa istruzioe IR, MDR, A, B, ALUOut Riuso di uità fuzioali Addr istr. Registri addizioali ALU usata ache per calcolare l idirizzo dei salti e icremetare il PC Memoria usata sia per leggere le istruzioi che per leggere/scrivere i dati PC

6 Suddivisioe i passi del Datapth Nell iserire i registri addizioali, abbiamo pesato di spezzare l esecuzioe delle istruzioi i passi ogi passo da eseguire i u ciclo di clock (ciclo più corto rispetto alla CPU a ciclo sigolo) importate il bilaciameto della quatità di lavoro eseguito ei vari passi, perché dobbiamo fissare u ciclo di clock uico determiato sulla base del passo più lugo, ovvero più costoso dal puto di vista computazioale Al termie di ogi ciclo i valori itermedi soo memorizzati ei registri iteri addizioali: da impiegare ei cicli successivi della stessa istruzioe Register File e PC soo ivece impiegati per memorizzare valori da usare per l esecuzioe di ua uova istruzioe

7 Sequeza dei cique passi di esecuzioe 1. Fetch dell istruzioe e Icremeto PC 2. Decodifica dell istruzioe e Lettura dei regs. (e Addr. Brach) 3. R-type exe o Calcolo Idirizzo Memoria o Completa Brach o Completa Jump dipede dal tipo di istruzioe 4. Accesso alla memoria o Completa R-type (scrittura regs) dipede dal tipo di istruzioe 5. Write back (scrittura reg: solo LW) OGNI PASSO ESEGUITO IN UN CICLO DI CLOCK LE ISTRUZIONI IMPIEGANO DA 3 A 5 CICLI

8 Iseriamo i multiplexer PC oppure ALUout (addr, lw/sw) Ulteriore igresso: PC MDR oppure ALUOut Altri 2 igressi, da sommare co PC: PC = PC + 4 PC = PC + (sig_ext(imm16) << 2)

9 Cotrollo I segali di cotrollo alle varie uità fuzioali e ai multiplexer o dipedoo solo dal tipo di istruzioe, ma ache dallo specifico passo di esecuzioe es.: rispetto ad ua sub, l ALU dovrà essere usata, i cicli di clock differeti, per PC = PC + 4; (somma) R[rd] < R[rs] R[rt]; (sottrazioe) Quidi i segali di cotrollo dovrao essere diversi durate i vari passi (cicli di clock) ecessari per l esecuzioe dell istruzioe Il cotrollo sarà ifatti implemetato come circuito sequeziale l output del circuito (segali di cotrollo) dipederà dallo stato itero al circuito al tempo t i stato del circuito sequeziale = passo di esecuzioe di u istruzioe

10 Datapath e Cotrollo multi-ciclo

11 Segali di cotrollo di 1 bit Per istruzioi di beq: PCWriteCod=1 e PCWrite=0 Il segale di scrittura di PC è ifatti calcolato come: PCWrite + (PCWriteCod Zero) Se Zero=0 il valore di PC che puta alla prossima istruzioe rimae ivariato

12 Segali di cotrollo di 2 bit Segale Valore Effetto 00 ALU calcola somma ( lw, sw, PC + ) ALUOp 01 ALU calcola sottrazioe ( beq ) 10 ALU calcola l'operazioe determiata da fuct 00 2^ igresso dell'alu è reg. B ALUSrcB 01 2^ igresso dell'alu è costate ^ igresso dell'alu è sig_ext(imm16) ( lw/sw ) 11 2^ igresso dell'alu è sig_ext(imm16) << 2 ( beq ) 00 I PC viee scritto l'uscita dell'alu ( PC+4 ) PCSource 01 I PC viee scritto ALUOut ( beq ) 10 I PC viee scritto PC[31-28] sig_ext(imm26) << 2 ( jump )

13 Passo 1: Fetch dell istruzioe Usa PC per prelevare l istruzioe dalla memoria e porla ell Istructio Register (IR) Icremeta PC di 4, e rimetti il risultato el PC Passo idetico per tutte le istruzioi Usado la otazioe RTL: IR = M[PC]; PC = PC + 4; Durate questo passo (stesso ciclo di clock) usiamo: Memoria ALU Vediamo i dettaglio i valori dei segali di cotrollo

14 Passo 1: Fetch dell istruzioe IR = M[PC]; MemRead 1 IRWrite 1 IorD 0 PC = PC + 4; ALUSrcA 0 ALUSrcB 01 ALUOp 00 (somma) PCWrite 1 PCSource 00

15 Passo 2: Decodifica istruzioe & Lettura registri Leggi i registri rs e rt, e calcola l idirizzo del salto di beq IR (op) viee iviato al cotrollo per la decodifica e la determiazioe dei passi successivi Decodifica dell istruzioe RTL: A = Reg[ IR[25-21] ]; B = Reg[ IR[20-16] ]; ALUOut = PC + (sig-ext( IR[15-0] ) << 2); Passo idetico per tutte le istruzioi, ma potremmo aticipare del lavoro o ecessario. per certe istruzioi, i due campi (rs, rt) potrebbero essere o sigificativi calcoliamo l idirizzo a cui saltare, come se l istruzioe fosse beq, ma il campo imm16 potrebbe essere o sigificativo Quali i vataggi di questo lavoro aticipato? Durate questo passo (durate lo stesso ciclo di clock) usiamo: Register File e ALU Vediamo i valori dei segali di cotrollo

16 Passo 2: Decodifica istruzioe & Lettura registri A = Reg[ IR[25-21] ]; B = Reg[ IR[20-16] ]; A e B sovrascritti per ogi tipo di istruzioe ALUOut = PC + (sig-ext( IR[15-0] ) << 2) ALUSrcA 0 ALUSrcB 11 ALUOp 00 (somma)

17 Passo 3: (dipede dall istruzioe) Usiamo l ALU i dipedeza del tipo di istruzioe Il cotrollo, avedo già decodificato l istruzioe letta al passo precedete, può già decidere i segali da iviare al Datapath i relazioe al tipo di istruzioe R-type exe: ALUOut = A op B; Calcolo Idirizzo Memoria (load/store) ALUOut = A + sig-ext( IR[15-0] ); Completa Brach if (A == B) the PC = ALUOut; Completa Jump PC = PC[31-28] II (IR[25-0] << 2);

18 Passo 3: (dipede dall istruzioe) R-type exe: ALUOut = A op B; ALUSrcA 1 ALUSrcB 00 ALUOut riscritto ad ogi ciclo ALUOp 10 (campo FUNCT) LOAD / STORE: ALUOut = A + sig-ext( IR[15-0] ); ALUSrcA 1 ALUSrcB 10 ALUOp 00 (somma)

19 Passo 3: (dipede dall istruzioe) Completa Brach: if (A == B) the PC = ALUOut; ALUSrcA 1 ALUSrcB 00 ALUOp 01 (sottr.) (sottrazioe registri A e B, check salto sulla base di Zero) Per abilitare la scrittura el PC del valore precedetemete calcolato (ALUOut), ecessari altri segali di cotrollo o illustrati: PCWrite 0 PCWriteCod 1 PCSource 01

20 Passo 3: (dipede dall istruzioe) Completa Jump: PC = PC[31-28] II (IR[25-0] << 2); Per abilitare la scrittura el PC, i segali di cotrollo, o illustrati i figura, soo: PCWrite 1 PCSource 10

21 Passo 4: (dipede dall istruzioe) LOAD e STORE accedoo alla memoria MDR = Memory[ALUOut]; or Memory[ALUOut] = B; Termiazioe istruzioi R-type Reg[ IR[15-11] ] = ALUOut; Durate questo passo usiamo: Register File (Write) oppure Memoria Vediamo i segali di cotrollo

22 Passo 4: (dipede dall istruzioe) Load: MDR = Memory[ALUOut]; IorD 1 MemRead 1 Store: Memory[ALUOut] = B; IorD 1 MemWrite 1 R-type: Reg[ IR[15-11] ] = ALUOut; RegDst 1 RegWrite 1 MemtoReg 0

23 Passo 5: Write-back (LOAD) Load: Reg[ IR[20-16]]= MDR; RegDst 0 RegWrite 1 MemtoReg 1 NOTA: Le altre istruzioi o giugoo al passo 5

24 Riassumedo Step ame Actio for R-type istructios Actio for memory-referece istructios Actio for braches Actio for jumps Istructio fetch IR = Memory[PC] PC = PC + 4 Istructio decode / A = Reg [IR[25-21]] register fetch/ B = Reg [IR[20-16]] brach addr. comp. ALUOut = PC + (sig-exted (IR[15-0]) << 2) Executio, address ALUOut = A op B ALUOut = A + sig-exted if (A ==B) the PC = PC[31-28] II computatio, brach/ (IR[15-0]) PC = ALUOut (IR[25-0]<<2) jump completio Memory access or R-type Reg [IR[15-11]] = Load: MDR = Memory[ALUOut] completio ALUOut or Store: Memory [ALUOut] = B Memory read completio Load: Reg[IR[20-16]] = MDR

25 Alcue semplici domade Quati cicli soo ecessari per eseguire questo codice? lw $t2, 0($t3) lw $t3, 4($t3) beq $t2, $t3, Label #assume ot add $t5, $t2, $t3 sw $t5, 8($t3) Label:... Cosa accade durate l 8 o ciclo di esecuzioe? Calcolo dell idirizzo della 2 a lw I quale ciclo avviee effettivamete la somma tra $t2 e $t3? Nel 16-esimo ciclo

26 Defiizioe del cotrollo Possiamo implemetare il cotrollo della CPU come u circuito sequeziale di Moore, modellato co u automa a stati fiiti Automa ogi odo corrispode ad uo stato differete del circuito, i corrispodeza di u certo ciclo di clock gli output del cotrollo (segali di cotrollo) dipedoo dallo stato correte da 3 a 5 stati devoo essere attraversati (ovvero, da 3 a 5 cicli di clock) Iizio Fetch Decode, Read reg, Beq Addr. calcolo R-type Exe Beq completam. Jump completam. M read R write M write R write

27 Automa completo Etichette itere ai odi corrispodoo ai segali che il Cotrollo deve iviare al Datapath Etichette sugli archi dipedoo dagli iput del Cotrollo ovvero, dal valore del campo Op dell istruzioe letta 10 stati ogi stato associato co u etichetta memoica, e ache co u idetificatore umerico quati bit soo ecessari per il registro di stato?

28 Compoeti CPU (Datapath+Cotrol) e Memoria CPU Operatio = f(aluop, Fuct) CONTROL PCWrite + (Zero PCWriteCod) PCSource RegDst ALUSrcA MemRead IorD IRWrite ALUSrcB RegWrite MemtoReg MemWrite MemRead Addr Istr/Data Memory PC (fetch) o ALUOut (sw,lw) IR (fetch) o MDR (lw) B (sw) DATA PATH Fuct =IR[5:0] Op =IR[31:26] Zero Dataout Datai Nota: tra i segali proveieti dal Datapath, solo Op è usato per selezioare il prossimo stato

29 Dimesioameto ciclo di clock Ipotizziamo gli stessi costi precedeti (i s) per le varie compoeti Mem. Istr/Dati: 2 s Reg. File: 1 s ALU: 2 s o li usiamo mai i sequeza possiamo ipotizzare u ciclo di 2 s Più i dettaglio, per determiare il ciclo di clock, cosideriamo il diagramma di sotto, che si riferisce al 3 o passo della BEQ poiché il cotrollo è di Moore, l output (cotrolli) dipede solo dallo stato (veloce) decodifica del cotrollo dell ALU più complessa (2 livelli): Operatio = f(aluop, Fuct) l iput del cotrollo, importate per la trasizioe di stato, è Op Op è u campo del registro IR del Datapath (o è ecessario calcolarlo) il segale di Zero è importate el caso di BEQ... Next State Cotrollo Datapath Op cotrolli ALU Zero PC write sigal Esempio di diagramma temporale per il 3 o passo di esecuzioe di u istruzioe

30 Costo istruzioi Per le varie istruzioi, possiamo impiegare u umero differete di cicli itroduciamo il cocetto di CPI (Cicli Per Istruzioe) Quat è il CPI delle varie istruzioi rispetto all architettura multi-ciclo? R-type, sw:4 cicli (tempo: 8 s) lw: 5 cicli (tempo: 10 s) beq, jump: 3 cicli (tempo: 6 s) L istruzioe lw impiega be 10 s ivece degli 8 s dell architettura a sigolo ciclo purtroppo ciò è dovuto alla ecessità di fissare il ciclo di clock abbastaza lugo da permettere l esecuzioe di uo qualsiasi dei passi previsti per le varie istruzioi il 5 o passo della lw, ache se usa solo il Register File (lateza 1 s), viee comuque eseguito i u ciclo di clock da 2 s

31 Costo istruzioi Abbiamo otteuto u risparmio solo per le istruzioi di beq e jump se avessimo cosiderato istruzioi molto più lughe (come quelle FP), o avremmo osservato questo apparete decadimeto di prestazioe el passare all architettura multi-ciclo i quel caso, la scelta del ciclo sigolo ci avrebbe costretto ad allugare a dismisura il ciclo di clock per eseguire le istruzioi FP

32 Circuito sequeziale che implemeta il cotrollo Cotrollo a due livelli ALUOp calcolato sulla base di Op, combiato co Fuct (IR[5:0]) per geerare il segale a 3 bit (Operatio) da iviare all ALU PCWrite e PCWriteCod usati assieme a Zero proveiete dal Datapath, per geerare il segale a 1 bit che permette la scrittura di PC Nota blocco combiatorio per calcolare NEXT_STATE & OUTPUT state register per memorizzare lo stato correte

33 Realizzazioe del blocco combiatorio Blocco combiatorio realizzato co: - PLA (buoa miimizzazioe ma o modificabile) - ROM (tutte e due le tabelle di verità di OUTPUT e NEXT-STATE memorizzate i ROM à iete miimizzazioe, ma si può modificare il circuito cambiado la ROM)

34 Automa rappresetato da u microprogramma Soluzioe alterativa per realizzare l itero circuito sequeziale: usare u microprogramma per rappresetare l automa a stati fiiti à soluzioe più flessibile Storicamete, le implemetazioi del cotrollo microprogrammato impiegao ROM per memorizzare microistruzioi Icremetatore esplicito e logica di sequezializzazioe per determiare la prossima microistruzioe da eseguire

Architettura degli Elaboratori

Architettura degli Elaboratori Progetto CPU (multiciclo) slide a cura di Salvatore Orlando e Marta Simeoni Problemi con progetto a singolo ciclo Problemi del singolo ciclo! Ciclo di clock lungo! Istruzioni potenzialmente più veloci

Dettagli

L unità di controllo di CPU multi-ciclo. Sommario

L unità di controllo di CPU multi-ciclo. Sommario L unità di controllo di CPU multi-ciclo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano Riferimento sul Patterson: Sezione C3 1/24

Dettagli

L unità di controllo di CPU multi-ciclo

L unità di controllo di CPU multi-ciclo L unità di controllo di CPU multi-ciclo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione alberto.borghese@unimi.it Università degli Studi di Milano Riferimento sul Patterson: Sezione D3

Dettagli

Arch. Elab. - S. Orlando 2. unità funzionali possono essere usate più volte per eseguire la stessa

Arch. Elab. - S. Orlando 2. unità funzionali possono essere usate più volte per eseguire la stessa Progetto CPU (multiciclo) Salvatore Orlando Arch. Elab. - S. Orlando 1 Esempio di riduzione del ciclo di clock Effettua un taglio su grafo delle dipendenze corrispondente al circuito combinatorio, e inserisci

Dettagli

CPU a ciclo multiplo

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 1/8 Sommario! I problemi

Dettagli

Processore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa)

Processore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa) Processore Memoria Control (Parte di controllo) Datapath (Parte operativa) I/O Memoria La dimensione del Register File è piccola registri usati per memorizzare singole variabili di tipo semplice purtroppo

Dettagli

CPU a ciclo multiplo: l unità di controllo

CPU a ciclo multiplo: l unità di controllo Architettura degli Elaboratori e delle Reti Lezione 2 CPU a ciclo multiplo: l unità di controllo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Problemi con progetto a singolo ciclo. Progetto CPU (multiciclo) Esempio di riduzione del ciclo di clock. Datapath multiciclo

Problemi con progetto a singolo ciclo. Progetto CPU (multiciclo) Esempio di riduzione del ciclo di clock. Datapath multiciclo Problemi con progetto a singolo ciclo Progetto CPU (multiciclo) Problemi del singolo ciclo Ciclo di clock lungo Istruzioni potenzialmente più veloci sono rallentate impiegano lo stesso tempo dell istruzione

Dettagli

Progetto CPU (multiciclo) Salvatore Orlando

Progetto CPU (multiciclo) Salvatore Orlando Progetto CPU (multiciclo) Salvatore Orlando Arch. Elab. - S. Orlando 1 Problemi con progetto a singolo ciclo Problemi del singolo ciclo Ciclo di clock lungo Istruzioni potenzialmente più veloci sono rallentate

Dettagli

Realizzazione a cicli di clock multipli

Realizzazione a cicli di clock multipli Realizzazione a cicli di clock multipli Riprendiamo in esame la realizzazione dell'unità di calcolo per individuare, per ciascuna classe di istruzioni, le componenti utilizzate e suddividere le azioni

Dettagli

Processore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa)

Processore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa) Processore Memoria Control (Parte di controllo) Datapath (Parte operativa) I/O Parte di Controllo La Parte Controllo (Control) della CPU è un circuito sequenziale istruzioni eseguite in più cicli di clock

Dettagli

CALCOLATORI ELETTRONICI 30 agosto 2010

CALCOLATORI ELETTRONICI 30 agosto 2010 CALCOLATORI ELETTRONICI 30 agosto 2010 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si implementi per mezzo di porte logiche di AND, OR e NOT la funzione combinatoria (a

Dettagli

Progetto CPU (multiciclo)

Progetto CPU (multiciclo) Progetto CPU (multiciclo) Salvatore Orlando Arch. Elab. - S. Orlando 1 Problemi con progetto a singolo ciclo Problemi del singolo ciclo Ciclo di clock lungo Istruzioni potenzialmente più veloci sono rallentate

Dettagli

CPU a ciclo multiplo

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

Dettagli

Progetto CPU (ciclo singolo)

Progetto CPU (ciclo singolo) 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

Dettagli

Progetto CPU (ciclo singolo) Salvatore Orlando

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

Dettagli

CALCOLATORI ELETTRONICI 14 giugno 2010

CALCOLATORI ELETTRONICI 14 giugno 2010 CALCOLATORI ELETTRONICI 14 giugno 2010 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si implementi per mezzo di porte logiche di AND, OR e NOT la funzione combinatoria (a

Dettagli

Architettura degli elaboratori - II Le architetture multi-ciclo

Architettura degli elaboratori - II Le architetture multi-ciclo Architettura degli elaboratori - II Le architetture multi-ciclo Prof. Alberto Borghese Dipartimento di Informatica alberto.borghese@unimi.it Università degli Studi di Milano 1/41 Sommario Principi ispiratori

Dettagli

Processore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa)

Processore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa) Processore Memoria Control (Parte di controllo) Datapath (Parte operativa) I/O Memoria La dimensione del Register File è piccola registri usati per memorizzare singole variabili di tipo semplice purtroppo

Dettagli

CALCOLATORI ELETTRONICI 20 gennaio 2012

CALCOLATORI ELETTRONICI 20 gennaio 2012 CALCOLATORI ELETTRONICI 20 gennaio 2012 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

Dettagli

Calcolatori Elettronici

Calcolatori Elettronici Calcolatori Elettronici CPU multiciclo Massimiliano Giacomin SVANTAGGI DEL PROCESSORE A SINGOLO CICLO Tutte le istruzioni lunghe un ciclo di clock T clock determinato dall istruzione più lenta Istruzioni

Dettagli

CALCOLATORI ELETTRONICI 27 giugno 2017

CALCOLATORI ELETTRONICI 27 giugno 2017 CALCOLATORI ELETTRONICI 27 giugno 2017 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

Dettagli

Calcolatori Elettronici B a.a. 2004/2005

Calcolatori Elettronici B a.a. 2004/2005 Calcolatori Elettronici B a.a. 2004/2005 Tecniche di Controllo: Esercizi Massimiliano Giacomin Calcolo CPI e Prestazioni nei sistemi a singolo ciclo e multiciclo ) Calcolo prestazioni nei sistemi a singolo

Dettagli

L unità di controllo di CPU a singolo ciclo

L unità di controllo di CPU a singolo ciclo L unità di controllo di CPU a singolo ciclo Prof. Alberto Borghese Dipartimento di Informatica alberto.borghese@unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 4.2, 4.4, D1,

Dettagli

CALCOLATORI ELETTRONICI A 25 gennaio 2011

CALCOLATORI ELETTRONICI A 25 gennaio 2011 CALCOLATORI ELETTRONICI A 25 gennaio 2011 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Supponendo di avere a disposizione dei sommatori full adder (3 ingressi e due uscite)

Dettagli

CALCOLATORI ELETTRONICI 9 settembre 2011

CALCOLATORI ELETTRONICI 9 settembre 2011 CALCOLATORI ELETTRONICI 9 settembre 2011 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si implementi per mezzo di porte logiche AND, OR e NOT la funzione combinatoria (a

Dettagli

Università degli Studi di Cassino

Università degli Studi di Cassino Corso di Data path multiciclo Anno Accademico 2007/2008 Francesco Tortorella Problemi dell implementazione singolo ciclo Arithmetic & Logical PC Inst Memory Reg File mux ALU mux setup Load PC Inst Memory

Dettagli

Architettura della CPU multi-ciclo

Architettura della CPU multi-ciclo Architettura della CPU multi-ciclo Architettura degli Elaboratori e delle Reti, Turno I Alberto Borghese Università degli Studi di Milano Dipartimento di Scienze dell Informazione email: borghese@dsi.unimi.it

Dettagli

L unità di controllo di CPU a singolo ciclo

L unità di controllo di CPU a singolo ciclo L unità di controllo di CPU a singolo ciclo Prof. Alberto Borghese Dipartimento di Informatica alberto.borghese@unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 4.2, 4.4, D,

Dettagli

Lezione 29 Il processore: unità di controllo (2)

Lezione 29 Il processore: unità di controllo (2) Lezione 29 Il processore: unità di lo (2) Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno Organizzazione della lezione 2 Un riepilogo: ruolo della unità di

Dettagli

Una CPU multi-ciclo. Sommario

Una CPU multi-ciclo. Sommario Una CPU multi-ciclo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano 1/3 http:\\homes.dsi.unimi.it\ borghese Sommario I problemi della

Dettagli

CPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti

CPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti Architettura degli Elaboratori e delle Reti Lezione 18 CPU a singolo ciclo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 18 1/2 Sommario!

Dettagli

CALCOLATORI ELETTRONICI 29 giugno 2015

CALCOLATORI ELETTRONICI 29 giugno 2015 CALCOLATORI ELETTRONICI 29 giugno 2015 NOME: COGNOME: MATR: Scrivere nome, cognome e matricola chiaramente in caratteri maiuscoli a stampa 1. Relativamente al confronto tra le implementazioni del processore

Dettagli

Progetto CPU a singolo ciclo

Progetto CPU a singolo ciclo Architettura degli Elaboratori e delle Reti Progetto CPU a singolo ciclo Proff. A. Borghese, F. Pedersini Dipartimento di Informatica Università degli Studi di Milano 1/50 Sommario! La CPU! Sintesi di

Dettagli

Processore: Datapath & Control. Progetto CPU (ciclo singolo) Rivediamo i formati delle istruzioni. ISA di un MIPS-lite

Processore: Datapath & Control. Progetto CPU (ciclo singolo) Rivediamo i formati delle istruzioni. ISA di un MIPS-lite Processore: Datapath & Control Possiamo finalmente vedere il progetto di un processore MIPS-like semplificato Progetto CPU (ciclo singolo) Semplificato in modo tale da eseguire solo: istruzioni di memory-reference:

Dettagli

Esercitazione del 30/04/ Soluzioni

Esercitazione del 30/04/ Soluzioni Esercitazione del 30/04/2009 - Soluzioni 1. LA CPU multi-ciclo Una CPU a ciclo singolo richiede un ciclo di clock di durata sufficiente a permettere la stabilizzazione del circuito nel caso dell istruzione

Dettagli

Calcolatori Elettronici B a.a. 2006/2007

Calcolatori Elettronici B a.a. 2006/2007 Calcolatori Elettronici B a.a. 26/27 Tecniche di Controllo: Esercizi Massimiliano Giacomin Due tipologie di esercizi Calcolo delle prestazioni nei sistemi a singolo ciclo e multiciclo (e confronto) Implementazione

Dettagli

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 Architettura degli Elaboratori Lez. 8 CPU MIPS a 1 colpo di clock Prof. Andrea Sterbini sterbini@di.uniroma1.it Argomenti Progetto della CPU MIPS a 1 colpo di clock - Istruzioni da implementare - Unità

Dettagli

CALCOLATORI ELETTRONICI 9 gennaio 2013

CALCOLATORI ELETTRONICI 9 gennaio 2013 CALCOLATORI ELETTRONICI 9 gennaio 2013 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si implementi per mezzo di porte logiche di AND, OR e NOT la funzione combinatoria (a

Dettagli

L'architettura del processore MIPS

L'architettura del processore MIPS L'architettura del processore MIPS Piano della lezione Ripasso di formati istruzione e registri MIPS Passi di esecuzione delle istruzioni: Formato R (istruzioni aritmetico-logiche) Istruzioni di caricamento

Dettagli

Architettura degli Elaboratori B Introduzione al corso

Architettura degli Elaboratori B Introduzione al corso Architettura degli Elaboratori B Introduzione al corso Salvatore Orlando Arch. Elab. - S. Orlando 1 Componenti di un calcolatore convenzionale Studieremo il progetto e le prestazioni delle varie componenti

Dettagli

CALCOLATORI ELETTRONICI 27 marzo 2018

CALCOLATORI ELETTRONICI 27 marzo 2018 CALCOLATORI ELETTRONICI 27 marzo 2018 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si implementi per mezzo di porte logiche di AND, OR e NOT la funzione combinatoria (a

Dettagli

CALCOLATORI ELETTRONICI 15 giugno 2015

CALCOLATORI ELETTRONICI 15 giugno 2015 CALCOLATORI ELETTRONICI 15 giugno 2015 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si implementi per mezzo di porte logiche di AND, OR e NOT la funzione combinatoria (a

Dettagli

Calcolatori Elettronici

Calcolatori Elettronici Calcolatori Elettronici CPU multiciclo: esercizi Massimiliano Giacomin 1 Prima tipologia di esercizi: valutazione delle prestazioni 2 Specchio riassuntivo su prestazioni e CPI 0) In generale: T esecuzione

Dettagli

CPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti. Proff. A. Borghese, F. Pedersini

CPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti. Proff. A. Borghese, F. Pedersini Architettura degli Elaboratori e delle Reti Lezione 8 CPU a singolo ciclo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 8 /33 Sommario! La

Dettagli

Richiami sull architettura del processore MIPS a 32 bit

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

Dettagli

Richiami sull architettura del processore MIPS a 32 bit

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

Dettagli

Calcolatori Elettronici

Calcolatori Elettronici Calcolatori Elettronici Tecniche Pipeline: Elementi di base Massimiliano Giacomin 1 Esecuzione delle istruzioni MIPS con multiciclo: rivisitazione - esame dell istruzione lw (la più complessa) - in rosso

Dettagli

Architettura degli Elaboratori B. Introduzione al corso. Componenti di un calcolatore convenzionale. (ciclo singolo) Progetto CPU. Contenuti del corso

Architettura degli Elaboratori B. Introduzione al corso. Componenti di un calcolatore convenzionale. (ciclo singolo) Progetto CPU. Contenuti del corso Architettura degli Elaboratori B Introduzione al corso Salvatore Orlando Arch. Elab. - S. Orlando 1 Contenuti del corso Progetto della CPU CPU in grado di eseguire un sottoinsieme di istruzioni MIPS in

Dettagli

Progetto CPU a singolo ciclo

Progetto CPU a singolo ciclo Architettura degli Elaboratori e delle Reti Progetto CPU a singolo ciclo Proff. A. Borghese, F. Pedersini Dipartimento di Informatica Università degli Studi di Milano 1/60 Sommario v La CPU v Sintesi di

Dettagli

Calcolatori Elettronici B a.a. 2005/2006

Calcolatori Elettronici B a.a. 2005/2006 Calcolatori Elettronici B a.a. 25/26 Tecniche di Controllo: Esercizi assimiliano Giacomin Due tipologie di esercizi Calcolo delle prestazioni nei sistemi a singolo ciclo e multiciclo (e confronto) Implementazione

Dettagli

L unità di controllo di CPU a singolo ciclo. Sommario

L unità di controllo di CPU a singolo ciclo. Sommario L unità di controllo di CPU a singolo ciclo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 4.2,

Dettagli

Unità di controllo della pipeline

Unità di controllo della pipeline Unità di controllo della pipeline Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano Riferimento al Patterson: 6.3 /5 Sommario La CPU

Dettagli

Il processore: unità di elaborazione

Il processore: unità di elaborazione Il processore: unità di elaborazione Architetture dei Calcolatori (lettere A-I) Progettazione dell unità di elaborazioni dati e prestazioni Le prestazioni di un calcolatore sono determinate da: Numero

Dettagli

CALCOLATORI ELETTRONICI 15 aprile 2014

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

Dettagli

Il processore: unità di controllo

Il processore: unità di controllo 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

Dettagli

Architettura degli Elaboratori

Architettura degli Elaboratori Architettura degli Elaboratori Linguaggio macchina e assembler (caso di studio: processore MIPS) slide a cura di Salvatore Orlando, Marta Simeoni, Andrea Torsello Architettura degli Elaboratori 1 1 Istruzioni

Dettagli

Una CPU multi-ciclo. Sommario

Una CPU multi-ciclo. Sommario Una CPU multi-ciclo Prof. lberto orghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano iferimento sul Patterson: Sezione D3 1/30 http:\\borghese.di.unimi.it\

Dettagli

Implementazione semplificata

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

Dettagli

Progettazione dell unità di elaborazioni dati e prestazioni. Il processore: unità di elaborazione. I passi per progettare un processore

Progettazione dell unità di elaborazioni dati e prestazioni. Il processore: unità di elaborazione. I passi per progettare un processore Il processore: unità di elaborazione Architetture dei Calcolatori (lettere A-I) Progettazione dell unità di elaborazioni dati e prestazioni Le prestazioni di un calcolatore sono determinate da: Numero

Dettagli

Esercitazione del 04/05/2006 Soluzioni

Esercitazione del 04/05/2006 Soluzioni Esercitazione del 04/05/2006 Soluzioni 1. CPU singolo ciclo vs CPU multi ciclo. Una CPU a ciclo singolo richiede un ciclo di clock di durata sufficiente a permettere la stabilizzazione del circuito nel

Dettagli

Università degli Studi di Cassino

Università degli Studi di Cassino Corso di Realizzazione del Data path Data path a ciclo singolo Anno Accademico 27/28 Francesco Tortorella (si ringrazia il prof. M. De Santo per parte del materiale presente in queste slides) Realizzazione

Dettagli

L unità di controllo di CPU multi-ciclo

L unità di controllo di CPU multi-ciclo L unità di controllo di CPU multi-ciclo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano A.A. 23-24 /2 Sommario I segnali di controllo

Dettagli

Una CPU multi-ciclo. Sommario

Una CPU multi-ciclo. Sommario Una CPU multi-ciclo Prof. lberto orghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano iferimento sul Patterson: Sezioni 5.5 e 5.6 1/30 http:\\homes.dsi.unimi.it\

Dettagli

Università degli Studi di Cassino e del Lazio Meridionale

Università degli Studi di Cassino e del Lazio Meridionale Università degli Studi di Cassino e del Lazio Meridionale di Calcolatori Elettronici Realizzazione del Data path a ciclo singolo Anno Accademico 22/23 Alessandra Scotto di Freca Si ringrazia il prof.francesco

Dettagli

Un quadro della situazione. Lezione 28 Il Processore: unità di controllo (2) Dove siamo nel corso. Organizzazione della lezione. Cosa abbiamo fatto

Un quadro della situazione. Lezione 28 Il Processore: unità di controllo (2) Dove siamo nel corso. Organizzazione della lezione. Cosa abbiamo fatto Un quadro della situazione Lezione 28 Il Processore: unità di lo (2) Vittorio Scarano rchitettura Corso di Laurea in Informatica Università degli Studi di Salerno Input/Output Sistema di Interconnessione

Dettagli

Esercitazione del 05/05/ Soluzioni

Esercitazione del 05/05/ Soluzioni Esercitazione del 05/05/2005 - Soluzioni Una CPU a ciclo singolo richiede un ciclo di clock di durata sufficiente a permettere la stabilizzazione del circuito nel caso dell istruzione più complicata (con

Dettagli

La pipeline. Sommario

La pipeline. Sommario La pipeline Prof. Alberto Borghese Dipartimento di Scienze dell Informazione alberto.borghese@unimi.it Università degli Studi di Milano Riferimento al Patterson edizione 5: 4.5 e 4.6 1/31 http:\\borghese.di.unimi.it\

Dettagli

Circuiti Sequenziali

Circuiti Sequenziali Circuiti Sequenziali I circuiti combinatori sono in grado di calcolare funzioni che dipendono solo dai dati in input I circuiti sequenziali sono invece in grado di calcolare funzioni che dipendono anche

Dettagli

CPU a singolo ciclo: l unità di controllo, esecuzione istruzioni tipo J

CPU a singolo ciclo: l unità di controllo, esecuzione istruzioni tipo J Architettura degli Elaboratori e delle Reti Lezione 9 CPU a singolo ciclo: l unità di controllo, esecuzione istruzioni tipo J Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione

Dettagli

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori Elettronici A a.a. 2008/2009 Calcolatori Elettronici A a.a. 28/29 CPU multiciclo Massimiliano Giacomin Esempi di processori che usano controllo a singolo ciclo: NESSUNO! Perché? Periodo di clock: abbastanza lungo per garantire la

Dettagli

La pipeline. Sommario

La pipeline. Sommario La pipeline Prof. Alberto Borghese Dipartimento di Scienze dell Informazione alberto.borghese@unimi.it Università degli Studi di Milano Riferimento al Patterson edizione 5: 4.5 e 4.6 1/28 http:\\borghese.di.unimi.it\

Dettagli

Prova parziale 30 aprile 2018 Possibili soluzioni

Prova parziale 30 aprile 2018 Possibili soluzioni Prova parziale 30 aprile 2018 Possibili soluzioi Primo compito Rappresetare il umero -5 el sistema di rappresetazioe i eccesso a 16 su 5 bit. +5 i otazioe posizioale: 00101-5 i complemeto a due: 11011-5

Dettagli

Calcolatori Elettronici B a.a. 2005/2006

Calcolatori Elettronici B a.a. 2005/2006 Calcolatori Elettronici B a.a. 25/26 Tecniche Pipeline: Elementi di base assimiliano Giacomin Reg[IR[2-6]] = DR Dal processore multiciclo DR= em[aluout] em[aluout] =B Reg[IR[5-]] =ALUout CASO IPS lw sw

Dettagli

Calcolatori Elettronici B a.a. 2007/2008

Calcolatori Elettronici B a.a. 2007/2008 Calcolatori Elettronici B a.a. 27/28 Tecniche Pipeline: Elementi di base assimiliano Giacomin Reg[IR[2-6]] = DR Dal processore multiciclo DR= em[aluout] em[aluout] =B Reg[IR[5-]] =ALUout CASO IPS lw sw

Dettagli

Architettura degli Elaboratori

Architettura degli Elaboratori Architettura degli Elaboratori Linguaggio macchina e assembler (caso di studio: processore MIPS) slide a cura di Salvatore Orlando, Andrea Torsello, Marta Simeoni " Architettura degli Elaboratori 1 1 Istruzioni

Dettagli

Architettura degli elaboratori CPU a ciclo singolo

Architettura degli elaboratori CPU a ciclo singolo Architettura degli elaboratori CPU a ciclo singolo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@di.unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo

Dettagli

Università degli Studi di Cassino

Università degli Studi di Cassino Corso di Realizzazione del path path a ciclo singolo Anno Accademico 24/25 Francesco Tortorella Realizzazione del data path. Analizzare l instruction set => Specifiche sul datapath il significato di ciascuna

Dettagli

CALCOLATORI ELETTRONICI 29 giugno 2010

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

Dettagli

Linguaggio assembler e linguaggio macchina (caso di studio: processore MIPS)

Linguaggio assembler e linguaggio macchina (caso di studio: processore MIPS) Linguaggio assembler e linguaggio macchina (caso di studio: processore MIPS) Salvatore Orlando Arch. Elab. - S. Orlando 1 Livelli di astrazione Scendendo di livello, diventiamo più concreti e scopriamo

Dettagli

La CPU a singolo ciclo

La CPU a singolo ciclo La CPU a singolo ciclo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 5 (fino a 5.4) /46 Sommario

Dettagli

Esercitazione del 30/04/ Soluzioni

Esercitazione del 30/04/ Soluzioni Esercitazione del 30/04/2010 - Soluzioni 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

Dettagli

CPU a singolo ciclo: l unità di controllo, istruzioni tipo J

CPU a singolo ciclo: l unità di controllo, istruzioni tipo J Architettura degli Elaboratori e delle Reti Lezione 9 CPU a singolo ciclo: l unità di controllo, istruzioni tipo J Pro. A. Borghese, F. Pedersini Dipartimento di Scienze dell Inormazione Università degli

Dettagli

Calcolatori Elettronici B a.a. 2006/2007

Calcolatori Elettronici B a.a. 2006/2007 Calcolatori Elettronici B a.a. 26/27 Tecniche di Controllo Massimiliano Giacomin Schema del processore (e memoria) Durante l esecuzione di un programma applicativo Pa, i circuiti interpretano le istruzioni

Dettagli

La CPU a singolo ciclo

La CPU a singolo ciclo La CPU a singolo ciclo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 5 (fino a 5.4) 1/44 Sommario

Dettagli

Calcolatori Elettronici B a.a. 2005/2006

Calcolatori Elettronici B a.a. 2005/2006 Calcolatori Elettronici B a.a. 25/26 Tecniche di Controllo Massimiliano Giacomin Architetture descrivono il calcolatore a diversi livelli di astrazione Livello del linguaggio specializzato Ls Traduzione

Dettagli

Il Processore: l Unità di Controllo Principale Barbara Masucci

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

Dettagli

Calcolatori Elettronici B a.a. 2007/2008

Calcolatori Elettronici B a.a. 2007/2008 Calcolatori Elettronici B a.a. 27/28 Tecniche di Controllo Massimiliano Giacomin Schema del processore (e memoria) Durante l esecuzione di un programma applicativo Pa, i circuiti interpretano le istruzioni

Dettagli

Architettura degli elaboratori CPU a ciclo singolo

Architettura degli elaboratori CPU a ciclo singolo Architettura degli elaboratori CPU a ciclo singolo Prof. Alberto Borghese Dipartimento di Informatica borghese@di.unimi.it Università degli Studi di Milano iferimento sul Patterson: capitolo 4.2, 4.4,

Dettagli

Problemi del ciclo singolo

Problemi del ciclo singolo Problemi del ciclo singolo Ciclo di clock lungo Istruzioni potenzialmente veloci sono rallentate Impiegano sempre lo stesso tempo dell istruzione più lenta Unità funzionale e collegamenti della parte operativa

Dettagli

CALCOLATORI ELETTRONICI 29 giugno 2011

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)

Dettagli

CALCOLATORI ELETTRONICI 31 marzo 2015

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

Dettagli

Gestione delle eccezioni (CPU multiciclo) La CPU pipeline

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

Dettagli