我想知道什么时候在 SVA中使用->
和使用?=>
之间有什么区别吗
sequence A;
req |-> ##1 gnt;
endsequence
和
sequence B;
req |=> ##1 gnt;
endsequence
请让我知道..谢谢。
我想知道什么时候在 SVA中使用->
和使用?=>
之间有什么区别吗
sequence A;
req |-> ##1 gnt;
endsequence
和
sequence B;
req |=> ##1 gnt;
endsequence
请让我知道..谢谢。
|=>
等价于|-> ##1
因此,req |=> ##1 gnt;
等价于req |-> ##2 gnt;
请参阅IEEE Std 1800-2012 § 16.12.6含义
不同之处在于,当前件(左边的表达式)成功时,后件(右边的表达式)是在同一个时钟周期|->
(重叠)还是下一个时钟周期|=>
(非重叠)开始。
记住这一点的一种方便方法是 中只有一个小节-
,所以这是重叠的。里面有两个小节=
,所以不重叠。
property name();
Enabling sequence (|-> or |=>) Consequent sequence
endproperty
结果 :
当启用序列为'true(1'b1)时,它会检查后续序列..如果后续序列为'true,则断言通过,如果后续序列为'false,则断言失败..
当启用 seq 为 `false 而不是通过但显示为“viscus success”并且您将无法在波形中看到绿色箭头
尽管...
property name();
sequence1 (## delay) sequence2
endproperty
这是这件事的主要区别..我认为这可能会有所帮助