Calcolatori Elettronici II parte (CdL Ingegneria Informatica) Esame del 22 settembre 2011 tempo a disposizione: 1 ora e 30 minuti

Documenti analoghi
Esercizi su Microarchitetture. Università Roma Tre

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

FALSO FALSO VERO FALSO VERO VERO VERO VERO

Esercizi su Programmazione in Assembler x86 per l Prof. Riccardo Torlone Università Roma Tre

Architettura hardware

Esercizi sulla memoria cache - Informatica 2 - L. Breveglieri 1

Pipeline Problemi 1. Pipeline Problemi 2

Il processore Pentium

ESERCIZIO 1. Sia dato il seguente ciclo di un programma in linguaggio ad alto livello:

SOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI. NUOVO E VECCHIO ORDINAMENTO DIDATTICO 13 Luglio 2004

Soluzione Esercizio 1

Programmazione Assembly per 8088: Esercizi svolti

(1) - - (4) R4 = R7 * R7 (4) (2) (3) 5 - (4) rinviata perché in WAW con (3) 6 (3) e (4) ritirabili ma attendono il completamento di (2) (2) (3) (4)

Laboratorio di Architettura degli Elaboratori

SIMULAZIONE DELLA PRIMA PROVA INTERMEDIA DEL MODULO DI. CORSO DI LAUREA IN INGEGNERIA ELETTRICA ED ELETTRONICA, INGEGNERIA BIOMEDICA 21 Aprile 2015

Corso di Laurea in Informatica

8 bit per la parola nel blocco 10 bit per l insieme (gruppo) nella cache 12 bit di etichetta. Esercizio 3 Memoria Cache

Linguaggio macchina. 3 tipi di istruzioni macchina. Istruzioni per trasferimento dati. Istruzioni logico/aritmetiche

Introduzione alle memorie cache. Cristina Silvano, 06/01/2013 versione 2 1

Esercizi per il corso di Architettura dei Calcolatori. Anno accademico 2008/09. Si prevede l utilizzo dell emulatore Eniac ( presentato a lezione )

Capitolo 5 Elementi architetturali di base

Introduzione alle gerarchie di memoria

Architettura degli elaboratori Tema d esame del 20/01/2016

Blocchi di più parole

Struttura delle memorie cache

Architettura degli elaboratori - 2 -

Corso di Informatica

Architettura di una CPU

Pipeline nel Mondo Reale

Elaborazione dell informazione

CLASSIFICAZIONE DEI SISTEMI OPERATIVI (in ordine cronologico)

Corso di Alfabetizzazione Informatica 2001/2002. La CPU. F. Tortorella Università degli Studi. di Cassino

Cache associativa. Possibili alternative per il trasferimento di un blocco dalla memoria inferiore alla memoria superiore:

Memoria cache. Memoria cache. Miss e Hit. Problemi. Fondamenti di Informatica

ARCHITETTURA DI UN ELABORATORE

Memoria cache, interrupt e DMA

Esercitazione su Gerarchie di Memoria

FONDAMENTI DI INFORMATICA Lezione n. 11

PROVA SCRITTA DEL MODULO/CORSO DI. 24 novembre 2016

Architettura di un calcolatore e linguaggio macchina. Primo modulo Tecniche della programmazione

Componenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni

Calcolatori Elettronici

Linguaggio Assembly e linguaggio macchina

Come aumentare le prestazioni Cenni alle architetture avanzate

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

Indirettezza. Fetch/Execute. Fetch/Execute. Introduzione della Indirettezza (indirect)

Istruzioni macchina. Dove sono gli operandi? Ciclo della CPU. Elementi di un istruzione macchina. Rappresentazione delle istruzioni

Parte V. Architettura della CPU

ARCHITETTURE AVANZATE DEI CALCOLATORI, A.A. 2007/08 Soluzione esercizi sul pipelining

Uso dei metodi di indirizzamento

Esercitazione su Instruction Level Parallelism

Linguaggio Assembly e linguaggio macchina

Il processore. Istituzionii di Informatica -- Rossano Gaeta

SIMULAZIONE DELLA PROVA INTERMEDIA DEL CORSO DI CALCOLATORI ELETTRONICI

Calcolatori Elettronici A a.a. 2008/2009

Il calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica

Abilità Informa/che. capitolo 3. Prof. Fabio Calefato a.a Giurisprudenza

Architettura dei computer

Esame di INFORMATICA Lezione 4

Compitino di Laboratorio di Informatica CdL in Matematica 13/11/2007 Teoria Compito A

La CPU e la Memoria. Sistemi e Tecnologie Informatiche 1. Struttura del computer. Sistemi e Tecnologie Informatiche 2

Richiami sull architettura del processore MIPS a 32 bit

Componenti e connessioni. Capitolo 3

Gli attori principali di un architettura

Calcolatori Elettronici A a.a. 2008/2009

