环境:vmware虚拟机16 pro,ubuntu18,sbt1.6.2,java11.0.14,scala 2.11.12
verilator 4.22, chisel
整体思路:
(1)先下载好各种包,最简单,也是最难的一步。多少人,在这一步从入门到放弃,包括我。
(2)编译risc-v工具链,为了后面仿真用,因为仿真需要将C或C++写得源程序转换为risc-v指令集平台的机器码(.riscv格式。同windows.exe和linux.elf性质一样),这样才能在FPGA verilog源代码进行仿真运行。如果只想生成verilog。也可以跳过编译工具链。很多人也死在了这里,明明可以直接verilog,却被toolchain弄的 重新git clone,甚至404.
(3)verilotor 编译生成仿真用硬件入口程序,该入口是随硬件固化的,固化后可执行任意risc-v指令集的 应用进程(.riscv);
spike hello.riscv ###无OS用spike模拟程序
spike pk hello.riscv ###有pk操作系统,用spike模拟程序
./simulator-chipyard-XXXConfig ./test.riscv #在verilator中用定制的SoC执行程序
(4)后面,取决于你想干啥,搞工程用主目录fpga文件夹,搞科研用verilator,搞艺术阅读scala
工程文件夹概览(慢慢消化):
scripts/ubu_req.sh 为ubuntu所有需要安装的依赖;同文件夹下shell可以自己裁剪;tools文件夹为公用的数字电路verilog库&#