1、中国科学技术大学 1计算机体系结构周学海0551-63601556, 63492149中国科学技术大学第三章 流水线技术3.1流水线的基本概念3.2 MIPS基本流水线3.3 DLX (MIPS)中多周期操作的处理3.4 MIPS R4000流水线中国科学技术大学 chapter03.2流水线的基本概念 一个任务可以分解为 k 个子任务 K个子任务在 K 个不同阶段(使用不同的资源)运行 每个子任务执行需要 1个单位时间 整个任务的执行时间为 K倍单位时间 流水线执行模式是重叠执行模式 K个流水段并行执行 K个不同任务 每个单位时间进入 /离开流水线一个任务中国科学技术大学 chapter03
2、.3同步流水线 流水段之间采用时钟控制的寄存器文件( clocked registers) 时钟上升沿到达时 所有寄存器同时保存前一流水段的结果 流水段是组合逻辑电路 流水线设计中希望各段相对平衡 即所有段的延迟时间大致相等 时钟周期取决于延迟最长的流水段中国科学技术大学 chapter03.4流水线的性能 设 = time delay in stage Si 时钟周期 = max( ) 为最长的流水段延迟 时钟频率 f = 1/ = 1/max( ) 流水线可以在 k+n-1个时钟周期内完成 n个任务 完成第一个任务需要 k个时钟周期 其他 n-1个任务需要 n-1个时钟周期完成 K-段流水
3、线的理想加速比(相对于串行执行)中国科学技术大学 chapter03.5简单的 5段流水线 5个流水段,每段的延迟为 1个 cycle IF: 取值阶段 选择地址:下一条指令地址、转移地址 ID: 译码阶段 确定控制信号 并从寄存器文件中读取寄存器值 EX: 执行 Load 、 Store:计算有效地址 Branch:计算转移地址并确定转移方向 MEM: 存储器访问(仅 Load和 Store) WB: 结果写回中国科学技术大学 chapter03.6流水线的可视化表示 多条指令执行多个时钟周期 指令按程序序从上到下排列 图中展示了每一时钟周期资源的使用情况 不同指令相邻阶段之间没有干扰中国科
4、学技术大学 chapter03.7指令流时序 时序图展示: 每个时钟周期指令所使用的流水段情况 指令流在采用 5段流水线执行模式的执行情况中国科学技术大学 chapter03.8单周期、多周期、流水线控制性能比较 假设 5段指令执行流水线 某一程序段假设: 20% load, 10% store, 40% ALU, and 30% branch 比较三种执行模式的性能中国科学技术大学 chapter03.9中国科学技术大学 chapter3.1003/03-review 流水线技术要点 流水线技术并不能提高单个任务的执行效率,它可以提高整个系统的吞吐率 流水线中的瓶颈 最慢的那一段 多个任务同时执行,但使用不同的资源 其潜在的加速比流水线的级数 流水段所需时间不均衡将降低加速比 流水线存在装入时间和排空时间,使得加速比降低 由于存在相关问题,会导致流水线停顿