Speicherhierarchie und Leistung
Was ist der Hauptvorteil eines L1-Caches, der in einen Befehlscache (I-Cache) und einen Datencache (D-Cache) aufgeteilt ist?
- ABefehle und Daten kollidieren auch bei gleichen Adressen nicht, und die Kapazität erscheint doppelt so groß
- BDas Holen von Befehlen und das Lesen und Schreiben von Daten können im selben Takt parallel erfolgen
- CDa Befehle nicht überschrieben werden, kann auf den D-Cache verzichtet werden
Antwort und Erläuterung anzeigen
Antwort: B. Das Holen von Befehlen und das Lesen und Schreiben von Daten können im selben Takt parallel erfolgen
In einer Pipeline wird in jedem Takt ein Befehl geholt, während ein anderer Befehl Daten liest oder schreibt. Ist L1 in Befehls- und Datenteil aufgeteilt, können beide Zugriffe parallel erfolgen, ohne um den Port eines einzigen Caches zu konkurrieren, und es lassen sich jeweils der Eigenschaft angepasste Konfigurationen wählen. Die Kapazität verdoppelt sich dadurch nicht, die Gesamtkapazität wird nur aufgeteilt. Da Daten stets gelesen und geschrieben werden, kann auf den D-Cache nicht verzichtet werden. Ab L2 werden Befehle und Daten üblicherweise gemeinsam gehalten.