70 likes | 189 Views
Schema di principio del SCA di una MMU Memory Management Unit. Processore tipo PD32 e memoria organizzata con un banco a 32 bit (4 byte) Si ipotizza che ci sia sempre allineamento dei byte e che si accedano sempre a 4 byte. Esempio di cache con blocchi da 16 parole (ogni parola da 4 byte).
E N D
Schema di principio del SCA di una MMUMemory Management Unit Processore tipo PD32 e memoria organizzata con un banco a 32 bit (4 byte) Si ipotizza che ci sia sempre allineamento dei byte e che si accedano sempre a 4 byte
Esempio di cache con blocchi da 16 parole (ogni parola da 4 byte) • E’ la cache del processore Intrisity FastMATH, un processore embedded basato sull’architettura MIPS • Cache istruzioni e cache dati separate, da 16 KB ciascuna e con blocchi di 16 parole (parole da 32 bit, cioè da 4 byte) n = 32 s = log2(16KB/64B) = 8 r = log2(64) = 6, di cui 4 identificano la parola all’interno del blocco, 2 il byte all’interno della singola parola 18 AAC - Valeria Cardellini, A.A. 2007/08 2
Possibile organizzazione della memoria di una cache ad accesso diretto d31…d0 flag tag17…tag0 d511…d479 d63…d32 MR MW CS MR MW CS MR MW CS MR MW CS MR MW CS . . . Parola 15 Parola 1 Parola 0 a6…a13 a6…a13 a6…a13 a6…a13 a6…a13 index CS=1
SCHEMA SEMPLIFICATO LETTURA DEL PROCESSORE Le connessioni disegnate servono solo per permettere il trasferimento dati dalla cache verso il processore, nel caso di miss il segnale di controllo MR generato dal PROCESSORE va in alta impedenza e il suo controllo passa allo SCO dell’MMU che lo forza a zero, lo rimette ad 1 a fine fase acquisione del blocco dalla memoria sok rok OK MDR a31…a14 a5…a2 comparatore MUX hit/miss d31…d0 tag17…tag0 d511…d479 d63…d32 flag MAR MR MW CS MR MW CS MR MW CS MR MW CS MR MW CS . . . Parola 15 Parola 1 Parola 0 a13…a6 a13…a6 a13…a6 a13…a6 CS=1
Memoriaorganizzazione in moduli (a byte) (come nel PD32) Data BUS (32 bit) d31…d24 d23…d16 d15…d8 d7…d0 MR MW CS MR MW CS MR MW CS MR MW CS a2…a31 a2…a31 a2…a31 a2…a31 Mb3 Mb2 Mb1 Mb0 Address BUS (30 bit)
SCHEMA SEMPLIFICATO SCRITTURA DATI DALLA MEMORIA Le connessioni disegnate servono solo per permettere il trasferimento dati dalla MEMORIA verso la cache, questa parte si attiva in caso di miss, lo SCO dell’MMU oltre a generare MW per i propri Moduli di memoria generare i MR verso il banco di memoria esterno. inc TC Contatore Modulo 16 sok rok OK Bus da 32 bit 1 a31…a14 da banco memoria DB 32 bit d31…d0 flag d511…d479 d63…d32 tag17…tag0 MR MW CS MR MW CS MR MW CS MR MW CS MR MW CS . . . Parola 15 Parola 1 Parola 0 a31 a30 a6 a6…a13 a6…a13 a6…a13 a6…a13 Verso banco memoria AB 30 bit a5a4a3a2 0 0 0 0 CAR registro contatore MAR Load Incr.
Ottimizzazione CAR con contatore modulo 16 registro a31 a30 a6 Verso banco memoria AB 26 bit (più significativi) AB 4 bit (meno significativi) load inc Contatore Modulo 16 TC