流水线 执行流程及名词
流水线是如何协同工作的?
这些术语描绘了指令在CPU中“流动”的过程。一个典型的简化流水线如下
- 取指 (FE):从内存中取出下一条指令。
- 译码 (DE):理解这条指令要做什么。
- 发射 (ISS):准备好操作数,并决定由哪个单元来执行。
- 执行 (ALU/FP/MAC/SAT):在对应的算术逻辑单元、浮点单元或乘加单元中完成计算。
- 访存 (DC):如果指令需要读写内存,则在此阶段访问数据缓存。
- 写回 (WBI):将最终结果写回寄存器。
| 缩写 | 英文全称 | 中文解释 | 在流水线中的角色 |
|---|---|---|---|
| FE | Fetch | 取指 | 从指令缓存中取出指令,并预测分支。 |
| DE | Decode | 译码 | 解析指令,识别操作类型和操作数。 |
| ISS | Issue | 发射 | 读取寄存器,并将指令发送到相应的执行单元。 |
| FP | Floating-Point | 浮点单元 | 专门处理浮点运算(如小数、大数计算)的功能单元。 |
| ALU | Arithmetic Logic Unit | 算术逻辑单元 | 执行整数算术和逻辑运算的核心单元。 |
| SAT | Saturate | 饱和 | 一种流水线阶段或功能,用于处理整数结果的饱和运算(即结果超出范围时,钳制到最大值或最小值,而非溢出)。 |
| MAC | Multiply-Accumulate | 乘加单元 | 执行“乘法-累加”运算(即 a = a + b * c),常用于数字信号处理(DSP)和AI计算。 |
| DC | Data Cache | 数据缓存 | 流水线中访问数据缓存的阶段,用于加载(Load)或存储(Store)数据。 |
| WBI | Write Back | 写回 | 将执行结果写回寄存器文件或缓存。有时也指“Write Back and Invalidate”的缓存维护操作 |


浙公网安备 33010602011771号