Hi,
I am unable to understand the difference between a property and a sequence. Can somebody explain??
Thankyou
Hi,
I am unable to understand the difference between a property and a sequence. Can somebody explain??
Thankyou
Hello Chandana,
Property is the specific statement like for checking the behavior of DUT and sequence is the combination of Boolean expression.
We can use many sequences in the property but not property in the sequences.
Sequences can be re-usable as per our requirements in property.
We can’t use implication operators in sequences but in property, can be used.
like for e.g.
suppose sequence1, sequence2, sequence2…etc
sequence seq1;
a ##1 b;
endsequence : seq1
sequence seq2;
c ##4 d;
endsequence : seq2
sequence seq3;
a ##4 d;
endsequence : seq3
property p1;
seq1 && seq2 |=> seq3;
endproperty : p1
a_p1 : assert property (@(posedge clk) p1);
property p2;
seq3 && seq2 |=> seq1;
endproperty : p2
a_p2 : assert property (@(posedge clk) p2);
…
So now you see in above examples, we can use many sequences like seq1, seq2, seq3…etc in property p1, p2, …etc as per our requirements.
SystemVerilog assertions have 4 layers of definition:
This is very simplified, but there is a lot more information available on this topic if you search for it.