跳转至

写在前面

你好👋!

本实验文档仅适用于 2022-2023 春夏学期《计算机组成与设计》刘海风老师班。

《计算机组成与设计》实验主要内容是使用 Verilog 实现一个简单的 32-bit RISC-V CPU Core

如果你修读的是《计算机组成》,请注意:本文档的内容要多于你的课程要求。你可以参考《计算机组成》助教所写的实验文档

💡请在第一次实验课前安装 Vivado,可参考“热身”中“ Vivado 安装”一节。

龙芯杯报名!!!!!

鼓励同学们参加龙芯杯,相关信息查看龙芯杯官网

Bonus 方案将于老师讨论后公布。

更新日志

这里将记录最近十次比较重要的更新。

时间 内容
2023.5.31 [Update] Lab5 思考题
2023.4.15 [Release] Lab4-4
2023.4.11 [Fix] Lab4-3 验收代码
[Release] Lab4-3
2023.4.4 [Update] Lab4 headerfile 增加 VGA Debug 信号相关
2023.3.29 [Fix] Lab4: SCPU_ctrl_tb.v
2023.3.28 [Update] Lab4 4.1&4.2 仿真要求与标准测试文件 / 波形文件
[Update] Lab4 附件 Lab4_header.v
[Release] Lab4-1&4-2
2023.3.18 [Update] Lab3 浮点加法器要求
2023.3.14 [Fix] Lab1: FSM 思考题 Hint
2023.3.9 [Fix] Lab1: SRA 要求
2023.3.6 [Release] Lab3

实验日历

具体时间待补充

  • Lab0: 安装并使用 Vivado
  • Lab1: 简单模块设计(ALU / RegFile / 有限状态机)
  • Lab2: 使用提供的 IP 核搭建测试框架
  • Lab3: 实现乘法器 / 除法器
  • Lab4: 实现单周期 CPU
    • 4-0: 使用提供的 IP 核集成 CPU
    • 4-1: 设计实现 Datapath
    • 4-2: 设计实现 Control-Unit
    • 4-3: 拓展指令
    • 4-4: 实现中断
  • Lab5: 实现流水线 CPU
    • 5-1(不需要做: 流水线处理器集成
    • 5-2: 设计实现流水线 IF-ID
    • 5-3: 设计实现流水线 EXE-MEM-WB
    • 5-4: Hazard & stall

分数构成

可以使用附件中的实验报告模板书写报告。

实验部分占总评 30

  • 实验报告 18
    • Lab0-3 6
    • Lab4 6
    • Lab5 6
  • 验收 12

迟交政策

本实验(除 bonus)共需提交三份实验报告 (Lab0-3, Lab4, Lab5) ,你一共拥有 5 的“自由时间”,迟交政策如下:

  • 每份实验报告会提前给出截止时间,通常为对应最后一次实验的下一周。
  • 从截止时间起,迟交时间不足 24 小时的计为 1 天,不足 7 天的计为 1 周(如,你迟交了 1min,则算迟交 1 /1 周)
    • 每迟交一周,实验报告获得的分数扣除 10%
    • 扣除比例到 60% 为止。
  • 如果你不幸迟交,你可以使用手中的“自由时间”抵消迟交的影响,请注意:
    • 你一共有 5 天的自由时间;
    • 默认不使用自由时间,你需要在要求助教开启补交时说明使用的自由时间天数;
    • 即便使用了“自由时间”,你的提交时间也不能晚于《计算机组成与设计》期末考试当天 23:59,此后的提交记 0 分。
  • 验收截止时间会在期末前给出,在此之前验收通过的都不会扣除获得的分数;
    • 为鼓励大佬 (kami) 提前验收,在 Lab4/5 最后一次实验课上完成验收的,对应实验报告给 3 bonus(不多,但有用)。
Example

大琦的 Lab4

  • 在“实现中断”实验课当天完成了 Lab4 所有实验小节的验收;获得分数 +3
  • 实验报告迟交了 9 天,她使用了 2 天的“自由时间”,记迟交 7 天;扣除 10% 获得分数
  • 她的实验报告获得了 90 的基础分。

Lab4 实验报告的最终分数:(90+3)×90%=84(四舍五入)。