写在前面
你好👋!
本实验文档仅适用于 2023-2024 春夏学期《计算机组成与设计》刘海风老师班。
《计算机组成与设计》实验主要内容是使用 Verilog 实现一个简单的 32-bit RISC-V CPU Core。
如果你修读的是《计算机组成》,请注意:本文档的内容要多于你的课程要求。
💡请在第一次实验课前安装 Vivado,可参考“热身”中“ Vivado 安装”一节。
更新日志
这里将记录最近十次比较重要的更新。
时间 | 内容 |
---|---|
2024.4.29 | [Update&Fix] Lab5-2 原理图的要求 |
2024.4.29 | [Update&Fix] Lab5-1 验收代码与要求 |
2024.4.26 | [Update] Lab4-3、4-4 新增 Hints! |
2024.4.24 | [Release] Lab5 |
2024.4.17 | [Release] Lab4-4 |
2024.4.10 | [Fix] Lab4-3 验收代码 |
2024.4.2 | [Release] Lab4-1 至 Lab4-3 部分 |
2024.3.19 | [Release] Lab3 |
2024.3.12 | [Release] Lab2 |
2024.3.7 | [Update] Lab1 ALU 部分新增思考题 |
2024.2.27 | [Release] Lab1 |
2024.2.23 | [Release] Lab0 |
实验日历
具体时间待补充
- Lab0: 安装并使用 Vivado
- Lab1: 简单模块设计(ALU / RegFile / 有限状态机)
- Lab2: 使用提供的 IP 核搭建测试框架
- Lab3: 实现乘法器 / 除法器
- Lab4: 实现单周期 CPU
- 4-1: 使用提供的 DataPath 和 CtrlUnit 的 IP 核组成 SCPU
- 4-2: 设计实现 DataPath 和 CtrlUnit
- 4-3: 拓展指令
- 4-4: 实现中断
- Lab5: 实现流水线 CPU
- 5-1: 实现不处理冲突 (Hazard) 的五级流水线 CPU
- 5-2: 实现解决冲突的五级流水线 CPU
分数构成
可以使用附件中的实验报告模板书写报告。
实验部分占总评30分
- 实验报告 18分
- Lab1-3 6分
- Lab4 6分
- Lab5 6分
- 验收 12分
迟交政策
本实验(除 bonus)共需提交三份实验报告 (Lab1-3, Lab4, Lab5) ,你一共拥有 3 天的“自由时间”,迟交政策如下:
- 每份实验报告会提前给出截止时间,通常为对应最后一次实验的下一周。
- 从截止时间起,迟交时间不足 24 小时的计为 1 天,不足 7 天的计为 1 周(如,你迟交了 1min,则算迟交 1 周)
- 迟交一周,扣除实验报告所得分数的 40%;
- 迟交两周,扣除实验报告所得分数的 80%;
- 迟交三周(或以上),实验报告计 0 分。
- 如果你不幸迟交,你可以使用手中的“自由时间”抵消迟交的影响,请注意:
- 你一共有 3 天的自由时间;
- 默认不使用自由时间,你需要在要求助教开启补交时说明使用的自由时间天数;
- 即便使用了“自由时间”,你的提交时间也不能晚于《计算机组成与设计》期末考试当天 23:59,此后的提交记0分。
- 验收截止时间会在期末前给出,在此之前验收通过的都不会扣除获得的分数;
- 根据实验进度,会对实验验收顺序赋予优先级,并在课程群通知,请尽早完成验收以减少等待验收的时间;
Example
大琦的Lab4
- 实验报告迟交了9天,她使用了2天的“自由时间”,记迟交7天;扣除40%获得分数
- 她的实验报告获得了90的基础分。
她 Lab4 实验报告的最终分数:90×60%=54(四舍五入)。