编译
编译选项如下:
vcs -ntb_opts uvm -sverilog -f $PROJ_ROOT/tb/option.f -debug_access+all -kdb -lca -full64 -fsdb_old -timescale=1ns/10ps
其中最重要的是要加上这四项
-debug_access+all -kdb -lca -full64
option.f里面的内容如下,是一些verdi的文件选项:
仿真
仿真选项如下:
./simv -l run.log -gui=verdi
断点及uvm调试、问题记录
在instance里面可以直接找到tb里面的代码,可以直接打断点执行单步调试。
如图所示是一个很简单的driver,里面的变量a、b、c可以拉到watch里面,也可以新建不同的watch。
我在这里有个疑问,就是uvm debug里面的phase里面为什么没有找到driver中的main_phase?