SD (top), miniSD, microSD cards
|Media type||Memory card|
|Capacity||SDSC (SD): 1 MB to 2 GB,|
some 4 GB were made
SDHC: 4 GB to 32 GB
SDXC: 64 GB to 2 TB
SDUC: 4 TB to 128 TB. (Transfer speeds: 12.5 MByte/s (standard bus)
25 MByte/s (high-speed bus)
50 or 104 MByte/s (UHS-I bus)
156 or 312 MByte/s (UHS-II bus))
|Dimensions||Standard: 32.0×24.0×2.1 mm (1.260×0.945×0.083 in)|
1,612.8 mm3 (0.09842 in3)
Mini: 21.5×20.0×1.4 mm (0.846×0.787×0.055 in)
602 mm3 (0.0367 in3)
Micro: 15.0×11.0×1.0 mm (0.591×0.433×0.039 in)
165 mm3 (0.0101 in3)
|Weight||Standard: ~2 g|
Mini: ~800 mg
Micro: ~250 mg
|Usage||Portable devices, including digital cameras and handheld computers|
The standard was introduced in August 1999 by joint efforts between SanDisk, Panasonic (Matsushita Electric) and Toshiba as an improvement over MultiMediaCards (MMC), and has become the industry standard. The three companies formed SD-3C, LLC, a company that licenses and enforces intellectual property rights associated with SD memory cards and SD host and ancillary products.
The companies also formed the SD Association (SDA), a non-profit organization, in January 2000 to promote and create SD Card standards. SDA today has about 1,000 member companies. The SDA uses several trademarked logos owned and licensed by SD-3C to enforce compliance with its specifications and assure users of compatibility.
Secure Digital includes five card families available in three different sizes. The five families are the original Standard-Capacity (SDSC), the High-Capacity (SDHC), the eXtended-Capacity (SDXC), the Ultra-Capacity (SDUC) and the SDIO, which combines input/output functions with data storage. The three form factors are the original size, the mini size, and the micro size. Electrically passive adapters allow a smaller card to fit and function in a device built for a larger card. The SD card's small footprint is an ideal storage medium for smaller, thinner and more portable electronic devices.
The second-generation Secure Digital (SDSC or Secure Digital Standard Capacity) card was developed to improve on the MultiMediaCard (MMC) standard, which continued to evolve, but in a different direction. Secure Digital changed the MMC design in several ways:
Full-size SD cards do not fit into the slimmer MMC slots, and other issues also affect the ability to use one format in a host device designed for the other.
The Secure Digital High Capacity (SDHC) format, announced in January 2006 and defined in version 2.0 of the SD specification, supports cards with capacities up to 32 GB. The SDHC trademark is licensed to ensure compatibility.
SDHC cards are physically and electrically identical to standard-capacity SD cards (SDSC). The major compatibility issues between SDHC and SDSC cards are the redefinition of the Card-Specific Data (CSD) register in version 2.0 (see below), and the fact that SDHC cards are shipped preformatted with the FAT32 file system.
SDHC host devices are required to accept older SD cards. However, older host devices do not recognize SDHC or SDXC memory cards, although some devices can do so through a firmware upgrade. Older Windows operating systems released before Windows 7 require patches or service packs to support access to SDHC cards.
The Secure Digital eXtended Capacity (SDXC) format, announced in January 2009 and defined in version 3.01 of the SD specification, supports cards up to 2 TB (2048 GB), compared to a limit of 32 GB for SDHC cards in the SD 2.0 specification. SDXC adopts Microsoft's exFAT file system as a mandatory feature.
Version 4.0, introduced in June 2011, allows speeds of 156 MB/s to 312 MB/s over the four-lane (two differential lanes) UHS-II bus, which requires an additional row of physical pins.
Version 5.0 was announced in February 2016 at CP+ 2016, and added "Video Speed Class" ratings for UHS cards to handle higher resolution video formats like 8K. The new ratings define a minimum write speed of 90 MB/s.
SDXC cards utilize the exFAT file system, the use of which is governed by a proprietary license, thereby limiting its legal availability to a small set of operating systems. Therefore, exFAT-formatted SDXC cards are not a universally readable exchange medium.
Windows Vista (SP1) and later and OS X (10.6.5 and later) support exFAT out of the box. (Windows XP and Server 2003 can support exFAT via an optional update from Microsoft.) Most BSD and Linux distributions do not, for legal reasons; users must manually install third-party implementations of exFAT (as a FUSE module) in order to be able to mount exFAT-formatted volumes. However, SDXC cards can be reformatted to use any file system (such as ext2, UFS, or VFAT), alleviating the restrictions associated with exFAT availability.
Nevertheless, in order to be fully compliant with the SDXC card specification, many SDXC-capable host devices are firmware-programmed to expect exFAT on cards larger than 32 GB. Consequently, they may not accept SDXC cards reformatted as FAT32, even if the device supports FAT32 on smaller cards (for SDHC compatibility). Therefore, even if a file system is supported in general, it is not always possible to use alternative file systems on SDXC cards at all depending on how strictly the SDXC card specification has been implemented in the host device. This bears a risk of accidental loss of data, as a host device may treat a card with an unrecognized file system as blank or damaged and reformat the card.
The SD Association provides a formatting utility for Windows and Mac OS X that checks and formats SD, SDHC, SDXC, and SDUC cards.
The Secure Digital Ultra Capacity (SDUC) format, described in the SD 7.0 specification, and announced in June 2018, supports cards up to 128 TB and speeds up to 985 MB/s, regardless of form factor, either micro or full size, or interface type including UHS-I, UHS-II, UHS-III or SD Express. The SD Express interface can also be used with SDHC and SDXC cards.
Cards that comply with UHS show Roman numerals 'I', 'II' or 'III' next to the SD card logo, and report this capability to the host device. Use of UHS-I requires that the host device command the card to drop from 3.3-volt to 1.8-volt operation over the I/O interface pins and select the four-bit transfer mode, while UHS-II requires 0.4-volt operation.
The higher speed rates are achieved by using a two-lane low voltage (0.4 V pp) differential interface. Each lane is capable of transferring up to 156 MB/s. In full-duplex mode, one lane is used for Transmit while the other is used for Receive. In half-duplex mode both lanes are used for the same direction of data transfer allowing a double data rate at the same clock speed. In addition to enabling higher data rates, the UHS-II interface allows for lower interface power consumption, lower I/O voltage and lower electromagnetic interference (EMI).
The SD Express bus was released in June 2018 with SD specification 7.0. It uses a single PCIe lane to provide full-duplex 985 MB/s transfer speed. Supporting cards shall also implement the NVM Express storage access protocol. The Express bus can be implemented by SDHC, SDXC, and SDUC cards; for legacy application, SD Express cards shall also support High Speed bus and UHS-I bus. The Express bus re-uses the pin layout of UHS-II cards and reserves the space for additional two pins that may be introduced in the future.
SD card speed is customarily rated by its sequential read or write speed. The sequential performance aspect is the most relevant for storing and retrieving large files (relative to block sizes internal to the flash memory), such as images and multimedia. Small data (such as file names, sizes and timestamps) falls under the much lower speed limit of random access, which can be the limiting factor in some use cases.
With early SD cards, a few card manufacturers specified the speed as a "times" ("×") rating, which compared the average speed of reading data to that of the original CD-ROM drive. This was superseded by the Speed Class Rating, which guarantees a minimum rate at which data can be written to the card.
The newer families of SD card improve card speed by increasing the bus rate (the frequency of the clock signal that strobes information into and out of the card). Whatever the bus rate, the card can signal to the host that it is "busy" until a read or a write operation is complete. Compliance with a higher speed rating is a guarantee that the card limits its use of the "busy" indication.
|Bus interface||Card logo||Bus logo||Bus speed||Spec version|
|Default Speed||--||12.5 MB/s||1.01|
|High Speed||25 MB/s||2.00|
|UHS-I||12.5 MB/s (SDR12)
25 MB/s (SDR25)
50 MB/s (SDR50, DDR50)
104 MB/s (SDR104)
|UHS-II||156 MB/s (FD156)
312 MB/s (HD312)
|UHS-III||312 MB/s (FD312)
624 MB/s (FD624)
|PCIe 3.0 / NVMe||985 MB/s (FD985)||7.0|
The SD Association defines standard speed classes for SDHC/SDXC cards indicating minimum performance (minimum serial data writing speed). Both read and write speeds must exceed the specified value. The specification defines these classes in terms of performance curves that translate into the following minimum read-write performance levels on an empty card and suitability for different applications:
|Minimum sequential writing speed||Speed Class||UHS Speed Class||Video Speed Class||Application|
|2 MB/s||Class 2 (C2)||-||-||SD video recording|
|4 MB/s||Class 4 (C4)||-||-||High-definition video (HD) recording including Full HD (from 720p to 1080p/1080i)|
|6 MB/s||Class 6 (C6)||-||Class 6 (V6)|
|10 MB/s||Class 10 (C10)||Class 1 (U1)||Class 10 (V10)||Full HD (1080p) video recording and consecutive recording of HD stills (High Speed bus, Class C10), real-time broadcasts and large HD video files (UHS bus, Classes U1 and V10)|
|30 MB/s||-||Class 3 (U3)||Class 30 (V30)||1080p and 4K video files at 60/120 fps (UHS bus)|
|60 MB/s||-||-||Class 60 (V60)||8K video files at 60/120 fps (UHS bus)|
|90 MB/s||-||-||Class 90 (V90)|
|Application Performance Class||Minimum sustained sequential writing speed||Minimum random read||Minimum random write|
|Class 1 (A1)||10 MB/s||1500 IOPS||500 IOPS|
|Class 2 (A2)||4000 IOPS||2000 IOPS|
Speed classes 2, 4, and 6 assert that the card supports the respective number of megabytes per second as a minimum sustained write speed for a card in a fragmented state. Class 10 asserts that the card supports 10 MB/s as a minimum non-fragmented sequential write speed and uses a High Speed bus mode. The host device can read a card's speed class and warn the user if the card reports a speed class that falls below an application's minimum need. By comparison, the older "×" rating measured maximum speed under ideal conditions, and was vague as to whether this was read speed or write speed. The graphical symbol for the speed class has a number encircled with 'C' (C2, C4, C6, and C10).
UHS-I and UHS-II cards can use UHS Speed Class rating with two possible grades: class 1 for minimum read/write performance of at least 10 MB/s ('U1' symbol featuring number 1 inside 'U') and class 3 for minimum write performance of 30 MB/s ('U3' symbol featuring 3 inside 'U'), targeted at recording 4K video. Before November 2013, the rating was branded UHS Speed Grade and contained grades 0 (no symbol) and 1 ('U1' symbol). Manufacturers can also display standard speed class symbols (C2, C4, C6, and C10) alongside, or in place of UHS speed class.
Video Speed Class defines a set of requirements for UHS cards to match the modern MLC NAND flash memory and supports progressive 4K and 8K video with minimum sequential writing speeds of 6-90 MB/s. The graphical symbols use 'V' followed by a number designating write speed (V6, V10, V30, V60, and V90).
Application Performance Class is a newly defined standard from the SD Specification 5.1 and 6.0 which not only define sequential Reading Speeds but also mandates a minimum IOPS for reading and writing. Class A1 requires a minimum of 1500 reading and 500 writing operations per second, while class A2 requires 4000 and 2000 IOPS.
UHS memory cards work best with UHS host devices. The combination lets the user record HD resolution videos with tapeless camcorders while performing other functions. It is also suitable for real-time broadcasts and capturing large HD videos.
The most important advice[according to whom?] to consumers is to continue to match SD card purchases to an application's recommended speed class. Applications that require a specific speed class usually specify this in their user manuals.
The "×" rating, that was used by some card manufacturers and made obsolete by speed classes, is a multiple of the standard CD-ROM drive speed of 150 KiB/s (approximately 1.23 Mbit/s). Basic cards transfer data at up to six times (6×) the CD-ROM speed; that is, 900 KiB/s or 7.37 Mbit/s. The 2.0 specification[clarification needed] defines speeds up to 200×, but is not as specific as Speed Classes are on how to measure speed. Manufacturers may report best-case speeds and may report the card's fastest read speed, which is typically faster than the write speed. Some vendors, including Transcend and Kingston, report their cards' write speed. When a card lists both a speed class and an "×" rating, the latter may be assumed a read speed only.
In applications that require sustained write throughput, such as video recording, the device might not perform satisfactorily if the SD card's class rating falls below a particular speed. For example, a high-definition camcorder may require a card of not less than Class 6, suffering dropouts or corrupted video if a slower card is used. Digital cameras with slow cards may take a noticeable time after taking a photograph before being ready for the next, while the camera writes the first picture.
The speed class rating does not totally characterize card performance. Different cards of the same class may vary considerably while meeting class specifications. A card's speed depends on many factors, including:
In addition, speed may vary markedly between writing a large amount of data to a single file (sequential access, as when a digital camera records large photographs or videos) and writing a large number of small files (a random-access use common in smartphones). A study in 2012 found that, in this random-access use, some Class 2 cards achieved a write speed of 1.38 MB/s, while all cards tested of Class 6 or greater (and some of lower Classes; lower Class does not necessarily mean better small-file performance), including those from major manufacturers, were over 100 times slower. In 2014, a blogger measured a 300-fold performance difference on small writes; this time, the best card in this category was a class 4 card.
The host device can command the SD card to become read-only (to reject subsequent commands to write information to it). There are both reversible and irreversible host commands that achieve this.
The user can designate most full-size SD cards as read-only by use of a sliding tab that covers a notch in the card. The miniSD and microSD formats do not support a write protection notch.
When looking at the SD card from the top, the right side (the side with the beveled corner) must be notched.
On the left side, there may be a write-protection notch. If the notch is omitted, the card can be read and written. If the card is notched, it is read-only. If the card has a notch and a sliding tab which covers the notch, the user can slide the tab upward (toward the contacts) to declare the card read/write, or downward to declare it read-only. The diagram to the right shows an orange sliding write-protect tab in both the unlocked and locked positions.
The presence of a notch, and the presence and position of a tab, have no effect on the SD card's operation. A host device that supports write protection should refuse to write to an SD card that is designated read-only in this way. Some host devices do not support write protection, which is an optional feature of the SD specification. Drivers and devices that do obey a read-only indication may give the user a way to override it.
Cards sold with content that must not be altered are permanently marked read-only by having a notch and no sliding tab.
A host device can lock an SD card using a password of up to 16 bytes, typically supplied by the user. A locked card interacts normally with the host device except that it rejects commands to read and write data. A locked card can be unlocked only by providing the same password. The host device can, after supplying the old password, specify a new password or disable locking. Without the password (typically, in the case that the user forgets the password), the host device can command the card to erase all the data on the card for future re-use (except card data under DRM), but there is no way to gain access to the existing data.
Windows Phone 8 devices use SD cards designed for access only by the phone manufacturer or mobile provider. An SD card inserted into the phone underneath the battery compartment becomes locked "to the phone with an automatically generated key" so that "the SD card cannot be read by another phone, device, or PC".Symbian devices, however, are some of the few that can perform the necessary low-level format operations on locked SD cards. It is therefore possible to use a device such as the Nokia N8 to reformat the card for subsequent use in other devices.
A smartSD memory card is a microSD card with an internal "secure element" that allows the transfer of ISO 7816 Application Protocol Data Unit commands to, for example, JavaCard applets running on the internal secure element through the SD bus.
Vendors have sought to differentiate their products in the market through various vendor-specific features:
A SDIO (Secure Digital Input Output) card is an extension of the SD specification to cover I/O functions. SDIO cards are only fully functional in host devices designed to support their input-output functions (typically PDAs like the Palm Treo, but occasionally laptops or mobile phones). These devices can use the SD slot to support GPS receivers, modems, barcode readers, FM radio tuners, TV tuners, RFID readers, digital cameras, and interfaces to Wi-Fi, Bluetooth, Ethernet, and IrDA. Many other SDIO devices have been proposed, but it is now more common for I/O devices to connect using the USB interface.
SDIO cards support most of the memory commands of SD cards. SDIO cards can be structured as eight logical cards, although currently, the typical way that an SDIO card uses this capability is to structure itself as one I/O card and one memory card.
The SDIO and SD interfaces are mechanically and electrically identical. Host devices built for SDIO cards generally accept SD memory cards without I/O functions. However, the reverse is not true, because host devices need suitable drivers and applications to support the card's I/O functions. For example, an HP SDIO camera usually does not work with PDAs that do not list it as an accessory. Inserting an SDIO card into any SD slot causes no physical damage nor disruption to the host device, but users may be frustrated that the SDIO card does not function fully when inserted into a seemingly compatible slot. (USB and Bluetooth devices exhibit comparable compatibility issues, although to a lesser extent thanks to standardized USB device classes and Bluetooth profiles.)
The SDIO family comprises Low-Speed and Full-Speed cards. Both types of SDIO cards support SPI and one-bit SD bus types. Low-Speed SDIO cards are allowed to also support the four-bit SD bus; Full-Speed SDIO cards are required to support the four-bit SD bus. To use an SDIO card as a "combo card" (for both memory and I/O), the host device must first select four-bit SD bus operation. Two other unique features of Low-Speed SDIO are a maximum clock rate of 400 kHz for all communications, and the use of Pin 8 as "interrupt" to try to initiate dialogue with the host device.
The one-bit SD protocol was derived from the MMC protocol, which envisioned the ability to put up to three cards on a bus of common signal lines. The cards use open collector interfaces, where a card may pull a line to the low voltage level; the line is at the high voltage level (because of a pull-up resistor) if no card pulls it low. Though the cards shared clock and signal lines, each card had its own chip select line to sense that the host device had selected it.
The SD protocol envisioned the ability to gang 30 cards together without separate chip select lines. The host device would broadcast commands to all cards and identify the card to respond to the command using its unique serial number.
In practice, cards are rarely ganged together because open-collector operation has problems at high speeds and increases power consumption. Newer versions of the SD specification recommend separate lines to each card.
Host devices that comply with newer versions of the specification provide backward compatibility and accept older SD cards. For example, SDXC host devices accept all previous families of SD memory cards, and SDHC host devices also accept standard SD cards.
Older host devices generally do not support newer card formats, and even when they might support the bus interface used by the card, there are several factors that arise:
In 1999, SanDisk, Matsushita, and Toshiba agreed to develop and market the Secure Digital (SD) Memory Card. The card was derived from the MultiMediaCard (MMC) and provided digital rights management based on the Secure Digital Music Initiative (SDMI) standard and for the time, a high memory density.
It was designed to compete with the Memory Stick, a DRM product that Sony had released the year before. Developers predicted that DRM would induce wide use by music suppliers concerned about piracy.
The trademarked SD logo was originally developed for the Super Density Disc, which was the unsuccessful Toshiba entry in the DVD format war. For this reason the D within the logo resembles an optical disc.
At the 2000 Consumer Electronics Show (CES) trade show, the three companies announced the creation of the SD Association (SDA) to promote SD cards. The SD Association, headquartered in San Ramon, California, United States, started with about 30 companies and today consists of about 1,000 product manufacturers that make interoperable memory cards and devices. Early samples of the SD Card became available in the first quarter of 2000, with production quantities of 32 and 64 MB cards available three months later.
The miniSD form was introduced at March 2003 CeBIT by SanDisk Corporation which announced and demonstrated it. The SDA adopted the miniSD card in 2003 as a small form factor extension to the SD card standard. While the new cards were designed especially for mobile phones, they are usually packaged with a miniSD adapter that provides compatibility with a standard SD memory card slot.
In September 2006, SanDisk announced the 4 GB miniSDHC. Like the SD and SDHC, the miniSDHC card has the same form factor as the older miniSD card but the HC card requires HC support built into the host device. Devices that support miniSDHC work with miniSD and miniSDHC, but devices without specific support for miniSDHC work only with the older miniSD card. Since 2008, miniSD cards were no longer produced.
The microSD removable miniaturized Secure Digital flash memory cards were originally named T-Flash or TF, abbreviations of TransFlash. TransFlash and microSD cards are functionally identical allowing either to operate in devices made for the other. SanDisk had conceived microSD when its chief technology officer and the chief technology officer of Motorola concluded that current memory cards were too large for mobile phones. The card was originally called T-Flash, but just before product launch, T-Mobile sent a cease-and-desist order to SanDisk claiming that T-Mobile owned the trademark on T-(anything), and the name was changed to TransFlash. At CTIA Wireless 2005, the SDA announced the small microSD form factor along with SDHC secure digital high capacity formatting in excess of 2 GB with a minimum sustained read and write speed of 17.6 Mbit/s. SanDisk induced the SDA to administer the microSD standard. The SDA approved the final microSD specification on July 13, 2005. Initially, microSD cards were available in capacities of 32, 64, and 128 MB.
In April 2006, the SDA released a detailed specification for the non-security related parts of the SD memory card standard and for the Secure Digital Input Output (SDIO) cards and the standard SD host controller.
The SDHC format, announced in January 2006, brought improvements such as 32 GB storage capacity and mandatory support for FAT32 filesystems.
In January 2009, the SDA announced the SDXC family, which supports cards up to 2 TB and speeds up to 300 MB/s. It features mandatory support for the exFAT filesystem.
SDXC was announced at Consumer Electronics Show (CES) 2009 (January 7-10, 2009). At the same show, SanDisk and Sony also announced a comparable Memory Stick XC variant with the same 2 TB maximum as SDXC, and Panasonic announced plans to produce 64 GB SDXC cards.
On March 6, 2009, Pretec introduced the first SDXC card, a 32 GB card with a read/write speed of 400 Mbit/s. But only early in 2010 did compatible host devices come onto the market, including Sony's Handycam HDR-CX55V camcorder, Canon's EOS 550D (also known as Rebel T2i) Digital SLR camera, a USB card reader from Panasonic, and an integrated SDXC card reader from JMicron. The earliest laptops to integrate SDXC card readers relied on a USB 2.0 bus, which does not have the bandwidth to support SDXC at full speed.
Also in early 2010, commercial SDXC cards appeared from Toshiba (64 GB), Panasonic (64 GB and 48 GB), and SanDisk (64 GB). In early 2011, Centon Electronics, Inc. (64 GB and 128 GB) and Lexar (128 GB) began shipping SDXC cards rated at Speed Class 10. Pretec offered cards from 8 GB to 128 GB rated at Speed Class 16.
In April 2012, Panasonic introduced MicroP2 card format for professional video applications. The cards are essentially full-size SDHC or SDXC UHS-II cards, rated at UHS Speed Class U1. An adapter allows MicroP2 cards to work in current P2 card equipment. Panasonic MicroP2 cards shipped in March 2013 and were the first UHS-II compliant products on market; initial offer includes a 32GB SDHC card and a 64GB SDXC card.
In February 2014, SanDisk introduced the first 128 GB microSDXC card, which was followed by a 200 GB microSDXC card in March 2015. September 2014 saw SanDisk announce the first 512 GB SDXC card.
Samsung announced the world's first EVO Plus 256 GB microSDXC card in May 2016. and in September 2016 Western Digital announced that a prototype of the first 1 TB SDXC card will be demonstrated at Photokina.
In May 2018, PNY launched a 512 GB microSDXC card. In June 2018 Kingston announced the Canvas series for MicroSD cards which both are capable of capabilities up to 512 GB, in three variations, Select, Go!, and React.
Secure Digital cards are used in many consumer electronic devices, and have become a widespread means of storing several gigabytes of data in a small size. Devices in which the user may remove and replace cards often, such as digital cameras, camcorders, and video game consoles, tend to use full-sized cards. Devices in which small size is paramount, such as mobile phones, tend to use microSD cards.
The microSD card has helped propel the smartphone market by giving both manufacturers and consumers greater flexibility and freedom.[according to whom?] Due to their compact size, microSD cards are used in many[which?] different applications in a large variety[which?] of markets. Action cameras, such as the GoPRO's Hero and cameras in drones, frequently use microSD cards.
Latest versions of major operating systems, including Windows Mobile and Android Marshmallow, allow applications to run from microSD cards creating possibilities for new usage models for SD cards in mobile computing markets.
SD cards are not the most economical solution in devices that need only a small amount of non-volatile memory, such as station presets in small radios. They may also not present the best choice for applications that require higher storage capacities or speeds as provided by other flash card standards such as CompactFlash. These limitations may be addressed by evolving memory technologies, with the new SD 7.0 specifications which allow storage capabilities of up to 128 TB.
Many personal computers of all types, including tablets and mobile phones, use SD cards, either through built-in slots or through an active electronic adapter. Adapters exist for the PC card, ExpressBus, USB, FireWire, and the parallel printer port. Active adapters also let SD cards be used in devices designed for other formats, such as CompactFlash. The FlashPath adapter lets SD cards be used in a floppy disk drive.
Commonly found on the market are mislabeled or counterfeit Secure Digital cards that report a fake capacity or run slower than labeled. Software tools exist to check and detect counterfeit products. Detection of counterfeit cards usually involves copying files with random data to the SD card until the card's capacity is reached, and copying them back. The files that were copied back can be tested either by comparing checksums (e.g. MD5), or trying to compress them. The latter approach leverages the fact that counterfeited cards let the user read back files, which then consist of easily compressible uniform data (for example, repeating 0xFFs).
SD/MMC cards replaced Toshiba's SmartMedia as the dominant memory card format used in digital cameras. In 2001, SmartMedia had achieved nearly 50% use, but by 2005 SD/MMC had achieved over 40% of the digital camera market and SmartMedia's share had plummeted by 2007.
At this time, all the leading digital camera manufacturers used SD in their consumer product lines, including Canon, Casio, Fujifilm, Kodak, Leica, Nikon, Olympus, Panasonic, Pentax, Ricoh, Samsung, and Sony. Formerly, Olympus and Fujifilm used XD-Picture Cards (xD cards) exclusively, while Sony only used Memory Stick; by early 2010 all three supported SD.
Some prosumer and professional digital cameras continued to offer CompactFlash (CF), either on a second card slot or as the only storage, as CF supports much higher maximum capacities and historically was cheaper for the same capacity.
Although many personal computers accommodate SD cards as an auxiliary storage device using a built-in slot, or can accommodate SD cards by means of a USB adapter, SD cards cannot be used as the primary hard disk through the onboard ATA controller, because none of the SD card variants support ATA signalling. Primary hard disk use requires a separate SD controller chip or an SD-to-CompactFlash converter. However, on computers that support bootstrapping from a USB interface, an SD card in a USB adapter can be the primary hard disk, provided it contains an operating system that supports USB access once the bootstrap is complete.
Since late 2009, newer Apple computers with installed SD card readers have been able to boot in macOS from SD storage devices, when properly formatted to Mac OS Extended file format and the default partition table set to GUID Partition Table. (See Other file systems below).
In 2008, the SDA specified Embedded SD, "leverag[ing] well-known SD standards" to enable non-removable SD-style devices on printed circuit boards. However this standard was not adopted by the market while the MMC standard became the de facto standard for embedded systems. SanDisk provides such embedded memory components under the iNAND brand.
Most modern microcontrollers have built-in SPI logic that can interface to an SD card operating in its SPI mode, providing non-volatile storage. Even if a microcontroller lacks the SPI feature, the feature can be emulated by bit banging. For example, a home-brew hack combines spare General Purpose Input/Output (GPIO) pins of the processor of the Linksys WRT54G router with MMC support code from the Linux kernel. This technique can achieve throughput of up to .
The SD card specification defines three physical sizes. The SD and SDHC families are available in all three sizes, but the SDXC family is not available in the mini size, and the SDIO family is not available in the micro size. Smaller cards are usable in larger slots through use of a passive adapter.
The micro form factor is the smallest SD card format.
Cards may support various combinations of the following bus types and transfer modes. The SPI bus mode and one-bit SD bus mode are mandatory for all SD families, as explained in the next section. Once the host device and the SD card negotiate a bus interface mode, the usage of the numbered pins is the same for all card sizes.
The physical interface comprises 9 pins, except that the miniSD card adds two unconnected pins in the center and the microSD card omits one of the two VSS (Ground) pins.
|1||1||1||2||nCS||I||PP||SPI Card Select [CS] (Negative logic)|
|2||2||2||3||DI||I||PP||SPI Serial Data In [MOSI]|
|5||5||5||5||CLK||I||PP||SPI Serial Clock [SCLK]|
|7||7||7||7||DO||O||PP||SPI Serial Data Out [MISO]|
|Unused (memory cards)|
Interrupt (SDIO cards) (negative logic)
|1||1||1||2||CD||I/O||.||Card detection (by host), and|
non-SPI mode detection (by card)
|7||7||7||7||DAT0||I/O||PP||SD Serial Data 0|
|Unused (memory cards)|
Interrupt (SDIO cards) (negative Logic)
|.||1||1||2||DAT3||I/O||PP||SD Serial Data 3|
|.||7||7||7||DAT0||I/O||PP||SD Serial Data 0|
|SD Serial Data 1 (memory cards)|
Interrupt Period (SDIO cards share pin via protocol)
|9||9||1||DAT2||I/O||PP||SD Serial Data 2|
SD cards and host devices initially communicate through a synchronous one-bit interface, where the host device provides a clock signal that strobes single bits in and out of the SD card. The host device thereby sends 48-bit commands and receives responses. The card can signal that a response will be delayed, but the host device can abort the dialogue.
Through issuing various commands, the host device can:
The command interface is an extension of the MultiMediaCard (MMC) interface. SD cards dropped support for some of the commands in the MMC protocol, but added commands related to copy protection. By using only commands supported by both standards until determining the type of card inserted, a host device can accommodate both SD and MMC cards.
At initial power-up or card insertion, the host device selects either the Serial Peripheral Interface (SPI) bus or the one-bit SD bus by the voltage level present on Pin 1. Thereafter, the host device may issue a command to switch to the four-bit SD bus interface, if the SD card supports it. For various card types, support for the four-bit SD bus is either optional or mandatory.
After determining that the SD card supports it, the host device can also command the SD card to switch to a higher transfer speed. Until determining the card's capabilities, the host device should not use a clock speed faster than 400 kHz. SD cards other than SDIO (see below) have a "Default Speed" clock rate of 25 MHz. The host device is not required to use the maximum clock speed that the card supports. It may operate at less than the maximum clock speed to conserve power. Between commands, the host device can stop the clock entirely.
The SD specification defines four-bit-wide transfers. (The MMC specification supports this and also defines an eight-bit-wide mode; MMC cards with extended bits were not accepted by the market.) Transferring several bits on each clock pulse improves the card speed. Advanced SD families have also improved speed by offering faster clock frequencies and double data rate (explained here) in a high-speed differential interface (UHS-II).
Like other types of flash memory card, an SD card of any SD family is a block-addressable storage device, in which the host device can read or write fixed-size blocks by specifying their block number.
Most SD cards ship preformatted with one or more MBR partitions, where the first or only partition contains a file system. This lets them operate like the hard disk of a personal computer. Per the SD card specification, an SD card is formatted with MBR and the following file system:
Most consumer products that take an SD card expect that it is partitioned and formatted in this way. Universal support for FAT12, FAT16, FAT16B, and FAT32 allows the use of SDSC and SDHC cards on most host computers with a compatible SD reader, to present the user with the familiar method of named files in a hierarchical directory tree.
On such SD cards, standard utility programs such as Mac OS X's "" or Windows' SCANDISK can be used to repair a corrupted filing system and sometimes recover deleted files. Defragmentation tools for FAT file systems may be used on such cards. The resulting consolidation of files may provide a marginal improvement in the time required to read or write the file, but not an improvement comparable to defragmentation of hard drives, where storing a file in multiple fragments requires additional physical, and relatively slow, movement of a drive head. Moreover, defragmentation performs writes to the SD card that count against the card's rated lifespan. The write endurance of the physical memory is discussed in the article on flash memory; newer technology to increase the storage capacity of a card provides worse write endurance.
When reformatting an SD card with a capacity of at least 32 MB (65536 logical sectors or more), but not more than 2 GB, FAT16B with partition type 06h and EBPB 4.1 is recommended if the card is for a consumer device. (FAT16B is also an option for 4 GB cards, but it requires the use of 64 kiB clusters, which are not widely supported.) FAT16B does not support cards above 4 GB at all.
Because the host views the SD card as a block storage device, the card does not require MBR partitions or any specific file system. The card can be reformatted to use any file system the operating system supports. For example:
Any recent version of the above can format SD cards using the UDF file system.
Additionally, as with live USB flash drives, an SD card can have an operating system installed on it. Computers that can boot from an SD card (either using a USB adapter or inserted into the computer's flash media reader) instead of the hard disk drive may thereby be able to recover from a corrupted hard disk drive. Such an SD card can be write-locked to preserve the system's integrity.
The SD Standard allows usage of only the above-mentioned Microsoft FAT file systems and any card produced in the market shall be preloaded with the related standard file system upon its delivery to the market. If any application or user re-formats the card with a non-standard file system the proper operation of the card, including interoperability, cannot be assured.
Reformatting an SD card with a different file system, or even with the same one, may make the card slower, or shorten its lifespan. Some cards use wear leveling, in which frequently modified blocks are mapped to different portions of memory at different times, and some wear-leveling algorithms are designed for the access patterns typical of FAT12, FAT16 or FAT32. In addition, the preformatted file system may use a cluster size that matches the erase region of the physical memory on the card; reformatting may change the cluster size and make writes less efficient. The SD Association provides freely-downloadable SD Formatter software to overcome these problems for Windows and Mac OS X.
SD/SDHC/SDXC memory cards have a "Protected Area" on the card for the SD standard's security function. Neither standard formatters nor the SD Association formatter will erase it. The SD Association suggests that devices or software which use the SD security function may format it.
The power consumption of SD cards varies by its speed mode, manufacturer and model.
During transfer it may be in the range of 66-330 mW (20-100 mA at a supply voltage of 3.3 V). Specifications from TwinMos technologies list a maximum of 149 mW (45 mA) during transfer. Toshiba lists 264-330 mW (80-100 mA). Standby current is much lower, less than 0.2 mA for one 2006 microSD card. If there is data transfer for significant periods, battery life may be reduced noticeably (smartphones typically have batteries of capacity around 6 Wh (Samsung Galaxy S2, 1650 mAh @ 3.7 V)).
Modern UHS-II cards can consume up to 2.88 W, if the host device supports bus speed mode SDR104 or UHS-II. Minimum power consumption in the case of a UHS-II host is 0.72 W.
|SDR12||12.5||25||1.8||-||0.36||0.36 / 0.54|
|Default Speed||12.5||25||3.3||0.33||0.36||0.36 / 0.54|
All SD cards let the host device determine how much information the card can hold, and the specification of each SD family gives the host device a guarantee of the maximum capacity a compliant card reports.
By the time the version 2.0 (SDHC) specification was completed in June 2006, vendors had already devised 2 GB and 4 GB SD cards, either as specified in Version 1.01, or by creatively reading Version 1.00. The resulting cards do not work correctly in some host devices.
A host device can ask any inserted SD card for its 128-bit identification string (the Card-Specific Data or CSD). In standard-capacity cards (SDSC), 12 bits identify the number of memory clusters (ranging from 1 to 4,096) and 3 bits identify the number of blocks per cluster (which decode to 4, 8, 16, 32, 64, 128, 256, or 512 blocks per cluster). The host device multiplies these figures (as shown in the following section) with the number of bytes per block to determine the card's capacity in bytes.
Version 1.01 let an SDSC card use a 4-bit field to indicate 1,024 or 2,048 bytes per block instead. Doing so enabled cards with 2 GB and 4 GB capacity, such as the Transcend 4 GB SD card and the Memorette 4GB SD card.
Early SDSC host devices that assume 512-byte blocks therefore do not fully support the insertion of 2 GB or 4 GB cards. In some cases, the host device can read data that happens to reside in the first 1 GB of the card. If the assumption is made in the driver software, success may be version-dependent. In addition, any host device might not support a 4 GB SDSC card, since the specification lets it assume that 2 GB is the maximum for these cards.
The format of the Card-Specific Data (CSD) register changed between version 1 (SDSC) and version 2.0 (which defines SDHC and SDXC).
In version 1 of the SD specification, capacities up to 2 GB are calculated by combining fields of the CSD as follows:
Capacity = (C_SIZE + 1) × 2(C_SIZE_MULT + READ_BL_LEN + 2) where 0 C_SIZE C_SIZE_MULT READ_BL_LEN is 9 (for 512 bytes/sector) or 10 (for 1024 bytes/sector)
Later versions state (at Section 4.3.2) that a 2 GB SDSC card shall set its READ_BL_LEN (and WRITE_BL_LEN) to indicate 1024 bytes, so that the above computation correctly reports the card's capacity; but that, for consistency, the host device shall not request (by CMD16) block lengths over 512bytes.
In the definition of SDHC cards in version 2.0, the C_SIZE portion of the CSD is 22 bits and it indicates the memory size in multiples of 512 KB (the C_SIZE_MULT field is removed and READ_BL_LEN is no longer used to compute capacity). Two bits that were formerly reserved now identify the card family: 0 is SDSC; 1 is SDHC or SDXC; 2 and 3 are reserved. Because of these redefinitions, older host devices do not correctly identify SDHC or SDXC cards nor their correct capacity.
Capacity is calculated thus:
Capacity = (C_SIZE + 1) × 524288 where for SDHC 4112 C_SIZE C_SIZE ?32 GB
Capacities above 4 GB can only be achieved by following version 2.0 or later versions. In addition, capacities equal to 4 GB must also do so to guarantee compatibility.
Openness of specification
Like most memory card formats, SD is covered by numerous patents and trademarks. Royalties for SD card licences are imposed for manufacture and sale of memory cards and host adapters (US$1,000/year plus membership at US$1,500/year), but SDIO cards can be made without royalties.
Early versions of the SD specification were available only after agreeing to a non-disclosure agreement (NDA) that prohibited development of an open-source driver. However, the system was eventually reverse-engineered, and free software drivers provided access to SD cards that did not use DRM. Since then, the SDA has provided a simplified version of the specification under a less restrictive license. Although most open-source drivers were written before this, it has helped to solve compatibility issues.
In 2006, the SDA released a simplified version of the specification of the host controller interface (as opposed to the specification of SD cards) and later also for the physical layer, ASSD extensions, SDIO, and SDIO Bluetooth Type-A, under a disclaimers agreement. Again, most of the information had already been discovered and Linux had a fully free driver for it. Still, building a chip conforming to this specification caused the One Laptop per Child project to claim "the first truly Open Source SD implementation, with no need to obtain an SDI license or sign NDAs to create SD drivers or applications."
The proprietary nature of the complete SD specification affects embedded systems, laptop computers, and some desktop computers; many desktop computers do not have card slots, instead using USB-based card readers if necessary. These card readers present a standard USB mass storage interface to memory cards, thus separating the operating system from the details of the underlying SD interface. However, embedded systems (such as portable music players) usually gain direct access to SD cards and thus need complete programming information. Desktop card readers are themselves embedded systems; their manufacturers have usually paid the SDA for complete access to the SD specifications. Many notebook computers now include SD card readers not based on USB; device drivers for these essentially gain direct access to the SD card, as do embedded systems.
The SPI-bus interface mode is the only type that does not require a host license for accessing SD cards.
Comparison to other flash memory formats
Overall, SD is less open than CompactFlash or USB flash memory drives. Those open standards can be implemented without paying for licensing, royalties, or documentation. (CompactFlash and USB flash drives may require licensing fees for the use of the SDA's trademarked logos.)
However, SD is much more open than Sony's Memory Stick, for which no public documentation nor any documented legacy implementation is available. All SD cards can be accessed freely using the well-documented SPI bus.
xD cards are simply 18-pin NAND flash chips in a special package and support the standard command set for raw NAND flash access. Although the raw hardware interface to xD cards is well understood, the layout of its memory contents--necessary for interoperability with xD card readers and digital cameras--is totally undocumented. The consortium that licenses xD cards has not released any technical information to the public.
|Width||24 mm||24 mm||24 mm||24 mm||24 mm||24 mm||24 mm||20 mm||11 mm|
|Length||32 mm||18 mm||32 mm||18 mm||32 mm||32 mm+||32 mm||21.5 mm||15 mm|
|Thickness||1.4 mm||1.4 mm||1.4 mm||1.4 mm||1.4 mm||2.1 mm||2.1 mm (most)
1.4 mm (rare)
|1.4 mm||1 mm|
|1-bit SPI-bus mode||Optional||Optional||Optional||Optional||Yes||Yes||Yes||Yes||Yes|
|Max SPI bus clock||20 MHz||20 MHz||52 MHz||52 MHz||20 MHz||50 MHz||25 MHz||50 MHz||50 MHz|
|1-bit MMC/SD bus mode||Yes||Yes||Yes||Yes||Yes||Yes||Yes||Yes||Yes|
|4-bit MMC/SD bus mode||No||No||Yes||Yes||No||Optional||Yes||Yes||Yes|
|8-bit MMC bus mode||No||No||Yes||Yes||No||No||No||No||No|
|Max MMC/SD bus clock||20 MHz||20 MHz||52 MHz||52 MHz||20 MHz?||50 MHz||208 MHz||208 MHz||208 MHz|
|Max MMC/SD transfer rate||20 Mbit/s||20 Mbit/s||832 Mbit/s||832 Mbit/s||20 Mbit/s?||200 Mbit/s||832 Mbit/s||832 Mbit/s||832 Mbit/s|
|Membership cost||JEDEC: US$4,400/yr, optional||SD Card Association: US$2,000/year, general; US$4,500/year, executive|
|Specification cost||Free||Unknown||Simplified: free. Full: membership, or US$1,000/year to R&D non-members|
|Host license||No||No||No||No||No||US$1,000/year, excepting SPI-mode only use|
|Card royalties||Yes||Yes||Yes||Yes||Yes||Yes, US$1,000/year||Yes||Yes||Yes|
|Nominal voltage||3.3 V||3.3 V||3.3 V||1.8 V/3.3 V||1.8 V/3.3 V||3.3 V||3.3 V (SDSC),
1.8/3.3 V (SDHC & SDXC)
|3.3 V (miniSD),
1.8/3.3 V (miniSDHC)
|3.3 V (SDSC),|
1.8/3.3 V (microSDHC & microSDXC)
|Max capacity||128 GB||2 GB||128 GB?||2 GB||128 GB?||?||2 GB (SD),
32 GB (SDHC),
512 GB (SDXC),
2 TB (SDXC, theoretical)
|2 GB (miniSD),
16 GB (miniSDHC)
|2 GB (microSD),|
32 GB (microSDHC),
512 GB (microSDXC),
2 TB (microSDXC, theoretical)
A malfunctioning SD card can be repaired using specialized equipment, as long as the middle part, containing the flash storage, is not physically damaged. The controller can in this way be circumvented.
Speed class considered irrelevant: our benchmarking reveals that the "speed class" marking on SD cards is not necessarily indicative of application performance; although the class rating is meant for sequential performance, we find several cases in which higher-grade SD cards performed worse than lower-grade ones overall.
Variations in 4k small block performance saw a difference of approximately 300-fold between the fastest and slowest cards. Distressingly, many of the tested cards were mediocre to poor on that metric, which may explain why running updates on Linux running off SD cards can take a very long time.