SD card

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by DumZiBoT (talk | contribs) at 04:08, 26 March 2008 (Bot: Converting bare references, see FAQ). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Secure Digital
Pair of SD cards
Media typeMemory Card
CapacityStandard SD: 8 MB to 4 GB
SDHC: 4 GB to 128 GB (theoretical max.)
Developed bySD Card Association
UsagePortable devices, including digital cameras and handheld computers
Extended fromMultiMediaCard (MMC)

Secure Digital (SD) is a flash (non-volatile) memory card format developed by Matsushita, SanDisk and Toshiba for use in portable devices, including digital cameras, handheld computers, PDAs, mobile phones and GPS units, as well as the Wii video game console. SD card capacities range from 8 MB to 4 GB, and upto 32 GB for SDHC cards as of 2008, although sizes less than 128 megabytes are rarely sold in stores.

The format has proven to be very popular. However, compatibility issues between older devices upto 4 GB and SDHC high capacity cards enabling more than 4 GB of storage have caused considerable confusion for consumers. [1] [2]

History

In August of 1999, Matsushita (better known by its Panasonic brand name), SanDisk, and Toshiba first announced an agreement on a comprehensive collaboration to jointly develop, specify and widely promote a next generation secure memory card called the SD Memory Card. With a physical profile of 24 mm × 32 mm × 2.1 mm, the new card provided both an SDMI-compliant (Secure Digital Music Initiative), high-level of copyright protection and high-density memory capacity for the time. The new memory card format was designed to compete with Sony's Memory Stick format that was released in 1998.

The “Secure” in Secure Digital comes from the card’s origin. To create the SD card, Toshiba added encryption hardware to the already-existent MMC, to calm music industry concerns that MMCs would allow for easy piracy of music. (A similar scheme is the MagicGate standard used in Memory Sticks.) In theory, the encryption would allow some enforcement of Digital rights management[1] schemes on digital music, but the capability is rarely used.

The signature “SD” logo was actually developed for another use entirely: it was originally used for “Super Density Disc”, a prototype format by Toshiba created during the development of DVD. This is why the “D” looks similar to half of an optical disc, possibly reinforced by the SD card's music industry features and consumers' familiarity with music on optical discs.

At the 2000 CES trade show Matsushita, SanDisk and Toshiba Corporation announced that a new industry-wide association would be created to set industry standards for their proprietary SD (Secure Digital) Memory Card and promote its wide acceptance in digital applications. The new organization, named the SDAssociation (SDA), is headquartered in California and its executive membership includes some 30 world-leading high-tech companies and major content companies. Sampling of the SD Memory Card began in the first quarter of 2000, and production shipments commenced in the second quarter of 2000. The card was initially available in 32 and 64 megabyte capacities.

In April 2006, the SDA released a detailed specification for the non-security related portions of the SD Memory Card standard. In addition, they released specifications for the SDIO cards and the standard SD host controller. During the same year, specifications were finalised for the small form-factor microSD (formerly known as TransFlash) and SDHC, with capacities in excess of 2 GB and a minimum sustained read/write speed of 2.2 MB/s.

Form factor

An SD card, mini SD card, and micro SD card from top to bottom.

SD cards are based on the older MultiMediaCard (MMC) format, but have a number of differences:

  • The SD card is asymmetrically shaped in order not to be inserted upside down, while an MMC would go in most of the way but not make contact if inverted.
  • Most SD cards are physically thicker than MMCs. SD cards generally measure 32 mm × 24 mm × 2.1 mm, but can be as thin as 1.4 mm, just like MMCs (see below).
  • The contacts are recessed beneath the surface of the card (like Memory Stick cards), protecting the contacts from contact with the fringes.
  • SD cards typically have higher data transfer rates, but this is always changing, particularly in light of recent improvements to the MMC standard.

Devices with SD slots can use the thinner MMCs, but the standard SD cards will not fit into the thinner MMC slots. SD cards can be used in CompactFlash or PC card slots with an adapter. miniSD and microSD cards can be used directly in SD slots with a physical interface adapter. There are some SD cards with a USB connector for dual-purpose use, and there are card readers which allow SD cards to be accessed via many connectivity ports such as USB, FireWire, and the parallel printer port. SD cards can also be accessed via a floppy disk drive with a FlashPath adapter.

