mirror of
https://github.com/handsomezhuzhu/2025-yatcpu.git
synced 2026-02-20 20:10:14 +00:00
updated report questions for lab1 and lab2
This commit is contained in:
@@ -288,12 +288,12 @@ CPUBundle 是 CPU 和内存等外设进行数据交换的通道。
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
1. `src\test\scala\riscv\singlecycle` 中的测试文件 `ExecuteTest.scala`, `InstructionDecoderTest.scala` 和 `InstructionFetch.scala` 分别对相应部件进行单元测试,以确保单个部件的正确性。请您选择其中至少一个测试,并
|
1. `src\test\scala\riscv\singlecycle` 中的测试文件 `ExecuteTest.scala`, `InstructionDecoderTest.scala`(选择其中一类指令) 和 `InstructionFetch.scala` 分别对相应部件进行单元测试,以确保单个部件的正确性。请您选择其中至少一个测试,并
|
||||||
1. 简述测试文件中的语句是如何测试部件正确性的;
|
1. 简述测试文件中的语句是如何测试部件正确性的;如 `InstructionDecoderTest` 中对各类型指令均进行了测试,那对于 `L` 类指令,为何设置相应的 `expect` 值是那样的?
|
||||||
2. 在测试波形图上说明部件运行过程中关键信号的变化。
|
2. 在测试波形图上说明部件运行过程中关键信号的变化。如 `InstructionDecoderTest` 中的 `L` 类指令测试,找到其在波形图上的位置,并显示相应信号线的值。
|
||||||
2. 测试文件 `CPUTest.scala` 测试了整个 CPU 运行三个程序的正确性。请您选择其中至少一个程序的运行,并
|
2. 测试文件 `CPUTest.scala` 测试了整个 CPU 运行三个程序的正确性。请您选择其中至少一个程序的运行,并
|
||||||
1. 概述该程序做了什么,执行结果如何被检查;
|
1. 查看 `csrc` 文件夹下对应 C 文件的内容,概述该程序做了什么,执行结果如何在 Chisel 测试中被检查;
|
||||||
2. 在测试波形图上简单分析其执行,并说明检查执行结果时的波形。
|
2. 在测试波形图上简单分析其执行,并说明波形图最后几个周期检查执行结果时的波形。
|
||||||
3. 说明您在完成实验的过程中,遇到的实验指导不足或改进建议。
|
3. 说明您在完成实验的过程中,遇到的实验指导不足或改进建议。
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
|
|||||||
@@ -177,5 +177,6 @@ Timer 的代码位于 `src/main/scala/peripheral/Timer.scala`
|
|||||||
2. `CPUTest.scala` 中新增了 `SimpleTrapTest`,其执行 `csrc/simpletest.c` 的程序。请您:
|
2. `CPUTest.scala` 中新增了 `SimpleTrapTest`,其执行 `csrc/simpletest.c` 的程序。请您:
|
||||||
1. 简述该测试程序如何测试 CPU 的中断处理正确性。
|
1. 简述该测试程序如何测试 CPU 的中断处理正确性。
|
||||||
2. 在测试波形图上找出说明该程序成功执行的信号。
|
2. 在测试波形图上找出说明该程序成功执行的信号。
|
||||||
3. 说明您在完成实验的过程中,遇到的实验指导不足或改进建议。
|
3. 假如我们的 CPU 上运行着某个操作系统,并在启动后向 `mtvec` 写入了中断处理程序的地址。若在执行程序时发生 定时器中断,CPU 及操作系统会如何协作完成该中断处理?请查阅课本、网络资料或辩证地使用大语言模型,简述这个过程。
|
||||||
|
4. 说明您在完成实验的过程中,遇到的实验指导不足或改进建议。
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user