Accesso a memoria. Accesso a memoria. Accesso a memoria. Modalità di indirizzamento. Lezione 5 e 6. Architettura degli Elaboratori A.

Architettura del processore. Modello di calcolatore. Caratteristiche del processore. Caratteristiche del processore. Fondamenti di Informatica

PRESTAZIONI. senza e con memoria cache

Il Processore: l unità di controllo

Gli indirizzi occupano spazio! Gli indirizzi occupano spazio! Corso di Architettura degli Elaboratori. Indirizzamento immediato

static dynamic random access memory

Architettura di Von Neumann. Architettura di Von Neumann. Architettura di Von Neumann INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042)

LINGUAGGIO MACCHINA e ASSEMBLER. Una CPU MINIMA Il linguaggio macchina di MINIMA Il linguaggio Assembler per MINIMA

Architettura degli Elaboratori. Classe 3 Prof.ssa Anselmo. Appello del 18 Febbraio Attenzione:

Introduzione all'architettura dei Calcolatori

Informatica/ Ing. Meccanica/ Edile/ Prof. Verdicchio/ 30/06/2016/ Foglio delle domande / VERSIONE 1

Introduzione. Caratteristiche generali. Sistemi e Tecnologie per l'automazione LS. HW per elaborazione digitale in automazione: Microcontrollori e DSP

Sistemi e Tecnologie per l'automazione LS. HW per elaborazione digitale in automazione: Microcontrollori e DSP

Esercizio 1.A Aritmetica binaria (nel presentare le soluzione mostrare, almeno nei passaggi piú significativi, i calcoli eseguiti) (3 punti)

Esercitazione su Instruction Level Parallelism Salvatore Orlando

Corso di Informatica

Architettura di un calcolatore e ciclo macchina. Appunti per la classe 3 Dinf

Gestione della memoria

Nel microprocessore 8086 abbiamo una gran quantità di registri

Aumentare il parallelismo a livello di istruzione (1)

DEFINIZIONE. particolare l'unità di elaborazione centrale è una tipologia di

06/05/2009. Caratteristiche desiderabili Ampia capacità Velocità Economicità

Caratteristiche di un PC

Componenti di un processore

Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).

Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina ADD A,B ISTRUZIONE SUCCESSIVA

Istruzioni assembler Istruzione N Registri

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

La gerarchia di memorie (2)

Esercitazione su Gerarchie di Memoria

Gerarchia di Memoria e Memorie Cache. ma rallenta R / nw. Qui : modi di aumentare velocità di R / nw. dati e codice non tutti uguali

Modulo: Elementi di Informatica

Modi di indirizzamento

Corso di Architettura (Prof. Scarano) 09/04/2002

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

Transcript:

