CALCOLATORI ELETTRONICI 15 aprile 2014



Documenti analoghi
CALCOLATORI ELETTRONICI 31 marzo 2015

CALCOLATORI ELETTRONICI 29 giugno 2010

CALCOLATORI ELETTRONICI 29 giugno 2011

CALCOLATORI ELETTRONICI 27 giugno 2017

CALCOLATORI ELETTRONICI 20 gennaio 2012

CALCOLATORI ELETTRONICI A 25 gennaio 2011

CALCOLATORI ELETTRONICI 14 giugno 2010

CALCOLATORI ELETTRONICI 30 agosto 2010

CALCOLATORI ELETTRONICI 29 giugno 2015

CALCOLATORI ELETTRONICI 9 settembre 2011

CALCOLATORI ELETTRONICI 9 gennaio 2013

CALCOLATORI ELETTRONICI 15 giugno 2015

CALCOLATORI ELETTRONICI 27 marzo 2018

Architettura di tipo registro-registro (load/store)

L unità di controllo di CPU multi-ciclo

Controllo con macchina a stati finiti

Tutorato Architettura degli elaboratori

Calcolatori Elettronici

ESERCIZIO 1 Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTER-STADIO

ESERCIZIO 1 Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTER-STADIO

Calcolatori Elettronici B a.a. 2004/2005

Hazard sul controllo. Sommario

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

Università degli Studi di Cassino

Esercitazione sulle CPU pipeline

Calcolatori Elettronici

L unità di controllo di CPU multi-ciclo

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

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

CPU. Maurizio Palesi

CPU a ciclo multiplo: l unità di controllo

Calcolatori Elettronici B a.a. 2006/2007

Architettura (10/9/2003) Pag. 1/6. Cognome e Nome (in stampatello):

L unità di controllo di CPU a singolo ciclo

Calcolatori Elettronici

Calcolatori Elettronici

Architettura del calcolatore

Calcolatori Elettronici. La Pipeline Criticità sui dati Criticità sul controllo Cenni sull unità di controllo

Calcolatori Elettronici B a.a. 2006/2007

Quinto Homework. Indicare il tempo necessario all'esecuzione del programma in caso di avvio e ritiro fuori ordine.

ARCHITETTURE MICROPROGRAMMATE. 1. Necessità di un architettura microprogrammata 1. Cos è un architettura microprogrammata? 4

CPU a ciclo multiplo

L unità di controllo di CPU a singolo ciclo

Lezione n.19 Processori RISC e CISC

Unità di controllo della pipeline

Architettura degli Elaboratori Lez. 8 CPU MIPS a 1 colpo di clock. Prof. Andrea Sterbini

CALCOLATORI ELETTRONICI 15 luglio 2014

Architettura degli elaboratori - II Le architetture multi-ciclo

La macchina programmata Instruction Set Architecture (1)

Richiami sull architettura del processore MIPS a 32 bit

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

Architettura della CPU multi-ciclo

Una CPU multi-ciclo. Sommario

Prova intermedia di Architettura degli elaboratori canale MZ Sterbini Compito A

Realizzazione a cicli di clock multipli

CALCOLATORI ELETTRONICI B 23 giugno 2008

Architettura degli Elaboratori

Calcolatori Elettronici B a.a. 2005/2006

Calcolatori Elettronici

Architettura della CPU e linguaggio assembly Corso di Abilità Informatiche Laurea in Fisica. prof. ing. Corrado Santoro

Università degli Studi di Cassino e del Lazio Meridionale

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

Richiami sull architettura del processore MIPS a 32 bit

Progetto CPU a singolo ciclo

Architettura degli Elaboratori. Classe 3 Prof.ssa Anselmo. Appello dell 11 Settembre Attenzione:

CALCOLATORI ELETTRONICI 25 giugno 2018

L unità di elaborazione pipeline L unità Pipelining

Università degli Studi di Cassino e del Lazio Meridionale

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

Università degli Studi di Cassino

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

Il processore: unità di elaborazione

Progetto CPU (ciclo singolo)

Sommario Introduzione al linguaggio Assembly. Calcolatori Elettronici Prof. Gian Luca Marcialis. Le operazioni fondamentali

Calcolatori Elettronici

Calcolatori Elettronici A a.a. 2008/2009

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

Progetto CPU (ciclo singolo) Salvatore Orlando

Implementazione semplificata

Corso di Calcolatori Elettronici I A.A Il processore Lezione 18

Il Processore: l Unità di Controllo Principale Barbara Masucci

MODELLO DLX IN UNISIM

Elementi di Informatica e Programmazione. # Memoria di massa. Problema: comprare un PC. Architettura del calcolatore. Architettura di Von Neumann

Architettura di un calcolatore: introduzione

che vengano generati nell ordine corretto i sistema (es., la memoria, l unità aritmetico-

Università degli Studi di Cassino

Architettura. Indice:

L architettura di riferimento

Progetto CPU a singolo ciclo

Lezione 3: Architettura del calcolatore

CPU a ciclo multiplo

Architettura hardware

1) Un calcolatore con processore R3000 avente frequenza di clock pari a 2GHz esegue il seguente programma:

Lezione 1: L architettura LC-3 Laboratorio di Elementi di Architettura e Sistemi Operativi 10 Marzo 2014

Calcolatori Elettronici B a.a. 2008/2009

Architettura degli Elaboratori B Introduzione al corso

