目前,生成式人工智能浪潮正席卷全球各行各業(yè),重新定義全球的工作方式。通過(guò)利用 AI 自動(dòng)化處理重復(fù)性工作流程,企業(yè)得以將工作重點(diǎn)放在創(chuàng)新而非迭代上。
驗(yàn)證領(lǐng)域也不例外 ——Cadence 利用生成式人工智能開發(fā)了一系列 AI 工具,助力驗(yàn)證工程師縮短繁瑣的調(diào)試周期,從而將工作重心放在創(chuàng)新上。
傳統(tǒng)上,驗(yàn)證工程師需要首先設(shè)計(jì)芯片和測(cè)試平臺(tái),并使用 Xcelium 進(jìn)行仿真,確保功能和代碼覆蓋率滿足要求,或在未滿足時(shí)進(jìn)行調(diào)試跟蹤。然后,在調(diào)試完成后更新設(shè)計(jì)和測(cè)試平臺(tái),最后再重復(fù)上述流程。這一過(guò)程既耗時(shí)又繁瑣,占據(jù)了整體開發(fā)時(shí)間的相當(dāng)大一部分。
是否存在更好的方式呢?
Cadence 提供了幾款用于調(diào)試和分析的 AI 驗(yàn)證工具:Verisium WaveMiner、AutoTriage、CodeMiner和PinDown。這些工具可在分析和調(diào)試流程的各個(gè)階段協(xié)助工程師,將調(diào)試總時(shí)間縮短達(dá) 10倍。
在回歸測(cè)試完成后,首先使用 Verisium AutoTriage 進(jìn)行故障分類。手動(dòng)分析故障成本高昂且效率低下,其中的一大原因是不同的故障容易被歸類至類似的組別中。例如,內(nèi)存訪問(wèn)沖突問(wèn)題就可能導(dǎo)致多個(gè)不同的測(cè)試失敗。而 AutoTriage 可以通過(guò)分析由共有問(wèn)題導(dǎo)致的失敗測(cè)試來(lái)創(chuàng)建故障集群列表——這些共有問(wèn)題可能是基于發(fā)送錯(cuò)誤消息、測(cè)試名稱以及發(fā)生故障的運(yùn)行時(shí)間等多種因素。然后識(shí)別這些故障間的共同線索,從而助力工程師快速找到故障的根本原因。
圖1:Verisium AutoTriage 故障整理
和所有的 AI 工具一樣,AutoTriage 接受的回歸測(cè)試訓(xùn)練次數(shù)越多,其準(zhǔn)確性和有效性就越高。在工程師審查 AutoTriage 的初步輸出、驗(yàn)證聚類結(jié)果并進(jìn)行調(diào)整后,AutoTriage 會(huì)根據(jù)這些修改進(jìn)行自我學(xué)習(xí),從而在后續(xù)運(yùn)行中提供更好、更精準(zhǔn)的分類結(jié)果。
然而,僅僅了解導(dǎo)致測(cè)試失敗的問(wèn)題類型是遠(yuǎn)遠(yuǎn)不夠的。此時(shí),Verisium PinDown 可助力工程師確定哪些代碼提交導(dǎo)致測(cè)試失敗。
圖2:Verisium PinDown 風(fēng)險(xiǎn)預(yù)測(cè)
PinDown 可以利用機(jī)器學(xué)習(xí)來(lái)確定導(dǎo)致測(cè)試用例失敗的原因,而且甚至能通過(guò)重新運(yùn)行選定測(cè)試來(lái)自動(dòng)驗(yàn)證該原因。PinDown 可與 Git、Perforce 和 Subversion 等多種版本控制系統(tǒng)兼容,并利用這些系統(tǒng)中的數(shù)據(jù)來(lái)識(shí)別可能影響代碼完整性的共有外部因素,如提交錯(cuò)誤代碼的時(shí)間、有提交錯(cuò)誤代碼歷史的用戶,以及在同一區(qū)域內(nèi)提交代碼的不同用戶的數(shù)量等。
完成這一步后,您還可以使用其他工具來(lái)查找故障的根本原因。例如,您可以用 Verisium WaveMiner 來(lái)分析一個(gè)或多個(gè)通過(guò)或失敗的波形,并對(duì)波形中的異常行為進(jìn)行隔離??赏ㄟ^(guò)對(duì)仿真時(shí)間進(jìn)行排序和縮減信號(hào)列表來(lái)標(biāo)注這些異常行為,從而為工程師快速縮小問(wèn)題范圍。
圖3:Verisium WaveMiner 流程
WaveMiner可以直接啟動(dòng)Verisium Debug平臺(tái),方便工程師采取相應(yīng)措施。WaveMiner 不是一個(gè)波形比較工具,而是可用于深入分析可能引發(fā)異常行為的行為和信號(hào)。該流程的自動(dòng)化大幅縮短了調(diào)試周期,已有用戶見證調(diào)試周期(TAT)從數(shù)天縮減至數(shù)小時(shí)。
同樣,您可以使用 Verisium CodeMiner 對(duì)代碼上下文進(jìn)行類似的驗(yàn)證。CodeMiner 可識(shí)別不同 Xcelium Snapshot 版本間的語(yǔ)義變化、對(duì)其進(jìn)行排序,并智能忽視那些無(wú)關(guān)緊要的變化,同時(shí)對(duì)代碼中的重要邏輯變更進(jìn)行復(fù)雜度排序,從而使工程師了解代碼中發(fā)生的重大變更位置。
圖4:Verisium CodeMiner 流程
借助這些 AI 工具,工程師可以在大大減少測(cè)試次數(shù)、大幅提高測(cè)試效率的同時(shí)達(dá)成覆蓋率目標(biāo)。當(dāng)然,這還只是個(gè)開始。目前,Cadence 正在研發(fā)一系列全新的 AI 工具,以進(jìn)一步實(shí)現(xiàn)驗(yàn)證流程各部分的自動(dòng)化,從而將工程師從各種繁瑣測(cè)試和調(diào)試工作中解放出來(lái)。
-
Cadence
+關(guān)注
關(guān)注
65文章
921瀏覽量
142068 -
AI
+關(guān)注
關(guān)注
87文章
30728瀏覽量
268874 -
驗(yàn)證工具
+關(guān)注
關(guān)注
0文章
10瀏覽量
7484 -
人工智能
+關(guān)注
關(guān)注
1791文章
47183瀏覽量
238212
原文標(biāo)題:未來(lái)工具:Cadence 如何運(yùn)用人工智能改變驗(yàn)證流程
文章出處:【微信號(hào):gh_fca7f1c2678a,微信公眾號(hào):Cadence楷登】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論