实现与一组指令相对应的管道

时间:2016-02-27 03:56:50

标签: assembly pipeline

我们得到了这套说明:

1000  Add       R3, R2, #20
1004  Subtract  R5, R4, #3
1008  And       R6, R4, #0x3A
1012  Add       R7, R2, R4

并告知最初,注册R2R4包含200050。我们正在处理一个5级流水线,其中第一条指令在时钟周期1中被取出,其余的指令在连续的循环中被取出。

我们将绘制管道并描述每个流水线阶段在时钟周期1到8期间执行的操作。我对描述正在执行的操作的含义感到困惑。这是指Add指令与Subtract指令吗?

这是我的管道:

Clock Cycle           1  2  3  4  5  6  7  8
Add R3, R2, #20       F  D  E  M  W
Subtract R5, R4, #3      F  D  E  M  W
And R6, R4, #0x3A           F  D  E  M  W
Add R7, R2, R4                 F  D  E  M  W

或者这是否意味着例如在第1周期我们正在获取地址1000而在第2周期我们将值加载到R2并在读取地址时读取立即值{{1对于新指令。第3周期我们评估1004,同时获取R2 + #20中的值,并在获取地址1008时立即评估。循环4 ......依此类推第四。

问题的另一部分我不确定是在第2到第8周期内描述管道中寄存器IR,PC,RA,RB,RY,RZ的内容.RA,RB,RY, RZ是流水线寄存器。

0 个答案:

没有答案