現代芯片發展的方向是什么?
這是一個很大的問題,可以從多個角度去回答。如果從應用端去而言,那就是數智化,囊括了大數據、云計算、物聯網、AI、5G及自動駕駛等創新方向。數智化芯片有兩大明顯的特征,功能更復雜以及對安全性要求更高,這就對芯片驗證提出了更大的挑戰。
芯片驗證的評判標準——覆蓋率
在數智化和摩爾定律等多重因素的推動下,當前的芯片功能越來越強大,內部結構也越來越復雜。回顧今年1月份剛剛發布的蘋果M2 Max芯片,內部集成了670億個晶體管,用以實現強大的CPU(12核CPU)、GPU(38核GPU)和內存系統(96GB內存和更大的L2緩存)等功能。
蘋果M2 Max芯片當然是一款非常強大的產品,然而讓數百億個晶體管像人體細胞一樣組成器官,然后再整體配合正常工作可不容易,因此要對功能模塊和IP進行充分驗證。我們都知道,這需要通過EDA工具完成芯片驗證,包括架構設計、軟件仿真、硬件仿真和原型驗證等。
高效的驗證工具能夠從兩個維度幫助芯片設計公司。一是降低成本,實現一次性流片成功。下一代先進SoC將采用3nm制程,根據市場研究機構International Business Strategies(IBS)的數據,3nm芯片的設計費用約達5-15億美元,流片失敗的損失將是巨大的。
其二是縮短研發周期。隨著終端產品迭代速度提升,芯片成為一個真正的“風口”屬性產品,需要在特定的時間周期內推出并滿足市場需求,一旦延后也就失去了這顆芯片的價值。根據行業經驗,驗證在典型SoC項目中的工作量占比約70%。
驗證的目標是獲得無BUG的RTL(Register Transfer Level,電路寄存器傳輸級)代碼,也就是在流片前的驗證環節里,確保IP功能正確以及IP和功能模塊的系統性功能正確。高昂的工藝成本已經不允許SoC在流片后才發現系統微碼無法解決的BUG。
為了達到這一目的,芯片驗證無論是從方法還是方式上都在積極創新。比如,UVM驗證需要構建平臺和測試用例,然而測試用例難以覆蓋所有的邊界情況,這樣引入Formal工具的價值便體現了出來,能夠以類似窮舉的方式快速且全面地找到隱藏的BUG,那么就可以將有Formal工具的模塊剝離出來,能夠顯著降低測試用例的復雜性。
圖2:IP新的驗證流程示意圖
(圖源:How formal verification saves time in digital IP design技術博文,作者:DAVID VINCENZONI )
這就引出了一個當前驗證的主流基準——覆蓋率,包括功能覆蓋率和代碼覆蓋率。其中,功能覆蓋率是通過編寫covergroup和coverpoint去覆蓋數據、地址和控制信號,尋找在用戶想要的全部功能中是否有代碼遺漏;代碼覆蓋率包括斷言(assertion)、行(line)、狀態機(FSM)、分支(branch)、表達式(condition)和信號翻轉(toggle),目標是評估代碼質量,包括查看代碼完整性以及去除不必要的冗余。
提升覆蓋率是個體力活
雖然基準和核心目標很清晰,不過基于傳統的EDA工具去提升覆蓋率還是會遇到很多方面的挑戰。如下圖所示,在仿真(simulation)驗證中,需要做到功能覆蓋率和代碼覆蓋率的結合,當功能覆蓋率和代碼覆蓋率都達到100%時,驗證工作結束。不過,在實際芯片驗證過程中,代碼覆蓋率中的表達式和信號翻轉類型很難達到100%,狀態機類型也可能出現這種問題,因為很多狀態之間并不存在相互關系;功能覆蓋率理論上是要將具體功能細化到一個個不可分割的小點,然后編寫coverpoint進行覆蓋,不過功能分割和測試用例沒有通用標準,基本主要依靠工程師的個人經驗、認知以及思維邏輯。這就導致,仿真工具收集數據進而得到的覆蓋率報告存在一定程度的不足。
圖3:仿真驗證中的覆蓋率挑戰(圖源:新思科技)
為了實現待測設計的覆蓋率達標,往往首次拿到覆蓋率報告后,功能覆蓋率只是覆蓋了立項中最主要的一些功能。如上圖所示,很多代碼結構并沒有被觸發過。那么研發人員就需要走下圖里的外圍路徑,也就是重做測試用例,對現有用例的隨機約束、callback機制等進行手動調整。
圖4:功能覆蓋率的反饋回路(圖源:西安電子科技大學)
看起來上圖中也只是增加了一條測試用例的路徑,但實際上是一個需要經過多輪次往復的工作流,雖然目前有很多加速覆蓋率收斂、回歸的工具可以使用,但這個過程依然會耗費大量機器、人力和時間等寶貴資源。
更具挑戰性的是,當覆蓋率回歸測試到達“最后一公里”階段時,往往經過很多輪修改都無法獲得更好的覆蓋率收斂,驗證工程師有時候會在這個環節陷入覆蓋率分析和用例調整的“迷宮”,有時候甚至需要回歸到最開始的功能點劃分或者增加RTL代碼并重新運行回歸以驗證錯誤是否被修復。
更糟糕的情況是,當覆蓋率達到100%依然存在新的設計漏洞,這個時候就證明是存在明顯的功能覆蓋率缺失,也就是用例配置錯誤。有研究發現,當回歸測試的代碼覆蓋率達到90%時,平均只有54%被監測,因此需要高質量的用例來找到剩余代碼的漏洞。這就是為什么我們強調,對于功能覆蓋率來說,驗證人員自身經驗非常重要。
實際上,上述這些內容主要是從測試質量(QOR)和測試時間(TTR)角度來考慮。作為驗證工程師,還需要關注達成結果所需的成本(COR),隨著芯片復雜度提升,增加驗證工程師和運算服務器都會增加額外的成本。并且,每次芯片改版(re-spin)都會帶來不小的成本增加。
VSO.ai用AI驅動驗證
在人類驗證工程師的經驗成為芯片驗證的明顯瓶頸時,產業將希望寄托于人工智能(AI)。AI,尤其是機器學習(ML)最大的魅力就在于能夠在迭代循環中不斷成長,并基于大數據發現代碼中難以察覺的錯誤,進而實現更快速、更高質量的覆蓋率收斂。
VSO.ai作為新思科技推出的全新一代VCS工具中用于覆蓋率提升的一項技術,提供業界首個人工智能驅動的驗證解決方案,幫助驗證團隊更快、更高質量地實現覆蓋收斂。
圖5:VSO.ai對仿真覆蓋率的改進(圖源:新思科技)
VSO.ai能夠從三個方面給驗證工程師帶來非凡的助力:
首先是實現更快的覆蓋率收斂。對于驗證工程師而言,覆蓋率并沒有具體的指標,并存在大量的重復性工作,因此手動進行回歸優化的效率非常低,對給定設計進行上萬次測試是很常見的。VSO.ai可執行粗粒度基準測試,提供自動化的、自適應的測試優化。在運行過程中,VSO.ai會率先運行具有最高ROI的測試,同時消除冗余測試,從而加速覆蓋收斂并節省計算資源。
其次是實現更高的測試質量。如上所述,由于傳統工作流中功能覆蓋率主要依賴驗證工程師的經驗,導致很多時候覆蓋率收斂的效果很差。VSO.ai也可執行細粒度的基準測試,通過調整隨機約束激勵來針對未被驗證的覆蓋點,自動發現測試覆蓋率中難以捉摸的錯誤,進而提升測試質量。
第三點是攻克“最后一公里”的驗證難題。在驗證的最后階段,過往驗證工程師的手動調整到這個時候覆蓋率收斂和ROI都會顯著降低,原因在于此時驗證工程師對已獲取的驗證大數據所具有的洞察力和分析能力已經很低。VSO.ai可執行根本原因分析(RCA),以確定為什么沒有達到特定的覆蓋點,通過AI解決最后的難題。
當前,AI要在EDA領域發揮作用,依然需要融入到傳統工具中,VSO.ai也不例外,因此工具的可集成特性是非常重要的。如下圖所示,VSO.ai可以輕松集成到現有的新思科技VCS(R)回歸環境中,而無需對設計或測試平臺進行任何代碼更改。
圖6:使用同步系統VSO.ai的仿真測試流程(圖源:新思科技)
對于芯片驗證而言,一旦設置了芯片設計的RTL并配置了設計狀態空間,驗證過程就開始了。VSO.ai在工程師編譯設計時就開始介入,它會自動識別和編排測試,用自動生成的覆蓋率來替代工程師編寫的代碼覆蓋率和功能覆蓋率融合設計,以最大限度地減少用戶選擇的目標函數,例如回歸CPU時間、測試運行次數、模擬周期或每秒周期數。
如下圖所示,在整個仿真測試流程中,每一次運行VSO.ai都能夠提供新的信息來改進約束求解和優化回歸測試。驗證工程師在此過程中可以靈活設置自己的覆蓋率目標,比如驗證工程師如果并不需要更高的覆蓋率,那么VSO.ai產生的覆蓋率就可以少得多。
圖7:VSO.ai如何使用ML來改進回歸分析(圖源:新思科技)
綜上所述,新思科技VSO.ai是一套自主工作系統,用以替代驗證工程師負責的編譯設計和編排測試等工作,以盡可能快、盡可能低開銷地達到覆蓋率目標,并獲得最高質量的驗證結果。比如,在OpenTitan HMAC這款IP驗證示例中,VSO.ai在實現100%功能覆蓋率的速度上是傳統方案的3倍。
圖8:OpenTitan HMAC同步系統中VSO.ai的驗證效果(圖源:新思科技)
VSO.ai的典型應用
在實際應用中,驗證IP功能是VSO.ai的一個典型場景。日本芯片廠商瑞薩科技共享研發核心IP部門開發總監Takahiro Ikenobe表示,“由于設計復雜性的上升,芯片設計使用傳統技術來滿足質量和上市時間的限制正在變得困難。使用Synopsys VSO.ai的人工智能驅動驗證,我們在減少功能覆蓋率缺陷方面取得了高達10倍的改進,IP驗證生產率也提高了30%,這表明人工智能有能力幫助我們應對日益復雜的設計帶來的挑戰。”
根據新思科技方面給出的數據,VSO.ai既可以擴大目標覆蓋面,又可以加快IP驗證過程,可以實現IP 99%的覆蓋率。
IP驗證是SoC芯片驗證的重要一環,特別是在數智化趨勢下,接口IP的安全性和芯片本身的安全性直接掛鉤。如下圖所示,SoC上需要確保安全性的接口非常多,包括DDR、PCIe、CXL、以太網、MIPI、USB、UFS等。
圖9:SoC上需要確保安全性的接口(圖源:新思科技)
為什么VSO.ai能夠給IP驗證帶來如此巨大的提升呢?答案在于新思科技長期以來都在深耕安全接口。新思科技安全接口的優勢在于其涵蓋了開發者在HPC、移動、物聯網和汽車等各種不同應用中需要考慮的所有接口。因此,新思科技的安全接口IP不僅在SoC設計中被廣泛應用,同時對安全接口IP設計和應用的理解也領跑全行業。龐大的應用數據基礎加上出色的行業理解,促成了VSO.ai在IP領域的高效表現。
結語
當前,AI已經逐漸滲透到EDA工具的每個工作流程中,讓芯片設計工程師和驗證工程師從反復循環的工作中解脫出來,能夠專注于創建差異化的IP和SoC系統。隨著工藝水平提高,以及終端應用迭代速度加快,AI在芯片驗證中正如一場及時雨,為這項復雜工作節省時間的同時,也帶來了更好的成本優化。相信隨著AI+EDA融合逐漸深入,芯片驗證這個“拖后腿”的毛病也能夠被治愈,讓我們拭目以待。
審核編輯:劉清
-
EDA工具
+關注
關注
4文章
264瀏覽量
31714 -
soc
+關注
關注
38文章
4122瀏覽量
217945 -
晶體管
+關注
關注
77文章
9634瀏覽量
137850 -
芯片驗證
+關注
關注
5文章
34瀏覽量
47201
原文標題:AI+EDA,提升芯片驗證覆蓋率的利器
文章出處:【微信號:Rocker-IC,微信公眾號:路科驗證】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論