date
Feb 21, 2025
slug
2025-02-21-the-summary-of-SDcard-catalogue-and-parameters
status
Published
tags
SD
summary
尺寸类型
- SD:32×24×2.1mm(全尺寸),基本上以及很少使用了
- microSD:11×15×1.0mm,目前应用的主流
引脚触点差异:
- UHS-I及其之前:9个触点(VCC,两个VSS,CLK,CMD,DAT3-DAT0),仍然是目前应用的主流
- UHS-II/UHS-III:17个触点(新增差分对)
- SD Express:保留传统触点+隐式PCIe通道设计
电压兼容性
- 普通SD卡:仅支持3.3V
- UHS卡:可支持3.3V/1.8V双电压(需主控匹配,双方协商电压切换)
type
Post
category
硬件
AI summary
SD卡的基本规格总结
尺寸类型
- SD:32×24×2.1mm(全尺寸),基本上以及很少使用了
- microSD:11×15×1.0mm,目前应用的主流
引脚触点差异:
- UHS-I及其之前:9个触点(VCC,两个VSS,CLK,CMD,DAT3-DAT0),仍然是目前应用的主流
- UHS-II/UHS-III:17个触点(新增差分对)
- SD Express:保留传统触点+隐式PCIe通道设计
电压兼容性
- 普通SD卡:仅支持3.3V
- UHS卡:可支持3.3V/1.8V双电压(需主控匹配,双方协商电压切换)

- 可以看到,SD卡除了标准的SD模式以外,还能够支持SPI Mode,在这种情况下,数据线从SD模式的四根(DAT3-DAT0)变成了一根。
SD卡的分类
当前SD卡的标准体系较为复杂,涉及到存储容量、总线协议、速度等级等多个维度的定义。因此也就有多个不同维度的SD卡分类规则。
基于容量进行分类
从SD卡的存储容量角度上,可以分为以下四类,分别在不同的SD规范中定义。需要注意的是因为FAT3文件系统支持的文件系统大小以及单个文件大小的限制均比较小,所以SDXC卡默认采用exFAT文件系统。

- 目前应用的主流是SDHC和SDXC,SDSC因为容量太小,已经被淘汰了。
- 其实无论是对于开发者还是用户而言,都只需要关注自己产品应用的存储容量就好,不需要关注究竟属于哪个容量分类。
基于总线接口及总线速度进行分类
从SD卡所连接的系统总线接口以及总线读写速度的角度,SD卡可以分为以下分类。对于开发者而言,需要关注主控芯片的SD接口规范,这一点限定了SDIO接口的时钟、电压、引脚分布等。

关于SD卡的引脚结构,UHS-I及其之前的SD卡规范使用传统的9个引脚:CLK,CMD,DAT3-DAT0(其中DAT3也用于卡检测的CD引脚),VCC,两个VSS。从UHS-II开始,在传统的SD卡接口规范的基础上增加了两组LVDS差分对,共8个引脚,因此新的UHS-II/III接口和卡共包含17个接口。但是,新的UHS-II/III卡插入旧的SD卡插槽时,新增的差分引脚无电气连接,对于SD卡的读写访问会自动回退至UHS-I模式或更低,这一点有点像USB TypeC接口对之前USB2.0接口的兼容一样。下图是UHS-II/III卡的引脚结构示意图:

关于SD卡所支持的电压,在SD2.0及其之前的规范,SD接口的主机和SD卡只支持3.3V单电压模式,不支持电压的动态切换;但是从SD3.0也就是UHS-I开始,SD主机接口以及SD卡均应支持3.3V和1.8V双电压模式,否则无法通过UHS认证。在支持双电压的情况下,主机在给SD卡初始上电后首先提供3.3V电压,然后通过CMD8+ACMD41+CMD11的协议序列在双方之间交换双电压的支持能力,根据交互信息决定是否切换电压到1.8V。
关于通信的单端SDR和双端DDR模式。在UHS-I之前的规范中,SD卡只能支持单端的SDR通信,UHS-I规范则引入了可选的DDR模式,可以支持在一个时钟周期发送两次数据,这样相同的时钟周期下传输数据可以翻倍。对于UHS-I而言,该规范可以支持SDR12、SDR25、SDR50、SDR104以及DDR50这几种模式,其中前四种是单端SDR模式,只不过是在之前SD规范的基础上进一步提升了时钟频率,时钟最高可以达到208MHz,因此最高可以提供104MB/s理论带宽;而DDR50则是双边沿触发发送数据,DDR模式下最高时钟50MHz,可以提供最高50MB/s的理论带宽。当然,能否支持UHS-I的高规格时钟速度以及DDR模式,需要主控SD控制器与SD卡之间进行协商,只有双方都支持的情况下才能使用。
SD 2.0 High Speed以及UHS-I的单端SDR是目前多数消费类产品应用中的主流。
除了以上基于传统SD接口的总线接口以外,目前还出现了基于PCIe总线通信规范的SD Express总线接口,不过这种接口的SD卡以及主控目前在产品开发中还比较少见:

基于SD卡的读写速度进行分类
相比于前面的SD接口的速度而言,SD读的读写速度的分类和等级就更加复杂了。首先是按照C开头进行的基本速度等级:

接下来是UHS速度等级,跟C开头的速度等级一样,主要关注的仍然是大块数据的写入速度,既然是同样的评估标准,为什么不继续用C?

还有专门针对视频文件写入应用的V速度等级。跟C/U开头的速度等级有啥区别?

最后还有一个针对手机APP应用随机访问速度的A速度等级:

无论如何,对于包含SD卡产品的开发者而言,重点只需要关注自己的主控SD控制器的规范版本,按照规范版本来实现具体的电路和驱动程序/功能即可,不太需要关注这些不同的SD卡速度等级。而对于普通用户而言,则需要根据自己的产品应用需求,选择符合产品应用的SD卡速度等级,当然选择的SD卡速度等级需要与其主控能够支持的SD卡规范相匹配才能发挥出来最佳的性能。
容量、接口和速度等级分类的例子
下图是参考文档1中所提供的一个真实SD卡标注信息的说明,结合以上的理论知识应该是可以很好的理解了:

SD卡标准规范版本的演进
以下是SD卡各个主要版本的协议规范的发布时间,以及各版本新增加的主要特性。结合以上对于SD卡进行不同分类标准的说明可以更容易理解。
