由人工智慧驅動的設計應用
無需手動操作即可全面掌握驗證進度。
多年來,設計驗證一直是晶片開發的主導部分。單一晶片的電晶體數量和複雜度不斷增加,而挑戰也與日俱增。先進技術如2.5D和3D多晶粒系統,以及晶圓級整合等新興技術,讓更多電晶體和功能得以封裝至單一裝置中。這種情況造成所需的驗證工作量增長速度遠超過設計的工作量,形成驗證缺口,連帶對專案團隊帶來多重負面影響。
能夠生成和執行足夠的測試來驗證設計已經很具挑戰性,嘗試偵錯失敗更造成巨大的進度瓶頸。即使通過所有的測試,可能也尚未達成覆蓋率目標,導致需要調整限制條件或編寫額外測試碼的冗長過程,才能實現覆蓋收斂。所收集的度量指標不僅來自模擬(simulation),還包括仿真模擬(emulation)、形式分析(formal analysis)和靜態驗證(static verification)等方法,這些指標都必須在整個過程中受到管理並納入考量。
圖1是許多晶片開發團隊所使用的傳統流程。儘管通常會有一些自動化作業,比如執行模擬測試,但仍然涉及大量手動工作。來自多個驗證引擎的度量標準必須被合併並彙總,以準確反映驗證的完整狀態。偵錯通常是手動管理的,針對失敗的測試,工程師會重新執行並進行檢查;而所得出的結果與驗證計畫、設計規範和需求管理系統之間的連結通常較為薄弱甚至不存在。
圖1:傳統驗證流程中的手動流程
考量到此流程涉及大量手動工作,因此根本不可能僱用足夠的工程師,尤其是系統層級的設計人員和驗證專家,來成功完成當今的大型晶片開發。透過驗證管理系統 (verification management system, VMS)幫助驗證過程自動化已取得進展。此系統能夠更輕鬆地在所有平台上執行測試、合併覆蓋率結果,並將這些結果回傳標註在驗證計畫中。然而,這種方法本身對最重要的仍處於解耦(decoupled)狀態的偵錯階段沒有幫助。
驗證管理功能必須與偵錯工具整合,才能提供完整的解決方案。這樣可以縮短偵錯周轉時間(TAT),並利用嵌入每個步驟中的知識來全面瞭解驗證進度。這樣的解決方案有幾個關鍵需求。首先,它必須易於設置並能自動執行模擬,此過程稱為執行管理。圖2顯示此流程可以擴展到模擬以外的其他驗證引擎。
如圖2所示,這個解決方案必須包括一個應用程式介面(API),讓工程師能夠啟動測試、發布測試結果、乾淨利落地停止測試並產生自訂報告。所有測試都會得出覆蓋率結果,驗證管理系統必須有效支援特定覆蓋率目標的排除管理,以及自動化的覆蓋率結果聚合(aggregation)與合併(merge)。
此外,如圖3所示,驗證管理系統功能必須與偵錯系統整合,才能提供最有效的驗證流程。圖3所示的自動化,覆蓋率合併和彙總在所有平台上都是完全自動化的。測試結果必須自動標註到驗證計畫和設計規格中,而無需任何手動工作。
右圖2:自動化的測試執行
下圖3:自動化的覆蓋率管理
圖4顯示了一個範例,驗證計畫包含需要驗證的功能清單,而覆蓋率結果則被標註到這些功能上,讓管理團隊能夠評估進度,驗證工程師也能夠確定後續步驟。計畫中的功能與設計規格中所強調的部分則相互連結。
圖4:自動化的驗證規劃
儘管這些需求看起來很困難,但如今已有一種商業解決方案可以滿足這些需求。完整的驗證管理系統(VMS)功能現在已整合到Synopsys Verdi偵錯和驗證管理平台中,該平台提供前述的所有功能,所有螢幕截圖都來自實際操作中的 Synopsys Verdi 平台。它提供了傳統驗證管理系統的所有功能,包括執行管理、覆蓋率管理和驗證規劃。
將驗證管理與偵錯整合,讓工程師能夠利用 Synopsys Verdi 中的多項創新功能,包含使用機器學習(ML)將可能因相同問題導致失敗的測試進行分組。如圖5所示,此功能可以自動建立智慧型探針(smart probes),並在重新運行測試時使用它們,以進行更深入的故障診斷。機器學習還有助於加速失敗的根本原因分析(root-cause analysis, RCA)並排除大量手動偵錯工作。有興趣瞭解更多資訊可參閱白皮書。
圖5:Synopsys Verdi 偵錯和驗證管理連結
除了將覆蓋率結果回傳標註到驗證計畫和設計規格外,Synopsys Verdi 還可連結至常見的需求管理系統,例如 Jenkins 和 Jama。因此,Synopsys Verdi Planner 能夠在整個開發流程中實現可追溯的驗證。執行管理器則支援全面的迴歸(regression)管理,能自動蒐集覆蓋率合併結果;偵錯功能與驗證管理功能流暢地整合,並使用通用圖形介面提供無縫的使用體驗。
這項強大的解決方案現已推出,且許多用戶都已成功部署。最近在一篇關於聯發科(MediaTek)使用經驗的部落格文章中指出,Synopsys Verdi「協助工程師將迴歸失敗根本原因分析的時間從數天大幅縮短到數分鐘」。因此,沒有理由再忍受過時的手動迴歸管理方法,或者使用多種工具來嘗試自動化流程。Synopsys Verdi 不只解決當今的驗證需求,還能充分擴展以因應未來的挑戰。