赞
踩
在介绍SDIO接口之前先了解一下MMC、SD卡、SDIO等背景知识,如下图:
注:多媒体卡协会网站 www.mmca.org,SD卡协会网站 www.sdcard.org
SD 标准使制造商能够提供高性能产品,以增强每天听音乐、录制视频、拍照、保存数据和使用手机的数百万人的体验。
作为行业标准,SD 标准被用于便携式存储行业的多个细分市场,包括手机、数码相机、MP3 播放器、个人电脑、平板电脑、打印机、汽车导航系统、电子书和许多其他消费电子设备。
SD卡有三种外形尺寸;全尺寸、miniSD 和 microSD。microSD 取代了 miniSD,因此市场上更常见的两种外形尺寸如下表所示。
构成因素 | 标清 | Micro SD |
尺寸图 |
|
|
卡容量类型 | SD、SDHC、SDXC 和 SDUC | |
引脚数 | 高速和UHS-I:9针 UHS-II和UHS-III:17针 SD Express 1-lane:17-19针 SD Express 2-lane:25-27针 | 高速和UHS-I:8针 UHS-II和UHS-III:16针 SD Express 1通道:17针 |
工作电压 | 第一行3.3V VDD范围:2.7V–3.6V | |
写保护开关 | 是的 | 否 |
Class是早期的通用速度等级标准,Class等级越高传输速度越快,目前Class 10级别最常见,对应的速度标准如下:
Class标准和其对应的通信速度如下:
Class等级 | 符号 | 通信速度 |
|
| 读写时的数据传输速度最低2MB/秒 |
|
| 读写时的数据传输速度最低4MB/秒 |
|
| 读写时的数据传输速度最低6MB/秒 |
|
| 读写时的数据传输速度最低10MB/秒 |
UHS是全新的总线模式,意为Ultra High Speed,它在存储卡表面以“I”或“II”表示。相较于之前常规的总线模式最高仅到达25MB/s的速度,目前最高接口带宽可达312MB/s,若采用不支持UHS-I/UHS-II的设备可使用卡但无法发挥最快的速度。
UHS-I的写入最高 95MB/s,读取最高104MB/s,保证最低传输速度为10MB/s;UHS-Ⅱ的写入最高280MB/s,读取最高312MB/s,保证最低传输速度为30MB/s。“U1”和“U3”代表UHS接口规范下的写入速度标准,为区分Speed Class的Class 2,UHS Class并没有设置U2等级,目前仅有U1和U3,下一个等级是U5。
近来由于6K/8K视频规格的提出,以及未来VR领域应用的可能,SD5.0标准新增了视频速度等级标准(Video Speed Class),它扩展了速度标准,将卡速分为V6/V10/V30/V60/V90五大等级,分别对应6MB/s、10MB/s、30MB/s、60MB/s、90MB/s的最低写入速度。
SD卡不同标准数据传输速度对比如下表:
综上所述,SD卡根据容量标准和数据传输速度标准可总结如下表所示:
SD标准 | SDHC 标准 | SDXC 标准 | SDUC 标准 | |
容量 | 高达2GB | 2GB--32GB | 32GB--2TB | 2TB--128TB |
文件系统 | FAT12,16 | FAT32 | exFAT | exFAT |
全尺寸SD卡 | 32 x 24 x 2.1 毫米 | |||
Micro SD 卡 | 11 x 15 x 1.0 毫米 | |||
NS模式 | C2、C4、C6 | |||
高速模式 | C2、C4、C6、C10、 V6、V10 | |||
UHS-I 模式 | —— | C2、C4、C6、C10 U1、U3 V6、V10、V30 | ||
UHS-II 模式 | —— | C4、C6、C10 U1、U3 V6、V10、V30、V60、V90 | ||
UHS-III 模式 | —— | C4、C6、C10 U1、U3 V6、V10、V30、V60、V90 |
SD协议不同版本的对比表:
SDIO协议是由SD卡协议演进而来,向前兼容SD卡协议。SDIO协议在SD卡协议基础上增加了低速标准。SDIO卡只需要SPI和1位SD传输模式。低速卡的目标应用是以最小的硬件开支来支持低速I/O能力,低速卡支持类似MODEM,条形扫描仪和GPS接收器等应用。
SDIO总线和USB总线类似,SDIO总线也有两端,其中一端是主机(HOST)端,另一端是设备端(DEVICE),采用HOST- DEVICE这样的设计是为了简化DEVICE的设计,所有的通信都是由HOST端发出命令开始的。在DEVICE端只要能解析HOST的命令,就可以同HOST进行通信了,SDIO的HOST可以连接多个DEVICE。
SDIO的信号传输模式包括:SPI模式、1bit模式和4bit模式;
SDIO协议规定,在SDIO的1bit模式下,数据线DATA0用来传输数据,DATA1用作中断。在SDIO的4bit模式下,数据线DATA0~3用于传输数据,其中DATA1复用作中断线;
SD卡和micro SD卡接口如下图:
SDIO总线上的设置和控制都是通过命令来实现,SDIO总线上都是HOST端发起请求,然后DEVICE端回应请求,其中请求和应答中会包含数据信息:
SDIO的命令:
SDIO的命令分为:应用相关命令(ACMD)和通用命令(CMD)两部分。发送ACMD时,需先发送CMD55。
SDIO所有的命令和响应都是在SDIO_CMD引脚上面传输的,命令长度固定为48位,SDIO命令格式如下表所示:
SDIO的响应:
一般SD卡在接收到命令行,都会有一个应答(CMD0例外),这个应答我们也称之为响应。STM32的SDIO接口,支持2种响应类型:短响应(48位)和长响应(136位)
SDIO短响应(48位)格式如下表所示:
SDIO长响应(136位)格式如下表所示:
SD卡的响应:
SD卡总共有6类响应(R1、R1b、R2、R3、R6、R7),我们这里以R1为例简单介绍一下。R1(普通响应命令)响应属于短响应,其长度为48位,如下表所示:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。