Infinite assertion

Hi,

How Can I check with assertion this situation? :

Pulse can happen only one time… in other words after $fell(pulse) the pulse needs to stay on 0 for all the time.

I tried with $stable but it didn’t work good.

any ideas?

Thanks,
Mor

In reply to mora:


    default clocking @(posedge clk); 
    endclocking
    initial begin
        ap_pulse: assert property($fell(pulse)[->1] |=> strong(always(!pulse)));
        ap_pulse_option2: assert property($fell(pulse)[->1] |=> 
              strong(!pulse[*1:$]));
    end
   
 

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


See Paper: VF Horizons:PAPER: SVA Alternative for Complex Assertions | Verification Academy