eMMC

You might also like

You are on page 1of 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
<=2GB >2GB

Addressing Byte Sector (512Byte)

Sector_count*512
Size

(WP_GRP_SIZE+1)* HC_WP_GRP_SIZE*
WRITE (ERASE_GRP_SIZE+1)* HC_ERASE_GRP_SIZE*
PROTECT (ERASE_GRP_MULT+1)* 512KB
GROUP 512 Byte
SIZE

© 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 ”

You might also like