计算机硬件(二)
流水线技术
概念
- 流水线把一个操作分成若干阶段,各阶段可以并行工作
- 理想情况下面,一个时钟周期可以完成一个任务
计算公式
设一共有 𝑛 个任务(指令),流水线有 𝑘 个阶段,每个阶段耗时为 𝑡
-
流水线时长 T(流水线) = (t1 + t2 + ... + tk) + (n - 1) * t(max)
-
非流水线时长 T(非流水线) = n * (t1 + t2 + ... + tk)
-
吞吐率 吞吐率 = 1 / t(max)
-
加速比 加速比 = T(非流水线) / T(流水线)
五阶段流水线(简单介绍)
- 取值(IF) cpu从内存读取指令,更新程序计数器
- 译码(ID) 解析指令,读取寄存器操作数
- 执行(EXE) ALU上执行运算(包括地址计算)
- 访存(MEM) 如果指令需要访问内存,就在这里从内存读取数据
- 写回(WB) 把结果写回寄存器