Assertion for connectivity checks

Hello everyone,

I have an issue here :

I am trying to add a connectivity assertion here
DUT:

module dut ();

wire v_connect;

vibb vbbb (

.vbt (v_connect)
)
viba vbba (

.vbt (v_connect)
)

vibc vbbc (

.vbt (v_connect)
)

endmodule
Basically it goes to each block and vbt is a power signal defined by wreal vbt.

I have added assertion something like this :
module assertion ()
property p_v_conn_check;
  @( posedge msvtb.clk_sys)
  disable iff ((!mtb.DUT.rst))

  (1'b1 |-> mtb.DUT.v_connect == mtb.DUT.vbba.vbt );
endproperty

a_vbt_conn_check : assert property(p_v_conn_check)  
                            else $fwrite( FOUT, "ASSERT FAIL :);

endmodule

When i do this the wire declared in DUT v_connect goes to Z.
Is there any better way to add conn checks all the blocks here 

Thanks in advance !!

Make sure your wire is driving a value. If it is undriven it is Z;

In reply to tejasakulu:
It is highly unusual to use assertions for connectivity; I never used it in that mode.
The goals of assertions is to specify and verify requirements.
You’re putting unnecessary loads on the simulation tool, particularly if you have a lot of connections.
There are tools that take a hierarchical design and graphically display the architecture (connections between modules and also within a module, though that can be complex).
If you insist on using assertions, I would eliminate the implication operator.
Thus,

 // instead of (1'b1 |-> mtb.DUT.v_connect == mtb.DUT.vbba.vbt );
    //use
    mtb.DUT.v_connect == mtb.DUT.vbba.vbt );

I would also limit the number of cycles I enable these assertions.
You do not need the whole extensive run here.
Would a detailed code review do the job instead of very meaningless assertions?

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
  • A Pragmatic Approach to VMM Adoption 2006 ISBN 0-9705394-9-5
  • Using PSL/SUGAR for Formal and Dynamic Verification 2nd Edition, 2004, ISBN 0-9705394-6-0
  • Real Chip Design and Verification Using Verilog and VHDL, 2002 isbn 978-1539769712
  • Component Design by Example ", 2001 ISBN 0-9705394-0-1
  • VHDL Coding Styles and Methodologies, 2nd Edition, 1999 ISBN 0-7923-8474-1
  • VHDL Answers to Frequently Asked Questions, 2nd Edition ISBN 0-7923-8115

  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
    4). FREE BOOK: Component Design by Example … A Step-by-Step Process Using VHDL with UART as Vehicle | Verification Academy