$value$plusargs in SVA

In reply to dave_59:
Regarding $rose((enable)[->k]); // k is a variable, consider using my package to handle dynamic repeats and delays.
https://verificationacademy.com/forums/systemverilog/sva-package-dynamic-and-range-delays-and-repeats


    bit clk, a, b;  
    int k=2; 
    default clocking @(posedge clk); endclocking
    // sequence definition from the package 
    sequence q_dynamic_repeat(q_s, count);
        int v=count;
        (1, v=count) ##0 first_match((q_s, v=v-1'b1) [*1:$] ##0 v<=0);
    endsequence
    ap_dyn: assert property(@ (posedge clk) a |=> q_dynamic_repeat($rose(b)[->1], k) );    
 

Ben Cohen
http://www.systemverilog.us/ ben@systemverilog.us
For training, consulting, services: contact Home - My cvcblr


  1. SVA Alternative for Complex Assertions
    Verification Horizons - March 2018 Issue | Verification Academy
  2. SVA: Package for dynamic and range delays and repeats | Verification Academy
  3. SVA in a UVM Class-based Environment
    SVA in a UVM Class-based Environment | Verification Horizons | Verification Academy