Transcript:

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 di eseguire, tra le altre, le operazioni di somma, sottrazione e slt (set on less than) Per quanto riguarda l operazione slt, si chiede di: - indicare quale significato hanno e come devono essere impostati (in modo qualitativo) gli ingressi Ainvert, Bnegate e Operation per fare in modo che la ALU compia l operazione slt - come viene realizzata l operazione slt, precisando tra l altro il ruolo della linea Set [4] Si studi infine il problema dell overflow nell operazione slt: nella realizzazione finale la segnalazione di overflow nell uscita Overflow indica che il risultato della slt non è valido? Perché? Si precisi come può essere realizzato il circuito per tener conto dell overflow nell operazione di sottrazione tra gli operandi [2] Ainvert Bnegate Operation a0 b0 CarryIn ALU0 Less CarryOut Result0 a1 b1 0 CarryIn ALU1 Less CarryOut Result1 a2 b2 0 CarryIn ALU2 Less CarryOut Result2 Zero CarryIn Result31 a31 CarryIn b31 ALU31 Set 0 Less Overflow

2 Si considerino, mostrati nelle figure alle pagine seguenti, il datapath ed il diagramma a stati finiti che specifica l unità di controllo secondo la tecnica a multiciclo relativamente alle istruzioni MIPS lw, sw, beq, j ed alle istruzioni Tipo-R Si vuole implementare la nuova istruzione loop r1, Etichetta // r1=r1-1; se r1==0 salta a Etichetta che decrementa il registro r1 e salta ad una istruzione di destinazione (specificata nello stesso modo in cui viene specificata nell istruzione beq) se r1 risulta nullo dopo il decremento Ricordando i tre formati di codifica delle istruzioni (riportati di seguito) si chiede di: - riportare il formato della nuova istruzione macchina (specificando il campo per r1); - riportare, nella corrispondente figura, le modifiche necessarie al datapath; - estendere il diagramma degli stati per implementare la nuova istruzione [5] Promemoria formati delle istruzioni:

2 Memory address computation ALUSrcA = 1 ALUSrcB = 10 ALUOp = 00 Start Instruction fetch 0 MemRead ALUSrcA = 0 IorD = 0 IRWrite ALUSrcB = 01 ALUOp = 00 PCWrite PCSource = 00 6 (Op = 'LW') or (Op = 'SW') Execution ALUSrcA =1 ALUSrcB = 00 ALUOp= 10 8 (Op = R-type) Branch completion ALUSrcA = 1 ALUSrcB = 00 ALUOp = 01 PCWriteCond PCSource = 01 Instruction decode/ register fetch 1 (Op = 'BEQ') 9 ALUSrcA = 0 ALUSrcB = 11 ALUOp = 00 (Op = 'J') Jump completion PCWrite PCSource = 10 3 (Op = 'LW') Memory access (Op = 'SW') 5 Memory access 7 R-type completion MemRead IorD = 1 MemWrite IorD = 1 RegDst = 1 RegWrite MemtoReg = 0 4 Write-back step RegDst = 0 RegWrite MemtoReg =1

3 Si consideri il seguente schema, che si riferisce ad una unità di controllo del processore microprogrammata Per ciascuna delle seguenti affermazioni, si dica se è vera o falsa, motivando le risposte: il contatore di microprogramma (microprogram counter) viene aggiornato quando viene aggiornato il program counter; il contatore di microprogramma viene aggiornato più volte rispetto al program counter; il contatore di microprogramma viene aggiornato ad ogni ciclo di clock [3]

4 Si consideri il seguente frammento di codice MIPS: add $t1, $t0, $t2 lw sw lw $t1, 40($t1) $t1, 28($t1) $t2, 32($t1) sub $t2, $s0, $t2 Si consideri l implementazione con pipeline a 5 stadi (F: Fetch, D: Decode, E: Execute, M: Mem, W: Write-Back) Si chiede di: a) individuare in modo preciso tutte le dipendenze tra i dati b) tracciare il diagramma temporale delle istruzioni (indicando esplicitamente le eventuali propagazioni e, per ognuna di esse, quale dato è propagato) in ognuna delle seguenti ipotesi: - non è disponibile alcuna unità di propagazione - è disponibile un unità di propagazione verso lo stadio E - è disponibile un unità di propagazione verso lo stadio E ed una verso lo stadio M Nei diagrammi, si chiede di indicare il numero di cicli di penalità [6]

5 Si vuole implementare un processore mediante una pipeline a 4 stadi (F, D, E, W), in grado di eseguire le seguenti istruzioni, il cui significato è riportato a commento (per semplicità, si faccia riferimento solo alle seguenti istruzioni trascurando ad esempio l istruzione sw, ecc): add rd, rs lw rd, (rs) beq rs, rd, IND // rd rd+rs // rd M[rs] // IF (rs == rd) PC PC+IND Per la gestione dei salti condizionati, si utilizza la tecnica del salto ritardato Nella pagina seguente è riportato uno schema incompleto di datapath Si chiede di: 1) completare i collegamenti tra unità funzionali e registri interstadio negli stadi F, D, E, W inserendo eventualmente opportuni multiplexer e indicando i segnali di controllo necessari; 2) disegnare nel datapath l unità di controllo (che può essere schematizzata con un ovale) e i relativi collegamenti; 3) disegnare accuratamente nel datapath i collegamenti dei segnali di controllo nei diversi stadi della pipeline; 4) fornire per mezzo di una tabella la specifica dell unità di controllo (i codici operativi delle istruzioni possono essere specificati in forma simbolica) 5) relativamente all implementazione della beq, specificare il numero di slot di ritardo che si verificano e spiegare (molto brevemente) perché [10]

6 Con riferimento alla gestione delle operazioni di scrittura nella memoria cache, illustrare la tecnica del write through, specificando in particolare la differenza rispetto al write back Specificare inoltre la funzione ed il ruolo in termini di prestazioni del write buffer (sempre nel caso della tecnica del write-through) [2]