Optional write-protect tab

When looking at the card from the top (see pictures) there is one required notch on the right side (the side with the diagonal notched corner).

On the left side there is usually a slidable tab. This is the write-protect tab. The MMC has neither notch. It is easy to mistake this tab as an electronic on/off switch built inside the card, but it is used simply as a tab/notch switch. The tab/notch works the same way as the notches on compact audio cassettes and videotape cassette tapes or floppy disks, where the device senses the tab/notch and determines if the card is write-protected or not.

When this write-protect tab is in the down position (away from the end that is inserted) then it is write protected and read-only. When the tab is in the up position it is write enabled. Since the tab is optional, the card can have no switch and no notch, which makes the card always writable, or it can have an empty notch and be a ROM card, or always write-protected and read-only. If the tab becomes broken or falls off then the card will become a write-protected ROM card and no longer be writable. A possible troubleshooting solution would be to apply tape over the notched area (avoiding the connectors and the other notch) to configure the card in a permanent writable state.

If the sensor inside the device is faulty and unable to detect the tab/notch, all SD cards will seem to be either write-protected or write-enabled, depending on the failure mode.

The write protect tab feature is optional within the Secure Digital Association guidelines. Some manufacturers claim that the write switch is easily broken, and do not include it on all their card models[3].

Speeds

There are different speed grades available which are measured with the same system as CD-ROMs, in multiples of 150 kB/s (1x = 150 kB/s). Basic cards transfer data up to six times (6x) the data rate of the standard CD-ROM speed (900 kB/s vs. 150 kB/s). High-speed cards are made with higher data transfer rates like 66x (10 MB/s), and high-end cards have speeds of 150x or higher. Note that maximum read speed and maximum write speed may be different, with maximum write speed typically lower than maximum read speed. Some digital cameras require high-speed cards (write speed) to record video smoothly or capture multiple still photographs in rapid succession. As of December 2005, most devices comply to the SD card specification 1.01, maximum speed of 66x. Higher speeds of up to 133x are defined by specification 1.1.

Rating Speed (MB/s)
  6x  0.9
 40x  6.0
 66x 10.0
133x 20.0

Openness of standards

The insides of a Samsung 512 MB SD Card

Like most memory card formats, SD is covered by numerous patents (e.g. US patent 5602987) and trademarks.

There are three versions of the SD specification: 1.0, 1.1 and 2.0. These were originally only available after agreeing to a non-disclosure agreement (NDA) which prohibits the development of an open source driver, a fact that generates a fair amount of consternation in the open-source and free software communities. The system was eventually reverse-engineered though, and the non-DRMed sections of the memory cards could be accessed by free software drivers.

These days however, the SD Card Association (SDA) has made access to a simplified version of the specification under a less-restrictive licence.[4] Although most open-source drivers were written before this, it has helped them to solve some compatibility issues.

In 2006, The SDA also released a simplified version of their host controller interface specification (not to be confused with the physical specification, which covers the actual cards and their protocol).[5] Like the physical specification, most of the information had already been discovered before the public release[6] and at least 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."[7]

For the most part, the lack of complete, open SD specifications mainly affects embedded systems, since desktop users generally read SD cards via USB-based card readers. 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 access SD cards directly, and therefore complete programming information is necessary. Desktop card readers are themselves examples of such embedded systems; the manufacturers of these readers have usually paid the SDCA for complete access to the SD specifications. Many notebook computers now include SD card readers not based on USB; device drivers for these essentially access the SD card directly, as in embedded systems.

Technical explanation

SD supports at least three transfer modes:

  • One-bit SD mode (separate command and data channels and a proprietary transfer format)
  • Four-bit SD mode (uses extra pins plus some reassigned pins)
  • SPI mode (basically, a simpler subset of the SD protocol for use with microcontrollers)

