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

Dimensione: px
Iniziare la visualizzazioe della pagina:

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

Transcript

1 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 lo progettazione mediante macchina a stati finiti Semplificazione del progetto della unità di lo mediante la microprogrammazione 1

2 La unità di lo 3 Responsabile dei segnali di lo che vengono inviati alla unità di elaborazione Alcune difficoltà gestione dei diversi passi di esecuzione della istruzione Due tecniche per la progettazione della unità di lo tecniche per la rappresentazione della UC Queste rappresentazioni della UC permettono la sintesi automatica della implementazione sotto forma di ROM o di PLA Le macchine a stati finiti 4 Rappresentazione simbolica del comportamento Costituite da: un insieme di stati (rappresentati con un cerchio) insieme di transizioni di stato attraverso una funzione di prossimo stato che mette in relazione lo stato corrente e lo stato successivo Nella rappresentazione della UC ogni stato rappresenta i valori dei segnali di lo che sono messi a 1 quelli non esplicitati vanno messi a 0 per il lo dei multiplexer è invece necessario specificare ad ogni passo il valore 2

3 Schema riassuntivo dei passi 5 Nome del passo Istruzioni di tipo R Azione intrapresa Accesso Memoria Salti condizionati Salti incondizionati Prelievo Decodifica IR= Memoria[PC] PC=PC+4 A = Reg[IR[25-21]] B=Reg{IR{20-16]] Out = PC+(sign-extend(IR[15-0])<<2 Esecuzione, Out=A op B Out = A + Sign-extend(IR{15- if (A==B) then PC=PC[31-28] calcolo ind., salti 0]) PC=Out (IR[25-0]<<2) Accesso Mem compl. R Reg[IR[15-11]]=Out Load: MDR=Memoria[Out] Store: Memoria[Out]=B Compl. lettura da memoria Load: Reg[IR[20-16]]=MDR Una visione completa della macchina a SF 6 2 SrcA = 1 SrcB = 10 Op =00 3 address computation 4 (Op = 'LW') MemRead IorD = 1 access RegDst =0 RegWrite MemtoReg=1 (Op = 'SW') 5 Write-back step Start MemWrite IorD = 1 access Instruction fetch 0 MemRead SrcA =0 IorD = 0 IRWrite SrcB =01 Op =00 PCWrite PCSource = 00 6 (Op = 'LW') or (Op = 'SW') 7 Execution SrcA =1 SrcB =00 Op= 10 RegDst = 1 RegWrite MemtoReg =0 R-type completion (Op = R-type) Branch completion 8 SrcA = 1 SrcB =00 Op =01 PCWriteCond PCSource = 01 (Op = 'BEQ') Instruction decode/ register fetch 1 9 SrcA =0 SrcB =11 Op = 00 (Op = 'J') Jump completion PCWrite PCSource = 10 3

4 Implementazione della UC dalla MSF 7 Uso di un registro temporaneo che memorizza lo stato corrente di un blocco di logica combinatoria che determina i segnali e lo stato futuro Combinational logic Inputs Inputs from instruction register opcode field Outputs State register Datapath outputs Next state Organizzazione della lezione 8 Un riepilogo: ruolo della unità di lo progettazione mediante macchina a stati finiti Semplificazione del progetto della unità di lo mediante la microprogrammazione 4

5 Necessità di strumenti progettuali più efficaci 9 Per la progettazione della Unità di lo per il set di istruzioni del MIPS ridotto (da noi studiato) la macchina a stati finiti ha 10 e quindi risulta facilmente gestibile Per unità di lo per implementazioni complete da 1 a 20 cicli di clock centinaia di stati con molti più archi la rappresentazione grafica diventa complicata da mantenere possibili errori di progettazione Necessario uno strumento più efficace.. L idea: la microprogrammazione Trattare l insieme dei segnali di lo come una istruzione da eseguire una istruzione di lo detta microistruzione per differenziarla dalle istruzioni MIPS Ogni microistruzione definisce quali segnali vanno messi a 1 in un certo stato definisce anche quale è la successiva microistruzione da eseguire Il microprogramma rappresentazione simbolica della unità di lo 10 5

6 Il microprogramma Rappresentazione simbolica della unità di lo che verrà tradotta in porte logiche da strumenti automatici come per le macchine a stati finiti Formato delle microistruzioni valgono gli stessi principi progettuali della progettazione della unità di elaborazione (semplicità etc.) Formato campi che specificano il valore dei segnali di lo 11 Il formato delle microistruzioni Ogni microistruzione contiene 7 campi 12 Campo SRC1 SRC2 Register PCWrite Funzione operazione compiuta da ; risultato in Out provenienza primo operando provenienza secondo operando lettura o scrittura del banco dei registri e provenienza dei valori in caso di scrittura lettura o scrittura della memoria e provenienza dei dati; in caso di lettura specifica il registro destinazione modalità di aggiornamento del PC modalità di scelta della istruzione successiva 6

7 La scelta della microistruzione successiva 13 Diverse possibilità: passare alla microistruzione seguente: il campo viene messo al valore Seq passare alla microistruzione che inizia l esecuzione della prossima istruzione MIPS la prima microistruzione ha una etichetta il campo viene messo al valore passare alla microistruzione a seconda di valori indicati in input alla unità di lo si usa una tabella di Dispatch (solitamente una ROM) il campo viene messo al valore Dispatch i dove iè il valore che viene passato alla tabella di Dispatch che restituisce la prossima istruzione I valori dei campi (1) Label stringa indica la label della istruzione Add Subt deve sommare deve sottrarre SRC1 SRC2 Func code PC A B 4 deve usare funct per la operazione PC è il primo operando della registro A è il primo operando della registro B è il secondo operando della il valore 4 è il secondo operando della Extend uscita esten. segno è il secondo operando della Extshift uscita dello shift è il secondo operando della 14 7

8 I valori dei campi (2) Register Read Write legge i due registri, usando IR, output in A e B scrive usando rt come registro, e Out come dato Write MDR scrive usando rt come registro, e MDR come dato Read PC legge la memoria usando PC (indir.), risultato in IR e MDR PCWrite Read Write outcond Jump addr. legge la memoria usando Out (indir.), risultato in MDR scrive la memoria usando Out (indir.), e B (dato) scrive uscita della nel PC se Zero vale 1, scrive in PC il valore di Out scrive in PC l indirizzo di salto preso dalla istruzione Seq vai alla microistruzione successiva vai alla prima microistruzione (che inizia la esecuzione) 15 Dispatch i usa la tabella di dispatch (ROM) per indicare la prossima istr. Le label e la tabella di Dispatch Le label nel campo sequencing sono di due tipi: riferimento esplicito ad una etichetta definita per una mimcroistruzione uso della tabella di dispatch con il valore Dispatch i Le etichette che terminano con 1 oppure 2 sono usate dalla tabella di Dispatch che ne restituisce l indirizzo (della microistruzione) a seconda del valore dei 6 bit del campo Op che vengono passati alla unità di lo 16 8

9 Schema riassuntivo dei passi Nome del passo Istruzioni di tipo R Azione intrapresa Accesso Memoria Salti condizionati Salti incondizionati Prelievo Decodifica IR= Memoria[PC] PC=PC+4 A = Reg[IR[25-21]] B=Reg{IR{20-16]] Out = PC+(sign-extend(IR[15-0])<<2 Esecuzione, Out=A op B Out = A + Sign-extend(IR{15- if (A==B) then PC=PC[31-28] calcolo ind., salti 0]) PC=Out (IR[25-0]<<2) Accesso Mem compl. R Reg[IR[15-11]]=Out Load: MDR=Memoria[Out] Store: Memoria[Out]=B Compl. lettura da memoria Load: Reg[IR[20-16]]=MDR 17 I primi due passi 18 Incremento Program Counter e scrittura dell incremento lettura istruzione da PC (in IR) salto alla microistruzione indicata dalla tabella di dispatch Label Add Add PC PC SRC1 4 SRC2 Extshift Register Read Read PC PCWRite Seq Dispatch 1 9

10 Le etichette del Dispatch Servono a differenziare i 4 tipi di istruzioni una specie di switch Esistono 4 etichette Mem1 Rformat1 BEQ1 JUMP1 Notare il carattere 1 finale delle etichette 19 Schema riassuntivo dei passi Nome del passo Istruzioni di tipo R Azione intrapresa Accesso Memoria Salti condizionati Salti incondizionati Prelievo Decodifica IR= Memoria[PC] PC=PC+4 A = Reg[IR[25-21]] B=Reg{IR{20-16]] Out = PC+(sign-extend(IR[15-0])<<2 Esecuzione, Out=A op B Out = A + Sign-extend(IR{15- if (A==B) then PC=PC[31-28] calcolo ind., salti 0]) PC=Out (IR[25-0]<<2) Accesso Mem compl. R Reg[IR[15-11]]=Out Load: MDR=Memoria[Out] Store: Memoria[Out]=B Compl. lettura da memoria Load: Reg[IR[20-16]]=MDR 20 10

11 Istruzioni di accesso alla memoria calcolo indirizzo due passi per la LW (uso di Dispatch 2) un passo per la SW Label Mem1 LW2 SW2 Add A SRC1 SRC2 Extend Register Write MDR Read Write PCWRite Dispatch 2 Seq 21 Schema riassuntivo dei passi Nome del passo Istruzioni di tipo R Azione intrapresa Accesso Memoria Salti condizionati Salti incondizionati Prelievo Decodifica IR= Memoria[PC] PC=PC+4 A = Reg[IR[25-21]] B=Reg{IR{20-16]] Out = PC+(sign-extend(IR[15-0])<<2 Esecuzione, Out=A op B Out = A + Sign-extend(IR{15- if (A==B) then PC=PC[31-28] calcolo ind., salti 0]) PC=Out (IR[25-0]<<2) Accesso Mem compl. R Reg[IR[15-11]]=Out Load: MDR=Memoria[Out] Store: Memoria[Out]=B Compl. lettura da memoria Load: Reg[IR[20-16]]=MDR 22 11

12 Istruzioni di tipo R Operazione indicata dal campo funct Scrittura nel registro del risultato della operazione Torna alla microistruzione con label fetch Label Rformat1 Func A SRC1 B SRC2 Register PCWRite Seq 23 Write Schema riassuntivo dei passi Nome del passo Istruzioni di tipo R Azione intrapresa Accesso Memoria Salti condizionati Salti incondizionati Prelievo Decodifica IR= Memoria[PC] PC=PC+4 A = Reg[IR[25-21]] B=Reg{IR{20-16]] Out = PC+(sign-extend(IR[15-0])<<2 Esecuzione, Out=A op B Out = A + Sign-extend(IR{15- if (A==B) then PC=PC[31-28] calcolo ind., salti 0]) PC=Out (IR[25-0]<<2) Accesso Mem compl. R Reg[IR[15-11]]=Out Load: MDR=Memoria[Out] Store: Memoria[Out]=B Compl. lettura da memoria Load: Reg[IR[20-16]]=MDR 24 12

13 Istruzione di branch Effettua una sottrazione tra A e B il risultato non interessa, serve solamente la linea Zero Scrivi il program counter calcolato nel passo precedente solamente se la linea Zero della è a 1 Torna alla microistruzione con label fetch Label BEQ1 Subt A SRC1 B SRC2 Register PCWRite Outc ond 25 Schema riassuntivo dei passi Nome del passo Istruzioni di tipo R Azione intrapresa Accesso Memoria Salti condizionati Salti incondizionati Prelievo Decodifica IR= Memoria[PC] PC=PC+4 A = Reg[IR[25-21]] B=Reg{IR{20-16]] Out = PC+(sign-extend(IR[15-0])<<2 Esecuzione, Out=A op B Out = A + Sign-extend(IR{15- if (A==B) then PC=PC[31-28] calcolo ind., salti 0]) PC=Out (IR[25-0]<<2) Accesso Mem compl. R Reg[IR[15-11]]=Out Load: MDR=Memoria[Out] Store: Memoria[Out]=B Compl. lettura da memoria Load: Reg[IR[20-16]]=MDR 26 13

14 Istruzione di jump Scrivi nel PC il nuovo indirizzo Torna alla microistruzione con label fetch Label SRC1 SRC2 Register PCWRite JUMP1 Jump address 27 L intero microprogramma Label SRC1 SRC2 Register PCWRite Add PC 4 Read PC Seq Add PC Extshift Read Dispatch 1 Mem1 Add A Extend Dispatch 2 LW2 SW2 Rformat1 Func A B Write MDR Write Read Write Seq Seq BEQ1 Subt A B Outco nd 28 JUMP1 Jump address 14

15 Implementazione del microprogramma Il microprogramma può essere visto come una rappresentazione di una macchina a stati finiti e quindi può essere usato per lo stesso tipo di generazione automatica della ROM (o PLA) per la implementazione Una implementazione alternativa implementare separatamente la funzione di lo (generazione dei segnali) e la selezione della prossima istruzione uso di un contatore che viene incrementato e di una parte di logica che compie la selezione dell indirizzo 29 La implementazione alternativa Microcode Microcode storage storage Outputs Outputs Datapath Datapath outputs outputs 1 1 Adder Adder Input Input Microprogram counter Microprogram counter Address select logic Address select logic Inputs from instruction Inputs from instruction register opcode field register opcode field 30 15

16 Alcuni esercizi/domande.. (1) (dove non specificato si intende sempre per la unità di elaborazione a ciclo multiplo ) A cosa serve il segnale di lo PCWriteCond? Quale è la differenza tra una istruzione ed una microistruzione? Per eseguire una istruzione add, quale è il segnale di lo Op? Quanti passi sono necessari per eseguire la istruzione sw? e per la lw? Cosa si trova in Op alla fine del secondo passo di esecuzione di una istruzione? 31 Alcuni esercizi/domande.. (2) 32 Quale è la differenza tra una unità di elaborazione a ciclo singolo ed una a ciclo multiplo? e quale è preferibile e perché? Quali sono le istruzioni che vengono eseguite nel minor numero di passi? Tutte le istruzioni di tipo R vengono eseguite nello stesso numero di passi? Tutte le istruzioni di tipo I vengono eseguite nello stesso numero di passi? Modificare la unità di elaborazione per eseguire anche la istruzione BNE può essere introdotto qualche altro segnale di lo 16

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

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

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

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

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

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

L unità di controllo. Il processore: unità di controllo. Le macchine a stati finiti. Struttura della macchina a stati finiti

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

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

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

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

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

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

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

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 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

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

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

Lezione 28 Il processore: unità di controllo (1)

Lezione 28 Il processore: unità di controllo (1) Lezione 8 Il processore: nità di lo () Vittorio Scarano rchitettra Corso di Larea in Informatica Università degli Stdi di Salerno Organizzazione della lezione Definizione della nità di lo rchitettra. Vi.ttorio

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 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

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 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 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 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

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

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

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

Sia per la II prova intercorso che per le prove di esame è necessaria la PRENOTAZIONE

Sia per la II prova intercorso che per le prove di esame è necessaria la PRENOTAZIONE Seconda Prova Intercorso ed Esami di Febbraio Lezione 24 Valutazione delle Prestazioni Vittorio Scarano rchitettura Corso di Laurea in Informatica Università degli Studi di Salerno Seconda prova intercorso:

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

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

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

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

Un quadro della situazione. Cosa abbiamo fatto. Lezione 30 Valutazione delle Prestazioni. Dove stiamo andando.. Perché:

Un quadro della situazione. Cosa abbiamo fatto. Lezione 30 Valutazione delle Prestazioni. Dove stiamo andando.. Perché: Un quadro della situazione Lezione 3 Valutazione delle Prestazioni Vittorio Scarano rchitettura Corso di Laurea in Informatica Università degli Studi di Salerno Input/Output Sistema di Interconnessione

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

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 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

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

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

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

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

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

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

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

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

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

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

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

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

Architettura degli elaboratori - CPU multiciclo A.A. 2016/17. Architettura degli elaboratori

Architettura degli elaboratori - CPU multiciclo A.A. 2016/17. Architettura degli elaboratori Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Architettura degli elaboratori Marco Tarini Dipartimento di Scienze Teoriche e Applicate marco.tarini@uninsubria.it Progetto

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 pipeline hazards

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!

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

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

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

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

Università degli Studi di Cassino

Università degli Studi di Cassino Corso di Istruzioni di confronto Istruzioni di controllo Formato delle istruzioni in L.M. Anno Accademico 2007/2008 Francesco Tortorella Istruzioni di confronto Istruzione Significato slt $t1,$t2,$t3 if

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

Le etichette nei programmi. Istruzioni di branch: beq. Istruzioni di branch: bne. Istruzioni di jump: j

Le etichette nei programmi. Istruzioni di branch: beq. Istruzioni di branch: bne. Istruzioni di jump: j L insieme delle istruzioni (2) Architetture dei Calcolatori (lettere A-I) Istruzioni per operazioni logiche: shift Shift (traslazione) dei bit di una parola a destra o sinistra sll (shift left logical):

Dettagli

Linguaggio macchina e register file

Linguaggio macchina e register file Linguaggio macchina e register file Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@di.unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 4.2, 4.4,

Dettagli

Un quadro della situazione. Lezione 15 Il Set di Istruzioni (2) Le operazioni e gli operandi. Dove siamo nel corso. Cosa abbiamo fatto

Un quadro della situazione. Lezione 15 Il Set di Istruzioni (2) Le operazioni e gli operandi. Dove siamo nel corso. Cosa abbiamo fatto Un quadro della situazione Lezione 15 Il Set di Istruzioni (2) Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno Input/Output Sistema di Interconnessione Registri

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

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

Elementi base per la realizzazione dell unità di calcolo

Elementi base per la realizzazione dell unità di calcolo Elementi base per la realizzazione dell unità di calcolo Memoria istruzioni elemento di stato dove le istruzioni vengono memorizzate e recuperate tramite un indirizzo. ind. istruzione Memoria istruzioni

Dettagli

Un quadro della situazione. Lezione 15 Il Set di Istruzioni (3) Dove siamo nel corso. Organizzazione della lezione. Cosa abbiamo fatto

Un quadro della situazione. Lezione 15 Il Set di Istruzioni (3) Dove siamo nel corso. Organizzazione della lezione. Cosa abbiamo fatto Un quadro della situazione Lezione 15 Il Set di Istruzioni (3) Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno Input/Output Sistema di Interconnessione Registri

Dettagli

Lezione 18 Il Set di Istruzioni (4)

Lezione 18 Il Set di Istruzioni (4) Lezione 18 Il Set di Istruzioni (4) Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno Organizzazione della lezione Un richiamo su: Operazioni aritmetiche (add

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

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

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

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 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

Il set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini

Il set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini Architettura degli Elaboratori e delle Reti Il set istruzioni di MIPS Modalità di indirizzamento Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Corso di Calcolatori Elettronici MIPS: Istruzioni di confronto Istruzioni di controllo Formato delle istruzioni in L.M.

Corso di Calcolatori Elettronici MIPS: Istruzioni di confronto Istruzioni di controllo Formato delle istruzioni in L.M. di Cassino e del Lazio Meridionale Corso di MIPS: Istruzioni di confronto Istruzioni di controllo Formato delle istruzioni in L.M. Anno Accademico 201/201 Francesco Tortorella Istruzioni di confronto Istruzione

Dettagli

Il controllo specificato come microprogramma

Il controllo specificato come microprogramma Il controllo specificato come microprogramma Nella pratica, set istruzioni più numeroso o istruzioni più complesse (cfr. Intel) drastico aumento del numero degli stati Impraticabile rappresentare gli stati

Dettagli

Architettura dei calcolatori e sistemi operativi. Il processore Capitolo 4 P&H

Architettura dei calcolatori e sistemi operativi. Il processore Capitolo 4 P&H Architettura dei calcolatori e sistemi operativi Il processore Capitolo 4 P&H 4. 11. 2015 Sommario Instruction Set di riferimento per il processore Esecuzione delle istruzioni Struttura del processore

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

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

Il set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini

Il set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini Architettura degli Elaboratori e delle Reti Il set istruzioni di MIPS Modalità di indirizzamento Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Un quadro della situazione. Lezione 14 Il Set di Istruzioni (2) Dove siamo nel corso. I principi di progetto visti finora. Cosa abbiamo fatto

Un quadro della situazione. Lezione 14 Il Set di Istruzioni (2) Dove siamo nel corso. I principi di progetto visti finora. Cosa abbiamo fatto Un quadro della situazione Lezione 14 Il Set di Istruzioni (2) Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno Input/Output Sistema di Interconnessione Registri

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

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

Lezione 17 Il Set di Istruzioni (3)

Lezione 17 Il Set di Istruzioni (3) Lezione 17 Il Set di Istruzioni (3) Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno Organizzazione della lezione Un richiamo su: Operazioni aritmetiche (add

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

Informazioni varie. Lezione 18 Il Set di Istruzioni (5) Dove siamo nel corso. Un quadro della situazione

Informazioni varie. Lezione 18 Il Set di Istruzioni (5) Dove siamo nel corso. Un quadro della situazione Informazioni varie Lezione 18 Il Set di Istruzioni (5) Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno La lezione di martedì 20 maggio (9-12) non si tiene

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

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

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

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

Architettura dell elaboratore

Architettura dell elaboratore Architettura dell elaboratore Riprendiamo il discorso lasciato in sospeso ad inizio corso Riepilogando I programmi e i dati risiedono nella memoria secondaria Per essere eseguiti (i programmi) e usati

Dettagli

Architettura dell elaboratore

Architettura dell elaboratore Architettura dell elaboratore Riprendiamo il discorso lasciato in sospeso ad inizio corso Riepilogando I programmi e i dati risiedono nella memoria secondaria Per essere eseguiti (i programmi) e usati

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