1、uvm_top.print_topology()函数
在test_base class的end_of_elaboration_phase中利用uvm_top.print_topology()函数打印uvm拓扑结构。
其中uvm_verbosity表明uvm打印冗余度。
2、波形文件
uvm work中生成的波形文件module_name.fsdb和利用脚本更换名字和路径后的波形文件$ {TESTCASE}_ $SEED.fsdb并不相同,前者未dump完成。
top顶层中:
initial
begin
$fsdbAutoSwitchDumpfile(1000,“module_name.fsdb”,20);
$fsdbDumpvars(0,tb_top);
$fsdbDumpflush;
end
scripts:
$RUN +fsdbfile+…/…/wave/ ${TESTCASE}_* $SEED.fsdb +fsdb+autoflush
3、将duv内部信号拉出来同输入输出比较
在记分板中可以直接将duv内部信号拉出来进行比较,此处必须要核对信号所在的完整层次,tb_top…CLK/VALID/READY/DATA。
此时记分板中的规范写法是,设置多个空的队列存储数据,并将数据的收集与比对进行分开。禁止在一个while (1) begin end内先收集数据再进行比对,防止产生时序问题。
4、打开verdi关联代码问题
直接打开verdi,载入波形后,inport design导入filelist后经常出现关联问题,可以使用脚本来实现打开verdi后自动关联代码。
将编译log文件命名为runverdi.csh,并