本文作者:AMD 工程師 Sowmya Ramakrishnan
本篇博文提供了有關(guān) AMD Versal 自適應(yīng) SoC 中 eMMC 燒錄和啟動設(shè)置的技巧和指南。它還可用于調(diào)試 eMMC 燒錄/啟動失敗。提交服務(wù)申請個案前,應(yīng)先復(fù)查以下檢查表。
1. AMD 是否支持對此 eMMC 閃存器件進行 Versal 啟動和配置?
對于具有正式的業(yè)界規(guī)范的閃存器件(如 eMMC),我們遵循相應(yīng)的規(guī)范版本來提供器件支持,而不是通過枚舉每個特定制造商、制造商家族和器件的部件號來提供支持。這樣即可在初始閃存選擇以及長期設(shè)計維護方面為設(shè)計師提供廣泛的可能性。
下表來自 UG908。Versal 中的 eMMC 接口支持 1.8V 下的 eMMC 規(guī)格版本 4.51。
https://docs.amd.com/r/en-US/ug908-vivado-programming-debugging/Versal-Configuration-Memory-Devices

AMD Versal 和 AMD UltraScale+ MPSoC 與其他先前架構(gòu)之間的區(qū)別在于 Versal 中沒有 NAND。eMMC1 模式取代了 NAND 模式,在提供相似性能的同時減少了管腳數(shù)。

下方設(shè)計咨詢答復(fù)記錄 (DAAR) 描述了在 eMMC 器件中觀察到的一個問題,此類器件要求 CMD6 R1b 繁忙時間大于 1 ms,這導(dǎo)致主啟動失敗。
設(shè)計咨詢答復(fù)記錄 (DAAR) :
https://docs.amd.com/r/en-US/000034596/000034596-Design-Advisory-for-Zynq-UltraScale-MPSoC/RFSoC-and-Versal-Primary-Boot-failure-with-some-eMMC-parts
雖然目前在 Versal 器件中尚未報告任何操作失敗,但認識此問題并查閱 Versal 的關(guān)聯(lián)勘誤表文檔是非常重要的。
2. PCB 準則和硬件注意事項
下一步是檢查 PCB 和開發(fā)板硬件。
AMD 參考板/評估板:
如果您當前使用的是 AMD 參考板,那么下列建議均已納入考量。對于 AMD 參考板,建議運行 BEAM/BIT 工具以檢查開發(fā)板/硬件完整性。請參閱相應(yīng)產(chǎn)品指南以獲取更多信息。您可跳至下一章節(jié)。
其他(定制)開發(fā)板:
UG863 中“SD/SDIO/eMMC”主題下的“eMMC”節(jié)包含 Versal 器件的印刷電路板 (PCB) 布局、設(shè)計考慮因素以及靜態(tài)時序分析指南和公式。請確保您的定制 PCB 遵循 UG863 中列出的建議。 這些建議提供了有助于最大程度優(yōu)化性能的準則。
UG863:
https://docs.amd.com/r/en-US/ug863-versal-pcb-design/SD/SDIO/eMMC
對于靜態(tài)時序分析,在《DC 和 AC 開關(guān)特性》數(shù)據(jù)手冊 (DS956-DS959) 的“PMC eMMC 控制器接口”章節(jié)中包含相應(yīng)器件家族的 eMMC 接口的時序要求。DH0092 的“數(shù)據(jù)手冊”部分列出了可用的 Versal 子家族。請務(wù)必參考適用于您的器件的數(shù)據(jù)手冊。 另外,還應(yīng)參考相應(yīng)閃存的數(shù)據(jù)手冊,確保時序得到滿足。
DH0092:
https://docs.amd.com/v/u/en-US/dh0092-versal-boot-config
PCB 走線延遲取決于特定 PCB 的材料和走線寬度。
Issue 需要注意的是,為了確保 PCB 上的信號完整性正確無誤,必須確保 Versal 器件的近端或遠端沒有任何反射??梢栽?eMMC 時鐘、命令和數(shù)據(jù)線路上布局 30 ohm 串聯(lián)終端電阻器,并使其盡可能靠近 Versal 自適應(yīng) SoC。
出于信號完整性考量,請確保對 IBIS 模型仿真進行復(fù)查。時鐘與數(shù)據(jù)信號完整性對于 eMMC 器件正常工作至關(guān)重要,運行速度越高,其重要性越高。
Versal 自適應(yīng) SoC 上有兩個 SD_eMMC 控制器。SD_eMMC 控制器可用于 SD 或 eMMC 模式,它們互斥。SD_eMMC1 控制器用于 eMMC v4.51 啟動模式。在 eMMC1 啟動模式下,根據(jù) REF_CLK 頻率,RCU BootROM 以 8.7 MHz 到 19.3 MHz 之間的 eMMC1 器件時鐘頻率運行。eMMC1 啟動模式支持 1.8V 以及 1 位、4 位和 8 位數(shù)據(jù)接口,時鐘頻率最高可達 200 MHz。BootROM 使用自動寬度檢測來判定初始啟動的數(shù)據(jù)總線寬度。自動總線寬度檢測首先檢查 8 位數(shù)據(jù)總線寬度,然后是 4 位數(shù)據(jù)總線寬度,最后是 1 位數(shù)據(jù)總線寬度。
有三種操作模式:
25 MHz 下的傳統(tǒng) MMC 速度模式
50 MHz 下的高速 SDR 模式和 DDR 模式
200 MHz 下的 HS200 模式,數(shù)據(jù)率最高可達 1600 Mb/s
請復(fù)查《AM011》的 MIO 連接選項,確保遵循相關(guān)選項設(shè)置。若以 eMMC 作為主啟動選項,須使用 PMC MIO Bank 500 的 MIO 0-11。
AM001:
https://docs.amd.com/r/en-US/am011-versal-acap-trm/PMC-MIO-Pin-Tables
SD_eMMC0 控制器不支持 eMMC 主啟動。
3. MIO 和時鐘配置
下一步是檢查 MIO 和時鐘配置。
MIO 配置
確保選中 SD1/eMMC1 啟動模式,并確保將總線位置更改為 PMC MIO 0-11 以進行啟動。