All memory cards must support all three modes, except for microSD where SPI is optional. The cards must also support clock frequencies of up to 25 MHz for regular cards, and 50 MHz for high-speed cards.

Royalties for SD/SDIO licenses are imposed for manufacture and sale of memory cards and host adapters (1000 USD per year plus membership at 1500 USD/year) but SDIO cards can be made without royalties and MMC host adapters do not require a royalty. MMCs have a seven-pin interface; SD and SDIO have expanded this to nine pins and MMC Plus expands this even further with thirteen pins.

DRM features

The digital rights management scheme embedded in the SD cards is defined as the Content Protection for Recordable Media (CPRM) by the 4C Entity and is centered around use of the Cryptomeria cipher (also known as C2). The specification is kept secret and is only accessible to licensees. DVD-Audio uses a very similar scheme known as Content Protection for Prerecorded Media (CPPM). This type of DRM is associated with the reclusive SDMI, an organisation set up by the RIAA to promote such hardware-based copy protection schemes. Many SD cards are marked on the packaging as being 'SDMI Compliant' for this reason. This DRM has not been seen "in the wild" and few, if any, devices appear to provide support for it.

Super*Talent, a manufacturer of computer memory, has created the "Super Digital" card. They are the same in appearance and function to regular Secure Digital cards, but they lack the CPRM code commonly found in Secure Digital cards. [8]

Compared to other flash memory formats

Overall, SD is less open than CompactFlash or USB flash memory drives, which can be implemented for free but require licensing fees for the associated logos and trademarks.

However, SD is far more open than Memory Stick, for which no public documentation nor any documented legacy implementation is available. All SD cards can, at least, be accessed freely using the well-documented SPI/MMC mode.

xD cards are simply 18-pin NAND flash chips in a special package, and support the standard command set for raw NAND flash access (more information). 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 publicly available technical information.

Different types of MMC/SD cards

The SD card is not the only flash memory card standard ratified by the Secure Digital Card Association. Other SD Card Association formats include miniSD, microSD (formerly known as TransFlash before ratification by the SD Card Association), and SDHC (Secure Digital High Capacity, for capacities above 4 GB). SDHC is not fully compatible with the format that it extends, in that SD devices that do not specifically support SDHC will not work with the newer cards.

These smaller miniSD and microSD cards are usable in full size MMC/SD/SDIO slots with an adapter (which must route the electrical connections as well as making physical contact). It should be noted, however, that it is already difficult to create I/O devices in the SD form factor and this will be even more difficult in the smaller sizes. However, a WiFi card for mini-SDIO is already available from Spectec.

As SD slots still support MMCs, the separately-evolved smaller MMC variants are also compatible with SD-supporting devices. Unlike miniSD and microSD (which are sufficiently different from SD to make mechanical adapters necessary), RS-MMC slots maintain backward compatibility with full-sized MMCs, because the RS-MMCs are simply shorter MMCs. More information on these variants can be found in the article about the MultiMediaCard standard.

It is also important to note, that unlike for the data storage (which typically works everywhere where SD slot is present), the SDIO device must be supported and equipped with drivers and applications for the host system and usually doesn't work outside of manufacturer's scope (which means, for example, that an HP SDIO camera usually does not work in PDAs for which it is not listed as an accessory). This behavior is often not expected by end users (who expect that only the SD slot is required) and is similar to compatibility problems among Bluetooth devices.

Most, possibly all, current MMC flash memory cards support SPI mode even if not officially required as failure to do so would severely affect compatibility. All cards currently made by SanDisk, Ritek/Ridata, and Kingmax digital appear to support SPI. Also, MMCs may be electrically identical to SD cards but in a thinner package and with a fuse blown to disable SD functionality (so no SD royalties need to be paid). Some MicroSD cards do not support SPI mode.

