没有合适的资源?快使用搜索试试~ 我知道了~
Lab1实验文档1
资源详情
资源评论
资源推荐
Lab1 实验文档
实验说明
本次实验是 RV32I Core 设计的铺垫。我们提供了一个样例 RV32I Core 的设计图,参考
设计图,理解每条指令需要的数据通路,以及相应的控制信号,并回答相应问题。
主要内容:
提交一个设计报告。参考 Design Figure 文件夹中提供的 RV32I Core 设计图,思考每条
指令的数据通路,如何用 verilog 简洁高效的表达这些逻辑电路。
Lab2 会给出 RV32I Core 的 Verilog 代码框架,大家只需要完成部分模块的代码即可。
待实现指令:
RISC-V 32bit 整型指令集(除去 FENCE,FENCE.I,CSR,ECALL 和 EBREAK 指令)
可参考官方提供的 RISCV 用户指令集手册(中文版或者英文版)
Reference 文件夹下的 inst.md 文档提供了指令描述(存在的问题欢迎大家指正)
设计原则:
你可以完全按照我们提供的设计图,补全模块内部逻辑完成 CPU 设计;
也可以根据你的个人理解对设计模块图做出相应修改,并在报告中提出你自己的改进方
案并给出修改原因(报告内容的问题基于你修改后的设计图进行回答)。
报告内容:
请在报告中回答下述问题:
1. 描述执行一条 ADDI 指令的过程(数据通路、控制信号等)。
2. 描述执行一条 JALR 指令的过程·(数据通路、控制信号等)。
3. 描述执行一条 LW 指令的过程(数据通路、控制信号等)。
4. 如果要实现 CSR 指令(csrrw,csrrs,csrrc,csrrwi,csrrsi,csrrci),设计图中还需要增
加什么部件和数据通路?给出详细说明。
5. 哪些指令分别采用了五类立即数(I-type,S-type,B-type,U-type,J-type 至少各举
一例)?Verilog 如何将这些立即数拓展成 32 位的?
6. 如何实现 Data Cache 的非字对齐的 Load 和 Store?
7. ALU 模块中,默认 wire 变量是有符号数还是无符号数?
设计师马丁
- 粉丝: 18
- 资源: 299
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0