Traccia

Transcript

Traccia
Architettura (29/9/2003)
Pag. 1/6
Cognome e Nome (in stampatello): ________________________________________________________________
Matricola: _______________
Esame di Architettura (matr.0-1) del 29/9/2003
•
•
Per Fondamenti di Architettura NON rispondere alle domande •
16,17,18 (totale dei punti=54) e barrare con una crocetta la
seguente casella:
Per le domande 4 e 5 scrivere (oltre alla risposta) anche i calcoli •
o quanto serve (indicando su quale foglio sono scritti).
1
2
3
4
5
6
7
2
2
2
2
2
2
2
Per le domande a risposta multipla cerchiare la risposta scelta. Non scrivere nelle
caselle accanto alle domande.
Le domande da 1 a 18 valgono punti: 2 (risposta corretta), 0 (risposta non data), -1
(risposta scorretta). Le domande da 19 a 22 valgono fino a 6 punti ciascuna.
Riservato alla Commissione per la Correzione
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 TOTALE
2
2
2
2
2
2
2
2
2
2
2
6
6
6
6
60
1) Due calcolatori che siano compatibili:
a)
b)
c)
d)
hanno la stessa architettura ma possono avere una diversa organizzazione
hanno la stessa organizzazione ma possono avere una diversa architettura
devono avere stessa organizzazione e stessa architettura
nessuna delle precedenti
2) La base di una rappresentazione posizionale pesata:
a)
b)
c)
d)
indica il minimo numero di valori rappresentabili da una cifra
rappresenta la posizione di una cifra
indica la massima dimensione della stringa
nessuna delle precedenti
3) Nella rappresentazione in complemento a due, si verifica un overflow in una addizione:
a)
b)
c)
d)
/2
/2
5
31
63
nessuna delle precedenti
7) Nella logica booleana, un insieme di operatori funzionalmente completi è
a)
b)
c)
d)
/2
1 10000011 11111001010000000000000
1 10000011 11110010100000000000000
0 01111101 11111010000000000000000
1 10000011 10101110000000000000000
6) Nella rappresentazione polarizzata degli interi su 6 bit, la costante di polarizzazione vale, di solito:
a)
b)
c)
d)
/2
294F0
295E0
A5780
nessuna delle precedenti
5) La rappresentazione di -15,578125 nello standard IEEE 754 per i numeri in virgola mobile in singola precisione è
(INDICARE I CALCOLI SUL RETRO DEL FOGLIO):
a)
b)
c)
d)
/2
Se addizionando due numeri con lo stesso segno, il risultato è negativo
Se addizionando due numeri con lo stesso segno, il risultato ha segno opposto
Se addizionando due numeri con lo stesso segno, il risultato è positivo
nessuna delle precedenti
4) Se un numero è espresso in base 8 come 512740 allora il suo valore in esadecimale è (INDICARE I CALCOLI SUL
RETRO DEL FOGLIO):
a)
b)
c)
d)
/2
AND, OR e NOT
AND e NOT
OR e NOT
tutti i precedenti
/2
8) La istruzione ADDI ha formato:
a)
b)
c)
d)
formato I
formato R
formato J
Nessuna delle precedenti
/2
Architettura (29/9/2003)
Cognome e Nome (in stampatello): ________________________________________________________________
Pag. 2/6
Matricola: _______________
9) La istruzione MIPS BEQ $8, $9, Loop può essere simulata da :
a)
SLT $1, $8, $9
BNE $1, $0, Loop
b) BNE $8, $9, Cont
J Loop
Cont: …
c) BNE $9, $8, Loop
d) Nessuna delle precedenti
10) Se la istruzione 2848764812 (in binario 10101001110011001011001110001100) contiene una istruzione J che ha nel
campo indirizzo di 26 bit 01001100101011011101101101 allora la prossima istruzione eseguita si troverà alla locazione:
a)
b)
c)
d)
00000001001100101011011101101101
00000100110010101101110110110100
10100100110010101101110110110100
nessuna delle precedenti
11) Durante la esecuzione della istruzione LW $8, 1000($9) il registro ALUOUT conterrà:
a)
b)
c)
d)
PC+sign-extend(IR[15-0]<<2), A + sign-extend(IR[15-0])
PC+4, PC+sign-extend(IR[15-0]<<2), A + sign-extend(IR[15-0])
PC+4, PC+sign-extend(IR[15-0]), A + sign-extend(IR[15-0]<<2)
Nessuna delle precedenti
12) Per il segnale di Zero nella ALU a 32 bit:
a)
b)
c)
d)
/2
/2
/2
la ALU effettua una sottrazione e tutti i bit vengono portati in una porta AND il cui output è Zero
la ALU effettua un confronto e tutti i bit vengono portati in una porta NOR (OR seguito da NOT) il cui output è Zero
la ALU effettua una sottrazione tutti i bit vengono portati in una porta NOR (OR seguito da NOT) il cui output è Zero
nessuna delle precedenti
13) Nel secondo passo della esecuzione di una istruzione ADD nella unità di elaborazione multi-ciclo,
a) si legge nel registro A il valore del registro indicato dai bit 25-21 della istruzione (in IR)
b) si legge nel registro B il valore del registro indicato dai bit 20-16 della istruzione (in IR)
c) si calcola l’indirizzo di salto in ALUOUT pari al PC + la estensione in segno dei bit 15-0 di IR di cui viene fatto lo
shift a sinistra di 2 posizioni
d) tutte le precedenti
14) A cosa serve il segnale IorD:
a)
b)
c)
d)
/2
/2
/2
specifica se l’indirizzo per la memoria proviene da PC oppure da ALUOUT
seleziona quale tra ALUOUT e MDR va scritto in un registro
permette di selezionare il valore da scrivere nel Program Counter
nessuna delle precedenti
15) In una istruzione BEQ (unità di elaborazione multi-ciclo), il salto viene effettuato:
a)
b)
c)
d)
con il segnale PCWriteCond messo a 1 e solo se anche la linea Zero della ALU è messa a 0
con il segnale PCWriteCond messo a 1 e solo se anche la linea Zero della ALU è messa a 1
con il segnale PCWriteCond messo a 0 e solo se anche la linea Zero della ALU è messa a 0
nessuna delle precedenti
/2
16) Il campo Memory delle microistruzioni può assumere i seguenti valori:
a)
b)
c)
d)
Read PC, Write PC, Write ALU
Read PC, Read ALU, Write ALU
Read PC, Write ALU
Nessuna delle precedenti
17) Per eliminare dalle seguenti istruzioni la criticità sui dati (se presente):
lw $8, 1000($9)
sw $10, 2000($9)
lw $11, 2000 ($12)
a) basta scambiare la prima istruzione con la seconda
b) basta scambiare la seconda istruzione con la terza
c) basta introdurre una istruzione di salto dopo la seconda istruzione
d) le istruzioni non presentano criticità sui dati
/2
/2
Architettura (29/9/2003)
Cognome e Nome (in stampatello): ________________________________________________________________
Pag. 3/6
Matricola: _______________
18) Nella unità di elaborazione con pipeline i registri di pipeline introdotti (rispetto alla unità a ciclo singolo) sono:
a)
b)
c)
d)
2
3
5
nessuna delle precedenti
19) Dato un vettore A di 100 interi memorizzati a partire dalla locazione 2000, scrivere un programma in assembler MIPS che
scriva nella locazione 4000 il valore 1 se tutti gli interi nel vettore A sono uguali e scrive nella locazione 4000 il valore 0
altrimenti (cioè se non sono tutti uguali). Si richiede (1) la descrizione dell’algoritmo usato (in pseudocodice), (2) la
descrizione dell’uso dei registri e (3) il programma in assembler commentato linea per linea. Non si può assumere la
inizializzazione di nessun registro.
/2
/6
Architettura (29/9/2003)
Cognome e Nome (in stampatello): ________________________________________________________________
Pag. 4/6
Matricola: _______________
20) Disegnare un circuito combinatoriale che, dato in input un intero positivo (con la rappresentazione di interi senza segno) su
4 bit, restituisce 1 se l’intero è maggiore o uguale a 13
/4
Architettura (29/9/2003)
Cognome e Nome (in stampatello): ________________________________________________________________
Pag. 5/6
Matricola: _______________
21) Disegnare la unità di elaborazione multiciclo commentando separatamente il significato e l’uso dei segnali di controllo che
pilotano l’aggiornamento del Program Counter ed il suo utilizzo.
/6
Architettura (29/9/2003)
Cognome e Nome (in stampatello): ________________________________________________________________
Pag. 6/6
Matricola: _______________
22) Per tutte le istruzioni MIPS conosciute, indicare il formato, con la suddivisione in campi e l’uso che ne viene fatto per ogni
istruzione.
/6