property goto_repetition_p;
@(posedge clk) $rose(a) |-> b[->3] ##1 c;
endproperty
跟随重复操作符(->)
- 指定表达式匹配指定的次数,而不必匹配连续的时钟周期。
- 表达式的最后一个匹配项应在整个序列匹配结束之前的时钟周期内发生。
对于上面的例子,信号b的最后一次重复必须跟随序列bc.如果最后一次重复出现!bc,则断言失败。
通过的例子:
!a a !b !b b !b !b b !b b c
失败的例子
!a a !b !b b !b !b b !b b !b c
非连续重复运算符(=)
property goto_repetition_p;
@(posedge clk) $rose(a) |-> b[=3] ##1 c;
endproperty
表达式的最后一个匹配项应在整个序列匹配结束之前的时钟周期内发生。这条不需要满足
通过的例子
!a a !b !b b !b !b b !b b !b c
throughout
property goto_repetition_p;
@(posedge clk) $rose(a) |-> (b throughout (!c[->1]));
endproperty
当信号a的上升沿被检测到时,检测信号b必须连续为高电平,直到信号c变为低电平为止。