0

我必须在我的监视器中编写以下并发断言:

assert property (vif.cos == 1 |-> vif_out.y == vif.xi/sqrt(2));

我试图将它放在 run_phase 中,但出现以下错误:任务/类方法中不允许并发断言。

我应该把它放在哪里?

4

2 回答 2

1

请参阅IEEE Std 1800-2012第 14.16 节(并发断言)。

可以在以下任何一种中指定并发断言语句:

  • 作为语句的始终过程或初始过程,无论这些过程可能出现在何处
  • 一个模块
  • 一个界面
  • 一个程序
  • 生成块
  • 一个检查器

就个人而言,我只是将那段代码移动到接口文件中。

于 2017-03-01T16:52:31.920 回答
0

任务/类方法中不允许并发断言。你必须把它们放在一个模块或类似的(接口/程序/检查器)中。

于 2017-03-01T12:32:01.197 回答