我想知道何时在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
结果:
而...
property name();
sequence1 (## delay) sequence2
endproperty
这是这件事的主要区别。我认为这可能会有所帮助