姓名:安培赟 学号:22021211917
1、VCS产生Verdi波形
-tb文件中加入相应的系统函数:
initial begin
fsdbDumpvars(0);
end
2、veidi加载设计的makefile脚本
run_verdi:
verdi -sv -f filelist.f -top tb_top -ssf dut.fsdb &
解释:告知软件支持SystemVerilog,加载设计的文件列表,设置设计顶层,自动加载波形,后台执行
3、简介定位:
Verdi是一个功能强大的debug工具,可以配合不同的仿真软件进行debug。
4、三个步骤:
生成fsdb波形——查看fsdb波形——追踪RTL代码debug。
5、生成fsdb波形
(1)三个变量:
VERDI_HOME/NOVAS_HOME:仿真器默认,且为设置PATH做准备
PATH:让系统(Linux)找到verdi
LD_LIBRARY_PATH:让系统(Linux)能够找到Verdi需要的库文件.so(静态库),.a(动态库),.tab(表格文件)。
(2)三个命令:
echo(可配合sed):查询(打印)环境变量,管道命令|相当于把管道左边的结果给右边的命令再执行
示例:
echo LD_LIBRARY_PATH | sed ‘s/:/\n/g’
which :查询当前软件是否设置,若设置成功,会显示软件路径,使用which verdi
uname -i:查询当前系统信息,如硬件平台64bit为x86_64/amd64,32bit平台为i386
(3)两种方法
a、使用Verilog系统函数,在测试代码里加上如下代码
initial begin
fsdbDumpvars(0,"tob_tb");
end
b、使用UCLI、TCL接口(VCS使用tcl脚本)
global env
fsdbDumpfile "$env(demo_fifo).fsdb"
fsdbDumpvars 0 "top_tb"
run
6、nWave波形窗口,快捷键 g 加载信号(Get signals)。在弹出的窗口选中需要添加的信号,点击滚轮选择需要添加信号的位置,也可在代码中(nTrac界面)选中信号 Ctrl+W 将信号加载在波形中
7、新建组与对组重命名,显示信号全路径
将黄线放到最后一行,添加信号即可新建一个信号组。然后鼠标选中右键即可进行相关操作,也可以选中一个模块,直接Ctrl+4即可将接口信号加入波形窗口,按快捷键H显示波形信号全路径,再按H撤销。
8、改变信号和波形颜色:
按C或者T修改信号或者波形颜色,方便查看。
9、状态机相关:
选中状态机状态的波形,在nWave窗口选中Tools>Bus Contention>打开状态机,(关闭),返回查看波形已经变为状态的名称。
补充:选择具有状态机的模块选中,然后在主工具栏选择Tools>Extract interative FSM