VCS+Verdi仿真流程
VCS+Verdi仿真流程
vcs -v asic.v 在RTL中引用了一些module,如果从当前目录中找不到,就在asic.v中找。
vcs -y /usr/ 让vcs在目录中找module。在RTL中注明具体module的位置:uselib directory = /usr/。在编译时,同时碰到-y和uselib,以uselib为主。
vcs +libext+.vh+.v 在-y注明的文件夹中搜索.vh文件和.v作为module的来源。
vcs +incdir+”.”,在RTL中写了`include的话,用该选项指明路径。“-incdir”用在库文件中,用来声明逻辑库。比如在Designware的仿真文件中,存在下面的语句1
`include "DW_div_function.inc"
在VCS makefile中加入以下语句:1
2VCS_OPTS += +incdir+/softs/synopsys/dc/2022.03/dw/sim_ver
VCS_OPTS += -y /softs/synopsys/dc/2022.03/dw/sim_ver +libext+.v+.inc
即可在vcs中使用Designware的ip进行仿真
Dump file无法显示二位数组
只需要在$fsdbDumpvars中加入‘+mda’选项即可。1
2
3
4initial begin
$fsdbDumpfile("./base_fun/wave/fifo_tb.fsdb");
$fsdbDumpvars(0, fifo_tb, "+mda");
end
Verdi快捷用法
L: 重新加载波形
f: Zoom All,将波形全部进行显示
z Zoom Out波形缩小,一般配合鼠标放大非常方便
Z Zoom In 波形放大
Ctrl+Right Arrow 向右移动半屏
Ctrl+Left Arrow 向左移动半屏
n next, Search Forward选定信号按指定的值(上升沿,下降沿,both,指定Value)向前跳转
N 与n功能相同,方向向后
y Keep Cursor at Centor(开关)移至中央并保持居中,再按取消固定居中
