这是一个提供给一生一芯项目的,基于 Verilator
仿真器和 Chisel
语言的 RISC-V
CPU开发仿真框架。
参考 oscpu-framework 的开发环境配置。
git clone --recursive <本代码仓库地址> oscpu-chisel
如果子仓库克隆失败,可以在 oscpu-chisel
目录下使用下面的命令重新克隆子仓库。
git submodule update --init --recursive
子仓库克隆完成后,进入NEMU文件夹进行配置。
cd NEMU
make menuconfig
在配置页面中,进行如下配置。
-
Base ISA
切换为riscv64
-
Processor difftest reference config
中勾选上Build shared library as processor difftest reference
配置完成后,保存并退出配置页面,编译NEMU。
make
详细过程见 Difftest.md
生成Verilog
make verilog
通过 Verilator
生成可执行文件用于仿真
make emu
运行仿真(如需关闭difftest功能只需要在最后加上 --no-diff
即可)
./build/emu -i <RISC-V程序(.bin文件)的路径>
联系一生一芯助教组,或在GitHub Issue区提出问题,或直接发起Pull Request提交合并请求。