公开课链接:http://www.chinesemooc.org/kvideo.php?do=course_progress&kvideoid=4392&classesid=1967
7.1 流水线的基本原理


需要添加流水线寄存器导致单条指令完成的时间更长,但可能可以提高整体吞吐率



7.2 流水线的优化



主流稳定在了15左右
7.3 超标量流水线

内部并行


7.4 流水线的冒险




万能的空泡
7.5 数据冒险的处理

用软件解决(容易有软件兼容问题)

硬件插入空泡解决

数据前递

前递或旁路的硬件实现示意

多个位置前递

前递也无法处理的冒险问题
7.6 控制冒险的处理




无条件转移通过直接不停顿地在一个周期内获得结果,供下一次取址使用

间接转移必须停一个周期

条件转移通过在寄存器上增加比较部件,但依旧需要停一个周期


延迟转移技术:编译时改变指令顺序