https://en.wikipedia.org/wiki/Secure_Digital#Technical_details

Secure Digital (SD) is a non-volatile memory card format developed by the SD Card Association (SDA) for use in portable devices.

The standard was introduced in August 1999 by joint efforts between SanDiskPanasonic (Matsushita Electric) and Toshiba as an improvement over MultiMediaCards (MMC),[1] 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.[2]

Technical details[edit]

Physical size[edit]

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.

Standard size[edit]

 

Size comparison of families: SD (blue), miniSD (green), microSD (red)

  • SD (SDSC), SDHC, SDXC, SDIO
  • 32.0×24.0×2.1 mm (1.260×0.945×0.083 in)
  • 32.0×24.0×1.4 mm (1.260×0.945×0.055 in) (as thin as MMC) for Thin SD (rare)

Mini size[edit]

  • miniSD, miniSDHC, miniSDIO
  • 21.5×20.0×1.4 mm (0.846×0.787×0.055 in)

Micro size[edit]

The micro form factor is the smallest SD card format.[94]

  • microSD, microSDHC, microSDXC
  • 15.0×11.0×1.0 mm (0.591×0.433×0.039 in)

Transfer modes[edit]

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.

  • SPI bus mode: Serial Peripheral Interface Bus is primarily used by embedded microcontrollers. This bus type supports only a 3.3-volt interface. This is the only bus type that does not require a host license.
  • One-bit SD bus mode: Separate command and data channels and a proprietary transfer format.
  • Four-bit SD bus mode: Uses extra pins plus some reassigned pins. (This is the same protocol as the one-bit SD bus mode which uses one command and four data lines for faster data transfer. All SD cards supports this mode.) UHS-I and UHS-II requires this bus type.
  • Two differential lines SD UHS-II mode: Uses two low-voltage differential interfaces to transfer commands and data. UHS-II cards include that interface in addition to the SD bus modes.

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.[95]

File system[edit]

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.[citation needed]

MBR and FAT[edit]

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:

  • For SDSC cards:

    • Capacity of less than 32,680 logical sectors (smaller than 16 MB): FAT12 with partition type 01h and BPB 3.0 or EBPB 4.1[97]
    • Capacity of 32,680 to 65,535 logical sectors (between 16 MB and 32 MB): FAT16 with partition type 04h and BPB 3.0 or EBPB 4.1[97]
    • Capacity of at least 65,536 logical sectors (larger than 32 MB): FAT16B with partition type 06h and EBPB 4.1[97]
  • For SDHC cards:
    • Capacity of less than 16,450,560 logical sectors (smaller than 7.8 GB): FAT32 with partition type 0Bh and EBPB 7.1
    • Capacity of at least 16,450,560 logical sectors (larger than 7.8 GB): FAT32 with partition type 0Ch and EBPB 7.1
  • For SDXC cards: exFAT with partition type 07h

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 "Disk Utility" 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,[98] 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[97] 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.

The SDXC specification mandates the use of Microsoft's proprietary exFAT file system,[99] which is supported only by some proprietary operating systems.

Other file systems[edit]

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:

  • Under Windows, SD cards can be formatted using NTFS and, on later versions, exFAT.
  • Under Mac OS X, SD cards can be partitioned as GUID devices and formatted with the HFS Plus file system or still use exFAT.
  • Under Unix-like operating systems such as Linux or FreeBSD, SD cards can be formatted using the UFSExt2Ext3Ext4btrfsHFS PlusReiserFS or F2FS file system. Additionally under Linux, HFS Plus file systems may be accessed for read/write if the "hfsplus" package is installed, and partitioned and formatted if "hfsprogs" is installed. (These package names are correct under Debian, Ubuntu etc., but may differ on other Linux distributions.)

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.[citation needed] 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.

Risks of reformatting[edit]

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.[100] 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.

SD/SDHC/SDXC memory cards have a "Protected Area" on the card for the SD standard's security function; a standard formatter may erase it, causing problems if security is used. The SD Association provides freely-downloadable SD Formatter software to overcome these problems for Windows and Mac OS X.[101] The SD Formatter does not format the "Protected Area", and the Association recommends the use of appropriate application software or SD-compatible device that provides SD security function to format the "Protected Area" in the memory card.

Power consumption[edit]

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).[102] Standby current is much lower, less than 0.2 mA for one 2006 microSD card.[103] 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.

