作者:mobiledu2502908197 | 来源:互联网 | 2023-07-31 20:52
SDIO接口介绍_usb接口有几种规格SDIO接口是在SD内存卡接口的基础上发展起来的接口,SDIO接口兼容以前的SD内存卡,并且可以连接SDIO接口的设备。SDIO1.0标准定义
SDIO 接口是在 SD 内存卡接口的基础上发展起来的接口, SDIO 接口兼容以前的 SD 内存卡,并且可以连接 SDIO 接口的设备。
SDIO1.0 标准定义了两种类型的 SDIO 卡:
1. 全速的 SDIO 卡,传输率可以超过 100Mbps ;
2. 低速的 SDIO 卡,支援的时脉速率在 0 至 400KHz 之间。
SDIO 协议是由 SD 卡的协议演化升级而来的,很多地方保留了 SD 卡的读写协议,同时 SDIO 协议又在 SD 卡协议之上添加了 CMD52 和 CMD53 命令。由于这个, SDIO 和 SD 卡规范间的一个重要区别是增加了低速标准,低速卡的目标应用是以最小的硬件开支来支持低速 I/O 能力。低速卡支持类似调制解调器 , 条形码扫描仪和 GPS 接收器等应用。高速卡支持网卡,电视卡以及组合卡等。组合卡指的是存储器 +SDIO ,对组合卡来操作需要全速和 4BIT 的传输模式,这是 SDIO1.0 标准规定的。
一、 SDIO 总线:
SDIO 总线和 USB 总线类似, SDIO 总线也有两端,其中一端是主机( HOST )端,另一端是设备端( DEVICE ),采用 HOST- DEVICE 这样的设计 是为了简化 DEVICE 的设计,所有的通信都是由 HOST 端发出命令开始的。在 DEVICE 端只要能解析 HOST 的命令,就可以同 HOST 进行通信了, SDIO 的 HOST 可以连接多个 DEVICE 。
SDIO 的信号传输模式有 SPI 、 1-bit 、 4-bit 三种。在 SPI 模式中,第 8 脚位被当成中断信号。其它脚位的功能和通信协定与 SD 记忆卡的标准规范一样。在 SDIO 总线定义中 ,DAT1 信号线复用为中断线。在 SDIO 的 1BIT 模式 下 DAT0 用来传输数据, DAT1 用作中断线。在 SDIO 的 4BIT 模式 下 DAT0-DAT3 用来传输数据,其中 DAT1 复用作中断线。
SDIO 的每个脚位在不同信号模式下的定义如下图:
图一 SDIO 的每个脚位在不同信号模式下的定义
Micro SD Card ,原名 Trans-flash Card ( TF 卡)。 2004 年正式更名为 Micro SD Card ,由 SanDisk (闪迪)公司发明。 SD 卡的管脚定义和 Micro SD ( TF )卡的管脚定义是不一样的。
图二 SD 卡和 Micro SD ( TF )卡的管脚定义
引脚号
SD 卡
TF 卡( SD 模式)
TF 卡( SPI 模式)
1
Data3
Data2
Rsv
2
Cmd
Data3
Cs
3
Vss
Cmd
Di
4
Vdd
Vdd
Vdd
5
Clk
Clk
Sclk
6
Vss
Vss
Vss
7
Data0
Data0
Do
8
Data1
Data1
Rsv
9
Data2
——
——
二、 SDIO 命令:
SDIO 总线上都是 HOST 端发起请求,然后 DEVICE 端回应请求,其中请求和回应中会包含数据信息:
1. Command: 用于开始传输的命令,是由 HOST 端发往 DEVICE 端的,其中命令是通过 CMD 信号线传送的;
2. Response: 回应是 DEVICE 返回的 HOST 命令作为 Command 的回应。也是通过 CMD 线传送的;
3. Data: 数据是双向的传送的。可以设置为 1 线模式,也可以设置为 4 线模式。数据是通过 DAT0-DAT3 信号线传输的。
SDIO 的每次操作都是由 HOST 在 CMD 线上发起一个 CMD ,对于有的 CMD , DEVICE 需要返回 Response ,有的则不需要。
对于读命令,首先 HOST 会向 DEVICE 发送命令,紧接着 DEVICE 会返回一个握手信号,此时,当 HOST 收到回应的握手信号后,会将数据放在 4 位的数据线上,在传送数据的同时会跟随着 CRC 校验码。当整个读传送完毕后, HOST 会再次发送一个命令,通知 DEVICE 操作完毕, DEVICE 同时会返回一个响应。
对于写命令,首先 HOST 会向 DEVICE 发送命令,紧接着 DEVICE 会返回一个握手信号,此时,当 HOST 收到回应的握手信号后,会将数据放在 4 位的数据线上,在传送数据的同时会跟随着 CRC 校验码。当整个写传送完毕后, HOST 会再次发送一个命令,通知 DEVICE 操作完毕, DEVICE 同时会返回一个响应。
三、 SDIO 内部的记忆体映射
SDIO 记忆卡内部具有固定的记忆体映射,这包含暂存器空间或称为「一般资讯区域( common information area ; CIA )」,以及特殊功能区域( function unique area )。 CICIAA 包含了与 SDISDIOO 记忆卡有关的资讯,以及一些必要的( mandatory )和可选择的( optional )暂存器,它们都位于固定的位址上。藉此, SDIO 的主机(譬如:可携式装置)能够得到 SDIO 记忆卡的有关资讯,并执行一般性的作业。特殊功能区域储存了许多种不同的功能,这是由供应商定义的,因此,不同厂牌的 SDIO 记忆卡可能会有不同的功能。附图二是具有许多种不同功能的 SDIO 记忆卡内部的固定记忆体映射空间。其中, RFU 是「保留给未来使用( Reserved for Future Use )」的意思。 CIA 所包含的暂存器可以开启或关闭 I/O 作业、处理硬件中断、载入韧体(这是选项)。这些暂存器也提供与 SDISDIOO 记忆卡功能相关的资讯和要求。 CIA 支援下列 3 种暂存器:
.一般控制暂存器( Card Common Control Register ; CCCR ):能快速检查 SDIO 主机,并依照不同的 SDIO 记忆卡之功能控制它们的启动和中断能力。即使在开机后, SDIO 记忆卡的 I/O 功能尚未被启动,但是 CCCR 是可以被存取的,这使得 SDIO 主机于系统初始化后,可以立即启动 SDIO 记忆卡的 I/O 功能。
.基本功能暂存器( Function Basic Register ; FBR ):每一个 I/O 功能具有 256 bytes 的记忆体空间,这使得 SDIO 主机能够快速地判定每一个 I/O 功能的能力和要求,并启动韧体下载功能。这个空间位址是从 0x00n00 至 0x00nFF , n 是功能编号(从 0x1 至 0x7 )。
.记忆卡资讯结构( Card Information Structure ; CIS ): CIS 提供更完整的记忆卡功能的相关资讯。这是仿照 PCMCIA 标准所制定的规格。 SDIO 记忆卡的每一个功能都各有一个 CIS 区域,以及一个共用的 CIS 区域;共用的 CIS 区域储存了所有功能的共同特性,每一个功能的 CIS 区域则储存了该功能所具备的特性。 CCCR 和 FBR 各具有一个指标指向相对应的 CIS 位址。
图三 SDIO 固定记忆体映射空间
此外,由于 SDIO 记忆卡的每一个功能可能需要包含额外的记忆体空间,用来储存驱动程式或应用程式。而且,因为 SDIO 记忆卡可能必须支援不同的平台,所以每一个驱动程式或应用程式可能会有许多种版本。解决的方法有两种:一种是使用 SD 的标准规范,来设计「组合卡」;另一种是使用嵌入式的「程式码储存区域( Code Storage Area ; CSA )」。
图四 SD 的记忆体映射空间
SMC 是「静态记忆体控制器( Static Memory Controller )」、 BFC 是「暴量传输的( burst ) FLASH 控制器( Burst Flash Controller )」。
四、 SD/MMC/SDIO 概念区分概要
SD ( Secure Digital )与 MMC ( Multimedia Card )
SD 是一种 flash memory card 的标准,也就是一般常见的 SD 记忆卡,而 MMC 则是较早的一种记忆卡标准,目前已经被 SD 标准所取代。在维基百科上有相当详细的 SD/MMC 规格说明: [http://zh.wikipedia.org/wiki/Secure_Digital] 。
SDIO ( Secure Digital I/O )
SDIO 是目前我们比较关心的技术, SDIO 故名思义,就是 SD 的 I/O 接口( interface )的意思,不过这样解释可能还有点抽像。更具体的说明, SD 本来是记忆卡的标准,但是现在也可以把 SD 拿来插上一些外围接口使用,这样的技术便是 SDIO 。
所以 SDIO 本身是一种相当单纯的技术,透过 SD 的 I/O 接脚来连接外部外围,并且透过 SD 上的 I/O 数据接位与这些外围传输数据,而且 SD 协会会员也推出很完整的 SDIO stack 驱动程序,使得 SDIO 外围(我们称为 SDIO 卡)的开发与应用变得相当热门。
现在已经有非常多的手机或是手持装置都支持 SDIO 的功能( SD 标准原本就是针对 mobile device 而制定),而且许多 SDIO 外围也都被开发出来,让手机外接外围更加容易,并且开发上更有弹性(不需要内建外围)。目前常见的 SDIO 外围( SDIO 卡)有:
• Wi-Fi card (无线网络卡)
• CMOS sensor card (照相模块)
• GPS card
• GSM/GPRS modem card
•Bluetooth card
• Radio/TV card (很好玩)
SDIO 的应用将是未来嵌入式系统最重要的接口技术之一,并且也会取代目前 GPIO 式的 SPI 接口。 SD/SDIO 的传输模式 SD 传输模式有以下 3 种:
• SPI mode ( required )
• 1-bit mode
• 4-bit mode
SDIO 同样也支持以上 3 种传输模式。依据 SD 标准,所有的 SD (记忆卡)与 SDIO (外围)都必须支持 SPI mode ,因此 SPI mode 是「 required 」。此外,早期的 MMC 卡(使用 SPI 传输)也能接到 SD 插糟( SD slot ),并且使用 SPI mode 或 1-bit mode 来读取。 SD 的 MMC Mode
SD 也能读取 MMC 内存,虽然 MMC 标准上提到, MMC 内存不见得要支持 SPI mode (但是一定要支持 1-bit mode ),但是市面上能看到的 MMC 卡其实都有支持 SPI mode 。因此,我们可以把 SD 设定成 SPI mode 的传输方式来读取 MMC 记忆卡。