CALCOLATORI ELETTRONICI 29 giugno 2011

Documenti analoghi
CALCOLATORI ELETTRONICI 29 giugno 2010

CALCOLATORI ELETTRONICI 31 marzo 2015

CALCOLATORI ELETTRONICI 15 aprile 2014

CALCOLATORI ELETTRONICI 30 agosto 2010

CALCOLATORI ELETTRONICI 14 giugno 2010

CALCOLATORI ELETTRONICI 9 settembre 2011

CALCOLATORI ELETTRONICI 27 marzo 2018

CALCOLATORI ELETTRONICI 20 gennaio 2012

CALCOLATORI ELETTRONICI 29 giugno 2015

CALCOLATORI ELETTRONICI 9 gennaio 2013

CALCOLATORI ELETTRONICI 15 giugno 2015

CALCOLATORI ELETTRONICI 25 giugno 2018

CALCOLATORI ELETTRONICI A 25 gennaio 2011

CALCOLATORI ELETTRONICI 27 giugno 2017

Controllo con macchina a stati finiti

Architettura di tipo registro-registro (load/store)

L unità di controllo di CPU multi-ciclo

CPU. Maurizio Palesi

Esercitazione sulle CPU pipeline

Calcolatori Elettronici

Tutorato Architettura degli elaboratori

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

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

Hazard sul controllo. Sommario

Calcolatori Elettronici B a.a. 2004/2005

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

Calcolatori Elettronici

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

Calcolatori Elettronici

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

Calcolatori Elettronici B a.a. 2006/2007

Architettura del calcolatore

Valutazione delle Prestazioni. Valutazione delle Prestazioni. Architetture dei Calcolatori (Lettere. Tempo di risposta e throughput

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

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

CALCOLATORI ELETTRONICI 15 luglio 2014

Struttura del calcolatore

L unità di controllo di CPU multi-ciclo

Lezione 3: Architettura del calcolatore

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

Valutazione delle Prestazioni

Architettura di un calcolatore: introduzione

Il processore. Il processore. Il processore. Il processore. Architettura dell elaboratore

CPU a ciclo multiplo: l unità di controllo

Calcolatori Elettronici

L unità di elaborazione pipeline L unità Pipelining

Architettura hardware

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

Calcolatori Elettronici B a.a. 2005/2006

Calcolatori Elettronici

C. P. U. MEMORIA CENTRALE

Esempio: aggiungere j

La macchina programmata Instruction Set Architecture (1)

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

Università degli Studi di Cassino e del Lazio Meridionale

La memoria centrale (RAM)

Calcolatori Elettronici

Realizzazione a cicli di clock multipli

Lezione n.19 Processori RISC e CISC

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

CPU a ciclo multiplo

Corso di Laurea in Informatica Architetture degli Elaboratori

Parte II.2 Elaboratore

Architettura della CPU multi-ciclo

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

Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web: Prof. G. Quarella prof@quarella.

- Algoritmi ed esecutori di algoritmi - ALGORITMI MACCHINA DI VON NEUMANN

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori Elettronici B a.a. 2006/2007

Calcolatori Elettronici. La memoria gerarchica La memoria virtuale

Circuiti sequenziali e elementi di memoria

Richiami sull architettura del processore MIPS a 32 bit

CALCOLATORI ELETTRONICI

La Memoria Cache. Informatica B. Daniele Loiacono

Calcolatori Elettronici

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

CPU a ciclo multiplo

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

Architettura hw. La memoria e la cpu

Sistema operativo: Gestione della memoria

Memoria Virtuale. Anche la memoria principale ha una dimensione limitata. memoria principale (memoria fisica) memoria secondaria (memoria virtuale)

Lezione 7 Sommatori e Moltiplicatori

Unità di controllo della pipeline

L architettura del calcolatore (Prima parte)

Introduzione all'architettura dei Calcolatori

Calcolatori Elettronici B a.a. 2008/2009

Esame di INFORMATICA

La memoria - generalità

Laboratorio di Architettura degli Elaboratori A.A. 2015/16 Circuiti Logici

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.6. Unità di controllo microprogrammata

MODELLO DLX IN UNISIM

CPU pipeline 4: le CPU moderne

Corso di Sistemi di Elaborazione delle informazioni

Schedulazione dinamica. Elettronica dei Calcolatori 1

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.7. Il moltiplicatore binario e il ciclo di base di una CPU

Testi di Esercizi e Quesiti 1

Una CPU multi-ciclo. Sommario

Transcript:

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) che pone in uscita il valore binario corrispondente al numero di uni in ingresso (ad esempio, se in tutti e tre gli ingressi si ha 1, l uscita deve riportare 11, se tutti e tre gli ingressi sono a 0, l uscita deve essere 00). Si riporti anche la dimensione della PLA ottenuta. Si esprima inoltre la funzione (per mezzo di un opportuna formula logica) solo con porte NAND e solo con porte NOR. [6]

2. Utilizzando la green card, identificare l istruzione assembly MIPS corrispondente al codice macchina a 32 bit 11100008 hex (espresso in esadecimale) e spiegarne il significato (qual è esattamente l effetto dell esecuzione dell istruzione?). [3]

