eMMC

From SEGGER Wiki
Jump to: navigation, search

eMMC stands for "embedded MultiMediaCard." It is a type of non-volatile memory storage commonly used in embedded systems. Unlike traditional memory cards, an eMMC is soldered directly onto the device's circuit board. This way, the card becomes part of the system and cannot be removed. Integrating an eMMC helps save space and is more suitable for compact devices.

An eMMC, like most other memory cards, combines NAND flash memory with a flash memory controller.

What are the benefits of eMMC?

  • Small footprint
  • Large capacities available (from 4GB to 64GB and more)
  • Affordable
  • Standard interface, in both hardware and software (vendor independent)

File system used in eMMCs

eMMCs are simple block devices, so one or multiple sectors of 512 bytes can be read or written at a time. They are typically FAT-formatted, though this is not a requirement, any other file system can be used. The file system used on eMMC storage devices is typically determined by the operating system or the specific requirements of the embedded system in which the eMMC is used.

Wear leveling and management

An eMMC includes a flash memory controller. This controller is responsible for the management of the data stored on the NAND flash memory, which means that the file system software is not required to perform any management operations such as wear leveling and error correction.

How to program an eMMC in production

We recommend using the SEGGER FAT Image Creator to first create a file system image and then a J-Link debug probe or a Flasher production programmer to store this file system image into the eMMC.