问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

SDIO电路设计详解

创作时间:
作者:
@小白创作中心

SDIO电路设计详解

引用
CSDN
1.
https://m.blog.csdn.net/m0_61278502/article/details/145503823

SDIO协议是由SD协议演化而来,SDIO总线不但支持SDIO卡,而且还兼容SD卡,TF卡。目前SDIO设备也是越来越多。
例如:bluetooth,wifi,GPS。 随着技术的发展,SDIO接口已经广泛应用于各种嵌入式系统和移动设备中。
SDIO接口广泛应用于智能手机、平板电脑等移动设备中,用于扩展设备的存储、无线通信等功能。
在物联网领域,SDIO接口可以连接各种传感器, 接口连接如Wi-Fi模块、蓝牙模块等外设,实现设备间的互联互通。
信号传输流程:SDIO接口基于命令响应机制进行工作,主机通过发送命令来控制SDIO卡的操作,SDIO卡根据命令执行相应的操作并返回结果。
操作模式:SDIO接口支持多种操作模式,包括数据传输模式、命令传输模式和中断传输模式等,以满足不同应用场景的需求。

1.SDIO协议版本迭代:

SDIO协议自诞生以来,已经经历了多个版本的迭代更新,包括SDIO 1.0、SDIO2.0、SDIO 3.0等,目前支持比较多的是SDIO2.0、SDIO 3.0。
每个版本的更新都带来了更高的传输速度、更低的功耗和更丰富的功能特性,满足了不同时期的市场需求。
未来,随着技术的不断进步和应用场景的不断拓展,SDIO协议将继续进行版本迭代更新,以适应更高速、更智能的传输需求。

2.命令响应机制

命令:SDIO主机控制器通过发送命令来与SDIO卡进行通信,命令包括操作码、参数和数据等信息。
响应:SDIO卡接收到命令后会返回响应,响应包括状态信息和数据等信息。
数据传输:SDIO主机控制器与SDIO卡之间进行数据传输时,可以采用DMA(直接内存访问)方式进行高效传输。
初始化和识别的过程:
初始化:SDIO主机控制器在启动时需要对SDIO卡进行初始化,包括设置时
钟频率、总线宽度等参数。
识别:初始化之后,SDIO主机控制器通过发送特定的命令来识别插入的SDIO卡类型、容量和制造商等信息。识别就相当于握手的过程,握手完成之后才开始进行通信。
SDIO中断处理机制
中断请求 -> 中断处理 -> 中断清除
中断请求:SDIO卡可以在需要时向SDIO主机控制器发送中断请求,通知主机控制器有事件需要处理。
中断处理:SDIO主机控制器接收到中断请求后会根据中断类型进行相应的处理,如读取数据、发送命令等。
中断清除:SDIO主机控制器处理完中断后需要清除中断标志位,以便下次中断能够正常触发。

3.SDIO电气参数

上图是SDIO协议规范的示意图,从图中可以看出SDIO信号由CMD、CLK、DAT0-3、电源和地组成。最上面还有一个写保护信号,这个写保护信号是可选的,有些处理器上有这个信号,有些处理器上是没有这个信号的。有些处理器上面还有一个电源的控制和卡的插入检测信号。

上图是一个SD卡的信号定义,数据信号一共有4条,通讯的时候支持1bit和4bit。除了SD卡模式之外还有SPI模式,SPI模式和标准的SPI信号是一样的。
在标准里面发现DATA,CMD信号接上拉电阻,为什么要接上拉呢?

从协议里面可以看出数据在空闲的时候要通过上拉电阻拉到高电平,而起始信号是从高电平拉到低电平,所以默认要做上拉。
从内部结构可以看出做上拉一定要用外部的电阻,因为内部信号线是一个推挽的输出,当没有数据收发空闲的时候,内部两个MOS上管和下管都不导通,相当于一个悬空的状态,所以我们要给他一个确定的状态,让总线进入空闲状态(默认上拉)。
CLK通常是不需要上拉的,虽然时钟也是推挽输出,但时钟是主机发的,如果不发没有标准的时钟,所以CLK通常是不需要上拉的。

从上图中可以看出上拉电阻的大小在DATA和CMD信号线上通常是10K100K,但在硬件设计上用10K的比较多,用100K的比较少,除了10K以外用47K、51K的也比较多,47K和51K在10K100K之间用来做弱上拉灌电流比较小,通信的时候也很容易拉高拉低。
CL总线负载电容包含了主设备和卡以及信号线上的负载电容,在信号线上加一个退耦电容可以使信号更好,但我们在使用时基本上是不加的,如果加的话也是在10pF以内。

4.SD卡的设计

在主板上设计SD卡通常是设计SD卡的卡槽,因为不可能把SD卡焊接到主板上,通常是把SD卡插入到卡槽里面使用。

上图是在开发板上能够见到的SD卡设计,电源加了0.1uF的电容到地,数据和CMD线上都做了10K的上拉,CD信号是个插入检测,插卡的时候CD信号和地是通的(内部有机械开关),没有插卡的时候CD信号和地是不通的,如果在CD信号上加个上拉并接到处理器的IO口上就可以判断卡有没有插入进来。这个设计就非常的简单,如果用在产品上可靠性是达不到要求的。

4.1ESD保护

在有些设备中SD卡属频繁插拔器件,可能承受的静电冲击,即使没有做插拔的操作,如果SD卡槽暴漏在外边,它也可能会受到人体静电的影响。所以在做SDIO设计的时候一定要考虑静电保护,SD卡在插入或者拔出的时候不采用静电保护不做ESD的防护很可能会导致数据丢失甚至SDIO卡损坏,更坏的结果是通过SDIO的信号线可以把控制器给打坏。

4.2电磁兼容性设计

考虑电磁干扰对SDIO性能的影响,进行电磁兼容性设计,通常SD卡不会做电磁电容的实验,但我们在做的时候可以串一个磁珠进行高频干扰的吸收。

4.3相对标准的设计

SD卡和TF卡都是一样的,只是不同的卡的尺寸不太一样。在信号线上串了一个磁珠可以吸收高频干扰,对EMC的高频干扰以及静电都有一定的吸收能力。
信号线上都要做ESD,ESD器件选5V和3.3V都是可以的,ESD的负载电容尽量选小一点的,因为上面说主设备和卡以及信号线上的负载电容为40pF,SD卡的卡槽是10pF,因为不知道走线上有多少负载电容,也不知道管脚上有多少杂散电容,所以尽量选小一点的负载电容,通常选几个pF以内的都是没有问题的。
在上拉电阻上可以看到,插卡检测的上拉是10K,其他都是51K,插卡检测的上拉可以做的强一点,免得检测的时候上拉太弱处理器检测不到。
电源控制也是可选的。在没有插卡的时候是不供电的,当插入卡是检测信号由高电平变成低电平,处理器检测到了低电平才会去使能MOS开关去给SD卡供电,然后再去初始化SD卡。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号