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

如何使用luvcview來實現(xiàn)UVC雙攝像頭拍攝
關(guān)于UVC LED殺菌技術(shù)的問題你了解多少
歐司朗發(fā)布首款UVC LED器件Oslon UV 3636
影響UVC LED的熱管理和壽命的原因有哪些
應(yīng)用于車內(nèi)消毒殺菌的UVC便攜滅菌燈

UVC在一定條件下也可以用于殺菌高濃度果醬

UVC bulk傳輸實現(xiàn)思路

評論