期末赛: 预准备
Deadline:
期末考试时间:12月30日 14:00-16:00(现场赛)
考试地点:鼓楼校区-蒙民伟楼604机房
要求:自备电脑和电源,按个人熟悉的环境进行开发,不限网络和LLM使用(撒花~但是祝大家好运>_<)。
1. 提前准备
-
期末考试需要大家在自己 PA 的基础上实现新的功能。主要考验大家对 RISC-V 手册的理解和对 PA 框架熟悉程度。
-
建议大家在期末考试前尽量完成PA所需对应内容并保证实现正确。大家可以使用 https://github.com/NJU-ProjectN/riscv-tests-am/ 提前自测 PA2 的指令部分实现是否正确。
-
同时,强烈建议!!使用 https://box.nju.edu.cn/f/241cb6971df24a05ab0a/?dl=1 自测 ecall 的实现是否正确(助教们踩过的坑,浪费了1h+在debug)。
-
PA 的后续阶段(尤其是 PA4)会对 PA 前几阶段的逻辑和代码有一定改动,在正式考试之前也请大家准备好各个阶段的运行环境和正确的实现,避免在考场上因为无关的 bug 浪费过多时间。
2. 题目内容
现场将发布三个分段任务(任务一、二、三的前置条件分别是完成 PA1、PA2、PA3):
-
任务一(预估需要60分钟):完成可得期末60%分数,给只完成了 PA1 或对 PA2 不够熟悉的同学的保底。
-
任务二(预估需要60分钟):完成可得期末80%分数,适合通过PA2的同学。
-
任务三(预估需要30分钟):需要基于任务二完成,可额外得期末20%分数,适合通过PA3的同学。
在此任务设置下,每位同学可以根据自己的PA进度选择合适的任务线路(三选一),当然不同任务有不同的得分上限(多个线路都完成以最高分算不可叠加):
-
保底线路(上限60分):仅做任务一
-
常规线路(上限80分):仅做任务二
-
挑战线路(上限100分):先做任务二、再做任务三