emmc
DESCRIPTION
goodTRANSCRIPT
© 2013 BPM Microsystems
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.
Overview
© 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)
Size
Sector_count*512
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
R/W/E Commands
Single/multiple block read
Single/multiple block write
Erase (erase group and erase group mul)