MMC defined the SPI and one-bit MMC/SD protocols. The underlying SPI protocol has existed for years as a standard feature on many microcontrollers. From a societal perspective, the justification for a new incompatible SD/MMC protocol is questionable; the development of a new incompatible and unnecessary protocol may help trade associations collect licensing and membership fees but it raises the cost of hardware and software in many ways. The new protocol used open collector signalling to allow multiple cards on the same bus but this actually causes problems at higher clock rate. While SPI used three shared lines plus a separate chip select to each card, the new protocol allows up to 30 cards to be connected to the same three wires (with no chip select) at the expense of a much more complicated card initialization and the requirement that each card have a unique serial number for plug and play operation; this feature is rarely used and its use is actively discouraged in new standards (which recommend a completely separate channel to each card) because of speed and power consumption issues. The quasi-proprietary one-bit protocol was extended to support four bit wide (SD and MMC) and eight bit (MMC only) transfers for more speed while much of the rest of the computer industry is moving to higher speed narrower channels; standard SPI could simply have been clocked at higher data rates (such as 133 MHz) for higher performance than offered by four-bit SD — embedded CPUs that did not already have higher clock rates available would not have been fast enough to handle the higher data rates anyway. The SD card association dropped support for some of the old one-bit MMC protocol commands and added support for additional commands related to copy protection.

Compatibility issues with 2 GB and larger cards

Compatibility with 2 gigabyte and larger SD cards has been poor, due to the SD/MMC protocol's using a 32-bit address field denominated in bytes. The SDHC standard addresses this limitation by using 32-bit block addresses instead. Both SD and SDHC are traditionally accessed as 512-byte blocks on 512-byte boundaries, so the change to host software or firmware is minor but required. Before SDHC was standardized, various manufacturers "extended" the SD control block fields for their 2 GB and 4 GB cards in different ways. Those cards are incompatible with many SD and some SDHC devices, as they conform to neither standard. All SDHC readers work with standard SD cards.[9]

Many older devices will not accept the 2 GB size even though it is in the revised standard. The following statement is from the SD association specification:

"To make 2 GByte card, the Maximum Block Length (READ_BL_LEN=WRITE_BL_LEN) shall be set to 1024 bytes. However, the Block Length, set by CMD16, shall be up to 512 bytes to keep consistency with 512 bytes Maximum Block Length cards (Less than and equal 2 Gbyte cards)."[10]

Since all cards up to and including the 1 GB card use a fixed 512 block size, some device drivers do not handle the larger block size and will not even recognize the 2 GB card. For example, the SanDisk web site shows examples of devices such as the iPAQ 1910 that will support only 1 GB cards and the Epson Photo RX300 Technical support says they support only 1 GB cards in the SD slot. Users of many early card readers have found that they also support only cards up to 1 GB.

Why v1.01 SD cards can have 4 GB capacity

In the SD Card Associations "Simplified Physical Layer Specification v2.00" it is specified in:

Page 89:

Table 5.3.2 CSD Register (CSD Version 1.0)
Name Width Cell type CSD-slice
READ_BL_LEN 4 R [83:80]
C_SIZE 12 R [73:62]
C_SIZE_MULT 3 R [49:47]

Page 91

READ_BL_LEN Block-length
0-8 reserved
9 29 = 512 Bytes
10 210 = 1024 Bytes
11 211 = 2048 Bytes
12-15 reserved
"The maximum block length might therefore be in the range 512...2048 bytes"

Page 92

C_SIZE
"This parameter is used to compute the user's data card capacity"
memory capacity = BLOCKNR * BLOCK_LEN
memory capacity = (C_SIZE+1) * MULT
memory capacity = (C_SIZE+1) * 2^(C_SIZE_MULT+2)
memory capacity = (C_SIZE+1) * 2^(C_SIZE_MULT+2) * 2^(READ_BL_LEN)
C_SIZE is 12 bits => 0..4095
C_SIZE_MULT is 3 bits => 0..7
Thus maximum capacity is:
memory capacity = (4095+1) * 2^(7+2) * 2^(11) = 4294967296 = 4 GiB

Why v2.0 SDHC cards can have 2048 GB capacity

In the SD Card Associations "Simplified Physical Layer Specification v2.00":

Page 97:

5.3.3 CSD Register (CSD Version 2.0)
"device size, C_SIZE, 22 bits, value 00 xxxxh, Readonly, CSD-slice [69:48]"
C_SIZE_MULT is removed.

