《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 業(yè)界動態(tài) > AI+EDA,提升芯片驗(yàn)證覆蓋率的利器

AI+EDA,提升芯片驗(yàn)證覆蓋率的利器

2023-04-19
作者: 姬云青
來源: TechSugar
關(guān)鍵詞: 芯片 AI EDA 覆蓋率

  現(xiàn)代芯片發(fā)展的方向是什么?

  這是一個很大的問題,可以從多個角度去回答。如果從應(yīng)用端去而言,那就是數(shù)智化,囊括了大數(shù)據(jù)、云計(jì)算、物聯(lián)網(wǎng)、AI、5G及自動駕駛等創(chuàng)新方向。數(shù)智化芯片有兩大明顯的特征,功能更復(fù)雜以及對安全性要求更高,這就對芯片驗(yàn)證提出了更大的挑戰(zhàn)。

  芯片驗(yàn)證的評判標(biāo)準(zhǔn)——覆蓋率

  在數(shù)智化和摩爾定律等多重因素的推動下,當(dāng)前的芯片功能越來越強(qiáng)大,內(nèi)部結(jié)構(gòu)也越來越復(fù)雜?;仡櫧衲?月份剛剛發(fā)布的蘋果M2 Max芯片,內(nèi)部集成了670億個晶體管,用以實(shí)現(xiàn)強(qiáng)大的CPU(12核CPU)、GPU(38核GPU)和內(nèi)存系統(tǒng)(96GB內(nèi)存和更大的L2緩存)等功能。

  微信截圖_20230419091721.png

  圖1:蘋果M2 Max芯片(圖源:蘋果官網(wǎng))

  蘋果M2 Max芯片當(dāng)然是一款非常強(qiáng)大的產(chǎn)品,然而讓數(shù)百億個晶體管像人體細(xì)胞一樣組成器官,然后再整體配合正常工作可不容易,因此要對功能模塊和IP進(jìn)行充分驗(yàn)證。我們都知道,這需要通過EDA工具完成芯片驗(yàn)證,包括架構(gòu)設(shè)計(jì)、軟件仿真、硬件仿真和原型驗(yàn)證等。

  高效的驗(yàn)證工具能夠從兩個維度幫助芯片設(shè)計(jì)公司。一是降低成本,實(shí)現(xiàn)一次性流片成功。下一代先進(jìn)SoC將采用3nm制程,根據(jù)市場研究機(jī)構(gòu)International Business Strategies(IBS)的數(shù)據(jù),3nm芯片的設(shè)計(jì)費(fèi)用約達(dá)5-15億美元,流片失敗的損失將是巨大的。

  其二是縮短研發(fā)周期。隨著終端產(chǎn)品迭代速度提升,芯片成為一個真正的“風(fēng)口”屬性產(chǎn)品,需要在特定的時間周期內(nèi)推出并滿足市場需求,一旦延后也就失去了這顆芯片的價值。根據(jù)行業(yè)經(jīng)驗(yàn),驗(yàn)證在典型SoC項(xiàng)目中的工作量占比約70%。

  驗(yàn)證的目標(biāo)是獲得無BUG的RTL(Register Transfer Level,電路寄存器傳輸級)代碼,也就是在流片前的驗(yàn)證環(huán)節(jié)里,確保IP功能正確以及IP和功能模塊的系統(tǒng)性功能正確。高昂的工藝成本已經(jīng)不允許SoC在流片后才發(fā)現(xiàn)系統(tǒng)微碼無法解決的BUG。

  為了達(dá)到這一目的,芯片驗(yàn)證無論是從方法還是方式上都在積極創(chuàng)新。比如,UVM驗(yàn)證需要構(gòu)建平臺和測試用例,然而測試用例難以覆蓋所有的邊界情況,這樣引入Formal工具的價值便體現(xiàn)了出來,能夠以類似窮舉的方式快速且全面地找到隱藏的BUG,那么就可以將有Formal工具的模塊剝離出來,能夠顯著降低測試用例的復(fù)雜性。

  微信截圖_20230419091815.png

  圖2:IP新的驗(yàn)證流程示意圖

  (圖源:How formal verification saves time in digital IP design技術(shù)博文,作者:DAVID VINCENZONI )

  這就引出了一個當(dāng)前驗(yàn)證的主流基準(zhǔn)——覆蓋率,包括功能覆蓋率和代碼覆蓋率。其中,功能覆蓋率是通過編寫covergroup和coverpoint去覆蓋數(shù)據(jù)、地址和控制信號,尋找在用戶想要的全部功能中是否有代碼遺漏;代碼覆蓋率包括斷言(assertion)、行(line)、狀態(tài)機(jī)(FSM)、分支(branch)、表達(dá)式(condition)和信號翻轉(zhuǎn)(toggle),目標(biāo)是評估代碼質(zhì)量,包括查看代碼完整性以及去除不必要的冗余。

  提升覆蓋率是個體力活

  雖然基準(zhǔn)和核心目標(biāo)很清晰,不過基于傳統(tǒng)的EDA工具去提升覆蓋率還是會遇到很多方面的挑戰(zhàn)。如下圖所示,在仿真(simulation)驗(yàn)證中,需要做到功能覆蓋率和代碼覆蓋率的結(jié)合,當(dāng)功能覆蓋率和代碼覆蓋率都達(dá)到100%時,驗(yàn)證工作結(jié)束。不過,在實(shí)際芯片驗(yàn)證過程中,代碼覆蓋率中的表達(dá)式和信號翻轉(zhuǎn)類型很難達(dá)到100%,狀態(tài)機(jī)類型也可能出現(xiàn)這種問題,因?yàn)楹芏酄顟B(tài)之間并不存在相互關(guān)系;功能覆蓋率理論上是要將具體功能細(xì)化到一個個不可分割的小點(diǎn),然后編寫coverpoint進(jìn)行覆蓋,不過功能分割和測試用例沒有通用標(biāo)準(zhǔn),基本主要依靠工程師的個人經(jīng)驗(yàn)、認(rèn)知以及思維邏輯。這就導(dǎo)致,仿真工具收集數(shù)據(jù)進(jìn)而得到的覆蓋率報告存在一定程度的不足。

 微信截圖_20230419092119.png

  為了實(shí)現(xiàn)待測設(shè)計(jì)的覆蓋率達(dá)標(biāo),往往首次拿到覆蓋率報告后,功能覆蓋率只是覆蓋了立項(xiàng)中最主要的一些功能。如上圖所示,很多代碼結(jié)構(gòu)并沒有被觸發(fā)過。那么研發(fā)人員就需要走下圖里的外圍路徑,也就是重做測試用例,對現(xiàn)有用例的隨機(jī)約束、callback機(jī)制等進(jìn)行手動調(diào)整。

 微信截圖_20230419092135.png

  看起來上圖中也只是增加了一條測試用例的路徑,但實(shí)際上是一個需要經(jīng)過多輪次往復(fù)的工作流,雖然目前有很多加速覆蓋率收斂、回歸的工具可以使用,但這個過程依然會耗費(fèi)大量機(jī)器、人力和時間等寶貴資源。

  更具挑戰(zhàn)性的是,當(dāng)覆蓋率回歸測試到達(dá)“最后一公里”階段時,往往經(jīng)過很多輪修改都無法獲得更好的覆蓋率收斂,驗(yàn)證工程師有時候會在這個環(huán)節(jié)陷入覆蓋率分析和用例調(diào)整的“迷宮”,有時候甚至需要回歸到最開始的功能點(diǎn)劃分或者增加RTL代碼并重新運(yùn)行回歸以驗(yàn)證錯誤是否被修復(fù)。

  更糟糕的情況是,當(dāng)覆蓋率達(dá)到100%依然存在新的設(shè)計(jì)漏洞,這個時候就證明是存在明顯的功能覆蓋率缺失,也就是用例配置錯誤。有研究發(fā)現(xiàn),當(dāng)回歸測試的代碼覆蓋率達(dá)到90%時,平均只有54%被監(jiān)測,因此需要高質(zhì)量的用例來找到剩余代碼的漏洞。這就是為什么我們強(qiáng)調(diào),對于功能覆蓋率來說,驗(yàn)證人員自身經(jīng)驗(yàn)非常重要。

  實(shí)際上,上述這些內(nèi)容主要是從測試質(zhì)量(QOR)和測試時間(TTR)角度來考慮。作為驗(yàn)證工程師,還需要關(guān)注達(dá)成結(jié)果所需的成本(COR),隨著芯片復(fù)雜度提升,增加驗(yàn)證工程師和運(yùn)算服務(wù)器都會增加額外的成本。并且,每次芯片改版(re-spin)都會帶來不小的成本增加。

  VSO.ai用AI驅(qū)動驗(yàn)證

  在人類驗(yàn)證工程師的經(jīng)驗(yàn)成為芯片驗(yàn)證的明顯瓶頸時,產(chǎn)業(yè)將希望寄托于人工智能(AI)。AI,尤其是機(jī)器學(xué)習(xí)(ML)最大的魅力就在于能夠在迭代循環(huán)中不斷成長,并基于大數(shù)據(jù)發(fā)現(xiàn)代碼中難以察覺的錯誤,進(jìn)而實(shí)現(xiàn)更快速、更高質(zhì)量的覆蓋率收斂。

  VSO.ai作為新思科技推出的全新一代VCS工具中用于覆蓋率提升的一項(xiàng)技術(shù),提供業(yè)界首個人工智能驅(qū)動的驗(yàn)證解決方案,幫助驗(yàn)證團(tuán)隊(duì)更快、更高質(zhì)量地實(shí)現(xiàn)覆蓋收斂。

