當計數器和內存處于我們所需要證明斷言的邏輯錐中,它們可能是Formal無法完成證明的根本原因。
因為形式分析算法很難適應非常大的狀態空間,而計數器和存儲器都會引入很多的狀態空間和時序深度。針對這個問題,我們可以在不影響驗證完備性的條件下減小計數器和存儲器的大小或者用抽象模型替換。
Formal驗證中優化大計數器的一種流行且有效的方法是將它們替換為小型的狀態機模型(狀態空間?。?/strong>,該模型僅考慮會觸發設計操作的計數器臨界值。例如,假設計數器的值“m”、“n-1”和“n”很關鍵??紤]以下狀態機作為替代:
為了用這個抽象模型替換原始計數器,我們首先繞過真實設計的驅動邏輯(用cutpoint的方式“切割”原始計數器輸出信號,使其變成一個自由隨機變量,然后向其添加約束)
下面是一個計數器示例
這種辦法主要還是用于bug-hunting,而且如果RTL中的其他部分實際就需要計數器延遲特定周期,那么這個優化方法就不適用了,所以說此時就沒法用作formal full prove。
-
存儲器
+關注
關注
38文章
7623瀏覽量
166213 -
計數器
+關注
關注
32文章
2283瀏覽量
95968 -
RTL
+關注
關注
1文章
388瀏覽量
60592
原文標題:如何降低形式驗證的復雜度——計數器抽象
文章出處:【微信號:芯片驗證工程師,微信公眾號:芯片驗證工程師】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
PCB與PCBA工藝復雜度的量化評估與應用初探!
基于紋理復雜度的快速幀內預測算法
如何降低LMS算法的計算復雜度,加快程序在DSP上運行的速度,實現DSP?
時間復雜度是指什么
降低高條件數信道下的球形譯碼算法復雜度的方法
圖像復雜度對信息隱藏性能影響分析
商湯聯合提出基于FPGA的Winograd算法:改善FPGA上的CNN性能 降低算法復雜度

可以通過降低約束的復雜度來優化Formal的執行效率嗎?
如何計算時間復雜度

降低Transformer復雜度O(N^2)的方法匯總

評論