Ausgangspunkt des Pipelining ist die Aufspaltung einer Instruktion in Stufen. Das Pipelining setzt voraus, dass für die zugrundeliegende Befehlsarchitektur eine Folge von Teilschritten gefunden wird, die für alle Befehle gleich ist. Für die folgende Aufgabe wird angenommen, dass alle Befehle in den folgenden fünf Stufen bearbeitet werden:
1. Instruction Fetch (IF): Befehl holen
2. Instruction Decode (ID): Befehl dekodieren und gleichzeitig die Quelloperanden aus dem
Registerblock lesen
3. Execute (EX): Führe eine arithmetische bzw. logische Operation mit den Operanden aus
4. Memory Access (MEM): Daten holen (LOAD) oder Speichern (STORE)
5. Write Back (WB): Ergebnis in einem prozessorinternen Register speichern
In der unten stehenden Tabelle sind die Rechenzeiten für die einzelnen Stufen der Pipeline angegeben.
IF ID EX MEM WB
110 ps 130 ps 90 ps 120 ps 70 ps
Wie groß ist die Ausführungszeit einer Instruktion in der Pipeline-Architektur? Wie groß ist die Ausführungszeit in der Einzeltakt-Architektur? In welcher Architektur dauert die Ausführung einer einzelnen Instruktion länger?