我想知道何时在SVA中使用->
和=>
?
sequence A;
req |-> ##1 gnt;
endsequence
和
sequence B;
req |=> ##1 gnt;
endsequence
请告诉我.. 谢谢。
答案 0 :(得分:2)
区别在于 ancecedent (左边的表达式)成功,结果(右边的表达式)是否在相同的时钟周期{{ 1}}(重叠)或下一个时钟周期|->
(非重叠)。
记住这一点的一种方便方法是|=>
中只有一个条形,因此重叠。 <{1}}中有两个条形,因此不重叠。
答案 1 :(得分:2)
|=>
相当于|-> ##1
因此,req |=> ##1 gnt;
相当于req |-> ##2 gnt;
请参阅IEEE Std 1800-2012§16.12.6含义
答案 2 :(得分:0)
property name();
Enabling sequence (|-> or |=>) Consequent sequence
endproperty
结果:
当启用序列为真时(1&#39; b1)而不是检查后续序列..如果后续seq是真的,则断言通过,如果后续的seq是&#39;错误而非断言失败..
当启用seq为'false而不是它通过但显示为&#34; viscus成功&#34; 并且您无法在波形中看到绿色箭头
...同时
property name();
sequence1 (## delay) sequence2
endproperty
这是这件事的主要区别......我认为这可能会有所帮助