【发布时间】:2015-04-08 01:29:45
【问题描述】:
假设有一个信号 a 。当信号变为高电平时,它必须至少在三个正时钟沿保持高电平。
我们可以把属性写成
property p;
@(posedge clk) $rose(a) -> a[*3];
endproperty
属性在以下情况下失败。
clk _ _ _ | = = = | _ _ _ | = = = | _ _ _ | = = = | _ _ _ | = = = |
一个_ _ | = = = | _ _ | ===================
这不符合规范,其中 a 在中间变低,但会被下一个 posedge 拉高,因此上述断言不会捕捉到这一点。
谁能告诉是否有任何方法可以编写断言来捕获这个错误?
谢谢
【问题讨论】:
标签: system-verilog assertions system-verilog-assertions