Università degli Studi di Roma "La Sapienza" - Corso di Laurea in Ingegneria Informatica
a.a. 2003-2004

Calcolatori Elettronici II (M-Z)

Appello del 13 settembre 2004

 

Prima prova (15 punti)

Una periferica IFBCD (Fig. 1) riceve dati a 4 bit dalle linee XIN0-3 sincronizzati a un clock XCLK. Un messaggio su tali linee è costituito dalla sequenza di dati:

Per ogni messaggio ricevuto, la periferica converte le cifre BCD ricevute in un numero binario N a 16 bit (la prima cifra BCD ricevuta è la più significativa, si veda l'esempio in Fig. 2) e invia il risultato al canale di uscita XOUTk0-15 identificato dal numero k contenuto nel messaggio.

Inoltre, il numero k e il numero N vengono inviati alla CPU PD-32, la quale aggiorna una tavola, residente in memoria, in cui per ciascun canale di uscita XOUT vengono mantenuti il minimo e il massimo dei numeri N ad esso inviati.

040913-1.gif (1741 bytes)
Fig. 1
040913-2.gif (1714 bytes)
Fig. 2

Progettare l'hardware della periferica e codificare il relativo software di pilotaggio, corredandolo di adeguati commenti.

 

 

Seconda prova

1.     (5 punti)    In vista dell'upgrade di una procedura software, che viene eseguita in 55 secondi, sono disponibili le seguenti opzioni per la revisione di alcune sue componenti:
   
Opzione Tempo di esecuzione
prima della revisione
Tempo di esecuzione
dopo la revisione
Costo della revisione
(in Euro)
Routine n. 1 12 sec 9 sec 2000
Routine n. 2 15 sec 11 sec 3000
Routine n. 3 22 sec 17 sec 4000

Per ragioni di costo, è possibile sostituire solo due delle tre componenti indicate; quale sarà in tal caso la combinazione migliore sotto l'aspetto del rapporto prestazioni/costo?

2.     (5 punti)    Descrivere i conflitti di controllo nelle CPU dotate di pipeline e discutere i metodi per la loro risoluzione.
3.     (5 punti)    Si abbiano a disposizione due cache: la prima, ad accesso diretto, ha miss rate del 30% e miss penalty pari a 60 cicli di clock; nella seconda, di tipo set-associativo, il miss rate si riduce del 10% mentre il miss penalty aumenta del 10%. Se l'hit time è lo stesso nei due casi, quale delle due cache fornisce le migliori prestazioni?