Calcolatori Elettronici II parte (CdL Ingegneria Informatica) Esame del 22 settembre 2011 tempo a disposizione: 1 ora e 30 minuti Compito Num. 1 COGNOME:...NOME:... 1) (20%) Si vuole realizzare una CPU a 64 bit dotata di due registri general purpose, due coppie di registri per il trasferimento di dati e istruzioni da/per la memoria e in grado di eseguire 32 operazioni aritmetiche diverse. La CPU deve avere una architettura parallela, essendo dotata di due pipeline da cinque stadi di cui uno dedicato al pre-fetching delle istruzioni macchina e un altro allo scheduling delle operazioni macchina da eseguire in parallelo (entrambi visti come scatole nere). Tutte le altre specifiche possono essere liberamente scelte. A) Disegnare l architettura generale (in particolare il data path) di tale CPU (comprensiva dei segnali di controllo) secondo i principi RISC e illustrare coincisamente il suo funzionamento. B) Descrivere, possibilmente in maniera grafica, cosa succede in cinque cicli di clock consecutivi nei vari stadi delle pipeline. C) Dire brevemente come è possibile sfruttare il parallelismo a disposizione della CPU progettata per migliorare le prestazioni della CPU. 2) (20%) Si assuma di avere un microprocessore che lavora a 2Ghz dotato di 10 registri ufficiali (da R0 a R9) e sufficienti registri segreti in grado di avviare 2 istruzioni per ciclo di clock. Tale sistema richiede 1 ciclo di clock per completare gli spostamenti tra registri, 2 cicli di clock per completare somme e differenze e 4 cicli di clock per completare divisioni e prodotti. Si consideri il seguente programma macchina: (1) R2 = R4 * R1; (2) R3 = R5; (3) R8 = R6 + R3; (4) R5 = R7 - R1; Indicare le istruzioni avviate e ritirate in ogni ciclo di clock (dall inizio al termine dell esecuzione del programma) secondo le seguenti strategie di esecuzione: (A) avvio e ritiro in ordine (senza registri segreti); (B) avvio fuori ordine e ritiro in ordine; (C) avvio e ritiro fuori ordine. Fornire per ciascuno dei casi una spiegazione di ciò che succede in ogni ciclo con riferimento ai vincoli tra le istruzioni. 3) (20%) Scrivere un programma in linguaggio assemblativo 8088 che, dato un vettore vec N di numeri interi memorizzato in memoria principale: (1) stampa la somma degli elementi del vettore mediante una subroutine SUM e (2) verifica, con una subroutine EQU, se il vettore N è identico ad un altro vettore M, anch esso memorizzato in memoria principale. Entrambe le subroutine devono avere come unico argomento il vettore N. DOMANDE A RISPOSTA MULTIPLA (40%) Indicare in fondo al foglio se le seguenti affermazioni sono vere (con una croce su [V]) o false (con una croce su [F]). 4) Con riferimento al seguente frammento programma di Assembler, indicare se le affermazioni sono vere o false:.sect.text!1 MOV CX,num-vec!2 SHR CX,1!3 MOV BX,vec!4 MOV SI,0!5 MOV AX,(num)!6 1: CMP (BX)(SI),AX!7 JG 2f!8 ADD SI,2!9 LOOP 1b!10 MOV DX,0!11 JMP 3f!12 2: MOV DX,1!13 3:..SECT.DATA vec:.word 3,4,7,11,3 num:.word 8 format:.ascii "% A) Il programma verifica che il vettore contenga il numero 8. B) Il programma termina dopo aver raggiunto l ultimo elemento del vettore C) Il salto a riga 10 viene effettuato 5 volte D) L istruzione 3 serve a dividere per 2 il contenuto di CX E) Se vec si trova all indirizzo 15, num si trova all indirizzo 25 F) Durante l esecuzione dell istruzione 4 il registro CX contiene 5 G) SI viene usato come registro indice H) Il programma stampa 1 5) Con riferimento alle tecniche di esecuzione di istruzioni in un CPU con pipeline, indicare se le seguenti affermazioni sono vere o false. A) Una predizione dinamica di salto richiede una memoria dedicata. B) La predizione dinamica di salti viene gestita dall hardware. C) Nelle CPU moderne vengono caricate e decodificate diverse istruzioni nello stesso ciclo di clock. D) Una esecuzione fuori ordine delle istruzioni macchina è in genere più efficiente dell esecuzione in ordine. E) In una esecuzione fuori ordine delle istruzioni macchina la CPU non va mai in stallo. F) I vincoli RAW possono essere risolti utilizzando registri segreti. G) In una esecuzione fuori ordine delle istruzioni macchina i vincoli WAW possono essere risolti utilizzando registri segreti. H) In una esecuzione speculativa alcune delle istruzioni avviate non vengono ritirate. Risposte domanda 4 = A:[V][F] B:[V][F] C:[V][F] D:[V][F] E:[V][F] F:[V][F] G:[V][F] H:[V][F] Risposte domanda 5 = A:[V][F] B:[V][F] C:[V][F] D:[V][F] E:[V][F] F:[V][F] G:[V][F] H:[V][F] Nota bene: continua sul retro del foglio

Compito Num. 1 6) Con riferimento ai meccanismi di gestione delle cache, indicare se le seguenti affermazioni sono vere o false. A) Il meccanismo di gestione write through èpiù efficiente del meccanismo write back. B) È possibile indirizzare da programma macchina una slot di cache. C) Una cache hit in scrittura richiede sempre l accesso alla memoria. D) La lunghezza del campo LINE di un indirizzo non dipende dalla dimensione della cache. E) La politica di rimpiazzamento di linee LRU si applica a cache a mappatura diretta. F) Il numero di collisioni su una slot di cache aumenta all diminuire delle dimensioni del campo TAG. G) Gli accessi a locazioni contigue della memoria possono risultare inefficienti a causa della presenza di una cache. H) In una cache associativa a più vie una slot contiene una linea di cache. 7) Con riferimento ai linguaggi macchina indicare se le seguenti affermazioni sono vere o false. A) Nell UltraSPARC sono disponibili 32 registri general-purpose ufficiali. B) Nell IA-32 sono disponibili 16 registri general purpose a 32 bit. C) Con il meccanismo di espansione dei codici, il numero di istruzioni a n operandi dipendente dal numero di istruzioni a n 1 operandi. D) Nell IA-32 una operazione aritmetica può indirizzare una locazione di memoria principale. E) Una istruzione che adotta l indirizzamento a stack non contiene alcun indirizzo. F) Nell indirizzamento diretto si specifica nell istruzione l indirizzo di memoria dell operando. G) Nell UltraSPARC solo la LOAD e le STORE indirizzano la memoria. H) L indirizzamento indiretto a registro richiede più bit dell indirizzamento diretto. Risposte domanda 6 = A:[V][F] B:[V][F] C:[V][F] D:[V][F] E:[V][F] F:[V][F] G:[V][F] H:[V][F] Risposte domanda 7 = A:[V][F] B:[V][F] C:[V][F] D:[V][F] E:[V][F] F:[V][F] G:[V][F] H:[V][F]