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