使用SystemVerilog斷言檢查異步行為[文章推薦]
時間:2025-11-16 22:59:09
手機看文章
掃描二維碼
隨時隨地手機看文章
大多數(shù)數(shù)字設(shè)計都天生具有某種異步行為。雖然 SystemVerilog 斷言(SVA)語言提供了一些異步控制,如 disable iff,但編寫準(zhǔn)確描述異步行為的并發(fā)斷言并不那么直接。
SVA 屬性需要一個時鐘事件,使它們本質(zhì)上是同步的。當(dāng)描述異步行為時,SystemVerilog 調(diào)度語義使得這一點難以檢查,因為斷言輸入值是在觸發(fā)器上升沿之前采樣的。
這常常導(dǎo)致斷言編寫者使用時鐘進行采樣,可能無法在所有情況下保證匹配和最優(yōu)檢查。
這篇文章探討了一些使用 SVA 描述異步行為的簡單方法。描述了 SystemVerilog 調(diào)度語義以及它們對檢查異步行為所造成的困難。
建議了更好的異步替代方案,并提供了實際示例。此外,本文還提供了其他異步行為的實際解決方案,如跨時鐘域的異步通信或跨總線接口。





