基于RISCV32的单周期CPU设计,使用Verilog语言。
速通版教程: https://b23.tv/ySQz5pU
恐龙版详细教程:https://b23.tv/Rliw4tV
这里存放着所有必须的源代码和测试文件,但实际上程序并不靠这里的代码运行。
工程的核心文件夹。储存着所有必须的源代码、测试文件、工程文件以及编译后的项目文件。
首先下载代码。如果你不想更改任何配置,你应该把下载下来的文件夹重命名为sccpu_sim,然后将其放在D:/codtest/demo文件夹下。
使用Modelsim仿真。首先在./project/rv32_sc_sim.dat中写入16进制的RISCV32机器码,这可以通过Rars工具进行汇编得到。你的项目也可能提供了类似的.dat文件,你可以将其中的内容复制粘贴过来
仿真之后,你可以通过view->Memory List选项来查看寄存器和内存的值。其中:
rf是各个寄存器的值。dmem是存储数据的内存的值(即.data段)RAM是存储代码的内存的值(即.text段)
你可以通过右键->Properties将数据显示为16进制格式。
得到数据之后,你可以在Rars中运行相应的汇编代码并比对结果。
在./Test_30_Instr.asm中是我们用于测试的汇编代码,./project/rv32_sc_sim.dat已经写好了相应的16进制码。当你用Rars运行我们的程序时,应该注意勾选Setting->Self-modifying code,并且通过Setting->Memory Configuration设置Text address at 0。