Esercizio 7campi dell'indirizzo in una cache ad associazione diretta
In questa pagina 5
Testo (esempio svolto in aula, lezione del 12 ottobre 2016). Una memoria principale di 16 MB, indirizzata al byte, è collegata a una cache ad associazione diretta di 16 K linee, con blocchi di 4 byte. Come si scompone l'indirizzo nei campi etichetta, linea e parola?
Bit dell'indirizzo
byte, un indirizzo per byte → indirizzi di 24 bit.
Campo parola
Il campo parola individua la posizione nel blocco: il blocco ha parole (byte) → 2 bit.
Campo linea
linee → 14 bit.
Campo etichetta
Il resto: 8 bit.
| etichetta (8) | linea (14) | parola (2) |
|---|
Lettura del risultato
- Blocchi in memoria: ; linee: . Su ogni linea si mappano blocchi diversi, distinti proprio dagli 8 bit dell'etichetta.
- Esempio: l'indirizzo
0x16339C= ha etichetta0x16, linea0x0CE7, parola . - Capacità dati della cache: KB (più 8 bit di etichetta e il bit di validità per ogni linea).
Versione ripasso
Testo (esempio svolto in aula, lezione del 12 ottobre 2016). Una memoria principale di 16 MB, indirizzata al byte, è collegata a una cache ad associazione diretta di 16 K linee, con blocchi di 4 byte. Come si scompone l'indirizzo nei campi etichetta, linea e parola?
Metodo: Memoria cacheBlocchi, linee ed etichette; scomposizione dell'indirizzo; associazione diretta, completamente associativa e associativa a insiemi con calcolo dei campi; politiche di rimpiazzo (LRU, FIFO, casuale); politiche di scrittura (write-through, write-back con bit sporco, write-allocate); dimensione del blocco; cache multilivello e separate; come ridurre i miss; quesiti sui campi dell'indirizzo.Memoria cache →: bit dell'indirizzo memoria; parola (byte per blocco); linea (numero di linee); etichetta = resto.
- byte 24 bit.
- Parola: 2 bit. Linea: 14 bit.
- Etichetta: bit.
Campi: etichetta 8, linea 14, parola 2. Controllo: blocchi su linee, blocchi per linea. Esempio: 0x16339C ha etichetta 0x16, linea 0x0CE7, parola 0. Capacità dati KB.