Conditional assertion

How conditional sva (e.g if/else) work for multiple statement. for example

property $rose(a)|-> if(a)begin
x==y;
z==k;
endproperty

You are not executing a series procedural statements in an assertion, it’s just another property_spec. So you would write

assert property (@posedge clk if $rose(a) (x==y && z==k));

BTW, there no need to check that a is true, it will be because it rose.

In reply to dave_59:

Thnks dave

But if I use implication operator then can I use the if statement in antecedent side of assertion.

In reply to mukeshkumar.saha@reliabletechsys.com:

You can. I was just saying that in the example you gave, checking if(a) would be redundant.

In reply to dave_59:

Ya got you.
Thanks Dave :)