📄️ 从单流水到多流水
多周期单流水处理器
📄️ 什么是超标量
超标量处理器的定义为 在一个周期可以执行并完成多条指令的处理器, 即指令的最大吞吐量大于 1 指令/周期.
📄️ 寄存器重命名
为什么需要寄存器重命名
📄️ Bergamot 数据广播
上一章我们简单介绍了一条指令是如何获取它的源寄存器的值的, 其中提到了一种重要的方式, 即数据广播.
📄️ 乱序执行
在前章, 我们介绍了 Bergamot 的数据广播架构, 其中引入了指令暂存队列的概念. 在本章, 我们重点关注于指令暂存队列的指令调度算法.
📄️ 分支预测
为了充分利用流水线架构, 我们想让更多的指令进入流水线, 这需要让一些指令提前进入流水线, 但分支指令的存在, 选择要进入流水线的指令就变得更加困难, 因此我们就必须使用分支预测.
📄️ 分支恢复
分支预测的结果和执行的结果一致是我们所希望的, 但也总有预测失败的情况. 当分支预测失败的时候, 我们需要恢复处理器核心到这条预测失败的分支之前, 该过程称为 分支恢复 .
📄️ 总线与缓存
总线是处理器和外界进行 I/O 通讯的主要办法, 缓存用以改善处理器的 I/O 性能.
📄️ 指令预取
现在我们来到处理器的最前端, 指令预取.