• Non ci sono risultati.

Università degli Studi dell’Insubria Dipartimento di Scienze Teoriche e Applicate

N/A
N/A
Protected

Academic year: 2021

Condividi "Università degli Studi dell’Insubria Dipartimento di Scienze Teoriche e Applicate"

Copied!
2
0
0

Testo completo

(1)

Università degli Studi dell’Insubria

Dipartimento di Scienze Teoriche e Applicate Architettura degli elaboratori

Prof. Marco Tarini

Cognome e nome ____________________________ Matricola __________

Esercizio 1

Una calcolatrice in base 16 mostra le cifre con 7 led come indicato di seguito:

(a) Realizza un circuito ottimizzato che controlla il led centrale (orizzontale), quando in input riceve la rappresentazione in base 2 della cifra. Usa le mappe di Karnaough scrivendo l’espressione in 2nda forma normale. Puoi usare porte AND e OR con qualsiasi numero di ingressi.

(b) Simula il circuito e verifica il corretto funzionamento per la cifra B

(c) Calcola il tempo di commutazione se ipotizziamo che le porte ad 1,2,3,4 ingressi impiegano 2,3,4,5 nanosecondi rispettivamente.

Esercizio 2

Un’archiettura usa numeri in virgola mobile a 16 bit, con 5 bit di esponente (offset a 16). (l’esponente precede la mantissa e segue il segno)

(a) Quale numero è rappresentato da:

e da:

(la risposta può essere data in forma di frazione, se preferisci).

(b) Gli stessi word del punto precedente vengono ora interpretati come numeri interi senza segno.

Riporta il loro valore in base 16.

Esercizio 3

In un sistema di memoria con due livelli di cache, si ha:

 hit rate di livello 1 = 75%, tempo di accesso 4 ns;

 hit rate di livello 2 = 80%, tempo di accesso 10 ns;

 tempo di accesso alla memoria principale: 120 ns.

(a) Si calcoli il tempo medio di accesso a memoria. Suggerimento: usare frazioni, non percentuali.

(b) Un progettista ha stimato che, incrementando il costo, si può ottenere uno a scelta dei seguenti due effetti: incrementare la dimensione della cache di secondo livello, dimezzandone i cache miss, oppure, decrementare il tempo d’accesso alla memoria principale di 20 ns. Determina la scelta migliore.

Esercizio 4

Disegna un circuito che funziona come segue. Il circuito ha un ingresso D da 3 bit, un ingresso N da 2 bit e un’uscita Z da un bit. N rappresenta un numero naturale.

Z vale:

0 quando il numero di uni in D è minore di N

1 quando il numero di uni in D è maggiore o uguale a N Ad es:

• quando N = 01 e D = 110, Z = 1, perché in D ci sono 2 uni e N=1 (2 ≥1)

• quando N = 10 e D = 100, Z = 0, perché in D c`è un solo uno e N=2 (1 < 2) Si possono usare i blocchi funzionali visti a lezione.

Evitare di usare più componenti del necessario.

1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

(2)

2 Esercizio 5

Si ha a disposizione il datapath

mostrato a fianco (è uno di quelli visto a lezione). L’ALU dispone delle funzioni:

Add: R = A+B PassA: R = A PassB: R = A Sub: R = A – B Shl: R = shift left(A) Not: R = not A E come esiti

IsAPos = vale 1 se A è pos IsBPos = vale 1 se B è pos

Scrivi un microprogramma che realizza l’operazione SKIP-ONE-ON-GREATER-THAN rd rs

avente opcode = 12, e che ha l’effetto di saltare la prossima istruzione del programma quando il valore del registro memorizzato in rd è maggiore a quello di rs. Le istruzioni saltate quindi sono una oppure nessuna. Il registro 0 non va considerato un registro utente. Includi anche la fase di fetch.

Il micorprogramma deve consistere in una tabella che riporti, come input: la microistruzione, il codice dell’istruzione corrente, e gli esiti; e, come output: i comandi da madare al datapath e il passo successivo.

Esercizio 6

Completa il programma Assembly MIPS qui sotto.

Nella sezione dati, come si vede, viene memorizzato un array “voti”, terminato da 0, che contiene una sequenza di voti (di lunghezza non nota). Il programma deve stampare a schermo il numero degli esiti sufficienti (maggiori od uguali a 18).

Si forniscono qua a fianco le sintassi di alcune possibili istruzioni e qui sotto le chiamate di sistema

.

data voti:

.word 18 21 30 12 … 0 .globl main

.text main:

<tuo codice qui>

Codice chiamata (in $v0)

Effetto

(argomento/i in $a0, $a1…)

4 Stampa stringa

5 Stampa intero

Comando mips Significato la reg , etichetta load address li reg , valore load immediate move regA , regB copia il registro B nel

registro A lw reg , offset(reg) load word

(l’offset è opzionale) sw reg , offset(reg) store word

(l’offset è opzionale) add reg , reg , reg add (somma) addi reg,reg,valore add immediate sub reg , reg , reg subtract (differenza)

j etichetta jump

bgez reg , etichetta branch on greater or equal than zero bgtz reg , etichetta branch on greater than

zero

bnez reg , etichetta branch on not equal zero

beqz reg , etichetta branch on equal zero slt regA, regB, regC Set on less than

(se regB<regC, allora regA viene messo ad 1; altrimenti, a 0)

Riferimenti

Documenti correlati

Nell’ambito delle “Giornate di aggiornamento sull’uso degli strumenti in PSICOLOGIA CLINICA DELLO SVILUPPO”.. Child and Adolescent Reflective Functioning Scale

All’interno di questo complicato arcipelago ho scelto di illustrare un lavoro di rassegna che analizza nel dettaglio il rapporto tra finzione cardiovascolare, in

- nominato Professore associato per la disciplina Neuropatologia presso la Facoltà di Medicina e Chirurgia dell'Università degli Studi di Siena, cessando in pari

Premere il tasto Start ha l’effetto di riazzerare il timer e farlo partire (il timer continua a scorrere, anche se il tasto Start viene rilasciato, fino alla pressione del

(c) Se una porta AND (a due ingressi) costa quanto 2 porte NOT, e una porta OR (a due ingressi) costa quanto 3 porte NOT (e non è disponibile nessun altro tipo di porta), quale

Quindi possiamo considerarlo come un solo array, con il doppio degli elementi.. Scandiamo il doppio degli elementi a partire dal

Data una simulazione ad eventi discreti formata da un insieme di Logical Process (LP) che interagiscono esclusivamente per mezzo di messaggi time stamped, la simulazione rispetta

Facoltà di Lettere e Filosofia Università degli Studi di Salerno UD 2.2e: Integrità