復(fù)位配置
控制器可以通過 PMC 復(fù)位控制器進行復(fù)位,或通過寫入控制器的軟件復(fù)位寄存器來復(fù)位。PMC 復(fù)位會影響整個控制器,并將所有寄存器設(shè)置為其復(fù)位默認狀態(tài)。
可以使用 powercontrol [emmc_hwreset] 寄存器位來復(fù)位連接的 eMMC 卡。

時鐘配置
SD/eMMC 控制器具有以下三個從 PMC 時鐘控制器接收的系統(tǒng)時鐘:
用于 DIV_CLK 模塊和控制器的 SDx_REF_CLK 參考時鐘
用于 SD DLL 模塊的 SD_DLL_REF_CLK 參考時鐘
控制器邏輯始終由 10 位分頻器的 DIV_CLK 輸出提供時鐘,該分頻器由 SDx_REF_CLK 參考時鐘信號提供時鐘。
然后,該控制器支持廣泛的 I/O 時鐘頻率。
整體時鐘架構(gòu)圖如下所示:

根據(jù)所需的 I/O 時鐘頻率,該控制器始終從以下兩個可能的源之一來驅(qū)動 I/O 接口時鐘 SDx_CLK:分別是來自時鐘分頻器的 DIV_CLK 和三個 DLL 模塊時鐘。
該控制器的 I/O 時鐘模式為:

1.傳統(tǒng) MMC 速度與默認 MMC 速度相關(guān)。
2.默認情況下,eMMC 僅以傳統(tǒng) MMC 速度模式啟動。軟件驅(qū)動程序可以切換到高速模式以獲得更高的吞吐量。
3.吞吐量基于 8 位 I/O 接口寬度。
MIO 默認設(shè)置
在 Versal 器件中,使用的 MIO 采用以下默認設(shè)置。
默認驅(qū)動強度 (12 mA)
默認斜率 (slow)
默認弱上拉 (enabled)
啟用 Schmitt 觸發(fā)器輸入
這些設(shè)置可在 AMD Vivado Design Suite 中更改。

-
amd
+關(guān)注
關(guān)注
25文章
5686瀏覽量
140006 -
emmc
+關(guān)注
關(guān)注
7文章
263瀏覽量
56035 -
燒錄
+關(guān)注
關(guān)注
8文章
317瀏覽量
37103 -
Versal
+關(guān)注
關(guān)注
1文章
175瀏覽量
8479
原文標題:開發(fā)者分享 | AMD Versal? 自適應(yīng) SoC:eMMC 燒錄/啟動調(diào)試檢查表(上)
文章出處:【微信號:gh_2d1c7e2d540e,微信公眾號:XILINX開發(fā)者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
在AMD Versal自適應(yīng)SoC上使用QEMU+協(xié)同仿真示例
使用Aurora 6466b協(xié)議實現(xiàn)AMD UltraScale+ FPGA與AMD Versal自適應(yīng)SoC的對接
【ALINX 技術(shù)分享】AMD Versal AI Edge 自適應(yīng)計算加速平臺之 Versal 介紹(2)
AMD Versal自適應(yīng)SoC中eMMC燒錄/啟動調(diào)試檢查表(下)
AMD Versal自適應(yīng)SoC內(nèi)置自校準的工作原理
常規(guī)的PCB設(shè)計檢查表
Versal 自適應(yīng)SoC設(shè)計指南
Versal自適應(yīng)SoC系統(tǒng)集成和 確認方法指南
AMD率先推出符合DisplayPort? 2.1 8K視頻標準的FPGA和自適應(yīng)SoC
AMD Versal自適應(yīng)SoC CPM5 QDMA的Tandem PCIe啟動流程介紹
AMD Versal自適應(yīng)SoC器件Advanced Flow概覽(上)
AMD Versal自適應(yīng)SoC器件Advanced Flow概覽(下)
AMD Versal自適應(yīng)SoC中eMMC燒錄/啟動調(diào)試檢查表(上)
評論