驗(yàn)證復(fù)雜的 SoC 需要付出很多努力。我們的用戶調(diào)查顯示,流片復(fù)雜SoC所涉及的工程資源中約有70%用于驗(yàn)證,其中一半時間用于調(diào)試。
如果沒有經(jīng)過深思熟慮的驗(yàn)證環(huán)境,驗(yàn)證團(tuán)隊會浪費(fèi)大量時間在 SoC 級別重新創(chuàng)建驗(yàn)證環(huán)境以實(shí)現(xiàn)芯片級驗(yàn)證,因?yàn)樗麄儾豢紤]重用最初開發(fā)的環(huán)境來驗(yàn)證其塊級 IP。即使跨相同的抽象級別,也無法重用相同的驗(yàn)證IP和環(huán)境來支持仿真和仿真,也會導(dǎo)致延遲,并消耗不必要的工程資源。
能夠在整個 SoC 項(xiàng)目中一致地重用驗(yàn)證環(huán)境,可顯著提高驗(yàn)證效率。但是,要從這些生產(chǎn)力優(yōu)勢中獲益,核查團(tuán)隊需要仔細(xì)規(guī)劃其驗(yàn)證過程所有階段的方法。
驗(yàn)證范圍
通常,驗(yàn)證團(tuán)隊會開發(fā)單獨(dú)的流來支持塊和 SoC 級別的驗(yàn)證。除了支持這些不同抽象級別之間的重用外,驗(yàn)證環(huán)境還應(yīng)可在驗(yàn)證過程的不同階段重用,以最大程度地減少工作量。
圖1:驗(yàn)證光譜的兩個維度
每個設(shè)計的起點(diǎn)通常是系統(tǒng)架構(gòu),因?yàn)樗x了整體性能要求或約束。從設(shè)計和驗(yàn)證的角度來看,目標(biāo)應(yīng)該是在后續(xù)階段重用這些性能約束,并確保設(shè)計在集成 RTL 和設(shè)計發(fā)展時繼續(xù)滿足這些約束。
例如,當(dāng)系統(tǒng)架構(gòu)師的約束(如總線吞吐量和延遲)已在塊級別進(jìn)行驗(yàn)證時,驗(yàn)證團(tuán)隊如何確保在 SoC 級別滿足這些約束?
為此,驗(yàn)證團(tuán)隊?wèi)?yīng)旨在重用組件,通常是在塊和 SoC 級別監(jiān)控這些約束的驗(yàn)證 IP。驗(yàn)證負(fù)責(zé)人必須提出具有通用方法、環(huán)境和驗(yàn)證IP的測試平臺架構(gòu),該架構(gòu)可在塊和SoC級別重用。當(dāng)然,協(xié)議驗(yàn)證 IP 必須能夠利用系統(tǒng)架構(gòu)師提供的性能約束,并突出顯示整個系統(tǒng)互連中的任何違規(guī)行為。同時,為了最大限度地提高工作效率,團(tuán)隊?wèi)?yīng)確保為塊級驗(yàn)證編寫的測試也能在 SoC 級別工作,并在模擬和仿真中工作。
一致性是關(guān)鍵
系統(tǒng)架構(gòu)師最有可能使用事務(wù)級建模 (TLM) 技術(shù)。重用的關(guān)鍵是確保 API 在環(huán)境和抽象級別之間保持一致。例如,TLM API 應(yīng)該與用于仿真的 C API 保持一致——無論團(tuán)隊正在處理驗(yàn)證流程的哪個階段。
每個 API 下的內(nèi)容(驅(qū)動程序)對于每個環(huán)境都是唯一的,例如,用于模擬的 SystemVerilog 驅(qū)動程序和用于仿真的 RTL 驅(qū)動程序。無論 API 在驅(qū)動程序級別與什么接口,重用驗(yàn)證 IP 的 API 的能力都是支持重用的關(guān)鍵。
支持塊到 SoC 重用
雖然一致的 API 支持在整個驗(yàn)證范圍內(nèi)重用,但 IP 到 SoC 重用是提高生產(chǎn)力的關(guān)鍵領(lǐng)域之一。它需要一種基于遵守最佳實(shí)踐準(zhǔn)則、一致的驗(yàn)證環(huán)境和一致的 VIP 的方法。
一致的語言和方法
在模塊和SoC級別以及所有驗(yàn)證IP中使用通用語言(如SystemVerilog和UVM),可以更輕松、更快速地在每個級別集成和測試設(shè)計。
通用驗(yàn)證計劃
再利用原則應(yīng)盡可能擴(kuò)大到核查計劃。在塊級別定義驗(yàn)證計劃所做的工作應(yīng)轉(zhuǎn)移到 SoC 級別。這應(yīng)包括驗(yàn)證團(tuán)隊可以重用的功能覆蓋定義和測試。
共享功能覆蓋數(shù)據(jù)庫
在一開始就擁有一致的覆蓋率數(shù)據(jù)庫可以節(jié)省將多個專有數(shù)據(jù)庫手動合并為通用格式的大量時間。一致的數(shù)據(jù)庫將使驗(yàn)證團(tuán)隊能夠輕松快速地比較不同抽象級別的結(jié)果。
通用序列庫和調(diào)試
通過使用通用序列庫,能夠在模塊和SoC級別之間輕松重用激勵,這將提高驗(yàn)證效率。
設(shè)計和驗(yàn)證團(tuán)隊在調(diào)試上花費(fèi)了大量時間。在 SoC 級別發(fā)現(xiàn)錯誤時,工程師可能必須轉(zhuǎn)回 IP 級別來調(diào)查問題。能夠在單個通用調(diào)試環(huán)境中執(zhí)行此操作,可以最大限度地減少團(tuán)隊在學(xué)習(xí)和熟悉不同環(huán)境上花費(fèi)的時間。
驗(yàn)證團(tuán)隊還可以從整個測試臺的可見性中受益。能夠在 IP 和 SoC 級別查看調(diào)試器代碼窗口中的事務(wù),可以節(jié)省在不同調(diào)試環(huán)境之間切換的時間。
通用語言、方法、規(guī)劃和調(diào)試是在驗(yàn)證環(huán)境的不同階段實(shí)現(xiàn)塊到 SoC 重用的先決條件。
有了正確的基礎(chǔ)設(shè)施,團(tuán)隊就可以專注于構(gòu)建與模塊接口的測試套件。
測試套件
對針對塊級的測試套件采用錯誤的方法,使得在 SoC 級別重用塊級驗(yàn)證環(huán)境和測試變得困難。
圖 2 顯示了如何配置測試套件以支持在塊級別驗(yàn)證 PCI Express IP,這也適合在 SoC 級別重用。
圖 2:PCI Express 設(shè)計的測試套件
測試套件設(shè)計為模塊化。圖 2 右上角的模塊顯示了如何將 PCI Express 端點(diǎn) RTL、AXI 接口和相關(guān)驅(qū)動程序封裝到一個環(huán)境中。關(guān)系圖的左上角顯示了封裝在另一個環(huán)境中的根復(fù)雜 VIP。將整體環(huán)境與“底層”隔離開來是實(shí)現(xiàn)塊級和 SoC 級驗(yàn)證之間平穩(wěn)過渡的關(guān)鍵。
在實(shí)現(xiàn)測試套件時,目標(biāo)應(yīng)該是避免進(jìn)行會阻礙重用的更改;以避免多次“觸摸”測試。即使是相對較小的任務(wù),如更改屬性的分層路徑,如果必須更改數(shù)百甚至數(shù)千個測試,也會產(chǎn)生大量工作。
為了最大程度地減少更改,驗(yàn)證團(tuán)隊在規(guī)劃和編寫測試時應(yīng)考慮塊級別和 SoC 級別之間可能更改的內(nèi)容,并確保測試不引用內(nèi)部環(huán)境。最好的方法是創(chuàng)建“配置感知”的測試,即測試應(yīng)該了解整體環(huán)境和配置。測試應(yīng)傳遞配置的名稱,并讓驅(qū)動程序決定如何應(yīng)用信息。
驗(yàn)證團(tuán)隊必須將所有這些原則付諸實(shí)踐,以便實(shí)現(xiàn)從塊到 SoC 級別的重用。弄錯它們會產(chǎn)生額外的工作,以便將IP測試套件過渡到芯片級別。
新思科技VC驗(yàn)證IP
Synopsys 在構(gòu)建其下一代驗(yàn)證 IP 解決方案時廣泛使用 SystemVerilog,以支持易用性和重用性。例如,Synopsys 為符合 UVM(通用驗(yàn)證方法)的測試套件提供 SystemVerilog 源代碼,這可以節(jié)省大量開發(fā)時間并減少對內(nèi)部專業(yè)知識的需求。內(nèi)置功能使工程師能夠在整個驗(yàn)證范圍內(nèi)應(yīng)用一致的方法,以便在模塊和 SoC 級別進(jìn)行高效驗(yàn)證。
Synopsys 驗(yàn)證 IP 和測試套件解決方案支持從架構(gòu)分析到模塊驗(yàn)證、互連設(shè)計、SoC 集成,最后到仿真中的軟硬件協(xié)同驗(yàn)證的整個驗(yàn)證過程。廣泛的 Synopsys 驗(yàn)證 IP 產(chǎn)品組合包括驗(yàn)證復(fù)雜 SoC 設(shè)計所需的最新協(xié)議、接口和存儲器。Synopsys VIP 部署在數(shù)千個項(xiàng)目中,支持 AMBA、PCI Express、USB、MIPI、DDR、LPDDR、HDMI、以太網(wǎng)、SATA/SAS、光纖通道、OCP 等。
總結(jié)
驗(yàn)證 IP 已成為驗(yàn)證流程的關(guān)鍵部分,支持廣泛的任務(wù),例如性能分析、IP 模塊、互連和 SoC 的 RTL 驗(yàn)證,以及以具有仿真功能的事務(wù)處理器的形式實(shí)現(xiàn)全芯片驗(yàn)證,包括硬件-軟件協(xié)同驗(yàn)證。
驗(yàn)證環(huán)境中的 IP 到 SoC 級重用可以提高整個驗(yàn)證過程的工作效率。這種方法要求驗(yàn)證團(tuán)隊使用相同的語言、方法和驗(yàn)證 IP 開發(fā)可重用的塊測試環(huán)境,所有這些都必須專門構(gòu)建以支持重用,并具有一致應(yīng)用的指南。
審核編輯:郭婷
-
soc
+關(guān)注
關(guān)注
38文章
4174瀏覽量
218434 -
IP
+關(guān)注
關(guān)注
5文章
1711瀏覽量
149634 -
仿真
+關(guān)注
關(guān)注
50文章
4096瀏覽量
133699
發(fā)布評論請先 登錄
相關(guān)推薦
評論