Lernziele
In dieser Aufgabe …
- wiederholen die Studierenden den Aufbau vollassoziativer Caches.
- leiten die Studierenden aus gegebenen Anforderungen einen Cache-Entwurf ab.
- simulieren die Studierenden die Funktionsweise des Caches.
In dieser Aufgabe geht es um vollassoziative Caches (en. fully associative). Die Adressierung erfolgt wortweise. Unser System nutzt 64-Bit-Adressen.
Diese Aufgabe stammt aus Kapitel 5.3 von "Computer Organization and Design. The Hardware/Software Interface. RISC-V Edition" (Patterson & Hennessy, 2018).
Level 3: Anwenden
Konstruieren Sie gedanklich einen vollassoziativen Cache mit Ein-Wort-Blöcken, der eine Kapazität von acht Worten hat. Wie viele Cache-Zeilen gibt es und wie breit sind sie? Wie viele Bits werden für Tag, Index und Offset benötigt?
Level 3: Anwenden
Vollziehen Sie die Funktionsweise des Caches aus Aufgabe 3c nach. Nehmen Sie als Ersetzungsstrategie „Least Recently Used“ (LRU) an. Identifizieren Sie für jede Referenz
Geben Sie weiterhin an,
Hinweis: Zur eigenen Orientierung können die Adressen der im Cache gespeicherten Daten nach dem letzten Zugriff sortiert angegeben werden.
| Binäradresse | Hit? | Adressen im Cache | |
|---|---|---|---|
0x03 | 0000.0011 | ||
0xb4 | 1011.0100 | ||
0x2b | 0010.1011 | ||
0x02 | 0000.0010 | ||
0xbe | 1011.1110 | ||
0x58 | 0101.1000 | ||
0xbf | 1011.1111 | ||
0x0e | 0000.1110 | ||
0x1f | 0001.1111 | ||
0xb5 | 1011.0101 | ||
0xbf | 1011.1111 | ||
0xba | 1011.1010 | ||
0x2e | 0010.1110 | ||
0xce | 1100.1110 |
Nutzen Sie für diese Aufgabe die folgende Sequenz von Worten:
0x03, 0xb4, 0x2b, 0x02, 0xbe, 0x58, 0xbf,
0x0e, 0x1f, 0xb5, 0xbf, 0xba, 0x2e, 0xce
| Binäradresse | Hit? | Adressen im Cache | |
|---|---|---|---|
0x03 | 0000.0011 | Miss | 0x03 |
0xb4 | 1011.0100 | Miss | 0x03, 0xb4 |
0x2b | 0010.1011 | Miss | 0x03, 0xb4, 0x2b |
0x02 | 0000.0010 | Miss | 0x03, 0xb4, 0x2b, 0x02 |
0xbe | 1011.1110 | Miss | 0x03, 0xb4, 0x2b, 0x02, 0xbe |
0x58 | 0101.1000 | Miss | 0x03, 0xb4, 0x2b, 0x02, 0xbe, 0x58 |
0xbf | 1011.1111 | Miss | 0x03, 0xb4, 0x2b, 0x02, 0xbe, 0x58, 0xbf |
0x0e | 0000.1110 | Miss | 0x03, 0xb4, 0x2b, 0x02, 0xbe, 0x58, 0xbf, 0x0e |
0x1f | 0001.1111 | Miss | 0xb4, 0x2b, 0x02, 0xbe, 0x58, 0xbf, 0x0e, 0x1f |
0xb5 | 1011.0101 | Miss | 0x2b, 0x02, 0xbe, 0x58, 0xbf, 0x0e, 0x1f, 0xb5 |
0xbf | 1011.1111 | Hit | 0x2b, 0x02, 0xbe, 0x58, 0x0e, 0x1f, 0xb5, 0xbf |
0xba | 1011.1010 | Miss | 0x02, 0xbe, 0x58, 0x0e, 0x1f, 0xb5, 0xbf, 0xba |
0x2e | 0010.1110 | Miss | 0xbe, 0x58, 0x0e, 0x1f, 0xb5, 0xbf, 0xba, 0x2e |
0xce | 1100.1110 | Miss | 0x58, 0x0e, 0x1f, 0xb5, 0xbf, 0xba, 0x2e, 0xce |
In dieser Aufgabe …