SDIO接口是在SD接口基础上发展起来的,SDIO接口兼容SD接口。SDIO协议又在SD卡协议之上添加了CMD52(一般用来访问寄存器)和CMD53(字节和块传输)命令。SDIO和SD卡规范间的一个重要区别是增加了低速标准,低速卡的目标应用是以最小的硬件开始来支持低速I/O能力。目前根据SDIO协议的SPEC,SDIO接口支持的设备总类有蓝牙,无线网卡,电视卡等。
SDIO的接口信号由CS,CMD,DATA0~3,电源信号和地信号组成,其中DATA1在与中断线复用,在SDIO的1BIT模式下DAT0用来传输数据,DAT1用作中断线。在SDIO的4BIT模式下DAT0-DAT3用来传输数据,其中DAT1复用作中断线。
CMD5协议与SD接口中的ACMD41类似,用于检查是否支持SDIO的电压。CMD5的回应中,MP为0,表示是SDIO卡;如果MP为1,表示不但是SDIO卡,并且是SD卡。
SDIO总线有两端,其中一端是主机(HOST)端,另一端是设备端(DEVICE),采用HOST- DEVICE这样的设计是为了简化DEVICE的设计,所有的通信都是由HOST端发出命令开始的。在DEVICE端只要能解析HOST的命令,就可以同HOST进行通信了。
每个SDIO卡由1~7个function和memory function(function 0)组成。memory function包含了SDIO协议的版本号,bus mod,块大小等信息。