RE: after a, then between 2 pulses of b, c & d are asserted

This was a question posted to me.

 
// after a, then between 2 pulses of b,  c & d are asserted 
    ap_abcd: assert property(@ (posedge clk) 
        $rose(a) |-> (c[->1] and d[->1]) intersect
                     $rose(b)[->2]);  

Test code; http://systemverilog.us/vf/bc_between.sv

Ben Cohen
FREE BOOK: Component Design by Example
… A Step-by-Step Process Using VHDL with UART as Vehicle

http://www.systemverilog.us/ ben@systemverilog.us
For training, consulting, services: contact http://cvcblr.com/home


  1. VF Horizons:PAPER: SVA Alternative for Complex Assertions - SystemVerilog - Verification Academy
  2. http://systemverilog.us/vf/SolvingComplexUsersAssertions.pdf
  3. “Using SVA for scoreboarding and TB designs”
    http://systemverilog.us/papers/sva4scoreboarding.pdf
  4. “Assertions Instead of FSMs/logic for Scoreboarding and Verification”
    https://verificationacademy.com/verification-horizons/october-2013-volume-9-issue-3
  5. SVA in a UVM Class-based Environment
    https://verificationacademy.com/verification-horizons/february-2013-volume-9-issue-1/SVA-in-a-UVM-Class-based-Environment