我想将checker构造绑定到VHDL模块(在QuestaSim中)以确保一些验证属性,而不必声明和绑定更复杂的模块/接口/代理结构。 我不再向你展示我正在使用的示例代码:
module verification_top();
...
bind dut_wrapper.dut test_checker tc();
...
endmodule
checker test_checker();
...
endchecker
vopt错误是:
** Error: src/tb_vtop.sv(210): Failed to instantiate checker 'test_checker' inside bind's target 'dut_wrapper'.
Optimization failed
绑定模块和接口可以使用相同的测试平台,语法和工具。
据我所知,1800-2012 LRM 23.11规定跳棋可以绑定在模块内。我想询问集体知识:这是一个与工具相关的限制(不支持的构造),或者是否有特殊要求让检查员能够受到约束。我查阅过MG的QuestaSim用户手册和命令参考手册,但是通常没有提到检查器和绑定结构。
我知道我有几个解决方法选项,问题与检查器构造本身有关,因为我之前从未使用它。
答案 0 :(得分:0)
在类中进行并发断言是违法的。 您最好的选择是使用检查器或在界面中写入断言,或者在绑定到t的模块(或检查器)中。 Ben Cohen systemverilog.us