Page 98:

"READ_BL_LEN This field is fixed to 9h, which indicates READ_BL_LEN=512 Byte."

Page 98:

"C_SIZE This field is expanded to 22 bits and can indicate up to 2 TBytes (It is the same as the maximum memory space specified by a 32-bit block address.) This parameter is used to calculate the user data area capacity in the SD memory card (not include the protected area). The user data area capacity is calculated from C_SIZE as follows: memory capacity = (C_SIZE+1) * 512K byte As the maximum capacity of the Physical Layer Specification Version 2.00 is 32 GB, the upper 6 bits of this field shall be set to 0."

Thus:

Memory capacity = (C_SIZE+1) * 512 K = (222-1+1) * 512 K = (4194304-1+1) * 512K = 2147483648 K = 2048 GB

The card data structures have bit fields to represent upto and including 2 TByte. But the SD Card association have decided that memory cards shall be limited to a maximum of 32 GByte. But there's nothing to prevent anyone from violating the 2.0 standard for SDHC cards.

SDHC

8GB SDHC cards

An extension of the SD standard, SDHC (Secure Digital High Capacity, SD 2.0), allows standard compliant capacities in excess of 2 GB. SDHC cards are often formatted with the FAT32 file system, which supports partition sizes greater than 4 GB. [11] It uses the same form factor as SD, but the SD 2.0 standard in SDHC uses a different memory addressing method (sector addressing vs byte addressing), thus theoretically reaching a maximum capacity of up to 2048 GB. However the SD Card association have artificially defined the maximum limit of SDHC capacity to 32 GB. SDHC cards only work in SDHC compatible devices, but standard SD cards work in both SD and SDHC devices. The SDHC trademark is licensed to ensure compatibility. [12]

SDHC cards have SD Speed Class Ratings defined by the SD Association. The SD Speed Class Ratings specify the following minimum sustained write speed on to empty SDHC cards:

  • Class 2: 2 MB/s
  • Class 4: 4 MB/s
  • Class 6: 6 MB/s

SD and SDHC compatibility issues

As of early 2007, the simultaneous availability of non-standard 4 GB SD and of standards-compliant 4 GB SDHC cards, and incompatibilities between SD and SDHC have caused confusion among consumers buying memory devices.

SD and SDHC cards and devices have these compatibility issues :

  • Devices that do not specifically support SDHC do not recognize SDHC memory cards.
  • Some manufacturers have produced 4 GB SD cards that conform to neither the SD2.0/SDHC spec nor existing SD devices. [13]
  • File System: SD cards are typically formatted with the FAT16 file system, while SDHC cards are typically formatted as FAT32. [14] However, both types of cards can support other general-purpose filesystems, such as UFS2/ext2 for example.

SDIO

A camera that uses the SDIO interface

SDIO stands for Secure Digital Input Output.

SD slots can actually be used for more than flash memory cards. Devices that support SDIO (typically PDAs like the Palm Treo, but occasionally laptops or cell phones) can use small devices designed for the SD form factor, like GPS receivers, Wi-Fi or Bluetooth adapters, modems, Ethernet adapters, barcode readers, IrDA adapters, FM radio tuners, TV tuners, RFID readers, digital cameras, or other mass storage media such as hard drives.

A number of other devices have been proposed but not yet implemented, including RS-232 serial adapters, fingerprint scanners, SDIO to USB host/slave adapters (which would allow an SDIO-equipped handheld device to use USB peripherals and/or interface to PCs), magnetic strip readers, combination Bluetooth/Wi-Fi/GPS transceivers, cellular modems (PCS, CDPD, GSM, etc.), and APRS/TNC adapters.

SDIO cards are fully compatible with SD Memory Card host controller (including mechanical, electrical, power, signaling and software). When an SDIO card is inserted into a non SDIO-aware host, it will cause no physical damage or disruption to device or host controller. SPI bus topology is mandatory for SDIO, unlike SD Memory. Most of the SD Memory commands are not supported in SDIO. SDIO cards can contain 8 separate logical cards, though at the moment this is at most a memory and IO function. SD Slots will only take SD Cards. SDIO Slots will take SD Cards and SDIO cards.

