可以說有一個信號a
。當信號變高時,至少要保持三個正時鐘沿。斷言來驗證信號中的毛刺
我們可以寫出財產
property p;
@(posedge clk) $rose(a) -> a[*3];
endproperty
下面的情況下,物業會失敗。
clk _ _ _ | = = = | _ _ _ | = = = | _ _ _ | = = = | _ _ _ | = = = |
a _ _ | = = = | _ _ |這不符合規範,其中a在中間低,但在下一個posedge時被拉高,因此,上面的斷言不會理解這一點。
任何人都可以告訴是否有任何方法來寫斷言來捕捉這個bug?
謝謝