Secure Digital的更多相关文章

  1. 讓TQ2440也用上設備樹(1)

    作者:彭東林 郵箱:pengdonglin137@163.com QQ:405728433 開發板 TQ2440 + 64MB 內存 + 256MB Nand 軟件 Linux: Linux-4.9 ...

  2. 浅谈android中的目录结构

    之前在android游戏开发中就遇到本地数据存储的问题:一般情形之下就将动态数据写入SD中存储,在没有SD卡的手机上就需另作处理了;再有在开发android应用的过程中,总要去调试APP,安装时又想去 ...

  3. RAM、DRAM、SD卡

    catalogue . ROM.RAM.DRAM.SRAM和FLASH的区别 . 内存工作原理 . DRAM基本结构与原理 . SD卡基本结构与原理 1. ROM.RAM.DRAM.SRAM和FLAS ...

  4. RAM和ROM总结

    RAM和ROM总结 一.在解释之前先备注一些缩写的全称便于记忆: 1.EPROM:(Electrically Programmable Read-Only-Memory)电可编程序只读存储器 2.EE ...

  5. [转]NandFlash和NorFlash的区别

    一. NAND和NOR的比较 NOR和NAND是现在市场上两种主要的非易失闪存技术.Intel于1988年首先开发出NOR flash技术,彻底改变了原先由EPROM 和EEPROM一统天下的局面.紧 ...

  6. nginx ssl 更换问题

    公司之前使用的是免费startssl证书,听说IOS 以后不信任这些免费的验证不严格的证书,公司果断购买了一个统配域名证书,其实不用貌似也没什么事,主要是提交app的时候得说明理由,被拒的可能性比较大 ...

  7. 更新CocoaPods碰到的问题及知识点

    1:解决CocoaPods安装时报的问题,http://ruby.taobao.org/latest_specs.4.8.gz 报404 解决 bad response Not Found 404 ( ...

  8. CocoaPods 哪些事

    一.CocoaPods的介绍 什么是CocoaPods CocoaPods是OS X和iOS下的一个第三类库管理工具,通过CocoaPods工具我们可以为项目添加被称为“Pods”的依赖库(这些类库必 ...

  9. sd 卡驱动--基于高通平台

    点击打开链接 内容来自以下博客: http://blog.csdn.net/qianjin0703/article/details/5918041 Linux设备驱动子系统第二弹 - SD卡 (有介绍 ...

随机推荐

  1. Python正则表达式详解

    我用双手成就你的梦想 python正则表达式 ^ 匹配开始 $ 匹配行尾 . 匹配出换行符以外的任何单个字符,使用-m选项允许其匹配换行符也是如此 [...] 匹配括号内任何当个字符(也有或的意思) ...

  2. JSON.stringify()和JSON.parse()

    parse用于从一个字符串中解析出json对象,如 var str = '{"name":"huangxiaojian","age":&qu ...

  3. p2p音视频通信

    今年音频没事干了,根据业务需求,调研音视频p2p通信,减小服务器压力,一切从0开始. 需要信令服务器,打洞服务器,帮助链接打通双方,实现p2p音视频通信. 服务器和客服端交互等都需要实现. 谷歌web ...

  4. chrome浏览器跨域设置

    1.新建快捷方式,在目标那里的路径后面跟上如下参数 "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" -- ...

  5. java20

    1:递归(理解) (1)方法定义中调用方法本身的现象 举例:老和尚给小和尚讲故事,我们学编程 (2)递归的注意事项: A:要有出口,否则就是死递归 B:次数不能过多,否则内存溢出 C:构造方法不能递归 ...

  6. Excel 回归分析

    1 分析两个变量和一个因变量的关系 降水,温度与生长的关系曲线 降水是连续的数,温度有三个温室,每个温室一个温度,生长也是连续的数. 作图的方法是将降水放在一列,然后生长根据温度放三列,同一个温度的放 ...

  7. Linux C编程学习之开发工具1---GCC编译器

    GCC简介 GCC(GNU Compiler Collection)是一套功能强大.性能优越的编程语言编译器,它是GNU计划的代表作品之一.GCC以GPL和LGPL许可证发行,它是类Unix和苹果电脑 ...

  8. [C++11][数据结构]自己的双链表实现

    这个双链表,是我模仿stl的list制作的,只实现了一些基本功能,像merge,transfer这些就没有实现,用户可以用基本操作来自己做外部实现. 我没有选用stl的[begin,end)迭代器模式 ...

  9. LCA + 树状数组 + 树上RMQ

    题目链接:http://poj.org/problem?id=2763 思路:首先求出树上dfs序列,并且标记树上每个节点开始遍历以及最后回溯遍历到的时间戳,由于需要修改树上的某两个节点之间的权值,如 ...

  10. System.Windows.Application.Current.Dispatcher.BeginInvoke

    System.Windows.Application.Current.Dispatcher.BeginInvoke(new Action(() =>                        ...