Architettura degli elaboratori, 23 Giugno 2010

Per A.A. precedente a 08/09 (6 crediti): esercizi 1-4
Per A.A. 08/09 e successivi (9 crediti): esercizi 1-5

(Indicare sul compito se il proprio piano di studi richiede 6 o 9 crediti)

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.
  • Se si passa lo scritto, si deve obbligatoriamente sostenere anche un colloquio orale. Date ed orari degli orali verranno indicati nella pagina dei risultati e sul Forum.



  • Esercizio 1   Descrivere le componenenti della macchina astratta IJVM e la loro implementazione all'interno del sistema a livelli studiato nel corso.

    Esercizio 2   Supponiamo di voler modificare il comportamento dell'istruzione ISTORE, in modo che il valore da inserire nella variabile possa essere recuperato con tre modalita' di indirizzamento: immediata (immediate), diretta (direct) e stack. Implementare in Mic-1 tale nuova versione di ISTORE, supponendo che in modalita' immediata il valore e' rappresentato con 1 byte ed in quella diretta l'indirizzo e' rappresentato con 1 byte.

    Esercizio 3  Scrivere un metodo assembly IJVM tale che la rappresentazione in esadecimale dei byte che vengono inseriti nella Method Area a seguito della sua traduzione sia:
    0x00 0x05 0x00 0x03 0x15 0x02 0x59 0x36 0x06 0x84 0x06 
    0x04 0x10 0x03 0x59 0x9B 0x00 0x05 0x15 0x07 0x60 0xAC
    
    (Si ricordi il significato dei primi 4 byte di un metodo presente nella Method Area.)
    Si programmi poi in assembly IJVM una chiamata a tale metodo (utilizzando sempre il valore 0 per gli argomenti) e si forniscano i byte della sua traduzione (rappresentati in esadicimale).

    Esercizio 4   Abbiamo un bus di sistema con 8 linee per la parte Address. Tra i vary chip collegati a bus c'e' una RAM con 2^7 celle di memoria Vogliamo che le celle di tale RAM siano mappate nelle posizioni dispari dello spazio di indirizzamento in cui la CPU puo' leggere o scrivere. Descrivere l'interfacciamento tra le linee Address del bus ed il segnale CS della RAM (che supponiamo essere asserito basso).
    Descrivere inoltre la connessione tra le linee address del bus e le linee address della RAM.

    Esercizio 5   Cosa si intende per dipendenze di tipo RAW e di tipo WAR?
    Tradurre il seguente codice in Mic-3
    H = TOS
    H = SP = SP - H
    OPC = SP + H
    
    Quale vantaggio in termini di velocita' di esecuzione si ottiene passando dal codice fornito. eseguito sulla macchina Mic-2, a quello ottenuto dalla traduzione ed eseguito sulla macchina Mic-3?