lab2全部完成

This commit is contained in:
2025-11-18 20:10:24 +08:00
parent aa1a73202c
commit 560a9add68
12 changed files with 505 additions and 225 deletions

8
lab2/要求.txt Normal file
View File

@@ -0,0 +1,8 @@
CLINTCSRTest.scala 中添加了 CLINT 处理硬件终端和软件中断的两个测试,请您选择至少一个,并:
简述这个测试通过给部件输入什么信号,以测试 CLINT 的哪些功能?
在测试波形图上,找到一次从开始处理中断到中断处理完成的波形图,并挑选其中关键的信号说明其过程。例如硬件中断的测试中,有在跳转指令和非跳转指令下的两次中断处理测试;软件中断则分别测试了 ecall 和 ebreak 两次中断,选择其中一次即可。
CPUTest.scala 中新增了 SimpleTrapTest其执行 csrc/simpletest.c 的程序。请您:
简述该测试程序如何测试 CPU 的中断处理正确性。
在测试波形图上找出说明该程序成功执行的信号。
假如我们的 CPU 上运行着某个操作系统,并在启动后向 mtvec 写入了中断处理程序的地址。若在执行程序时发生 定时器中断CPU 及操作系统会如何协作完成该中断处理?请查阅课本、网络资料或辩证地使用大语言模型,简述这个过程。
说明您在完成实验的过程中,遇到的实验指导不足或改进建议。