2016-10-08 3 views
0

ich schätzen würde, wenn jemand meine Frage in Bezug auf Übung folgenden beantworten kann (kein Hausaufgabe, es selbst zu tun):Niederlassung Stall in klassischen 5-stufiger Pipeline

draw a pipeline cycle timing diagram for the above code. Start with the first lw before the loop, run one loop iteration, and stop at the first store of the second iteration.

Nun, weggelassen ich die "über Code", wie Sie es in der Tabelle sehen können. "S" steht für Stall. Die folgende Tabelle soll eine korrekte Antwort sein.

Frage: Warum gibt es in Zyklus 9 einen Stall für eine Verzweigung? Es ist nur Dekodierbühne. Soweit ich weiß, benötigt es noch keine Operandenwerte.

ich schätzen würde, wenn jemand kommentieren ...

 
instruction 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 
-------------------------------------------------------------------------------- 
lw r3, 0(r2) f | d | x | m | w | | | | | | | | | | | 
sw r3, 0(r2)  | f | d | x | m | w | | | | | | | | | | 
sub r1, r3, r4 | | f | d | x | m | w | | | | | | | | | 
lw r3, 0(r1)  | | | f | d | x | m | w | | | | | | | | 
sw r1, 0(r3)  | | | | f | d | s | x | m | w | | | | | | 
subi r2, r2, 4 | | | | | f | s | d | x | m | w | | | | | 
bnez r2, loop | | | | | | | f | s | d | x | m | w | | | 
lw r3, 0(r2)  | | | | | | | | | f | d | x | m | w | | 
sw r3, 0(r2)  | | | | | | | | | | f | d | x | m | w | 

Antwort