Pipeline_cpu pipeline hazard解决方案---stall+Foward技术

Pipeline_cpu pipeline hazard解决方案---stall+Fowarding技术

一,先来看forwarding技术

如图所示加入Forwarding unit在excution与memory/write back 的stage之间的bypath结构

工作原理:

  1. 比较excution的source register 和   memory/write back的dst register是否相同 ,若memory/write back的dst register相同则选择memory的data进行bypath(mem stage的data是最新的)          
  2. 若match则将memory/write back的dst register的data bypath给excution stage
  3. 通过MUX直接将data递给ALU进行操作

有些场景只通过forwarding技术没办法解决,于是引出stall技术

二,stall+forwarding技术

such as:1.lw $2 .....     2.add $4,$2,$5(先执行lw后执行add)

Pipeline_cpu pipeline hazard解决方案---stall+Fowarding技术

这时如图所示使用forwarding技术将会跨两级组合逻辑,这是无法满足timing要求的。

stall技术,需要在instruction decoding 和excution stage之间加入Hazard detection unit(如下图)

Pipeline_cpu pipeline hazard解决方案---stall+Fowarding技术

工作原理:#------未完待续------#

Pipeline_cpu pipeline hazard解决方案---stall+Fowarding技术

 

 

 

相关文章:

  • 2022-01-08
  • 2022-02-18
  • 2021-08-04
  • 2022-12-23
  • 2021-06-16
  • 2022-12-23
  • 2021-10-30
猜你喜欢
  • 2021-05-07
  • 2021-11-30
  • 2021-12-26
  • 2021-08-25
  • 2021-12-16
  • 2021-04-01
  • 2021-07-24
相关资源
相似解决方案