« »

Write-Back vs. Write-Through

Ein Computer mit 4 GiB adressierbarem Speicher verfügt über einen mengenassoziativen Cache (en. set-associative) mit zwei Wegen. Der Cache arbeitet im Write-Back-Modus und verwendet Least Recently Used (LRU) als Ersatzstrategie. Eine Cache-Zeile (en. cache line) ist 64 Byte groß. Der Cache hat eine Gesamtkapazität von 16 KiB. Gehen sie davon aus, dass der Speicher byteweise adressiert ist.

Diese Aufgabe war Teil der Klausur im Sommersemester 2025 (Zweittermin).

a)

Level 3: Anwenden

Wie viele Zeilen enthält der Cache? Wie viele Bits werden für den Index und den Tag benötigt?

Lösung
  • Cache-Größe: 16 KiB = $2^{14}$ Byte
  • Arbeitsspeicher: 4 GiB = $2^{32}$ Byte
    • somit 32 Bit Adresslänge
  • Cache-Zeile: 64 Byte = $2^6$ Byte → 3 Byte je Block bei 2 Wegen
    • somit 2 Bit Byte Offset und 1 Bit Block Offset
  • Anzahl der Cache-Zeilen: $2^{14}$ Byte ÷ $2^6$ Byte je Zeile = $2^8$ Zeilen = 256 Zeilen
    • somit 8 Bit Index
  • in Summe also 32 - 8 - 2 - 1 = 21 Bit Tag

b)

Level 1: Wissen

Geben sie jeweils kurz einen Vorteil eines Write-Back- und eines Write-Through-Caches strichwortartig an.

Lösung
  • Write-Back-Cache: kann Geschwindigkeitsunterschiede zwischen Cache und Hauptspeicher abfangen
  • Write-Through-Cache: Werte im Hauptspeicher und Cache sind immer auf demselben Stand

Lernziele

In dieser Aufgabe …

  • leiten die Studierenden aus wenigen Angaben den Aufbau des Caches ab.
  • üben die Studierenden die Zuordnung zwischen Cache-Adressen und Cache-Zeilen.
  • wiederholen die Studierenden der verschiedenen Vorteile zweier Schreibverfahren.