$\mathscr {Hugo}$ $\mathbb{CPU}$五级流水线$\mathscr{Design}$
实现五级流水线CPU
- 命名统一采用hugo命名法(借鉴了匈牙利命名法和下划线命名)
- 主体为mips.v模块,不再像P4一样加入DataPath模块,统一在mips.v中完成连线等大部分操作。
- 控制部分分为
Ctrl_Unit
和Hazard_Ctrl
两个部分,处理冲突为在能够使用旁路转换的情况下尽可能的使用旁路转换 - 流水线阶段分为IF,ID,EX,MEM,WB五个部分
- F:
NPC
,PC
,IM
- D:
GRF
,EXT
,CMP
- E:
ALU
- M:
DM
- W:
GRF
- F:
- 其中用到大部分的宏定义在
def.v
中定义
CPU流水线的实现
基本的数据通路
IF阶段的pc需要保留到后面继续使用
重点处理的在于ALU