Assertion on clock gating

In reply to kuldeep sharma:
I see your requirements as:


//Whenever my clk_gate_cfg is 0 my clk will stop after 2:3 cycle 
// for the particular block and will remain stop/zero till clk_gate_cfg will not assert.

// Like in my env i have reg "clk_gate_cfg" .It has 8 bit register.
property clk_gating
@(posedge top_th.ref_clk)
  $fell(top_th.abc.abc_core.cfg_reg.clk_gate_cfg[1]) |->   
  ##[2:3] top_th.abc.abc_core.trif_core[1].clk_i ==0 [*1:$] intersect 
                (top_th.abc.abc_core.cfg_reg.clk_gate_cfg[1]==1)[->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: