使用Questasim仿真断言的步骤
- 准备好文件,断言在文件中写好:
- 打开Questa sim,新建工程,将这些断言文件加入进去,进行编译完成;
- 然后输入下面命令开始仿真:
vsim -novopt work.apb_tb -assertdebug -assertcover -classdebug +UVM_TESTNAME=apb_single_transaction_test
- 之后添加波形:
- 之后开始运行:
- 运行结束后会弹窗确认是否结束仿真,此时选“否”,然后通过下面选项打开assertions界面,打开的assertion结果页面如下图,在图中会告知failure count和pass count:
- 将断言加载进波形,看下断言具体的波形情况是选择Assertions窗口某一行右键进行如下操作,就将断言中的信号加载进波形了,此时打开波形,波形中已经有了断言的信号,具体如下图所示,在断言打开的窗口中会有几种颜色三角,其中红色向下箭头表示断言检查FAIL的标志,绿色向上的三角表示断言检查成功PASS。:
-
如果想要修改断言,那就修改原文件,修改之后点击保存,然后进入到Questasim软件页面,进行打开的apb_if.sv页面,就会自动弹出文件又更改的warning,此时点击reload即可:
-
然后我们要点击End Simulation结束仿真,因为我们要先结束仿真,去重新编译一下文件;
-
之后我们来到project页面,可以看到reload之后的apb_if.sv文件此时会出现个?号,此时只需将所有文件自动按顺序进行编译即可;
-
编译完之后的流程就和最开始第一次进行断言仿真的流程一模一样了,这里不再赘述了。