微信截圖_20230419092156.png

  VSO.ai能夠從三個方面給驗(yàn)證工程師帶來非凡的助力:

  首先是實(shí)現(xiàn)更快的覆蓋率收斂。對于驗(yàn)證工程師而言,覆蓋率并沒有具體的指標(biāo),并存在大量的重復(fù)性工作,因此手動進(jìn)行回歸優(yōu)化的效率非常低,對給定設(shè)計(jì)進(jìn)行上萬次測試是很常見的。VSO.ai可執(zhí)行粗粒度基準(zhǔn)測試,提供自動化的、自適應(yīng)的測試優(yōu)化。在運(yùn)行過程中,VSO.ai會率先運(yùn)行具有最高ROI的測試,同時消除冗余測試,從而加速覆蓋收斂并節(jié)省計(jì)算資源。

  其次是實(shí)現(xiàn)更高的測試質(zhì)量。如上所述,由于傳統(tǒng)工作流中功能覆蓋率主要依賴驗(yàn)證工程師的經(jīng)驗(yàn),導(dǎo)致很多時候覆蓋率收斂的效果很差。VSO.ai也可執(zhí)行細(xì)粒度的基準(zhǔn)測試,通過調(diào)整隨機(jī)約束激勵來針對未被驗(yàn)證的覆蓋點(diǎn),自動發(fā)現(xiàn)測試覆蓋率中難以捉摸的錯誤,進(jìn)而提升測試質(zhì)量。

  第三點(diǎn)是攻克“最后一公里”的驗(yàn)證難題。在驗(yàn)證的最后階段,過往驗(yàn)證工程師的手動調(diào)整到這個時候覆蓋率收斂和ROI都會顯著降低,原因在于此時驗(yàn)證工程師對已獲取的驗(yàn)證大數(shù)據(jù)所具有的洞察力和分析能力已經(jīng)很低。VSO.ai可執(zhí)行根本原因分析(RCA),以確定為什么沒有達(dá)到特定的覆蓋點(diǎn),通過AI解決最后的難題。

  當(dāng)前,AI要在EDA領(lǐng)域發(fā)揮作用,依然需要融入到傳統(tǒng)工具中,VSO.ai也不例外,因此工具的可集成特性是非常重要的。如下圖所示,VSO.ai可以輕松集成到現(xiàn)有的新思科技VCS(R)回歸環(huán)境中,而無需對設(shè)計(jì)或測試平臺進(jìn)行任何代碼更改。

  微信截圖_20230419092213.png

  對于芯片驗(yàn)證而言,一旦設(shè)置了芯片設(shè)計(jì)的RTL并配置了設(shè)計(jì)狀態(tài)空間,驗(yàn)證過程就開始了。VSO.ai在工程師編譯設(shè)計(jì)時就開始介入,它會自動識別和編排測試,用自動生成的覆蓋率來替代工程師編寫的代碼覆蓋率和功能覆蓋率融合設(shè)計(jì),以最大限度地減少用戶選擇的目標(biāo)函數(shù),例如回歸CPU時間、測試運(yùn)行次數(shù)、模擬周期或每秒周期數(shù)。

  如下圖所示,在整個仿真測試流程中,每一次運(yùn)行VSO.ai都能夠提供新的信息來改進(jìn)約束求解和優(yōu)化回歸測試。驗(yàn)證工程師在此過程中可以靈活設(shè)置自己的覆蓋率目標(biāo),比如驗(yàn)證工程師如果并不需要更高的覆蓋率,那么VSO.ai產(chǎn)生的覆蓋率就可以少得多。

 微信截圖_20230419092231.png

  綜上所述,新思科技VSO.ai是一套自主工作系統(tǒng),用以替代驗(yàn)證工程師負(fù)責(zé)的編譯設(shè)計(jì)和編排測試等工作,以盡可能快、盡可能低開銷地達(dá)到覆蓋率目標(biāo),并獲得最高質(zhì)量的驗(yàn)證結(jié)果。比如,在OpenTitan HMAC這款I(lǐng)P驗(yàn)證示例中,VSO.ai在實(shí)現(xiàn)100%功能覆蓋率的速度上是傳統(tǒng)方案的3倍。

 微信截圖_20230419092246.png

  VSO.ai的典型應(yīng)用

  在實(shí)際應(yīng)用中,驗(yàn)證IP功能是VSO.ai的一個典型場景。日本芯片廠商瑞薩科技共享研發(fā)核心IP部門開發(fā)總監(jiān)Takahiro Ikenobe表示,“由于設(shè)計(jì)復(fù)雜性的上升,芯片設(shè)計(jì)使用傳統(tǒng)技術(shù)來滿足質(zhì)量和上市時間的限制正在變得困難。使用Synopsys VSO.ai的人工智能驅(qū)動驗(yàn)證,我們在減少功能覆蓋率缺陷方面取得了高達(dá)10倍的改進(jìn),IP驗(yàn)證生產(chǎn)率也提高了30%,這表明人工智能有能力幫助我們應(yīng)對日益復(fù)雜的設(shè)計(jì)帶來的挑戰(zhàn)?!?/p>

  根據(jù)新思科技方面給出的數(shù)據(jù),VSO.ai既可以擴(kuò)大目標(biāo)覆蓋面,又可以加快IP驗(yàn)證過程,可以實(shí)現(xiàn)IP 99%的覆蓋率。

  IP驗(yàn)證是SoC芯片驗(yàn)證的重要一環(huán),特別是在數(shù)智化趨勢下,接口IP的安全性和芯片本身的安全性直接掛鉤。如下圖所示,SoC上需要確保安全性的接口非常多,包括DDR、PCIe、CXL、以太網(wǎng)、MIPI、USB、UFS等。

