Syntacore RISCV 工具链使用(三)测试case的rtl仿真

上一篇博文中讲到了如何生成测试用的hex文件,本篇讲解如何进行rtl仿真

测试case试跑

上一篇博客已经说明了如何生成测试用的testcase。
我们来分析一下生成的文件有哪些
在这里插入图片描述
其中hex文件是用于rtl仿真文件。dump文件用于观察生成的指令。elf文件是烧写到开发板的文件。标红的test_info是指示哪些文件用于仿真。

将Ubuntu系统的build文件拷贝至Centos系统的对应目录的对应位置,然后进入scr1目录,输入make_<simualtor>
由于本人将脚本中默认仿真工具改为了vcs,所以直接make即可

$ cd $SCR1_DIR
$ make

出现了test_pass即表示测试通过,如下所示
在这里插入图片描述

输出仿真波形

只是把case跑起来是没有用的,需要把波形dump出来才有助于分析源码。
在$(SCR1_DIR)/src/tb目录下有testbench顶层文件。我选择的总线接口类型为ahb,所以如下打开tb文件

$ cd $(SCR1_DIR)/src/tb/
$ gvim scr1_top_tb_ahb.sv

在文件中加上了这样两行语句
在这里插入图片描述

之后再按照1中的步骤重新跑一遍仿真,就能在 $SCR1_DIR/build目录中找到FPGA_TOP.fsdb文件,也就是波形文件。
本人采用verdi进行波形的查看,在$(SCR1_DIR)目录的makefile中插入如下语句
在这里插入图片描述
然后在$(SCR1_DIR)/sim目录下的makefile中插入如下语句

在这里插入图片描述

之后在$(SCR1_DIR)目录下敲命令

$ make verdi

即可打开verdi软件查看波形。
之后在verdi的波形窗口中加载上述生成的FPGA_TOP.fsdb即可查看波形。verdi的使用方法参考其他文档,不在此赘述。

下篇博客将会讲述riscv的gnu工具链以及如何添加自定义指令集。
Syntacore RISCV 工具链使用(四)编译器与链接脚本分析

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值