PROVA SCRITTA DEL MODULO INTEGRATO E DEL CORSO DI CORSO DI LAUREA IN INGEGNERIA BIOMEDICA CORSO DI LAUREA IN INGEGNERIA ELETTRICA, ELETTRONICA E INFORMATICA 7 Febbraio 29 NOME: COGNOME: MATRICOLA: CFU: ESERCIZIO (8 punti) Progettare una rete sequenziale che presenti un ingresso X e un uscita Z posta a ogni volta che viene riconosciuta la sequenza 0. Si richiee:. (4 punti) il iagramma egli stati, la tabella i flusso e la tabella elle transizioni; 2. (4 punti) il calcolo elle forme minime elle variabili i eccitazione ei flip flop con le mappe i Karnaugh. Si usino flip flop D. Calcolare anche la rete combinatoria per l uscita Z. ESERCIZIO 2 (0 punti) Si consieri un unità i memoria primaria a 024 parole, e una cache i 64 parole. La memoria è organizzata in blocchi a quattro parole ciascuno, e il metoo i inirizzamento è associativo su insiemi a ue vie. ) (2 punto) Spiegare, precisano bene il significato e la funzione ei iversi campi, come vengono interpretati gli inirizzi logici per recuperare l informazione contenuta nella cache. 2) (5 punti) Supporre che vengano richieste, in sequenza, e per ieci volte consecutive, le parole all inirizzo 0 all inirizzo 3 e all inirizzo 52 all inirizzo 543. Motivano ogni passaggio intermeio, inicare chiaramente lo stato finale ella cache opo l ultima chiamata e calcolare l hit ratio. 3) (3 punti) Calcolare il valore minimo ell hit ratio nel caso sia necessario avere un tempo meio i accesso a una gerarchia cache-primaria inferiore a 0 ns, sapeno che il tempo meio i accesso in cache è 5 ns e quello i accesso alla primaria è 50 ns. Il valore i hit ratio trovato al punto preceente soisfa queste specifiche? ESERCIZIO 3 (9 punti) Scrivere una funzione Assembly MIPS moltiplica che implementi il prootto tra ue numeri naturali forniti nei registri $4 e $5, senza far uso ell istruzione mul o muli. Il risultato ell operazione venga memorizzato in $7. ESERCIZIO 4 (5 punti) Si consieri un bus con frequenza MHz, pari a quella el clock i sistema. La capacità el bus ati e bus inirizzi è i 32 bit. Il trasferimento attraverso il bus richiee tre cicli i clock. La memoria presenta un tempo i ciclo pari a 60 ns. ) (3 punti) Spiegare e isegnare chiaramente il protocollo i lettura i una parola alla memoria, precisano il numero minimo i segnali coinvolti nel processo e la tipologia i protocollo. 2) (2 punti) Calcolare il tempo i lettura i una parola a 28 bit, consierano una memoria inirizzata con 32 bit e il protocollo testè escritto.
ESERCIZIO Il iagramma egli stati è il seguente: Cinque stati sono implementabili con tre FF, ma tre egli otto stati configurabili potranno liberamente associarsi a on t care (D). Utilizzano poi FF-D, non c è bisogno i riportare i corrisponenti valori egli ingressi perché essi coinciono esattamente con i valori ello stato futuro (DA=A, DB=B, DC=C ): A B C X A B C Z 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 D D D 0 0 D D D 0 0 0 D D D 0 0 D D D 0 0 D D D 0 D D D 0
Semplificano le espressioni elle rete logiche per la transizione ello stato: 0 0 D A = B D B = BC + AX + B Uscita Z: Z = C X 0 D C = BC X + A B C X
ESERCIZIO 2 I campi i inirizzamento sono offset, set inex, e tag. I blocchi sono a quattro parole, quini per la singola parola entro il blocco occorrono ue bit, ovvero l offset è i ue bit. Il numero i bit nei campi cache inex e tag ell inirizzo a ieci bit, ipene al metoo i inirizzamento ella cache. Poiché la cache è inirizzato con metoo set-associativo, il campo set inex è ato al numero i bit necessari per inirizzare la cache tolti i bit i offset e il bit non necessario per l inirizzamento elle ue vie per set. Poiché la cache si inirizza con 6 bit, abbiamo che il set inex è ato tre bit. In sintesi: < tag 5 bit > <set inex 3 bit > < offset 2 bit>. Se vengono richieste, in sequenza, le parole a 0 a 3, significa che vengono richiesti, in sequenza, i primi otto blocchi i memoria primaria. Infatti le prime trentaue parole, esseno raggruppate per quattro (imensione i ogni blocco), corrisponono ai primi otto blocchi. La cache, come si evince ai ati, è ata a 64 parole, organizzate in otto set con ue linee per set (ogni linea ha la stessa imensione el blocco). Poiché il metoo è set-associativo, e la cache si può supporre inizialmente vuota, ciascuno ei blocchi viene copiato in cache nella prima linea libera i ciascun set, causano un miss e tre hit per ciascun blocco. Al termine el primo ciclo, avremo totalizzato unque 3 * 8 = 24 hit su 32 chiamate complessive. Il secono blocco i parole presenta lo stessa sequenza i set inex el preceente (per verificarlo è sufficiente iviere 52/4 = 28, e poi 28/8 = 6 con resto 0). Poiché il metoo è a ue vie, i blocchi trovano spazio nella secona linea libera i ciascun set, con 3 * 8 = 24 hit su 32 chiamate. Dall iterazione 2 alla 0, tutte le parole risieono in cache quini avremo 64 hit per ciascuna elle nove iterazioni. Quini, l hit ratio è ato a: H C = 24 + 24 + 64 9 640 = 48 + 576 640 = 0.975 Per quanto riguara lo stato finale ella cache, al ragionamento fatto sopra: Set Contiene le parole 0 (linea 0) 0-3, (linea ) 52-55 4-7, 56-59 2 8-, 520-523 3 2-5, 524-527 4 6-9, 528-53 5 20-23, 532-535 6 24-27, 536-539 7 28-3, 540-543 Il valore minimo ell hit ratio ati i valori nel testo si calcola alla formula: Da cui: H c > T c+t p T m = 5+50 0 = 45 = 0.9 T p 50 50 T c + ( H c ) T p < T m = 0 Dove Tc è il tempo i accesso in cache, Tp il tempo i accesso in primaria, Tm il tempo meio i accesso alla gerarchia. Dal calcolo risulta eviente che il valore i Hc trovato nel punto preceente soisfa le specifiche, aveno ottenuto un hit ratio pari 0.975 chiaramente superiore a 0.9.
ESERCIZIO 3 Soluzione moltiplica: ai $29, $29, -4 sw $8, 0($29) move $7, $0 move $8, $0 loop: beq $8, $5, exit a $7, $7, $4 ai $8, $8, j loop exit: lw $8, 0($29) ai $29, $29, 4 jr $3 ESERCIZIO 4 Il protocollo prevee attivazione el segnale i READ e contestualmente rilascio ell inirizzo ella parola a cercare (30 ns); tempo i ciclo ella memoria (60 ns); trasferimento ati alla memoria alla CPU (20 ns): 30 ns 60 70 ns ns 20 60 ns ns Il tempo complessivo i trasferimento è ato unque a (30 + 60 + 20)ns = 20ns