portant;">1.BOOT Area Partition 1 & 2
portant;">此分區(qū)主要是為了支持從eMMC啟動系統(tǒng)而設(shè)計的。
該分區(qū)的數(shù)據(jù),在eMMC上電后,可以通過很簡單的協(xié)議就可以讀取出來。同時,大部分的SOC都可以通過GPIO或者FUSE的配置,讓ROM代碼在上電后,將eMMC BOOT分區(qū)的內(nèi)容加載到SOC內(nèi)部的SRAM中執(zhí)行。
portant;">2.RPMB Partition
portant;">RPMB是Replay Protected Memory Block的簡稱,它通過HMAC SHA-256和Write Counter來保證保存在RPMB內(nèi)部的數(shù)據(jù)不被非法篡改。在實際應(yīng)用中,RPMB分區(qū)通常用來保存安全相關(guān)的數(shù)據(jù),例如指紋數(shù)據(jù)、安全支付相關(guān)的密鑰等。
portant;">3.General Purpose Partition 1~4
portant;">此區(qū)域則主要用于存儲系統(tǒng)或者用戶數(shù)據(jù)。General Purpose Partition在芯片出廠時,通常是不存在的,需要主動進(jìn)行配置后,才會存在。
portant;">4.User Data Area
portant;">此區(qū)域則主要用于存儲系統(tǒng)和用戶數(shù)據(jù)。
User Data Area通常會進(jìn)行再分區(qū),例如,Android系統(tǒng)中,通常在此區(qū)域分出boot、system、userdata等分區(qū)。
portant;">2.Flash Controller
portant;">NAND Flash直接接入Host時,Host端通常需要有NAND Flash Translation Layer,即NFTL或者NAND Flash文件系統(tǒng)來做壞塊管理、ECC等的功能。
portant;">eMMC則在其內(nèi)部集成了Flash Controller,用于完成擦寫均衡、壞塊管理、ECC校驗等功能。相比于直接將NAND Flash接入到Host端,eMMC屏蔽了NAND Flash的物理特性,可以減少Host端軟件的復(fù)雜度,讓Host端專注于上層業(yè)務(wù),省去對NAND Flash進(jìn)行特殊的處理。同時,eMMC通過使用Cache、Memory Array等技術(shù),在讀寫性能上也比NAND Flash要好很多。
portant;">