Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Zuordnung CacheHauptspeicher

Ähnliche Präsentationen


Präsentation zum Thema: "Zuordnung CacheHauptspeicher"—  Präsentation transkript:

1 Zuordnung CacheHauptspeicher
Wie wirken Cache und HSP-Organisation zusammen? Wie kann ich ermitteln, was in den Cache geladen wird? Copyright © 2009 Rainer Gerhards

2 Warum Caches? Hauptspeicher zu langsam Cache zu teuer
Lösung: Teilmenge in Cache halten! zeitliche Lokalität räumliche Lokalität

3 Organisation des Hauptspeichers
Beispielarchitektur Konzeptionell linearer Adressraum Hauptspeichermatrix Adressdekoder für Zeilen Spalten . .

4 Cache Speicher ähnlich organisiert
. Cache Hauptspeicher .

5 Auswahl des gewünschten Speicherwortes
Zugriff auf ein Datum Auswahl des gewünschten Speicherwortes . Auswahl Zeile Übertrag in Register für Wortselektion CPU-Register . Laden in CPU-Register

6 Zugriff auf ein Datum – Cache!
Auswahl des gewünschten Speicherwortes . Übertrag in Cache Laden in CPU-Register CPU-Register . Auswahl Zeile

7 Aufteilung der phys. Adresse
Beispiel: 20 Bit Adresse (1 MB), 1K Cache, Blockgröße 8 Byte 19 10 9 3 2 Etikett (Tag) Index Wortbits 10 Bit 7 Bit 3 Bit Speicher hat 1024 mal 1024 Bytes 1024/8 Bytes = 128 Einträge Werte von 0 bis 7

8 Wortbits… . Innerhalb der Zeile wird mit Wortbits adresiert!
CPU-Register . Wortbits sind immer 0!

9 Adressierung im Cache Tag Index . CPU-Register .

10 Beispielrechnung 0100 1111 0110 1101 0010 4 F 6 D 2 Adresse 19 10 9 3
Etikett (Tag) Index Wortbits 1. In Binär umwandeln! 2. Einzelne Bitfelder abtragen! 4 F 6 D 2 Adresse

11 Beispielrechnung 0100 1111 0110 1101 0010 4 F 6 D 2 Adresse 19 10 9 3
Etikett (Tag) Index Wortbits 010 1. In Binär umwandeln! 2. Einzelne Bitfelder abtragen! 4 F 6 D 2 Adresse

12 Beispielrechnung 0100 1111 0110 1101 0010 4 F 6 D 2 Adresse 19 10 9 3
Etikett (Tag) Index Wortbits 010 1. In Binär umwandeln! 2. Einzelne Bitfelder abtragen! 4 F 6 D 2 Adresse

13 Beispielrechnung 0100 1111 0110 1101 0010 4 F 6 D 2 Adresse 19 10 9 3
Etikett (Tag) Index Wortbits 010 1. In Binär umwandeln! 2. Einzelne Bitfelder abtragen! 4 F 6 D 2 Adresse

14 Beispielrechnung 0100 1111 0110 1101 0010 4 F 6 D 2 Adresse 19 10 9 3
Etikett (Tag) Index Wortbits 010 Die Cache-Line beginnt auf Adresse 4F6D0. Es muss nämlich zu Anfang der Cache-Line adressiert werden, die Wortbits werden daher auf 0 gesetzt. 4 F 6 D 2 Adresse

15 Ein Cache Miss… Zugriff auf 4F6D2 Index 10 1101 . Tag: 00 1101 1000
ungleich Cache-Miss! .

16 Also Cache-Line lesen…
Zugriff auf 4F6D2 . Übertrag in Cache Tag auf setzen . Auswahl Zeile 4F6D0

17 Weiter wie bei Cache-Hit…
Zugriff auf 4F6D2 . Auswahl des gewünschten Speicherwortes 010 Laden in CPU-Register CPU-Register .

18 Fazit Es wird immer eine ganze Cache-Line geladen
Die Adresse der Cache-Line erhält man, indem man die Wortbits auf 0 setzt Bei assoziativen Caches ist Cache-Speicher n-fach je Index vorhanden


Herunterladen ppt "Zuordnung CacheHauptspeicher"

Ähnliche Präsentationen


Google-Anzeigen