Sei sulla pagina 1di 15

Setting the Standard in Device

Programming

eMMC

Overview
Architecture
Memory organization
CRC on the fly
Registers (OCR, CID,CSD, ECSD)
Device size (<=2GB, >2GB): Size calculation,
addressing, WRITE_PROTECT_GROUP_SIZE
Command and response
Partitioning
Socket Modules, Algo notes,..etc.

2013 BPM Microsystems

Architecture

2013 BPM Microsystems

Memory organization

2013 BPM Microsystems

Partitions

2013 BPM Microsystems

CRC on the fly


Every sector (512 bytes) is followed by 16
bytes CRC16
Old algo: embed the CRC16 into data
pattern using image format tool.
New algo: calculate CRC16 on the fly
through Bios calls:
_M_StartInjectEmmcCrcs
_M_StopInjectEmmcCrcs
2013 BPM Microsystems

Registers
OCR (Access mode, card power up status bit (busy))
CID (device ID)
CSD (C_SIZE, C_SIZE_MULT ,READ_BL_LEN, ERASE_GRP_SIZE, ERASE_GRP_MULT,
WP_GRP_SIZE, COPY, FILE_FORMAT)
ECSD(HC_ERASE_GRP_SIZE, HC_WP_GRP_SIZE, SEC_COUNT, BUS_WIDTH,

PARTITION_CONFIG, RST_n_FUNCTION, PARTITIONING_SUPPORT, PARTITIONS_ATTRIBUTE,


PARTITION_SETTING_COMPLETED, GP_SIZE_MULT, ENH_SIZE_MULT, ENH_START_ADDR

2013 BPM Microsystems

Device size

Addressing

<=2GB

>2GB

Byte

Sector (512Byte)
Sector_count*512

Size

WRITE
PROTECT
GROUP
SIZE

(WP_GRP_SIZE+1)*
(ERASE_GRP_SIZE+1)*
(ERASE_GRP_MULT+1)*
512 Byte

2013 BPM Microsystems

HC_WP_GRP_SIZE*
HC_ERASE_GRP_SIZE*
512KB

Command and response

2013 BPM Microsystems

Command and response

2013 BPM Microsystems

Command and response

2013 BPM Microsystems

R/W/E Commands
Single/multiple block read
Single/multiple block write
Erase (erase group and erase group mul)

2013 BPM Microsystems

Partitioning

2013 BPM Microsystems

Socket Modules, Algo notes

SM (169FBGF, 153FBGE, 100LBGB)-caps

Algo notes

2013 BPM Microsystems

Setting the Standard in Device


Programming

Potrebbero piacerti anche