问答题
今有4级流水线分别完成取值、指令译码并取数、运算、送结果四步操作,现假设完成各步操作的时间依次为100 ns,100 ns,80 ns,50 ns。 请回答下列问题: (1)流水线的操作周期应设计为多少? (2)若相邻两条指令发生数据相关,而且在硬件上不采取措施,那么第二条指令要推迟多少时间进行? (3)如果在硬件设计上加以改进,至少需推迟多少时间?
【正确答案】正确答案:(1)流水线的操作时钟周期t按四步操作中最长时间来考虑,所以t=100 ns。 (2)两条指令发生数据相关冲突情况: ADD R
1
,R
2
,R
3
; R
2
+R
3
→R
1
SUB R
4
,R
1
,R
5
; R
1
—R
5
→R
4
两条指令在流水线中执行情况如下表所示。

【答案解析】