盡管近年來已經(jīng)開發(fā)了各種方法并且EDA工具中使用的優(yōu)化方法來模擬大型復雜設計,但驗證工程師經(jīng)常抱怨性能問題,因為模擬中的任何延遲都被視為項目的最大障礙最后期限。對最終結果不滿意,設計和驗證(DV)工程師正在合作,以產(chǎn)生有助于縮短仿真時間的新想法。
然而,作為標準行業(yè)慣例,半導體設計中的所有專有塊必須獨立和正確驗證。 大多數(shù)時候,公司選擇在“塊級”本身驗證這些專有塊,考慮到驗證所有合法,錯誤和可能的非法場景所需的靈活性。一些SoC級場景并不總是真正有意義,但即便如此,最好在塊級驗證程序中覆蓋它們以檢測任何缺陷。 DV工程師可能不會遇到塊級驗證的模擬速度慢,但當他們轉向芯片級或SoC級驗證時,它開始變得日常普遍。在定義驗證和驗證環(huán)境時有效規(guī)劃某些事情有助于清除某些重大問題,同時節(jié)省大量時間而不會妥協(xié)。
什么是UVC?
在設計驗證領域,UVC越來越受歡迎。 UVC是通用驗證方法(UVM)的一部分,該方法已得到Cadence,Mentor和Synopsys等領先企業(yè)的認可。非正式地,許多工程師將“UVC”縮寫拼寫為“UVM驗證組件”。
UVC在接口上的作用是充當接口驅動程序(Active UVC)或監(jiān)視器(Passive UVC)。它也可以同時提供基于所需功能場景模擬設計所需的所有控件。在SoC設計驗證中,通常有幾個UVC位于不同的接口上,以根據(jù)相應的接口協(xié)議驅動/監(jiān)控信號。因此,可以使用幾個UVC作為主要構建塊來顯示整個驗證環(huán)境。
圖1SoC設計的框圖(部分)
圖1顯示了SoC設計的一部分,該設計具有多個復雜的專有模塊(B0-B6)和用于AXI互連和DDR4控制器模塊的第三方定制IP。塊B0-B4充當AXI寫或讀主機,具體取決于它們對DDR4控制器的請求類型。 AXI總線接口用于片上通信。 D128/256表示數(shù)據(jù)線的寬度(128或256位),A32表示地址線的寬度。 B0和B4具有AXI寫入主控的實例,B2具有AXI讀取主控,B1和B3具有AXI寫入和讀取主控實例。 AXI互連將來自B0到B4主設備的所有請求發(fā)送到DDR4控制器塊的從設備P0到P4端口上的相應請求,該端口連接到DDR4存儲器。 AXI互連實現(xiàn)了流量控制機制,以根據(jù)其為B0-B4的多個請求提供服務的帶寬來產(chǎn)生背壓。
考慮到B0-B6的復雜性,我們假設每個塊的塊級驗證都是在某個時間點開始的。與此活動并行,考慮到項目進度,端到端流程的芯片級別驗證也應該快速開始。現(xiàn)在想象一下,如果所有或部分第三方IP都不可用,或者它們可用但未集成到設計中,需要幾周時間才能集成。在這種情況下,芯片級驗證工程師可能會選擇等到設計完成就緒,然后再開始,但這可能會導致后續(xù)驗證階段的計劃緊縮。在我們可以在不需要返工的情況下進展的情況下,有效的替代方案是什么?
圖2顯示了處理這些情況的有效解決方案。假設AXI互連設計已準備就緒,但DDR4 PHY控制器尚未推出。
圖2使用AXI從器件UVC取代DDR4控制器
該解決方案利用AXI Wr/Rd從器件UVC和UVC用于從器件存儲器。它集成了參數(shù)化的UVC(axi_p * _wr/rd_rcvr),用于處理指定數(shù)據(jù)寬度的AXI接口?,F(xiàn)在,為了模仿相同的行為,就好像它只連接了一個DDR4內(nèi)存一樣,DDR4內(nèi)存必須用128D&的兩個從存儲器代替。 256D,以及將128D的AXI部分轉換為256D的基本轉換器。這可確保任何數(shù)據(jù)寬度的Wr/Rd接收器都可以執(zhí)行對內(nèi)存中相同地址范圍的寫入/讀取。
在集成DDR4控制器設計之前,所有這些Wr/Rd接收器都充當“有源”組件。它們執(zhí)行對從存儲器的寫/讀操作,并響應從B0-B4塊接收的任何AXI寫/讀請求。一旦集成了DDR4控制器設計,UVC就變?yōu)闊o源,因此它們可以作為接口監(jiān)視器,為參考模型提供端到端預測。
UVC的主要優(yōu)勢方法:
芯片級驗證可以與塊級驗證并行開始。 DV團隊可以在沒有DDR4控制器的情況下證明測試用例和端到端場景,并且可以讓他們準備好在DDR4集成后運行。這有助于隔離DDR4控制器問題(如果有的話)與專有塊中的實際問題。
由于缺少龐大的DDR4控制器設計代碼,芯片級的仿真速度相對較快。這可以節(jié)省大量的仿真運行時間。
UVC可以提供更大的靈活性和控制,以生成任何不常見的情況,這些情況可能無法通過DDR4控制器設計進行仿真。這種情況的例子是“產(chǎn)生人工背壓”以驗證AXI互連對B0-B4塊的背壓的預期傳播。
控制AXI UVC的“有源”/“無源”模式,它們既可以用作接口監(jiān)視器,也可以用作驅動程序+監(jiān)視器。這不需要額外的更改來在設計中“使用”或“沒有”DDR4控制器運行相同的測試。
DDR4 DRAM存儲器的仿真模型與SDF反注釋門級仿真(GLS)無法正常工作,因此這種UVC方法可用于填補此類時序GLS的空白并驗證最終網(wǎng)表下降。由于GLS在驗證周期結束時完成,這是項目開始時無法預見的一大優(yōu)勢。
使用UVC方法的限制:
必須花時間開發(fā)(如果不可用)并集成此類UVC
就像模擬一樣采用DDR4控制器集成設計,無法使用UVC方法模擬實時背壓或帶寬情況。應確定此類情況與DDR4控制器(完整)設計一起運行
摘要
考慮到設計協(xié)議及其復雜性,DV工程師總是提出有效驗證方法的新想法,為實現(xiàn)完整的驗證計劃增加價值。本文中的建議方法已幫助許多超過1億門ASIC的驗證時間表滿足其最后期限。類似的方法可用于具有不同協(xié)議的設計,用于跨塊的片上通信和處理外部存儲器的協(xié)議。
-
PCB打樣
+關注
關注
17文章
2968瀏覽量
21656 -
CUVC
+關注
關注
1文章
3瀏覽量
6746 -
華強PCB
+關注
關注
8文章
1831瀏覽量
27724 -
華強pcb線路板打樣
+關注
關注
5文章
14629瀏覽量
42983
發(fā)布評論請先 登錄
相關推薦
評論