# MultiMediaCard

MultiMediaCard, officially abbreviated as MMC, is a memory card standard used for solid-state storage. Unveiled in 1997 by SanDisk and Siemens, MMC is based on a surface-contact low-pin-count serial interface using a single memory stack substrate assembly, and is therefore much smaller than earlier systems based on high-pin-count parallel interfaces using traditional surface-mount assembly such as CompactFlash. Both products were initially introduced using SanDisk NOR-based flash technology.
MMC is about the size of a postage stamp: 32 mm × 24 mm × 1.4 mm. MMC originally used a 1-bit serial interface, but newer versions of the specification allow transfers of 4 or 8 bits at a time. MMC can be used in many devices that can use Secure Digital (SD) cards. MMCs may be available in sizes up to 16 gigabytes (GB).
They are used in almost every context in which memory cards are used, like cellular phones, digital audio players, digital cameras, and PDAs. Typically, an MMC operates as a storage medium for devices, in a form that can easily be removed for access by a PC via a connected MMC reader.
eMMC (embedded MMC) is a small MMC chip used as embedded non-volatile memory that is normally soldered on printed circuit boards, though pluggable eMMC modules are used on some devices (e.g. Orange Pi and ODROID).

## History

The latest version of the eMMC standard (JESD84-B51) by JEDEC is version 5.1A, released January 2019, with speeds (250 MB/s read, 125 MB/s write) rivaling discrete SATA-based SSDs (500 MB/s).
As of 23 September 2008, the MultimediaCard Association (MMCA) turned over all MMC specifications to the JEDEC organization including embedded MMC (eMMC), SecureMMC, and miCARD assets. JEDEC is an organization devoted to standards for the solid-state industry.
The latest eMMC specifications can be requested from JEDEC, free-of-charge for JEDEC members. Older versions of the standard are freely available, but some optional enhancements to the standard such as MiCard and SecureMMC specifications, must be purchased separately.
While there is no royalty charged for devices to host an MMC or eMMC, a royalty may be necessary in order to manufacture the cards themselves.
A highly detailed datasheet that contains essential information for writing an MMC host driver is available online.

## Variants
### RS-MMC

In 2004, the Reduced-Size MultiMediaCard (RS-MMC) was introduced as a smaller form factor of the MMC, with about half the size: 24 mm × 18 mm × 1.4 mm. The RS-MMC uses a simple mechanical adapter to elongate the card so it can be used in any MMC (or SD) slot. RS-MMCs are currently available in sizes up to and including 2 GB.
The modern continuation of an RS-MMC is commonly known as MiniDrive (MD-MMC). A MiniDrive is generally a microSD card adapter in the RS-MMC form factor. This allows a user to take advantage of the wider range of modern MMCs available to exceed the historic 2 GB limitations of older chip technology.
Implementations of RS-MMCs include Nokia and Siemens, who used RS-MMC in their Series 60 Symbian smartphones, the Nokia 770 Internet Tablet, and generations 65 and 75 (Siemens). However, since 2006, all of Nokia's new devices with card slots have used miniSD or microSD cards, with the company dropping support for the MMC standard in its products. While Siemens exited the mobile phone business completely in 2006, the company continues to use MMC for some PLC storage leveraging MD-MMC advances.

### DV-MMC

The Dual-Voltage MultimediaCard (DV-MMC) was one of the first changes in MMC. These cards can operate at 1.8 V in addition to 3.3 V. Running at lower voltages reduces the card's energy consumption, which is important in mobile devices. However, simple dual-voltage parts quickly went out of production in favor of MMCplus and MMCmobile, which offer capabilities in addition to dual-voltage capability.

### MMCplus and MMCmobile

The version 4.x of the MMC standard, introduced in 2005, introduced two significant changes to compete against SD cards: (1) the ability to run at higher speeds (26 MHz and 52 MHz) than the original MMC (20 MHz) or SD (25 MHz, 50 MHz), and (2) a four- or eight-bit-wide data bus.
Version 4.x full-size cards and reduced-size cards can be marketed as MMCplus and MMCmobile, respectively.
Version 4.x cards are fully backward compatible with existing readers but require updated hardware and software to use their new capabilities. Even though the four-bit-wide bus and high-speed modes of operation are deliberately electrically compatible with SD, the initialization protocol is different, so firmware and software updates are required to use these features in an SD reader.

### MMCmicro

