如何在断言中使信号稳定一段时间

How to make a signal stable for quite some time in the assertion

假设我有如下断言。现在在这里我希望信号A在上升后保持稳定一段时间。也就是说,在第一次出现 D == 4 之前,A 应该保持高电平,之后它可以随时变低。 另外我不想在这个断言中使用##[0:$]。

任何 help/advice 将不胜感激。谢谢。

property p_check(A,B,C,D,E);
     @(posedge clk) disable iff(!resetn)
      $rose(A) ##1 B ##0 (C == 3) ##0 (D != 2) |=> (D == 4)[->1] ##[0:2] (!E throughout A);
   endproperty : p_check


你应该把它写成一个单独的 属性。

 @(posedge clk) disable iff(!resetn)
    $rose(A) |=> $stable(A) until (D==4);