如果您目前正在使用或考慮在下一個設計中使用 JEDEC UFS 協議,您可能會面臨一些驗證挑戰。以下博客將討論 UFS 堆棧驗證的 7 個最大挑戰。隨著人們開始減少引腳數量和提高速度,基于 MPHY 的堆棧已經發展勢頭強勁,并提供了越來越多的新應用程序來利用 UFS 堆棧。UFS協議由于其更高的性能、效率、并發多任務處理、使用完整帶寬、安全性和可靠性以及更長的電源壽命而迅速被采用。
UFS 堆棧驗證挑戰
驗證挑戰
讓我們從頂部開始,順時針討論上面描述的挑戰。
HCI 通用寄存器 I/F
HCI(主機控制器接口)是 UFS 主機控制器中的寄存器編程,但允許用戶決定寄存器接口。這突出了保持鉤子的重要性,以便用戶使用簡單的RegToBus和BusToReg轉換API將其UFS-Host-DUT集成到環境中。其次,將友好的UFS UPIU命令轉換為HCI寄存器/存儲器RD/WR指令也帶來了更多挑戰。
L1.5、L2、L3、L4 層的數據記錄
Synopsys 在中間層提供了 VIP 的獨特使用模型,可幫助用戶獨立驗證 L1.5、L2、L3 或 L4 層的 DUT。這為我們提供了更好的分層數據流可見性。
復雜的重置方案
驗證每個功能的突然重置,為熱重置和冷重置創建復雜的重置方案,并驗證后重置前條件。主要挑戰是執行任何正在進行的進程的突然重置,并使用嚴格的數據傳輸和 PMC 進程檢查休息后同一進程的重試。
數據鏈路層流控制
盡管有DME接口掛鉤,但UniPro具有中間層,即傳輸層,網絡層,數據鏈路層和物理適配器層。當然,人們會驗證從傳輸到物理適配器層的數據流,反之亦然,但最具挑戰性的部分是當控制 SAP 在兩者之間中斷這些流時,重要的是每一層都退出當前進程,然后稍后以優雅的方式確認下一個進程。
眾所周知,對于給定的 TC0/TC1 幀,將從接收流量類幀的設備調度應答幀。現在有趣的一點是,協議沒有說明何時調度AFC / NAC,因此驗證應該有旋鈕來控制超時期限內AFC / NAC的調度,以避免任何PA_INIT過程。
其次,驗證環境還應檢查 DUT 是否正在清除數據鏈路層的所有幀緩沖區,這些緩沖區可能包含復位時的正常幀、重新傳輸的幀和控制幀。這里的想法是重新調用尚未確認的預重置幀。
創建在DL_PAUSE請求及其確認期間可能存在中斷的方案。這種情況將驗證數據鏈路和物理適配器層之間的數據流在進入休眠狀態期間的正確暫停和恢復,或者啟動PA_INIT進程或 NAC 傳輸。
休眠進程
在一個完整的 PMC 請求進程生成中驗證預休眠進入和退出、具有 L4 數據傳輸的重疊休眠請求、休眠請求和 PMC 請求 PACP 幀的配置。
在休眠過程中,重要因素對協議指定的最短休眠時間的 DUT 進行壓力測試,并在此時間段后立即退出。這些排除了遺漏的任何其他延遲,當計時器超過所需的最小延遲時,可能會忽略這些延遲。
其次,在退出休眠時,數據鏈路層是否在PA_TActivate時間后正確取消暫停。這可以通過發送即時數據,然后休眠退出過程來實現。
PMC 流程
驗證電源模式從非常低的速度(如PWM_G1)更改為HS_G3。在這種情況下,MPHY 如何處理配置更改以及允許的最小和最大PA_SaveConfig計時器。在這種情況下,當 MPHY 以串行模式嵌入 UNIPRO 時,時鐘會從PWM_G1變為HS_G3,從而確保 MPHY 內部時鐘模型的穩定性。在這里,UNIPRO規范中提到的最小SAVE配置時間(40ns)不足以滿足MPHY的需求。
當 DUT 中未通告功能本身的兼容性時,發出 PMC 請求時會發生什么情況?我們如何確保如果此類請求是從 DUT 發起的并且得到遵守?如果遵循,則 PMC 是否與請求幀中的功能集一起發送。這種情況會檢查 DUT 的啟動功能。
針對 DUT 功能創建 PMC 請求,并在重試中創建不同的配置請求、PMC 進程與 L4 數據傳輸的重疊等。以及稍后要討論的更多內容。
多通道偏斜變化
由于它是一個多通道協議,另一個有趣的因素是處理數據多通道的對齊。
在多車道環境中生成隨機偏斜,車道-車道之間具有正負偏斜。
確保在PMC和Hibernate進程之后以最少的配置時間進行所有數據傳輸,特別是并以最大的傾斜啟動下一個進程。
新思科技 UFS 測試套件可應對上述驗證挑戰
為了應對上述所有驗證挑戰,Synopsys 提供了獨特的 UFS 測試套件解決方案。下圖描述了 UFS 堆棧中上述挑戰的理想解決方案。
UFS 主機測試套件框圖
用于 UFS-主機 DUT 驗證的 Synopsys 解決方案提供了將 UFS 主機控制器 DUT 集成到 UFS 主機測試套件中的簡單步驟。上面的示例顯示了 AXI/APB 寄存器接口和到主機控制器的內存接口的現成轉換模型。
其中一個關鍵區別在于,Synopsys UFS VIP 可以配置為獨立的 HCI-VIP,它將 UPIU 序列信息轉換為寄存器讀/寫或存儲器讀/寫命令轉換,以“uvm_reg_item”接口的形式。這使得用戶更通用地使用UVM_REG_OBJECT并在已經連接了 RAL 的現有環境中使用它。更有趣的是,解決方案應該能夠提供所有必要的旋鈕來創建所有 UFS 流量,并在 VIP 充當 HCI 或 UFS 主機時重復使用相同的旋鈕。這樣,如果要將獨立的HCI嵌入到現有環境中,用戶就可以更輕松地維護測試環境。該解決方案清楚地描繪了 UFS 主機 DUT 集成的干凈即插即用模型。通過“uvm_reg_item”接口為寄存器覆蓋提供簡單的鉤子。
對于所有其他挑戰,如PMC、休眠過程、復位場景、數據鏈路層流控制、多通道偏斜變化,UFS測試套件解決方案提供了廣泛的序列集合,涵蓋了驗證挑戰的所有棘手方面。
不同層的記分牌供用戶點擊,以防需要中間層記分板。在上圖中,記分牌顯示在UPIU級別以用于說明。
審核編輯:郭婷
-
堆棧
+關注
關注
0文章
182瀏覽量
19828 -
JEDEC
+關注
關注
1文章
36瀏覽量
17479 -
UFS
+關注
關注
6文章
105瀏覽量
24154
發布評論請先 登錄
相關推薦
評論