大多數(shù)電子系統(tǒng)使用存儲器組件來存儲可執(zhí)行軟件或存儲數(shù)據(jù),因此精確存儲器模型的可用性是大多數(shù)功能驗證策略的基礎。在經(jīng)過驗證的基于標準的庫中提供這些模型至關重要。本文介紹了您應該在這些模型中尋找的品質,并介紹了一個新的庫,我覺得它提供了這種最全面的解決方案,并支持任何類型的仿真環(huán)境和所有三個業(yè)界領先的仿真器。
內(nèi)存模型要求
出于驗證建模的目的,可以將存儲器設備抽象為存儲陣列的信號級協(xié)議接口。信號級接口必須符合存儲器協(xié)議的時序和行為,這可以在行業(yè)標準中指定,例如用于DDR3的JEDEC JES79-3F標準,或者在特定情況下,它可以在設備制造商的數(shù)據(jù)表。存儲陣列的實現(xiàn)方式對用戶來說不是直接可見的,但對于仿真模型,通常使用SystemVerilog數(shù)據(jù)結構或優(yōu)化的C數(shù)據(jù)結構來實現(xiàn)。
圖1:內(nèi)存設備模型的通用抽象
在測試平臺中使用內(nèi)存模型時,它被實例化為連接到內(nèi)存控制器的組件,它既可以是被測設計,也可以是被測設計的一部分。使用存儲器模型協(xié)議前端的信號訪問存儲器,并將數(shù)據(jù)傳入和傳出模型的存儲陣列。前端協(xié)議的復雜性因存儲器類型而異,但它可能涉及使用控制和狀態(tài)寄存器與存儲器狀態(tài)空間交互的并發(fā)傳輸。從某些類型的內(nèi)存(例如DDR)獲得不錯的性能依賴于控制器識別某些類型的數(shù)據(jù)流量并重新組織內(nèi)存訪問以優(yōu)化內(nèi)存中的訪問速率。這種復雜程度要求高保真存儲器模型不僅要重現(xiàn)真實存儲器設備的復雜行為和時序,還要確定控制器優(yōu)化是否有效。
前門訪問存儲器通過協(xié)議接口對于功能驗證是必需的,但是將數(shù)據(jù)傳入和傳出存儲器確實需要時間;因此,后門接口用于直接加載或卸載存儲器存儲陣列。后門接口通常用于在存儲器模型中加載可執(zhí)行軟件映像,或者它可以用于加載將由硬件加速器操縱的數(shù)據(jù)內(nèi)容。后門接口還可用于在測試期間檢查內(nèi)存內(nèi)容,或者在測試結束時將內(nèi)存數(shù)據(jù)與黃金參考進行比較。后門接口也可以耦合到內(nèi)存調試器,以允許交互式查看和更改內(nèi)存內(nèi)容。
除了提供這種有用的前后門功能外,還需要其他功能來增強內(nèi)存的可用性。用于驗證的內(nèi)存模型。內(nèi)存模型應該提供一種檢查正在遵循內(nèi)存協(xié)議并在出現(xiàn)錯誤時標記錯誤的方法。這通常通過使用在發(fā)生錯誤時觸發(fā)的斷言來支持,從而更容易找到問題的根本原因。內(nèi)存模型應提供功能覆蓋監(jiān)視器,以跟蹤協(xié)議的使用方式。這可用于檢查內(nèi)存控制器是否已經(jīng)過徹底驗證,或者了解哪些模式的協(xié)議操作尚未經(jīng)過測試。支持調試內(nèi)存協(xié)議對于有效跟蹤錯誤來源也很重要。
Mentor內(nèi)存庫
Mentor Graphics最近推出了一種全新的綜合內(nèi)存驗證IP庫,旨在滿足對精確內(nèi)存仿真模型日益增長的需求。新發(fā)布的Mentor內(nèi)存模型庫包含25種最常用的內(nèi)存類型。通過配置,該庫支持基于內(nèi)存設備的數(shù)千個模型,用戶可以創(chuàng)建自己的配置,允許支持幾乎無限數(shù)量的模型。
表1:當前支持的內(nèi)存模型類型通過Mentor內(nèi)存庫
DDR內(nèi)存類型支持 | Flash記憶類型支持 |
DDR2,DDR3,DDR4 | SDCard |
LPDRR2,LPDDR3,LPDDR4 | eMMC |
UDIMM(DDR2,DDR3,DDR4) | ONFI |
RDIMM(DDR2,DDR3,DDR4) | Serial Flash |
LRDIMM(DDR3,DDR4) | NAND Flash |
DFI | NOR Flash |
寬IO,寬IO2 | UFS |
HMC | |
HBM |
全部庫中可用的模型既可以用作獨立的內(nèi)存模型,也可以用作UVM代理,支持任何類型的模擬環(huán)境。這些模型適用于所有三個主要的EDA仿真平臺 - 來自Mentor Graphics的Questa,來自Cadence的Incisive和來自Synopsys的VCS。
內(nèi)存模型打包為SystemVerilog模塊,其引腳對應于建模的內(nèi)存類型。這允許它們被實例化為設計網(wǎng)表中的組件或測試工具的頂層。模型響應前門訪問的信號級協(xié)議,并提供庫中通用的后門API。
模型為每種類型的內(nèi)存模型提供全部功能和時序精度。這包括可選的功能模式設置和對高級操作的支持,例如訓練和調平,用于微調高速協(xié)議接口(如DDR4)的響應。
模型的時序和行為是高度可配置的,允許它們被調整以具有真實存儲設備的個性。每個內(nèi)存模塊都有一個MANUFACTURER和一個PART_NUMBER參數(shù),允許您指定模型應該表現(xiàn)的設備。這些參數(shù)在模擬開始時用于在模型中設置適當?shù)呐渲眠x項??梢詫⑦@些部件號參數(shù)的值更改為模擬器命令行選項。這使得可以更改建模的零件而無需重新編譯設計和測試平臺,這對于檢查第二個源組件是否可以在系統(tǒng)設計中工作非常有用。
Mentor支持內(nèi)存模型VIP配置GUI,允許您在GUI創(chuàng)建的測試平臺中實例化特定的內(nèi)存組件模型,或者創(chuàng)建可由內(nèi)存組件加載的配置文件。通過GUI,您可以訪問特定內(nèi)存類型的所有可用配置選項,包括時序參數(shù)。這允許您創(chuàng)建自己的內(nèi)存模型變體來探索特定的角點情況。 GUI生成的配置文件的路徑是內(nèi)存模塊的另一個參數(shù),如果指定,則覆蓋MANUFACTURER和PART_NUMBER配置。
圖2:內(nèi)存模型框圖
模型有一個API,因此您可以在模擬過程中重新配置它們。 API允許指定新的設備部件號或使用不同的配置文件。使用這種方法幾乎可以對模型進行任何更改。但是,您必須確保行為中的任何更改都發(fā)生在測試中的合理位置,并且您必須意識到模型可能需要重新初始化或訓練,具體取決于重新配置的范圍。
內(nèi)存模型具有其他模塊級參數(shù),可提供可選的驗證功能。使用ENABLE_FUNC_COV參數(shù)激活內(nèi)存協(xié)議的功能覆蓋監(jiān)視器。使用ENABLE _TXN_LOG參數(shù)打開內(nèi)存事務記錄器。內(nèi)存事務記錄器可寫入模擬器腳本或指定的日志文件,輸出可用于跟蹤內(nèi)存級模擬活動。
由于內(nèi)存模型構建在Mentor Verification IP之上在體系結構方面,它們具有內(nèi)置的事務調試工具,允許在波形窗口中查看協(xié)議活動以及其他設計級信號。此功能將內(nèi)存訪問抽象為高級事務,從而可以輕松了解內(nèi)存協(xié)議在任何時間點發(fā)生的情況。
即時模型重新配置
Mentor內(nèi)存模型的一般用例是獨立模型,代表系統(tǒng)級別的內(nèi)存設備。在這種情況下,它們在測試用例的持續(xù)時間內(nèi)對設備的行為進行建模,并且不進行重新配置。但是,存在一些內(nèi)存控制器驗證方案,其中在模擬過程中更改模型的時序或行為是有用的。內(nèi)存模型以三種方式之一支持??梢允褂眠\行時API調用(指定新的部件號或新自定義配置文件的路徑)對模型配置進行重大更改以更改部件號或將其重新配置為自定義配置。通過在模型本身中直接設置配置變量,可以進行較小的運行時更改。
每個模型的所有可用配置變量都記錄在庫提供的綜合在線文檔中。例如,通過在運行中改變適當?shù)亩〞r變量,可以進行微妙的定時改變以檢查存儲器控制器是否能夠應對延遲的定時響應。
表2:內(nèi)存模型模塊參數(shù)
參數(shù) | 目的 |
制造商 | 識別零件制造商 |
PART_NUMBER | 標識設備部件號 |
CONFIG_FILE | 配置GUI創(chuàng)建的自定義配置文件的路徑 |
ENABLE_FUNC_COV | 啟用功能覆蓋率監(jiān)視器 |
ENABLE_TXN_LOG | 啟用事務記錄器進行調試 |
TXN_LOG_FILE | 事務記錄器輸出的文件路徑 |
IF_NAME | 與uvm_config_db一起用于識別模型虛擬接口句柄 |
可以使用Verilog或VHDL測試平臺中的分層引用或SystemVerilog UVM測試平臺中的虛擬接口句柄對配置變量進行更改。該模型將其虛擬接口句柄的引用放入UVM uvm_config_db數(shù)據(jù)結構中,UVM測試平臺中的組件可以通過這種方式引用模型的配置參數(shù)。提供模塊級參數(shù)以自定義用于存儲和檢索uvm_config_db模型虛擬接口句柄的路徑和鍵字符串的命名。
結論
Mentor內(nèi)存模型庫提供了全面的內(nèi)存建模解決方案,并提供了廣泛的配置選項,可以非常輕松地對特定設備部件或自定義部件進行建模。這些模型具有內(nèi)置的高級驗證功能,可用于任何形式的基于仿真的驗證環(huán)境,并且有資格在Questa,Incisive和VCS模擬器上運行。
-
存儲器
+關注
關注
38文章
7509瀏覽量
163976 -
PCB打樣
+關注
關注
17文章
2968瀏覽量
21742 -
華強PCB
+關注
關注
8文章
1831瀏覽量
27810 -
華強pcb線路板打樣
+關注
關注
5文章
14629瀏覽量
43086
發(fā)布評論請先 登錄
相關推薦
評論