流水线冒险(转移分支指令(Branch)引起的“延迟”现象,控制冒险,分支冒险,转移冒险)
装入指令(Load)引起的“延迟”现象(数据冒险、数据相关)
流水线的三种冒险(结构冒险、数据冒险、控制冒险)
解决流水线数据冒险的方法(硬件阻塞、NOP、转发或旁路、编译优化)
方法一:硬件阻塞
方法二:软件插入“NOP”指令
方法三:转发(Forwarding)技术
转发技术不是万能的
阻塞前的情况
阻塞后的情况
带转发逻辑的数据通路
方法四:编译优化
控制冒险的解决方法(硬件阻塞、软件插入NOP指令、分支预测、延迟分支)
分支预测
简单(静态)分支预测方法
动态分支预测方法
延迟分支