1-EMMC介紹

1.EMMC和NAND FLASH

  • Nand flash:一種存儲數據介質;若要讀取其中的數據,需要外接的主控電路。
  • Nor flash:也是一種存儲介質;它的存儲空間一般比較小,但它可以不用初始化,可以在其內部運行程序,一般在其存儲一些初始化內存的固件代碼;
  • emmc:全稱為embeded MultiMedia Card,是一種嵌入式非易失性存儲器系統,由Nand flash和Nand flash控制器組成,以BGA方式封裝在一款chip上。

eMMC=NAND閃存+閃存控制芯片+標準接口封裝

這里主要重點講的是emmc 和Nand flash 之間的區別,主要區別如下:

(1)、在組成結構上:

emmc存儲芯片簡化了存儲器的設計,將NAND Flash芯片和控制芯片以MCP技術封裝在一起,省去零組件耗用電路板的面積,同時也讓手機廠商或是計算機廠商在設計新產品時的便利性大大提高。

而NAND Flash僅僅只是一塊存儲設備,若要進行數據傳輸的話,只能通過主機端的控制器來進行操作,兩者的結構圖如下:

image.png

(2)、在功能上:

eMMC則在其內部集成了 Flash Controller,包括了協議、擦寫均衡、壞塊管理、ECC校驗、電源管理、時鐘管理、數據存取等功能。相比于直接將NAND Flash接入到Host 端,eMMC屏蔽了 NAND Flash 的物理特性,可以減少 Host 端軟件的復雜度,讓 Host 端專注于上層業務,省去對 NAND Flash 進行特殊的處理。同時,eMMC通過使用Cache、Memory Array 等技術,在讀寫性能上也比 NAND Flash要好很多。

而NAND Flash 是直接接入 Host 端的,Host 端通常需要有 NAND Flash Translation Layer,即 NFTL 或者 NAND Flash 文件系統來做壞塊管理、ECC等的功能。另一方面,emmc的讀寫速度也比NAND Flash的讀寫速度快,emmc的讀寫可高達每秒50MB到100MB以上;

2.EMMC硬件接口

主要有一下接口接口

  • VDDI/VCC/VCCQ/CLK/RST:通用接口,其中VCC為MMC Controller/Flash Controller的供電電壓,VCCQ為Memory和Controller之間I/O的供電。
  • CMD:控制接口,發送控制命令讀寫emmc寄存器
  • DATA:數據接口D0-D7
image.png

3.EMMC控制時序

MMC通過發CMD的方式來實現卡的初始化和數據訪問。

Device Identification Mode包括3個階段

  • Idle State
  • Ready State
  • Identification State。

(1)、Idle State下

eMMC Device會進行內部初始化,Host需要持續發送CMD1命令,查詢eMMC Device是否已經完成初始化,同時進行工作電壓和尋址模式協商:eMMC Device 在接收到這些信息后,會將OCR的內容(MMC出廠就燒錄在里面的卡的操作電壓值)通過 Response 返回給 Host,其中包含了 eMMC Device 是否完成初始化的標志位、設備工作電壓范圍 Voltage Range 和存儲訪問模式 Memory Access Mode 信息。

如果 eMMC Devcie 和 Host 所支持的工作電壓和尋址模式不匹配,那么 eMMC Device 會進入Inactive State。

(2)、Ready State

MMC完成初始化后,就會進入該階段。在該 State 下,Host 會發送 CMD2命令,獲取eMMC Device 的CID。

CID,即 Device identification number,用于標識一個 eMMC Device。它包含了 eMMC Device 的制造商、OEM、設備名稱、設備序列號、生產年份等信息,每一個 eMMC Device 的 CID 都是唯一的,不會與其他的 eMMC Device 完全相同。

eMMC Device 接收到CMD2后,會將 127 Bits 的CID的內容通過 Response返回給 Host。

(3)、Identification State

發送完 CID 后,eMMC Device就會進入該階段。

Host 會發送參數包含 16 Bits RCA 的CMD3命令,為eMMC Device 分配 RCA。設定完 RCA 后,eMMC Devcie 就完成了 Devcie Identification,進入 Data Transfer Mode。

emmc、Nand flash、Nor flash之間的區別:https://blog.csdn.net/xjw1874/article/details/81505967?utm_source=copy

EMMC 基本命令:https://blog.csdn.net/shenjin_s/article/details/85242990
emmc response:http://www.caotama.com/1984047.html

4.EMMC分區

eMMC 標準中,將內部的 Flash Memory 劃分為 4 類區域,最多可以支持 8 個硬件分區,如下圖所示:


image.png

eMMC 的每一個硬件分區的存儲空間都是獨立編址的,即訪問地址為 0 - partition size。

具體的數據讀寫操作實際訪問哪一個硬件分區,是由 eMMC 的 Extended CSD register 的 PARTITION_CONFIG Field 中 的 Bit[2:0]: PARTITION_ACCESS 決定的,用戶可以通過配置 PARTITION_ACCESS 來切換硬件分區的訪問。也就是說,用戶在訪問特定的分區前,需要先發送命令,配置 PARTITION_ACCESS,然后再發送相關的數據訪問請求。

4.1 Boot Area Partitions

Boot Area 包含兩個 Boot Area Partitions,主要用于存儲 Bootloader,支持 SOC 從 eMMC 啟動系統。

4.2 RPMB Partition

RPMB 在實際應用中,通常用于存儲一些有防止非法篡改需求的數據,例如手機上指紋支付相關的公鑰、序列號等。RPMB 可以對寫入操作進行鑒權,但是讀取并不需要鑒權,任何人都可以進行讀取的操作,因此存儲到 RPMB 的數據通常會進行加密后再存儲。

4.3 General Purpose Partitions

eMMC 提供了 General Purpose Partitions (GPP),主要用于存儲系統和應用數據。在很多使用 eMMC 的產品中,GPP 都沒有被啟用,因為它在功能上與 UDA 類似,產品上直接使用 UDA 就可以滿足需求。

4.4 User Data Area

User Data Area (UDA) 通常是 eMMC 中最大的一個分區,是實際產品中,最主要的存儲區域。

Boot Data 根據 Extended CSD register 的 PARTITION_CONFIG Field 的 Bit[5:3]:BOOT_PARTITION_ENABLE 的設定,可以從 Boot Area Partition 1、Boot Area Partition 2 或者 User Data Area 讀出。

eMMC 分區管理:https://linux.codingbelief.com/zh/storage/flash_memory/emmc/emmc_partitions.html

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,533評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,055評論 3 414
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,365評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,561評論 1 307
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,346評論 6 404
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 54,889評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 42,978評論 3 439
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,118評論 0 286
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,637評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,558評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,739評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,246評論 5 355
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 43,980評論 3 346
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,362評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,619評論 1 280
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,347評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,702評論 2 370