Transcript eMMC

“ 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
HC_WP_GRP_SIZE*
HC_ERASE_GRP_SIZE*
512KB
© 2013 BPM Microsystems
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 ”