Architettura degli elaboratori, 22 Settembre 2009
Per A.A. precedente a 08/09: esercizi 1-3
Per A.A. 08/09: esercizi 1-4
(Indicare sul compito se si e' dell'a.a. 08/09 o precedenti)
Non e' ammesso l'uso di alcun testo, appunti o
calcolatrici. Le risposte vanno scritte nel foglio di bella copia. Si
raccomanda la massima SINTETICITA'. L'eccessiva verbosita' verra'
considerata negativamente.
Gli iscritti alla laurea
triennale debbono essersi prenotati sul portale studenti del nostro
ateneo. Se cio' non e' stato fatto, comunicatelo immediatamente
al docente o all'assistente in aula.
Per superare lo scritto occorre che almeno uno degli esercizi 2 e 3
sia svolto in maniera sufficiente
Se si passa lo scritto, si deve obbligatoriamente sostenere anche un
colloquio orale. Gli orali si terranno nei pomeriggi del 30 Settembre e 1 Ottobre (per il presente appello gli orari precisi degli orali e i risultati dello scritto verranno comunicati sul Forum)
Esercizio 1
Cosa si intende per I/O mappato in memoria (Memory mapped I/O)? Come si realizza?
Esercizio 2
Si scriva un segmento di codice Mic-2 che calcoli il numero di bit a 0
presenti nel registro TOS e che inserisca tale numero in SP.
Commentare il codice. Codice non commentato non verra' valutato.
Esercizio 3
Supponamo di aver esteso la macchina IJVM con una
nuova istruzione SET-CPOOL. Tale istruzione prende la parola
in cima allo Stack (eliminandola dallo Stack stesso) e la
inserisce nell'elemento 26 della Constant Pool.
E' possibile realizzare tale estensione di IJVM su Mic-1? E su Mic-2?
Supponiamo ora di poter collegare l'elemento 25 della Costant Pool
alle linee di Request di 3 possibili Master di un bus
(tali linee Request sono connesse ai bit da 0 a 2 dell'elemento 25).
L'elemento 26 della Constant Pool, invece,
viene collegato alle linee di Grant dei 3 possibili Master
(tali linee Grant sono connesse ai bit da 0 a 2 dell'elemento 26).
Realizzare un metodo assembly IJVM (che ovviamente non termina mai)
che implementi un arbitro per un
arbitraggio centralizzato a stella (simile a quello del PCI bus per
intenderci).
Commentare il codice. Codice non commentato non verra' valutato.
Esercizio 4
Le tecniche di predizione dei salti: cosa sono, a cosa servono.
Descrivere brevemente almeno due tecniche di predizione dei salti.