MMCmicro is a smaller version of MMC. With dimensions of 14 mm × 12 mm × 1.1 mm, it is smaller and thinner than RS-MMC. Like MMCmobile, MMCmicro allows dual voltage, is backward compatible with MMC, and can be used in full-size MMC and SD slots with a mechanical adapter. MMCmicro cards have the high-speed and four-bit-bus features of the 4.x spec, but not the eight-bit bus, due to the absence of the extra pins.
This variant was formerly known as S-card when introduced by Samsung on 13 December 2004. It was later adapted and introduced in 2005 by the MultiMediaCard Association (MMCA) as the third form factor memory card in the MultiMediaCard family.
MMCmicro appears very similar to microSD, but the two formats are not physically compatible and have incompatible pinouts.

### MiCard

The MiCard is a backward-compatible extension of the MMC standard with a theoretical maximum size of 2048 GB (2 terabytes) announced on 2 June 2007. The card is composed of two detachable parts, much like a microSD card with an SD adapter. The small memory card fits directly in a USB port and has MMC-compatible electrical contacts. With an included electromechanical adapter, it can also fit in traditional MMC and SD card readers. To date, only one manufacturer (Pretec) has produced cards in this format.
The MiCard was developed by the Industrial Technology Research Institute in Taiwan. At the time of the announcement, twelve Taiwanese companies (including ADATA Technology, Asustek, BenQ, Carry Computer Eng. Co., C-One Technology, DBTel, Power Digital Card Co., and RiCHIP) had signed on to manufacture the new memory card. However, as of June 2011, none of the listed companies had released any such cards, nor had any further announcements been made about plans for the format.
The card was announced to be available starting in the third quarter of 2007. It was expected to save the 12 Taiwanese companies who planned to manufacture the product and related hardware up to US$40 million in licensing fees, which presumably would otherwise be paid to owners of competing flash memory formats. The initial card was to have a capacity of 8 GB, while the standard would allow sizes up to 2048 GB. It was stated to have data transfer speeds of 480 Mbit/s (60 Mbyte/s), with plans to increase data over time.

### eMMC

The currently implemented embedded MMC (eMMC or e.MMC) architecture puts the MMC components (flash memory, buffer and controller) into a small ball grid array (BGA) IC package for use in circuit boards as an embedded non-volatile memory system. This is noticeably different from other versions of MMC as this is not a user-removable card, but rather a permanent attachment to the printed circuit board (PCB). Therefore, in the event of an issue with either the memory or its controller, the eMMC would need to be replaced or repaired. In eMMC, the host system simply reads and writes data to and from the logical block addresses. The eMMC controller hardware and firmware lifts the burden on the host system by performing error correction and data management. eMMC exists in 100, 153, and 169 ball packages and is based on an 8-bit parallel interface.
Almost all mobile phones and tablets used this form of flash for main storage until 2016, when Universal Flash Storage (UFS) started to take control of the market. However, as of 2023, eMMC is still used in many consumer applications, including lower-end smartphones, such that Kioxia has introduced new 64 GB and 128 GB eMMC 5.1 modules based on modern 3D NAND flash scheduled for mass production in 2024.
eMMC does not support the SPI-bus protocol and uses NAND flash.
eMMC versions :
| Version | Sequential read (MB/s) | Sequential write (MB/s) | Random read (IO/s) | Random write (IO/s) | Clock frequency (MHz) | Used in |
| 4.3 | | | | | | |
| 4.4 | | | | | | |
| 4.41 | | | | | 52 | |
| 4.5 | 140 | 50 | 7000 | 2000 | 200 | Snapdragon 800 |
| 5.0 | 250 | 90 | 7000 | 13000 | | Snapdragon 801 |
| 5.1 | 250 | 125 | 11000 | 13000 | | Snapdragon 820 |

## Uses

Modern computers, both laptops and desktops, often have SD slots, which can additionally read MMCs if the operating system drivers can. Since the introduction of SD cards, few companies build MMC slots into their devices (an exception is some mobile devices like the Nokia 9300 communicator in 2004, where the smaller size of the MMC is a benefit), but the slightly thinner, pin-compatible MMCs can be used in almost any device that can use SD cards if the software/firmware on the device is capable.
While few companies build MMC slots into devices as of 2018, due to SD cards dominating the memory card market, the embedded MMC (e.MMC) is still widely used in consumer electronics as a primary means of integrated storage and boot loader in portable devices. eMMC provides a low-cost flash-memory system with a built-in controller that can reside inside an Android or Windows phone or in a low-cost PC and can appear to its host as a bootable device, in lieu of a more expensive form of solid-state storage, such as a traditional solid-state drive.

## Similar formats

In 2004, a group of companies—including Seagate and Hitachi—introduced an interface called CE-ATA for small form factor hard disk drives. This interface was electrically and physically compatible with the MMC specification. However, support for further development of the standard ended in 2008.
The game card format used on the PlayStation Vita was found to be based on the MMC standard, but with a different pinout and support for custom initialization commands as well as copy protection.