Hi, When i replace |-> with ##0 in my code i’m observing some change, but i’m interested in knowing what is the advantage of using ##0 over |->. can anyone help me with this

Thanks You

Hi, When i replace |-> with ##0 in my code i’m observing some change, but i’m interested in knowing what is the advantage of using ##0 over |->. can anyone help me with this

Thanks You

*In reply to Amruthabmanigar:*

(1) Implication operators ( |-> / |=> ) are illegal within a sequence body. So you will have to use ##0/##1 instead.

(2) Using ##N ( where N >= 0 ) enables the user to concatenate sequences.

*In reply to MICRO_91:*

Thanks for the Reply.

But is there any difference when we use these in the property. does using ##0 avoid vacuous success.

*In reply to Amruthabmanigar:*

The ##n is a sequence operator, The |-> is a property operator.

a |-> b // if a==0 then the property is vacuous.

a ##0 v // if a==0 then the sequence is not a match,

I wrote many papers on SVA. I suggest that you read the on understanding the SVA engine.

You’ll also pick up more info on my other papers.

Ben Cohen

Ben@systemverilog.us

Link to the list of papers and books that I wrote, many are now donated.