3. Si considerino, mostrati nelle figure alla pagina seguente, 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 beqcmem const, (r1), (r2) che confronta il valore di una costante const a 16 bit specificata nell istruzione con il valore contenuto nella locazione di memoria di indirizzo r1 e, nel caso i valori siano uguali, salta all indirizzo specificato nella locazione di memoria di indirizzo r2: if(m[r1]==const) salta a M[r2]. Ricordando i tre formati di codifica delle istruzioni (riportati di seguito) si chiede di: - riportare il formato della nuova istruzione macchina (specificando anche i campi destinati a r1 e r2); - riportare, nella corrispondente figura, le modifiche necessarie al datapath; - estendere il diagramma degli stati per implementare la nuova istruzione. [6] 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

4. Si consideri un implementazione del processore MIPS per la quale si utilizza un hardware che richiede i seguenti tempi di esecuzione: - prelievo istruzione e accesso alla memoria dati: 2 ns - ogni altra operazione critica (ALU, decodifica, lettura e scrittura register file): 1 ns Si assuma un carico di lavoro che prevede la seguente distribuzione delle istruzioni MIPS: lw: 30 % sw: 20 % formato-r: 35 % beq: 10 % j: 5 % Si supponga inoltre che: - il 20% delle istruzioni Tipo-R siano seguite da istruzioni che ne utilizzano il risultato; - il 10% delle istruzioni lw siano seguite da istruzioni Tipo-R che ne utilizzano il risultato; - il 5% delle istruzioni lw siano seguite da istruzioni sw o lw che ne utilizzano il risultato solo per il calcolo dell indirizzo; - il 10% delle istruzioni lw siano seguite da istruzioni sw che ne utilizzano il risultato solo per immagazzinarlo in memoria. - il 15% delle istruzioni lw siano seguite da istruzioni sw che ne utilizzano il risultato sia per il calcolo dell indirizzo sia per immagazzinarlo in memoria. - il 3% delle istruzioni lw sono seguite da istruzioni beq che ne utilizzano il risultato (si assuma che il confronto tra gli operandi sia effettuato al terzo stadio della pipeline). Il processore utilizza una cache primaria distinta per i dati e le istruzioni. La cache, che in caso di successo consente di accedere all istruzione o al dato in un ciclo di clock, presenta le seguenti caratteristiche: - percentuale di successo (hit rate): 90% per le istruzioni, 80% per i dati in lettura, 70% per i dati in scrittura - penalità di fallimento: 5 cicli di clock in lettura, 10 cicli di clock in scrittura Si chiede di confrontare le prestazioni di un implementazione multiciclo e dell usuale implementazione basata su pipeline a 5 stadi (per la quale si possono trascurare le criticità sui salti). L implementazione con pipeline fa uso di un unità di propagazione solo verso lo stadio E, mentre non dispone di unita di propagazione verso M. Nel caso in cui la cache per i dati e le istruzioni fosse unica (ed avesse un hit rate pari al 90%, penalità di fallimento: 5 cicli di clock in lettura, 10 cicli di clock in scrittura) si esprima il tempo medio di esecuzione (a regime) dell implementazione basata su pipeline (sempre con unita di propagazione verso E). Si mostrino i passaggi principali relativamente alle risposte fornite. [6]

5. Si consideri il seguente frammento di codice MIPS: lw sw $t1, 20($t2) $t2, 40($t1) add $t1, $t2, $t2 sub $s0, $t1, $t2 sw $s0, 20($s2) 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]

6. Si disegni lo schema di un flip-flop master-slave S-R sensibile ai fronti di salita e se ne spieghi il funzionamento. Nel disegno si possono utilizzare latch S-R sensibili ai livelli. [3]

7. In qualità di esperti consulenti dell implementazione del processore MIPS mediante pipeline, vi viene proposta una modifica all usuale implementazione (dotata di tutte le possibili unità di propagazione) che dovrebbe risolvere i problemi legati alle criticità sui dati. L idea si basa sulle seguenti osservazioni: - le penalità sono dovute alle criticità carica-e-usa - queste ultime danno origine ad un ciclo di stallo quando l istruzione dipendente usa i suoi dati sorgente al terzo stadio. Per evitare il ciclo di penalità, si potrebbe spostare l esecuzione dell operazione aritmetica per le istruzioni TIPO-R al quarto stadio, aggiungendo un opportuna ALU in parallelo alla memoria (la ALU già presente al terzo stadio verrebbe usata solo per il calcolo dell indirizzo nel caso di istruzioni di accesso alla memoria). In questo modo, un ciclo di penalità dovuto a criticità carica-e-usa si avrebbe solo quando un istruzione dipendente lw e sw usi il dato prodotto da una lw immediatamente precedente per il calcolo dell indirizzo (caso che potete supporre piuttosto raro). Si esprima una valutazione della proposta (per quanto possibile analitica) precisando anche se: - la proposta è completamente irrealizzabile - la proposta è realizzabile, ma non consegue mai alcuna riduzione delle penalità dovute alle criticità sui dati - la proposta è realizzabile, ma la riduzione delle penalità si ottiene solo in determinate condizioni - la proposta è realizzabile e ottiene sempre una riduzione delle penalità, che vanno comunque valutate in rapporto all incremento dei costi legati all introduzione di una ALU supplementare. [2]