没有合适的资源?快使用搜索试试~ 我知道了~
P7-CPU设计文档1
资源详情
资源评论
资源推荐
Verilog 多周期 CPU 设计文档
一、 CPU 设计方案综述
使用 Verilog 开发一个简单的多周期 CPU,总体概述如下:
1. 此 CPU 为 32 位 CPU
2. 此 CPU 为多周期设计
3. 此 CPU 支持异常和中断
4. 此 CPU 支持的指令集为:{LB, LBU, LH, LHU, LW, SB, SH, SW,
ADD, ADDU,SUB, SUBU, MULT, MULTU, DIV, DIVU, SLL, SRL,
SRA, SLLV, SRLV, SRAV, AND, OR, XOR, NOR, ADDI, ADDIU, ANDI,
ORI, XORI, LUI, SLT, SLTI, SLTIU, SLTU, BEQ, BNE, BLEZ, BGTZ,
BLTZ, BGEZ, J, JAL, JALR, JR, MFHI, MFLO, MTHI, MTLO, MFC0,
MTC0, ERET}
5. nop 机器码为 0x00000000
6. addu, subu, addiu 不支持溢出
二、 关键模块定义
1. PC
(1) 端口说明
表 1-PC 端口说明
序号
信号名
方向
描述
1
clk
I
时钟信号
2
reset
I
复位信号
3
NPC
I
下一条指令所在 IM 地址
4
PC
O
当前指令所在 IM 地址
(2) 功能定义
表 2-PC 功能定义
序号
功能
描述
1
存储指令的地址
保存当前执行指令在 IM 中的地
址
2. IM
(1) 端口说明
表 3-IM 端口说明
序号
信号名
方向
描述
1
PC[31:0]
I
时钟信号
2
instr[31:0]
O
指令
(2) 功能定义
表 4-IM 功能定义
序号
功能
描述
1
取指令
就是取指令
3. IFID
(1) 端口说明
表 5-IDIF 功能定义
序号
信号名
方向
描述
1
clk
I
时钟信号
2
en
I
使能信号
3
reset
I
同步复位信号
4
PCF[31:0]
I
PC 在 F 级的值
5
InstrF[31:0]
I
instr 在 F 级的值
6
PCD[31:0]
O
PC 在 D 级的值
7
InstrD[31:0]
O
instr 在 D 级的值
(2) 功能定义
表 6-IFID 功能定义
序号
功能
描述
1
存储流水线值
存储流水线值
4. NPC
(1) 端口说明
表 7-NPC 端口说明
序号
信号名
方向
描述
1
branch
I
分支信号
2
JType
I
跳转信号
3
JReg
I
判断指令是否需要跳转寄存器
4
PCF[31:0]
I
F 级 PC 值
5
PCD[31:0]
I
D 级 PC 值
6
RegJump[31:0]
I
跳转寄存器中地址值
7
imm26D[25:0]
I
D 级的 26 位立即数
8
NPC[31:0]
O
根据各种指令计算出的下一个 PC 值
(2) 功能定义
表 8-NPC 功能定义
序号
功能
描述
1
计算下一个 PC 的值
5. GRF
(1) 端口说明
表 9-GRF 端口说明
序号
信号名
方向
描述
1
clk
I
时钟信号
2
reset
I
同步复位信号,将 32 个寄存器中全部
清零
1:清零
0:无效
3
WE
I
写使能信号
1:可向 GRF 中写入数据
0:不能向 GRF 中写入数据
4
A1[4:0]
I
5 位地址输入信号,指定 32 个寄存器
中的一个,将其中存储的数据读出到
RD1
5
A2[4:0]
I
5 位地址输入信号,指定 32 个寄存器
中的一个,将其中存储的数据读出到
RD2
6
A3[4:0]
I
5 位地址输入信号,指定 32 个寄存器
中的一个,作为 RD 的写入地址
7
WD[31:0]
I
32 位写入数据
8
RD1[31:0]
O
输出 A1 指定的寄存器的 32 位数据
9
RD2[31:0]
O
输出 A2 指定的寄存器的 32 位数据
(2) 功能定义
表 10-GRF 功能定义
序号
功能
描述
1
异步复位
reset 为 1 时,将所有寄存器清零
2
读数据
将 A1 和 A2 地址对应的寄存器的值分别通过 RD1
和 RD2 读出
3
写数据
当 WE 为 1 且时钟上升沿来临时,将 WD 写入到 A3
对应的寄存器内部
6. CMP
(1) 端口说明
表 11-CMP 端口说明
序号
信号名
方向
描述
1
A[31:0]
I
操作数 A
2
B[31:0]
I
操作数 B
3
eq
O
A==B?
4
eqz
O
A==0?
5
ltz
O
A<0?
剩余10页未读,继续阅读
Friday永不为奴
- 粉丝: 15
- 资源: 317
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0