执行级

执行 (Execute) 阶段接收发射级给出的源操作数和译码信息, 分派给相应的功能单元进行计算, 最后把计算结果提交到写回级. NutShell 包含以下标准功能单元:

  • ALU/BRU: 算数逻辑单元 ALU 负责处理整数运算指令. 跳转处理单元BRU 负责处理跳转指令. BRU 可以与 ALU 合并, 复用 ALU 的逻辑来计算跳转指令的条件和跳转地址, 也可以作为一个单独的功能单元接入到流水线中.

  • MDU: 乘除法单元 MDU 负责处理所有的乘法与除法指令. 目前的乘除法单元尚未流水化, 只支持一条指令在其中执行.

  • CSR/MOU: 控制与状态寄存器单元 CSR 与访存定序指令单元 MOU 用于处理各种特权指令. 与常规功能单元的区别为进入这个功能单元的指令会阻塞流水线. 详见功能部件部分的 CSR单元.

  • LSU: 访存单元 LSU 负责处理所有的访存指令. 详见功能部件部分的 访存单元.

最后更新于