SystemVerilog 在命中后禁用覆盖属性

问题描述

我有一些我希望经常触发的掩蔽属性,我发现它们开始影响我的模拟性能,因为它们触发的频率如此之高。我不想删除它们,因为我想确保我仍然击中这些属性,但我不在乎击中它们多少次。有没有办法在被击中后禁用覆盖属性,这样它就不会影响模拟性能?

B2BReq : cover property ( 
  @(posedge CLK iff !RESET)
  Intf.ReqValid ##1 Intf.ReqValid
);

我正在考虑这样的事情:

bit cov_disable;
B2BReq : cover property ( 
  @(posedge CLK iff !RESET) disable iff(cov_disable)
  Intf.ReqValid ##1 Intf.ReqValid |=> cov_disable = 1
);

但这是不正确的语法。有没有办法实现这样的目标?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)