System verilog Assertion with throughout operation

In reply to kuldeep sharma:
You need the sequential ORing instead of the logical ORing. Thus,


property almost_empty_status ;
    @(posedge u_dma_ctrl.clk_i ) disable iff (!(u_dma_ctrl.rst_n_i)) 
    $rose(u_dma_ctrl.fifo_empty_o) |->
      u_dma_ctrl.fifo_empty_o throughout (u_dma_ctrl.occ_cnt_o <=u_dma_ctrl.fifo_empty_th)[->1]
    or (u_dma_ctrl.occ_cnt_o==0))[->1];
endproperty

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

** SVA Handbook 4th Edition, 2016 ISBN 978-1518681448

  1. SVA Package: Dynamic and range delays and repeats SVA: Package for dynamic and range delays and repeats | Verification Academy
  2. Free books: Component Design by Example FREE BOOK: Component Design by Example … A Step-by-Step Process Using VHDL with UART as Vehicle | Verification Academy
    Real Chip Design and Verification Using Verilog and VHDL($3) Amazon.com
  3. Papers: