進階驗證與 UVM

覆蓋率收斂(coverage closure)

覆蓋率收斂是驗證專案的終局:埋頭把每一項覆蓋指標——功能 bin、程式碼行、分支、斷言——推上目標(通常是 100%,或經正當理由豁免),好讓團隊能可信地說「計畫要求的一切,我們都測過了」。它相當於驗證版的「把電玩地圖最後幾個百分比清空」:好打的 80% 早被隨機測試迅速攻下,剩下那些頑固的洞,正是臭蟲最愛藏身的危險角落,每一個都得刻意去獵捕。

這工作多半是針對覆蓋率漏洞的偵探活:某個 bin 從未填滿,代表某情境從未發生,於是你追問為什麼——是測試漏寫、激勵被過度約束、功能不可達(那覆蓋點本身就錯了),還是有個真臭蟲擋住了那條路徑?每個洞最終都化為一個新的定向測試、一處約束微調,或一份經審查者簽核的正當豁免。收斂是通往下線的門檻:晶片不是在臭蟲不再出現時出貨,而是在覆蓋率證明「你承諾要看的地方都看過了」時出貨。

豁免不是作弊——它是一份有紀錄、經審查簽核的工程判斷,說明某個覆蓋洞不可達或無關緊要,因此一個帶有合理豁免、誠實的 92%,勝過一個無人相信、硬湊出來的 100%。

又稱
coverage convergenceclosing coverage覆蓋率收尾