Storage-7---eMMC基礎
1.eMMC操作模式
如圖7-1所示,eMMC系統包含五種操作模式:
1#:開機模式
2#:設備識別模式
3#:中斷模式
4#:數據傳輸模式
5#:非活動模式
圖7-1:CMD線模式視圖
開機模式
eMMC提供兩個容量大小相同的邏輯區域,用于啟動操作,稱為引導分區,引導分區大小=128K字節xBOOT_SIZE_MULT (EXT_CSD[226]),大小由廠商在發貨前確定。
從引導分區啟動設備的優點:可以采用SLC-OTF模式,具備專用鎖定、低延遲、高可靠性等特點。主機也可選擇從用戶區啟動設備,將啟動數據保存在用戶區將減少用戶專用空間。
引導分區采用pSLC模式,而用戶區采用MLC模式(即使可以配置為pSLC),相比用戶區,從引導分區啟動設備的延遲更低,可使用EXT_CSD byte [179],提前選擇主機啟動的分區。
0x0:未啟用開機操作模式
0x1:從引導區1啟動
0x2:從引導區2啟動
0x3-0x6:保留
0x7:從用戶區啟動
在下列情況下,發送開機操作請求:
1#:CMD線保持低電平超過74個時鐘周期
2#:主機發送CMD0 (0xFFFFFFFA)命令
達到上電周期后,接收到帶0xF0F0F0F0參數的CMD0命令或硬件復位信號有效,設備將進入開機模式:
圖7-2:開機狀態機
設備識別模式
開機操作模式完成后,如果主機或設備不支持該設備識別模式時,設備將一直處于設備識別模式狀態,直至接收到SET_RCA命令(CMD3)。
圖7-3:eMMC的識別狀態圖
數據傳輸模式
分配RCA后,設備將進入數據傳輸模式,識別總線上的設備后,主機將進入數據傳輸模式。
圖7-4:eMMC的數據傳輸狀態圖
中斷模式
主機和設備同時進入或退出中斷模式,在中斷模式下,無法進行數據傳輸,只允許設備或主機發送中斷服務請求。
2.eMMC設備初始化和主機系統延遲
圖7-5是eMMC初始化流程的時間軸,從軸線可以看到,從上電開始,eMMC要先進入預空閑狀態,收到啟動請求之后再將關鍵程序指令發送給主機,主機完成加載啟動后直至主機使用,這一長段時間可以理解為開機時間,開機時間的長短很大一部分取決于eMMC的性能。
圖7-5:eMMC初始化流程
TBD:啟動延遲時間,從CMD線轉為低電平到首次開機數據輸出之間的時間,一般在40ms左右。
INIT:從CMD1到就緒之間的時間,根據JEDC規范,延遲時間最長為1s。
許多主機系統在系統上電和CMD線轉為低電平(開機)/CMD(init)之間存在延遲,而Automotive eMMC 5.1默認開啟快速INIT功能,快速INIT功能可充分利用該延遲,縮短系統初始化時間。電源穩定后(Vcc/Vccq高電平),即使客戶未將CMD線轉為低電平,eMMC也會自動執行初始化流程,從而縮短系統初始化時間。
圖7-6:快速INIT的優點---時間示例
開啟快速初始化后,電源穩定后立即啟動INIT程序,而不啟用快速初始化,INIT程序則在主機發出CMD1時啟動。
3.HW復位
使用HW復位功能,主機必須將ECSD寄存器162字節,[1:0]位設置為0x1,以便在主機可以使用其之前啟用該功能。執行復位操作之前,主機必須在尚未執行任何操作的情況下,根據JEDEC規范在RST_N引腳處至少保持1us的低電平。如果復位引腳回到高電平,則eMMC阻止任何操作,并進入預空閑狀態,如圖7-7所示。
圖7-7:eMMC的復位觸發
評論
查看更多