MIPS类管道架构中的数据危害

时间:2015-08-31 14:31:33

标签: assembly mips cpu pipeline computer-architecture

让以下管道架构:

  
      
  1. FETCH
  2.   
  3. 解码 - 阅读寄存器
  4.   
  5. READ MEMORY
  6.   
  7. ALU
  8.   
  9. 存储/读取存储器
  10.   
  11. 写回 - 存储到寄存器
  12.   

我们基本上添加了一个阶段,使我们能够在ALU阶段之前从内存中读取数据。

考虑以下新命令:

lwPointer $2, imm($3) # $2:= Memory[Memory[$3] + imm]`   
swPointer $2, imm($3) # Memory[Memory[$3] + imm] := $2

让以下程序:

1. add $3 $2 $1   
2. lwPointer $1, 0($3)
3. sw $7 0($3)

为什么命令#3之间没有数据危害?在我看来,由$3命令解码的#3未经更新。

0 个答案:

没有答案