文︱王樹一
單顆芯片上集成的晶體管數(shù)量,已經(jīng)超過全球人口總數(shù),且還在提升過程中。雖然晶體管不像人這樣復(fù)雜,但將數(shù)十上百億顆晶體管在方寸之間安置好,顯然不是一個輕松的工作,而在先進工藝節(jié)點做開發(fā)的芯片設(shè)計公司,每日面對的就是各種“十億(Billion)”級別的工作,集成的晶體管以十億個起步,研發(fā)成本在十億元(人民幣)級別,面向的市場規(guī)模至少10億美元起。這樣浩大的工程,往往容不得出大的差錯,因為大的差錯通常不能通過軟件來繞開,需要改版,改版很可能就趕不上市場窗口期,趕不上市場窗口這個項目很可能將顆粒無收......
驗證難度在不斷增加
減少差錯,離不開驗證。芯片驗證的目的,就是利用各種語言、工具和方法來保證芯片設(shè)計的正確性,確保設(shè)計的功能指標符合規(guī)格書要求,且設(shè)計中的風險與缺陷(bug)已經(jīng)得到有效控制,只有完成驗證的設(shè)計,才能進行流片,準備生產(chǎn)。驗證是一種防患于未然的手段,有了完備的驗證工作,才能保證研發(fā)投入的安全。
隨著集成度的增加,完成驗證所需要探索的空間和范圍不斷延伸,驗證正在變得越來越有挑戰(zhàn)。數(shù)十上百億個晶體管構(gòu)成的模塊成千上萬,雖然通過設(shè)計重用和IP化開發(fā)可以大幅減少設(shè)計的工作量,但每個模塊之間的互連都會增加驗證的工作量,要遍歷設(shè)計中的風險與bug越來越難,不亞于“大海撈針”。驗證工作量在芯片開發(fā)工作中的比重不斷攀升,根據(jù)市場研究機構(gòu) Wilson Research Group的統(tǒng)計,2020年,在一個典型的ASIC項目中,驗證成本占研發(fā)總成本比例約為60%至80%,而在十五年前,驗證占研發(fā)成本的比例還不超過50%。此外,值得注意的是,當前約有68%的芯片項目,落后于規(guī)定時間,其中驗證工作難以按時完成是導(dǎo)致項目延誤的主要原因之一。
圖片來源:gsaglobal.org
當前,在大數(shù)據(jù)、物聯(lián)網(wǎng)等新興產(chǎn)業(yè)的帶動下,數(shù)據(jù)持續(xù)爆炸式增長,因而對算力、帶寬和存儲能力的需求持續(xù)增加,帶動芯片集成度與復(fù)雜度持續(xù)提升,但芯片開發(fā)周期并未得到相應(yīng)的拉長,所以驗證工程師面臨最大的問題就是如何用更少的時間來完成更多的驗證工作,以保證驗證的效率和覆蓋率。
要實現(xiàn)這一點,就離不開新工具和新驗證方法學的引入。其中,基于機器學習(ML)和人工智能(AI)的新驗證方法學,頗有前景。近年來,機器學習與人工智能在EDA領(lǐng)域已經(jīng)取得了諸多進展,例如,可以通過人工智能與機器學習,讓EDA工具自主搜索在設(shè)計空間中的最佳設(shè)計結(jié)果,傳統(tǒng)的設(shè)計空間優(yōu)化一直是勞動密集型工作,往往需要數(shù)月工程時間,引入人工智能技術(shù)后,可以大幅加快開發(fā)進度。一個例子就是三星電子已在多個項目中采用新思科技的DSO.ai,不僅實現(xiàn)了更優(yōu)的性能、功耗和面積(PPA),而且大幅降低了芯片的整體功耗,最重要的是,還為三星節(jié)省了數(shù)周的人工設(shè)計工作,從而明顯提升了開發(fā)效率,有效降低了開發(fā)成本。
同樣的,機器學習與人工智能在驗證空間檢索、覆蓋率收斂計算等方面比人工有較大優(yōu)勢。通過使用基于AI/ML技術(shù)的驗證工具,工程師可以不必再花大量的時間去編寫數(shù)千個測試腳本以完成覆蓋率收斂,而是通過AI技術(shù)進行激勵分布診斷和根本原因分析,快速全面地將激勵反饋納入覆蓋范圍,從而加快覆蓋率收斂,極大縮短回歸周期。AI/ML技術(shù)還能檢出更多bug,包括測試平臺中的潛在問題,待測件(DUT)中的問題等。
圖片來源:semiengineering.com
在靜態(tài)驗證、形式化驗證、仿真和調(diào)試等環(huán)節(jié),都可以通過引入人工智能/機器學習技術(shù)而大幅受益。
人工智能在芯片驗證上的應(yīng)用
靜態(tài)驗證是把時序驗證和邏輯功能驗證分開來做,不需要加激勵。當前的靜態(tài)解決方案主要包含跨時鐘域檢查(CDC)、跨復(fù)位域檢查(RDC)和低功耗設(shè)計結(jié)構(gòu)檢查,靜態(tài)驗證階段可以檢測到常規(guī)項目約10%的錯誤。靜態(tài)驗證工具可以檢出數(shù)千個違規(guī)情況,這些違規(guī)情況的鑒別與處理往往耗時耗力,通過機器學習,可以對具有共性特征的違規(guī)情況(可能有數(shù)十上百條)合并到一個集群中,從而為工程師節(jié)省大量的時間和精力。新思科技VC SpyGlass? 平臺和新思科技 VC LP 綜合性靜態(tài)低功耗驗證解決方案能夠提供所有靜態(tài)驗證所需的功能,SmartGroup 技術(shù)可執(zhí)行高級聚類,大幅減少需檢查的違規(guī)行為數(shù)量,而 RCA 則可以加速每個集群的調(diào)試。以ML技術(shù)為基礎(chǔ)的違規(guī)行為聚類與RCA相結(jié)合,可將常規(guī)芯片項目靜態(tài)驗證的調(diào)試效率提升近 10 倍。
形式化驗證可提供針對一組屬性的設(shè)計綜合分析,也不需要激勵。分析過程會考慮所有可能的合法輸入序列。形式化驗證可以檢測出在仿真過程中難以觸發(fā)的深層錯誤,形式化驗證檢出的錯誤占項目總體錯誤比例通常約為20%。形式化驗證工具通常有數(shù)十個求解器,以處理設(shè)計中需要驗證的成百上千個屬性,在過去20年,形式化驗證技術(shù)已經(jīng)取得了很大進步,而人工智能技術(shù)又在提高收斂性和優(yōu)化結(jié)果方面,讓形式化驗證更進一步。新思科技的VC Formal是業(yè)內(nèi)首個在求解器編排、回歸和調(diào)試中利用到機器學習技術(shù)的形式化驗證工具,借助機器學習,VC Formal RMA可將運行速度提升2至5倍。
仿真是芯片驗證的核心,一個大型SoC的仿真可能包含數(shù)千個測試,且每天都在機器上跑仿真。在仿真過程中檢測出的錯誤,約占項目總數(shù)的65%。在仿真過程中,檢測出問題后需要對設(shè)計進行修改,然后再次仿真,這就是回歸測試,修改可能會造成新的問題,所以頻繁的回歸測試在驗證中是常態(tài),這也是影響仿真效率的主要因素。通過引入AI技術(shù),可以加速回歸測試的速度。在進行仿真和回歸測試時,EDA仿真器大量的選項和開關(guān)對設(shè)計的性能有重大影響,驗證者需要有時間和專業(yè)度,才能把特定設(shè)計和測試平臺的仿真器設(shè)置做好,而不停地回歸測試很可能會造成誤操作,通過機器學習來維護仿真器的選項和開關(guān)設(shè)置,可以極大地提高回歸性能和效率。新思科技 VCS仿真器中的動態(tài)性能優(yōu)化 (DPO) 技術(shù)就是利用 AI 來改進仿真性能,與手動進行仿真器設(shè)置相比,DPO可使仿真運行速度提高 1.3 - 2 倍。此外,通過基于機器學習的智能覆蓋率優(yōu)化(ICO),可以優(yōu)化受約束的隨機激勵的統(tǒng)計質(zhì)量,并提供影響覆蓋率的測試問題分析結(jié)果,ICO可以將覆蓋率的收斂速度提高2-3倍。
為實現(xiàn)目標覆蓋率,工程師要運行無數(shù)次仿真回歸,每次回歸失敗時,團隊都需要修復(fù)錯誤以重新測試,如果全部手動處理,則將給工程項目帶來巨大負擔。借助人工智能技術(shù),可以解決調(diào)試難題。新思科技Verdi? 自動調(diào)試系統(tǒng)中的回歸調(diào)試自動化 (RDA) 功能可自動分箱、探查并發(fā)現(xiàn)回歸失敗的根本原因。RDA 利用人工智能算法對回歸失敗進行分類和分析,并確定設(shè)計和測試平臺中失敗的根本原因,該技術(shù)縮短了RCA時間,并將整體調(diào)試效率提高了2倍。
總結(jié)
驗證已經(jīng)成為大型SoC開發(fā)過程中工作量最大的部分,驗證負責人經(jīng)常被問到兩個靈魂問題:什么時候能測完?還有沒有嚴重的bug?
要回答這兩個問題并不容易,但回答不了這兩個問題,往往意味著難以流片。在人工智能和機器學習技術(shù)加持下,驗證效率和結(jié)果持續(xù)得到優(yōu)化,對驗證人力的需求得到了緩解,任務(wù)的增量不再那么可怕,以技術(shù)的手段來解決遇到的技術(shù)難題,這就是工程師們的使命吧。