当前位置:   article > 正文

SystemVerilog Assertions应用指南 Chapter1.29“ disable iff构造_verilog disable iff

verilog disable iff

        在某些设计情况中,如果一些条件为真,则我们不想执行检验。换句话说,这就像是一个异步的复位,使得检验在当前时刻不工作。SVA提供了关键词“ disable iff来实现这种检验器的异步复位。“ disable iff”的基本语法如下。

disable iff (expression) <property definition>

        属性p34检查在有效开始后,信号“a”重复两次,且1个周期之后,信号“b”重复两次,再过一个时钟周期,信号“ start”为低。在整个序列过程中,如果“ reset”被检测为高,检验器会停止并默认地发出一个空成功的信号。

  1. module disableiff;
  2. logic clk, reset, start;
  3. logic a,b,c;
  4. initial $vcdpluson();
  5. initial
  6. begin
  7. clk=1'b0; reset=1'b0; start = 1'b0;
  8. repeat(2) @(posedge clk);
  9. reset = 1'b1; a=1'b0; b=1'b0; c=1'b0;
  10. repeat(2) @(posedge clk) reset = 1'b0; start = 1'b1;
  11. @(posedge clk) a=1'b1;
  12. @(posedge clk) a=1'b0;
  13. repeat(2) @(posedge clk);
  14. @(posedge clk) a=1'b1;
  15. @(posedge clk) a=1'b0;
  16. repeat(2) @(posedge clk);
  17. @(posedge clk) b=1'b1;
  18. @(posedge clk) b=1'b0;
  19. repeat(2) @(posedge clk);
  20. @(posedge clk) b=1'b1;
  21. @(posedge clk) b=1'b0;
  22. repeat(1) @(posedge clk);
  23. start = 1'b0;
  24. repeat(2) @(posedge clk);start = 1'b1;
  25. @(posedge clk) a=1'b1;
  26. @(posedge clk) a=1'b0;
  27. repeat(2) @(posedge clk);
  28. @(posedge clk) a=1'b1;
  29. @(posedge clk) a=1'b0;
  30. repeat(2) @(posedge clk);
  31. @(posedge clk) b=1'b1; reset = 1'b1;
  32. @(posedge clk) b=1'b0;
  33. repeat(2) @(posedge clk);
  34. @(posedge clk) b=1'b1;
  35. @(posedge clk) b=1'b0;
  36. repeat(1) @(posedge clk);
  37. start = 1'b0;
  38. repeat(2) @(posedge clk);
  39. $finish();
  40. end
  41. property p34;
  42. @(posedge clk) disable iff (reset) $rose(start) |=> a[=2] ##1 b[=2] ##1 !start ;
  43. endproperty
  44. a34: assert property(p34);
  45. initial forever clk = #25 ~clk;
  46. endmodule

        图1-36显示了属性p34在模拟中的响应。标记1标出了一个有效的开始,在有效开始后,信号“a”重复为高两次,接着信号“b”重复为高两次,然后信号“ start”如期望的为低。
        在整个序列的过程中,信号“ reset”如期望的始终不被激活,因此检验在标记1e处成功。第二个有效开始由标记2s标出。在有效开始后,信号“a”重复为高两次,接着复位信号“reet”在信号“b”重复两次之前被激活。这使得检查失效,属性得到一个空成功。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/木道寻08/article/detail/802681
推荐阅读
相关标签
  

闽ICP备14008679号