Hardware Reference
In-Depth Information
w -Bit-breite Hauptspeicheradresse
Blockadresse
Offset
Tag
Index (Set-Adresse)
im Block
w − c − b Bits c Bits b Bits
Abbildung 7.11. Von einer w -Bit-breiten Speicheradresse werden w − c − b Bits als Tag im
Cache mit abgespeichert. Weitere c Bits dienen zur Bestimmung des zugeordneten Set
Block nach dem Prinzip der assoziativen Speicherung an jeder beliebigen Po-
sition abgelegt werden. Man spricht von n-Wege assoziativem Cache ( n -Way
Set Associative).
Ein Cache besteht also aus 2 c Sets zu je n =2 a Blocken der Große m =2 b
Bytes. Die Zerlegung einer Speicheradresse A in die Komponenten, die zum
Au nden im Cache erforderlich sind, zeigt Abbildung 7.11.
Zusammenfassend wollen wir anhand eines Beispiels mit acht Cache-Blocken
die drei Arten von Caches noch einmal vorstellen. Wir beobachten den vier-
zehnten Block des Hauptspeichers (d.h.
= 14).
1. Der voll-assoziative Cache besteht aus nur einem Set, d.h. es gilt c =0.
Der Block kann an jede beliebige Position des Cache gespeichert werden
(verdeutlicht durch die graue Schraffur aller Blocke).
Set
A/m
0
Block
0
1
2
3
4
5
6
7
Daten
Tag
2. Der andere Extremfall ist der direkt abbildende Cache. Er enthalt je Set
nur einen Block, also gilt hier a = 0 d.h. n = 1. Der Block kann nur an die
feste Position 14 mod 8 = 6 geschrieben werden (graue Schraffur).
Set
0
1
2
3
4
5
6
7
Block
0
0
0
0
0
0
0
0
Daten
Tag
3. Ein n-Wege assoziativer Cache besteht aus Sets zu je n Blocken. Wir geben
das Beispiel fur n = 2 an, also einen Zwei-Wege assoziativen Cache. Das
Set ist durch die Adresse selbst festgelegt zu 14 mod 4 = 2. Innerhalb des
Search WWH ::




Custom Search