微信截圖_20230419092311.png

  為什么VSO.ai能夠給IP驗(yàn)證帶來如此巨大的提升呢?答案在于新思科技長期以來都在深耕安全接口。新思科技安全接口的優(yōu)勢在于其涵蓋了開發(fā)者在HPC、移動、物聯(lián)網(wǎng)和汽車等各種不同應(yīng)用中需要考慮的所有接口。因此,新思科技的安全接口IP不僅在SoC設(shè)計(jì)中被廣泛應(yīng)用,同時對安全接口IP設(shè)計(jì)和應(yīng)用的理解也領(lǐng)跑全行業(yè)。龐大的應(yīng)用數(shù)據(jù)基礎(chǔ)加上出色的行業(yè)理解,促成了VSO.ai在IP領(lǐng)域的高效表現(xiàn)。

  結(jié)語

  當(dāng)前,AI已經(jīng)逐漸滲透到EDA工具的每個工作流程中,讓芯片設(shè)計(jì)工程師和驗(yàn)證工程師從反復(fù)循環(huán)的工作中解脫出來,能夠?qū)W⒂趧?chuàng)建差異化的IP和SoC系統(tǒng)。隨著工藝水平提高,以及終端應(yīng)用迭代速度加快,AI在芯片驗(yàn)證中正如一場及時雨,為這項(xiàng)復(fù)雜工作節(jié)省時間的同時,也帶來了更好的成本優(yōu)化。相信隨著AI+EDA融合逐漸深入,芯片驗(yàn)證這個“拖后腿”的毛病也能夠被治愈,讓我們拭目以待。


 更多精彩內(nèi)容歡迎點(diǎn)擊==>>電子技術(shù)應(yīng)用-AET<<  

微信圖片_20210517164139.jpg

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。