Befehlssatz und Assembler
Welche Aussage zum Branch Delay Slot (Regel, dass der Befehl unmittelbar nach einem Verzweigungsbefehl unabhängig davon ausgeführt wird, ob verzweigt wird), wie er beim früheren MIPS u. a. bestand, ist richtig?
- AEin Mechanismus für 100 % Genauigkeit der Sprungvorhersage, der auch bei heutigen CPUs unverzichtbar ist
- BAuch RISC-V übernimmt ihn, und nach einer Verzweigung muss stets ein nop eingefügt werden
- CEr brachte die Gegebenheiten der damaligen Pipeline in die ISA ein und wurde im Entwurf späterer CPUs zum Hemmschuh
Antwort und Erläuterung anzeigen
Antwort: C. Er brachte die Gegebenheiten der damaligen Pipeline in die ISA ein und wurde im Entwurf späterer CPUs zum Hemmschuh
In einer einfachen 5-stufigen Pipeline ist beim Bekanntwerden des Verzweigungsergebnisses der nächste Befehl schon geladen; der Branch Delay Slot vermeidet Verschwendung, indem er dessen Ausführung verbindlich macht. Bei späteren CPUs mit größerer Pipeline-Tiefe, Sprungvorhersage und gleichzeitiger Ausgabe entfiel der Vorteil, und es blieb nur die Last, aus Kompatibilitätsgründen eine Sonderbehandlung beizubehalten. RISC-V übernimmt ihn nicht, um keine vom internen Aufbau abhängigen Regeln in die ISA aufzunehmen.