Universitą degli Studi di Roma "La Sapienza" -
Corso di Laurea in Ingegneria Informatica
a.a. 2003-2004
Una periferica IFSPK per CPU PD-32 produce messaggi audio sintetizzati verso un canale di uscita costituito da 8 linee di output XD0-7 e da un clock esterno XCLK da 8 kHz. Un messaggio č costituito da una sequenza di campioni audio da 8 bit, che vengono applicati alle linee XD0-7 e sincronizzati con XCLK. Una memoria ROM, residente sulla periferica e organizzata in 16M parole da 8 bit, contiene i campioni relativi a 256 messaggi, nessuno dei quali ha durata di emissione superiore ai 10 secondi.
La subroutine di controllo di IFSPK accetta in ingresso un numero N (0 £ N < 256) che identifica un messaggio da emettere, e che viene utilizzato come indice in una tavola residente nella memoria del sistema; ogni elemento della tavola contiene l'indirizzo iniziale del messaggio corrispondente nella ROM e il numero di campioni da cui esso č costituito. La subroutine comanda quindi la selezione del messaggio sulla periferica e l'emissione del messaggio stesso, e ritorna al chiamante solo ad emissione completata.
Progettare l'hardware della periferica e codificare il relativo software di pilotaggio, corredandolo di adeguati commenti.
1. | (5 punti) Una cache set-associativa a 4 vie e blocchi da 4 parole da 32 bit riceve indirizzi a 32 bit, 15 dei quali vengono utilizzati come campo tag. Determinare la capacitą totale in byte della cache (bit di controllo e tag esclusi) e il numero totale di bit richiesti per l'immagazzinamento dei tag. |
2. | (5 punti) Se in un sistema viene sostituita una componente A, le prestazioni del sistema aumentano del 20%; se invece viene sostituita un'altra componente B, le prestazioni aumentano del 30%. Di quanto aumentano le prestazioni se vengono sostituite entrambe le componenti A e B? |
3. | (5 punti) Discutere i conflitti di controllo che possono aver luogo in una CPU organizzata in pipeline, e descrivere i metodi per la loro risoluzione. |