1.interactive debug mode
simulation option:-gui +vcs+loopreport+number(要填数字)
compile option:-debug_all +vcs+loopdetect+number(要填数字)
这里交互模式指的是simulation的print在teminal里run着,同时弹出verdi的debug窗口,主要用来定位tb里的死循环,旗语等不好定位的tb issue。
2.想在一个错误出现之后在跑一会儿看看是不是全错。 需要设定环境容错能力。vcs中有UVM_MAX_QUIT_COUNT 可以用。具体用法:
2-1在vcs cmd命令行里加vcs opts +UVM_MAX_QUIT_COUNT=5, NO. 意思是出现5个uvm error之后,simulation再停下来。NO在这里意味着不被内部的setting给重载掉。 如果是YES,就指5可以被内部的phase给重载掉。
2-2在build phase里加入set_report_max_quit_count(5),意思跟2-1是一样的。
3.verdi里查看force的位置。
在vcs的sim option里加上+fsdb+force
4.verdi里查看glitch的方法。
第一种:在vcs的sim option里加上+fsdb+delta.
第二种:+fsdb+region +fsdb+glitch=0 +fsdb+sequential.
这两种方法有待尝试,制造了个毛刺后,并没有看到波形上有什么变化。
verdi常用快捷键
g:get signal
x :标准信号的值(源代码中)active annotation
L:返回上一个视图。reload design
ctrl+e:active trace
ctrl+w:add signal to waveform
h:show hierachical name(全路径与单路径的切换,一次切换,再次还原)
Z: zoom in
z:zoom out
f:zoom all
l:last view
c: 用其他颜色标记信号
save signal: file->save signal 保存成.rc文件。file-> restore signal 将保存到本地的.rc文件重新导入波形
绿色的四个按钮:trace用