SD cards with extra features

Various manufacturers have tried to make their SD cards stand out from the crowd in different ways

  • SD Plus is a type of SD card made by Sandisk that has an integrated USB connector so it can be plugged directly into a USB port without needing any special card reader. [15] This concept has proved successful and other companies started introducing similar designs branded as duo SD.
  • Capacity Display in 2006 A-DATA announced an SD card with its own digital display that would show how much free space is left on the card. [16]
  • Eye-Fi, Inc. produces an SD card with Wi-Fi capability built in for 802.11g, 802.11b and backwards-compatible 802.11n wireless networks and supporting static WEP 40/104/128, WPA-PSK, WPA2-PSK security standards. The card works with any digital camera with an SD slot and can send captured images directly to a Windows PC or Apple computer wirelessly, where they can be automatically uploaded to web sites such as Flickr.com. When not in range of a wireless network connection, the card makes use of its 2GB capacity (EYE-FI-2GB model) until the images can be transferred. [17]

Market penetration

Secure Digital cards are used as storage media in these devices:

Compact digital cameras

SD/MMC cards have all but replaced Toshiba's SmartMedia as the dominant memory card format used in compact 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.

A majority of the world’s leading digital camera manufacturers use SD in their product lines, including Casio, Canon, Nikon, Pentax, Kodak, Panasonic and Konica Minolta. Two major brands, however, have stuck to their own proprietary formats in their cameras: Olympus using xD cards, and Sony using Memory Stick. Fuji prior to 2007 also used xD cards exclusively, but has added SD functionality to all of their models since then.

Digital SLR cameras

SD has not conquered the market for Digital SLR cameras. In this market CompactFlash remains the most popular format due to its historically lower price/capacity ratio and the availability of larger capacities.

As of 2007, however, an increasing number of models use SD/MMC/SDHC cards exclusively: Pentax's complete line since the 2004 *istDS; Nikon's 2005 D50, 2006 D40, 2006 D80, 2007 D40X, and 2008 Nikon D60; and most recently Canon's 2008 EOS 450D/Rebel XSi.

Several high-end professional DSLRs — notably Canon's EOS-1Ds Mark III and EOS-1D Mark III — support both CompactFlash and SD for greater flexibility.

See also

References

  1. ^ http://www.dramexchange.com/WeeklyResearch/Post/1/492.aspx
  2. ^ Pocket PC Users Steer Clear of SDHC... For Now, Pocket PC Central Press, July 18, 2006
  3. ^ Kingmax FAQ, www.kingmaxdigi.com, 2006
  4. ^ Sharp Linux PDA promotes use of proprietary SD card, but more open MMC works just fine
  5. ^ Simplified SD Host Controller Spec from the SDA's website
  6. ^ Reverse-engineered register information for the standard host controller
  7. ^ OLPC mailing list archive
  8. ^ Super Talent Technology - DDR and DDR2 Memory
  9. ^ SD Compatibility, CARDSPEED - Card Readers and Memory Cards, December 1, 2006
  10. ^ SD Group Technical Committee (September 25, 2006). "Section 4: SD Memory Card Functional Description; 4.3.2: 2 Gbyte Card". SD Specifications, Part 1: Physical Layer Simplified Specification (PDF, HTML) (Version 2.00 ed.). SD Card Association. pp. p. 19. Retrieved 2007-02-23. {{cite book}}: |pages= has extra text (help); Check date values in: |date= (help); External link in |format= (help)
  11. ^ SDHC file system
  12. ^ What is SDHC?
  13. ^ Techgage review, including an OCZ 4 GBan OCZ 4 GB SD (non-SDHC) card
  14. ^ http://www.sandisk.com/Assets/File/pdf/retail/SDHC1.pdf
  15. ^ http://www.theregister.co.uk/2005/07/25/review_sandisk_ultra_ii_sd_plus/
  16. ^ I4U News - A DATA Announces SD Card w/ Bi-stable Capacity Display
  17. ^ Eye-Fi » Home

External links