情景是:
信号active
可以是1个周期,2个周期,3个周期或4个周期,具体取决于模块的config[1:0]
输入
为此编写属性的最简单方法是:
property p_PropA;
@(posedge clk) $rose active ##config ~active;
endproperty
但它在语法上是错误的。 写这个断言的正确方法是什么?
答案 0 :(得分:3)
您需要使用局部变量,请参阅IEEE Std 1800-2012§16.10局部变量
这是一个简单的例子:
property p_PropA;
int count;
@(posedge clk)
($rose(active),count=config) |->
(active,count--)[*] ##1 (~active && count==0);
endproperty