有5级流水线CPU有级的顺序如下:使用5级流水线CPU在指定的指令序列中需要多少个时钟周期?
IF - 指令从instrution存储器中取出。
RD - 指令解码和寄存器读取。
EX - 执行:用于数据和地址计算的ALU操作。数据存储器访问 - 对于写入访问,RD状态下的寄存器读取使用的是 。
WB - 注册回写。
考虑下面的指令序列:
I1: L R0, loc 1 ; R0 <=M[loc1]
I2: A R0, R0 1 ; R0 <= R0 + R0
I3: S R2, R0 1 ; R2 <= R2 - R0
让每个阶段需要一个时钟周期。 从I1的提取开始,完成上述 指令序列的时钟周期数是多少?
所以这是我的解决方案。
1 2 3 4 5 6 7 8 9 10 11 12 13
I1: IF RD EX MA WB
I2: IF - - - RD EX MA WB
I3: IF - - - - - - RD EX MA WB
以这种方式,我得到总共13个周期。我假设,因为操作数转发没有明确提到的问题。所以注册将仅在WB阶段后可用。但选项是下列:
- A. 8
- B. 10
- C. 12
- D. 15
如果你要发布一个家工作上的问题,至少表明你已经做了一些工作(除了把它转录到SO上)。你有任何答案(可能与预期结果不符)? – 2011-12-18 09:22:16
是的,我已经解决了它,但我的答案不符合给出的任何选项。好吧,我也会把我的解决方案。 – 2011-12-18 09:25:29
好 - 因为否则看起来您已经完成了*无*工作,并且只想要提供答案,而不是获得问题意在演示的理解。 – 2011-12-18 09:26:48