RAW-Stalls
Help Contents
Instruktionsausführung mit Forwarding und Stalls
RAW-Stalls
RAW-Stalls
Diese sind auf einen RAW-Hazard zurückzuführen, d.h., dass eine spätere Instruktion als Operanden das Zielregister einer früheren Instruktion verwendet, diese aber noch nicht fertig abgearbeitet worden ist.
Diese RAW-Stalls können unter Verwendung von Forwarding minimiert werden, sodass dann nur mehr folgende Fälle vorliegen können:
i) RAW-Load-Stalls: Bei einer Load-Instruktion steht das Ergebnis erst nach der MEM-Phase, nicht wie sonst nach der EX-Phase, fest.
ii) RAW-Jump-Stalls: Bei Sprüngen, die Register als Parameter verwenden, müssen deren Werte bereits bei der ID-Phase der Sprung-Instruktion vorliegen, da ein Sprung bereits in der ID-Phase vollständig durchgeführt wird.
iii) RAW-Fliesskommastufen-Stalls: Da Fliesskomma-Ausführungsstufen mehrere Takte benötigen können, können auch hier trotz des Forwardings RAW-Stalls notwendig sein.
References: