Die Pipeline
So, ich komme mal Niels Wunsch nach mehr Grundlagenaufsätzen zum Thema Computeerarchitekturen nach. Heute geht es um die Pipeline. Nein es handelt sich nicht um ein Spiel wo ein Klempner lecke Rohre verbinden muss und auch nicht um den Ukraine-Gas Konflikt. Es handelt sich um eine Maßnahme dem Prozessor Beine zu machen.
Die erste Verbesserung der Geschwindigkeit hat mit der Verarbeitung der Befehle zu tun. Dies ist für jeden Befehl folgender Ablauf:
-
Hole den Befehl (oder bei CISC Architekturen oft auch nur das erste Byte des Befehls) vom Speicher. Dies wird als Fetch bezeichnet.
-
Dekodiere den Befehl (decode)
-
Eventuell, hole weitere Daten, die zum Befehl gehören. (Get Data, Memory Read)
-
Führe den Befehl aus (Execute)
-
Lege Daten im Zielregister ab (Write Back)