Skip to content

Wujian100的仿真

实验目的

Wujian100_open是阿里平头哥在Github上开源了RISC-V项目。本文档在Linux环境下进行Wujian100的仿真。

实验步骤

1. 下载官方代码

无剑的仿真需要Linux环境,这里使用的是MobaXterm的SSH终端连接Ubuntu的工作站。

建一个文件夹,作该为项目的文件夹:mkdir wujian
切换工作目录到该文件夹下:cd wujian
将Wujian100的代码从github上下载到该文件夹下: git clone http://github.com/T-head-Semi/wujian100_open.git

2. 下载工具链

在平头哥的官网上下载工具链。版本可能不同,下载最新的就好。
地址:https://occ.t-head.cn/community/download?id=3913221581316624384

创建工具链文件夹:mkdir riscv_toolchain
切换工作目录到该文件夹下:cd riscv_toolchain

将下载好的工具链压缩包放到该文件夹下,这里直接拖拽复制,将文件由Windows本机上传到了该Ubuntu 系统的工作站上。也可用cp复制命令复制到文件夹下。

解压文件:tar -zxvf riscv64-elf-x86_64-20210512.tar.gz

等待解压完成。

3. 修改脚本

由于原本的脚本是setup.csh文件,在bash环境下有一些不兼容的地方。这里重新建立一个setup.sh脚本,如下图所示,放入wujian100_open/tools目录下(原setup.csh目录)

Cd 到wujian100_open/tools目录下:

这里也是将Windows本机的setup.sh文件上传到工作站上。

输入: source setup.sh

4. 运行仿真

进入到wujian100_open/workdir目录下运行仿真:cd ../workdir
开始运行仿真: ../tools/run_case -sim_tool iverilog ../case/timer/timer_test.c

仿真成功

5. 仿真波形的查看

在运行完仿真后,在wujian100_open/workdir目录下会生成test.vcd,如下图所示。VCD文件包含了信号的变化信息,就相当于记录了整个仿真的信息,我们可以用这个文件来再现仿真,也就能够显示波形。

因为VCD是 Verilog HDL语言标准的一部分,因此所有的verilog的仿真器都能够查看该文件。
这里介绍用Modelsim软件查看波形。将生成的test.vcd文件传输到Windows主机上,存放于E:/Project/wujian100_sim文件夹下。

打开Modelsim软件
点击File->Change Directory,将目录更改至test.vcd的目录下;或者直接在在Modelsim中的控制台输入:cd E:/Project/wujian100_sim 直接定为到该文件夹下。

因为Modelsim只支持.wlf波形文件,所以需要做格式转换。
在Modelsim中的控制台输入:vcd2wlf test.vcd test.wlf

在Modelsim中打开test.wlf,点击File->Open->test.wlf

在object标签中选取需要观察的信号添加到波形窗即可。