MEMORY系列之“SDIO”

硬件助手 2019-04-02 21:40

本文主要介绍SDIO接口及SDIO存储卡的相关特性。


1、SDIO接口

SDIO接口不只用于存储数据的SD存储卡,还有SD I/O卡,MMC卡。其中SD I/O卡与SD存储卡是有区别的,SD I/O卡实际上就是利用SDIO接口的一些模块,插入SD的插槽中,扩展设备的功能,如:SDI/O Wi-Fi,SDI/O CMOS相机等。



SD规范包括如下几部分:

  • 物理层规范

  • 文件系统规范

  • SD卡安全规范

  • SD卡音频应用规范+其他相关应用规范

  • SD MC扩展规范、移动设备

  • SDIO卡规范


由于SDIO可支持各种设备,所以对SDIO接口进行初始化后,上电后就要对它接入的卡进行识别、分类,这个过程是主机向卡发送一系列不同的命令,根据卡不同的响应来进行分类。

SDIO接口包含CLK、CMD及4条DAT[3:0]信号线。这6条信号线都是共用的总线,即新加入的设备可以并联接入到SDIO接口。SDIO主机是通过命令和SD从设备的响应来寻址的,所以不需要片选信号线。

  • CLK是卡的时钟信号线,由主机产生时钟信号,SD卡和SDIO卡的时钟频率可为0~25MHz。在命令和数据线上,每个时钟周期传输1位命令或数据。

  • CMD为命令信号线,SDIO的所有由主机发出的命令及从机对命令的响应,都是在这个信号线上传输的。

  • DAT[3:0]表示4条数据线,主机和从机的数据信号在这4条线上传输。


SD卡可以通过单数据线(DATA0)或四根数据线(DATA[3:0])进行数据传输。单根数据线传输的最大速率为25Mbit/s,四根数据线传输的最大速率为100Mbit/s。


2、SD Memory Card

SD存储卡有如下一些版本和类别:


版本

最大时钟速率MHz

1.0

25

1.1

50

2.0

50

 

卡类型

容量

标准容量卡(SDSC)

最大容量为2GB

高容量卡(SDHC)

容量为2~32GB

扩展容量卡(SDXC)

容量为32GB~2TB

 

2.1、SD卡分类(速度等级)

四线速度模式分为以下几种:

  • Default Speed Mode: 3.3V signaling, Frequency up to 25MHz, up to12.5MB/sec;

  • High Speed Mode: 3.3V signaling, Frequency up to 50MHz, up to25MB/sec;

  • SDR12: 1.8V signaling, Frequency up to 25MHz, up to 12.5MB/sec;

  • SDR25: 1.8V signaling, Frequency up to 50MHz, up to 25MB/sec;

  • SDR50: 1.8V signaling, Frequency up to 100MHz, up to 50MB/sec;

  • SDR104: 1.8V signaling, Frequency up to 208MHz, up to 104MB/sec;

  • DDR50: 1.8V signaling, Frequency up to 50MHz, sampled on both clock edges, upto 50MB/sec;

SD存储卡传输速度分类如下:

  • class-0:这类卡片不指定性能

  • class-2:不低于2MB/s

  • class-4:不低于4MB/s

  • class-6:不低于6MB/s

  • class-10:不低于10MB/s

注:大容量和超大容量SD存储卡至少应该为class-2


2.1.1、UHS-I





注:DDR50 is mandatory for microSDform factor and optional for Standard size SD form factor.




2.1.2、UHS-II






2.2、引脚定义
2.2.1、SD卡引脚定义


引脚号

SD 4-bit模式

SD 1-bit模式

SPI模式

名称

类型

描述

名称

名称

类型

描述

1

CD/DAT3

I/O/PP

卡检测/数据线3

NC

CS

I

片选

2

CMD

I/O/PP

指令/响应

CMD

DI

I

数据输入

3

VSS1[长脚]

S

VSS1

VSS

S

4

VDD[长脚]

S

电源

VDD

VDD

S

电源

5

CLK

I

时钟

CLK

SCLK

I

时钟

6

VSS2

S

VSS2

VSS2

S

7

DAT0

I/O/PP

数据线0

DAT

DO

O/PP

数据输出

8

DAT1

I/O/PP

数据线1

IRQ(中断)

Reserved



9

DAT2

I/O/PP

数据线2

RW(Read Wait)

Reserved




2.2.2、MicroSD(TF)/MiniSD卡引脚定义

TF卡(TransFlash)是Motorola与SanDisk共同推出的记忆卡规格,它采用最新的封装技术,并配合SanDisk最新的NAND MLC技术和控制器技术。大小为11x15x1mm,TransFlash Card附有SD转接器,可兼容任何SD读卡器。TF卡是市面上最小的闪存卡,TF卡产品采用SD架构设计而成,SD协会于2004年底正式将其更名为Micro SD卡。


引脚号

SD模式

SPI模式

名称

类型

描述

名称

类型

描述

1

DAT2

I/O/PP

数据线2

Reserved



2

CD/DAT3

I/O/PP

卡检测/数据线3

CS

I

片选

3

CMD

PP

指令/响应

DI

I

数据输入

4[长脚]

VDD

S

电源

VDD

S

电源

5

CLK

I

时钟

SCLK

I

时钟

6[长脚]

VSS

S

VSS2

S

7

DAT0

I/O/PP

数据线0

DO

O/PP

数据输出

8

DAT1

I/O/PP

数据线1

Reserved




2.2.3、MiniSD卡引脚定义


引脚号

SD模式

SPI模式

名称

类型

描述

名称

类型

描述

1

CD/DAT3

I/O/PP

卡检测/数据线3

CS

I

片选

2

CMD

I/O/PP

指令/响应

DI

I

数据输入

3

VSS1

S

VSS

S

4

VDD

S

电源

VDD

S

电源

5

CLK

I

时钟

SCLK

I

时钟

6

VSS2

S

VSS2

S

7

DAT0

I/O/PP

数据线0

DO

O/PP

数据输出

8

DAT1

I/O/PP

数据线1

Reserved



9

DAT2

I/O/PP

数据线2

Reserved



10

NC






11

NC







 



注:SD1-bit模式和SPI模式的区别:

  • SPI总线是一个通用总线,大部份芯片都用硬件模块;

  • SPI模式支持不带CRC校验的传输方式,可以降低硬件要求;

  • SD的CMD线与DATA线之间有可能同时产生数据,对没有SD硬件模块的主机支持起来难度较高。


2.2.4、UHS-II引脚定义

Pin #

Name

Type

Description

4

VDD1

Supply voltage

2.7V to 3.6V

7

RCLK+

Differential Signaling: Input

Clock Input

8

RCLK-

Differential Signaling: Input

Clock Input

10

VSS3

Ground


11

D0+

Differential Signaling: Input (FD) /  Bidirectional (HD)

Input in default

12

D0-

Differential Signaling: Input (FD) /  Bidirectional (HD)

Input in default

13

VSS4

Ground


14

VDD2

Supply Voltage 2

1.70V to 1.95V

15

D1-

Differential Signaling: Output (FD) /  Bidirectional (HD)

Output in default

16

D1+

Differential Signaling: Output (FD) /  Bidirectional (HD)

Output in default

17

VSS5

Ground



SD bus contacts 7 and 8 Pins are used for RCLK. Thefirst row contacts in non UHS-II mode are equivalent to SD Memory Card PadAssignment.



UHS-II Card shall not drive unused lines of SD I/Fin UHS-II mode. (CLK, CMD and DAT[3:2]. DAT[2] may be used as interrupt line in case ofUHS-II SDIO Card. In this case, card controls DAT[2] level.) Host shall notleave these unused lines floating, but keep them at a defined high or lowlevel. How to keep line level is dependent on host implementation. For example,use pull-up resistor or host drives the lines to low level without providingpull-up voltage. As DAT[1:0] are used for providing RCLK, individual linecontrol is required to use pull-up method for CMD and DAT[3:2]. CLK (withoutpull-up resistor) should be driven to low.

In case ofentering hibernate mode, unused lines shall be set to low before turning offVDD1.


2.3、SD卡总线协议

SD卡总线协议包括如下三种:

  • SD Bus Protocol

  • SPI Bus Protocol

  • UHS-II Bus Protocol


2.4、SD卡操作模式


Card State

Operation mode

Inactive

Inactive

Idle  State

Card Identification Mode

Ready State

Identification State

Stand-by State

Data Transfer Mode

Transfer State

Sending-data State

Receive-data State

Programming State

Disconnect State


SD模式状态图如下图所示:


SPI模式状态图如下图所示:


2.5、SD卡的命令格式

SDIO的所有命令及命令响应,都是通过SDIO-CMD引脚来传输的。且命令只能由HOST发出。

SDIO协议规定了非常多的命令,把这些命令分类别来整理,都有11种之多,包括基本命令、块读取命令、块写入命令、写保护命令、擦除命令、卡上锁命令、应用指定命令、I/O模式命令、功能选择命令及特殊的应用命令ACMD。其中,在使用ACMD命令前,要先向卡发送编号为CMD55的应用指定命令。

所有的命令长度都固定为48bits,传输速率为1.92us@25MHz或者0.96us@25MHz。一个命令包含了6个段,分别为start bit,transmission bit,command index段、argument段、crc7段和end bit,其中除了command index段和argument段是需要在软件配置的时候设置的,其它段都由硬件完成。command index就是命令索引(SD协议规定的命令编码),如命令CMD0,CMD1…的编码为0,1...。有的命令会包含参数,如读命令的参数为要读取数据的地址,这些命令参数被存放在argument段。

SD存储卡的指令和响应格式如下表所示:


Command

Bit  Position

47

46

[45:40]

[39:8]

[7:1]

0

Width(bits)

1

1

6

32

7

1

Value

0

1(Host  Command)

x

x

x

1

Description

Start bit

Transmission bit

Command index

Argument

CRC7

End bit

Response  R1、R3、R6

Bit  Position

47

46

[45:40]

[39:8]

[7:1]

0

Width(bits)

1

1

6

32

7

1

Value

0

0(Card  Response)

x

x

x

1

Description

Start bit

Transmission bit

Command index

Card status

CRC7

End bit

Response  R2

Bit  Position

135

134

[133:128]

[127:1]

0

Width(bits)

1

1

6

127

1

Value

0

0(Card  Response)

111111

x

1

Description

Start bit

Transmission bit

Reserved

CID or CSD register incl.

internal CRC7

End bit

 

SD卡对主机的各种命令回复称为响应,除了CMD0命令外,SD卡在接收到命令都会返回一个响应。对于不同的命令,会有不同的响应格式,一共有7种,简称R1~R7(SD存储卡不支持R4、R5,SDIO卡支持7种)。按响应的字节长度又分为长响应型(136bit)和短响应型(48bit)。

当需要知道RCA和卡状态时,可以向卡发送CMD3命令,然后等待SD卡对命令的响应。SDIO接口通过CMD信号线接收到响应后,由硬件去除响应的头尾信息,把command index保存到SDIO_RESPCMD寄存器,把Argument field内容保存存储到SDIO_RESPx寄存器中。然后软件读取这两个寄存器即可获得所需的信息。


2.6、SD卡数据传输格式

SD卡的数据写入、读取的最小单位是块,每块的大小为512字节。首先软件通过SDIO接口的CMD信号线发送多块写入的命令,接收到正常的响应后,要写入的数据线从4根DAT信号线传输出去,每块结束后是CRC校验码。接着要检测忙状态,数据传输到SD卡后,SD卡启动内部时序保存数据,这时SD卡会把DAT0信号线拉低,表示处于“忙”状态,忙状态结束后,主机才能发送下一个数据块的数据。

SD卡有两种数据包格式:

  • Usualdata (8-bit width): Theusual data (8-bit width) are sent in LSB (Least Significant Byte) first,MSB (Most Significant Byte) last sequence. But in the individual byte, it is MSB (Most Significant Bit)first, LSB (Least Significant Bit) last.

注:在字节之间,先传输低字节后传输高字节;在字节内部,先传输高位后传输低位。

  • Widewidth data (SD Memory Register): The wide width data is shifted from the MSBbit.

注:以块(512bit)为单位发送,先传输最高位后传输低位。




2.7、SD Memory Card寄存器

 

名称

带宽

描述

CID卡标识寄存器

128

卡的ID号,用来区分每张卡:产品序列、生产日期。强制

RCA卡地址

16

卡的本地系统地址,在设定初值期间由卡动态产生并被主机核准。强制

DSR驱动层寄存器

16

配置卡的输出驱动。可选

CSD卡特性寄存器

128

卡的特殊数据,标识卡的操作条件。强制

SCR卡配置寄存器

64

标识SD存储卡的特别特征:支持协议、支持总线宽度。强制

OCR操作寄存器

32

操作条件寄存器:电压值、上电状态。强制

SSR

512


CSR

32


注:RCA寄存器在SPI模式时不可用。

 

2.7.1、OCR寄存器

OCR(操作条件寄存器)中存储了卡片的电压信息以及部分状态信息:其中一个状态位(bit 31)指示卡片的上电操作是否完成,另外一个状态位(bit 30)指示卡片的容量状态(0代表SDSC、1代表SDHC或者SDXC)。寄存器的说明如下图所示:



2.7.2、CID寄存器

CID(卡标识寄存器)总共128 bits,包含了卡片的识别信息,每个独立的卡片都应该有一组独一无二的识别信息。寄存器说明如下图所示:




2.7.3、CSD寄存器

CSD(卡特性寄存器)也是128 bits,提供了访问卡片内容的一些信息如:传输速率、数据格式、错误类型、最大是数据访问时间、DSR寄存器是否启用的。其中bit[126:127]记录了CSD的版本号,CSD Version1.0为标准容量卡所用,CSD Version 2.0为大容量或超大容量卡所用。CSD Version 1.0寄存器说明如下图所示:



2.7.4、SCR寄存器

SCR(卡配置寄存器)总共64 bits,定义了卡片的一些特殊功能,寄存器说明如下图所示:



2.7.5、CSR寄存器

CSR(卡片状态寄存器)总共32 bits,代表了执行一个命令的错误和状态信息,其信息包含在R1格式的应答中返回给主机,寄存器说明如下图所示:




2.7.6、SSR寄存器

SD Status 寄存器包含了SD存储卡的的专有属性并为以后的功能扩展保留了足够的空间,其大小为512 bits即一个块大小,这个寄存器作为ACMD13命令的执行结果,通过DATA线发送到主机,寄存器说明如下图所示:


 

3、SDIO Card

SDIO卡在SD内存卡基础上发展起来,SDIO接口兼容之前的SD内存卡,可连接SDIO设备,根据SDIO协议,支持设备包括蓝牙,GPS卡,网卡,电视卡等。

SDIO协议是SD协议的一个子协议,很多地方保留SD卡协议,在这基础上增加了CMD52和CMD53命令。SDIO与SD的一个重要区别是,增加了低速标准。


3.1、SDIO设备分类

SDIO设备分类如下:

  • 低速卡(Low-Speed SDIO cards):调制解调器、条形码扫描仪,GPS接收器等,时钟频率为0~400KHz,4bits SD模式为optional;
  • 高速卡(Full-Speed SDIO cards):网卡等,时钟频率为0~25MHz,传输速率为10MB/s;
  • 组合卡(Combo cards):组合卡指SDIO+存储器,组合卡中SDIO最高CLOCK为25MHZ,SD最高高于25M时强制4bitsSD模式。

3.2、SDIO卡引脚定义


引脚号

SD 4-bit模式

SD 1-bit模式

SPI模式

名称

类型

描述

名称

名称

类型

描述

1

CD/DAT3

I/O/PP

卡检测/数据线3

NC

CS

I

片选

2

CMD

I/O/PP

指令/响应

CMD

DI

I

数据输入

3

VSS1

S

VSS1

VSS

S

4

VDD

S

电源

VDD

VDD

S

电源

5

CLK

I

时钟

CLK

SCLK

I

时钟

6

VSS2

S

VSS2

VSS2

S

7

DAT0

I/O/PP

数据线0

DAT

DO

O/PP

数据输出

8

DAT1

I/O/PP

数据线1

IRQ(中断)

IRQ



9

DAT2

I/O/PP

数据线2

RW(Read Wait)

Reserved



10

NC



NC

NC



11

NC



NC

NC



注:NC仅在miniSDIO卡中使用。


硬件助手 将艺术融于技术,将技术融于生活。 Art in tech, tech in life.
评论
  •  万万没想到!科幻电影中的人形机器人,正在一步步走进我们人类的日常生活中来了。1月17日,乐聚将第100台全尺寸人形机器人交付北汽越野车,再次吹响了人形机器人疯狂进厂打工的号角。无独有尔,银河通用机器人作为一家成立不到两年时间的创业公司,在短短一年多时间内推出革命性的第一代产品Galbot G1,这是一款轮式、双臂、身体可折叠的人形机器人,得到了美团战投、经纬创投、IDG资本等众多投资方的认可。作为一家成立仅仅只有两年多时间的企业,智元机器人也把机器人从梦想带进了现实。2024年8月1
    刘旷 2025-01-21 11:15 502浏览
  • 日前,商务部等部门办公厅印发《手机、平板、智能手表(手环)购新补贴实施方案》明确,个人消费者购买手机、平板、智能手表(手环)3类数码产品(单件销售价格不超过6000元),可享受购新补贴。每人每类可补贴1件,每件补贴比例为减去生产、流通环节及移动运营商所有优惠后最终销售价格的15%,每件最高不超过500元。目前,京东已经做好了承接手机、平板等数码产品国补优惠的落地准备工作,未来随着各省市关于手机、平板等品类的国补开启,京东将第一时间率先上线,满足消费者的换新升级需求。为保障国补的真实有效发放,基于
    华尔街科技眼 2025-01-17 10:44 221浏览
  • 本文介绍瑞芯微开发板/主板Android配置APK默认开启性能模式方法,开启性能模式后,APK的CPU使用优先级会有所提高。触觉智能RK3562开发板演示,搭载4核A53处理器,主频高达2.0GHz;内置独立1Tops算力NPU,可应用于物联网网关、平板电脑、智能家居、教育电子、工业显示与控制等行业。源码修改修改源码根目录下文件device/rockchip/rk3562/package_performance.xml并添加以下内容,注意"+"号为添加内容,"com.tencent.mm"为AP
    Industio_触觉智能 2025-01-17 14:09 164浏览
  •  光伏及击穿,都可视之为 复合的逆过程,但是,复合、光伏与击穿,不单是进程的方向相反,偏置状态也不一样,复合的工况,是正偏,光伏是零偏,击穿与漂移则是反偏,光伏的能源是外来的,而击穿消耗的是结区自身和电源的能量,漂移的载流子是 客席载流子,须借外延层才能引入,客席载流子 不受反偏PN结的空乏区阻碍,能漂不能漂,只取决于反偏PN结是否处于外延层的「射程」范围,而穿通的成因,则是因耗尽层的过度扩张,致使跟 端子、外延层或其他空乏区 碰触,当耗尽层融通,耐压 (反向阻断能力) 即告彻底丧失,
    MrCU204 2025-01-17 11:30 184浏览
  • Ubuntu20.04默认情况下为root账号自动登录,本文介绍如何取消root账号自动登录,改为通过输入账号密码登录,使用触觉智能EVB3568鸿蒙开发板演示,搭载瑞芯微RK3568,四核A55处理器,主频2.0Ghz,1T算力NPU;支持OpenHarmony5.0及Linux、Android等操作系统,接口丰富,开发评估快人一步!添加新账号1、使用adduser命令来添加新用户,用户名以industio为例,系统会提示设置密码以及其他信息,您可以根据需要填写或跳过,命令如下:root@id
    Industio_触觉智能 2025-01-17 14:14 123浏览
  • 高速先生成员--黄刚这不马上就要过年了嘛,高速先生就不打算给大家上难度了,整一篇简单但很实用的文章给大伙瞧瞧好了。相信这个标题一出来,尤其对于PCB设计工程师来说,心就立马凉了半截。他们辛辛苦苦进行PCB的过孔设计,高速先生居然说设计多大的过孔他们不关心!另外估计这时候就跳出很多“挑刺”的粉丝了哈,因为翻看很多以往的文章,高速先生都表达了过孔孔径对高速性能的影响是很大的哦!咋滴,今天居然说孔径不关心了?别,别急哈,听高速先生在这篇文章中娓娓道来。首先还是要对各位设计工程师的设计表示肯定,毕竟像我
    一博科技 2025-01-21 16:17 105浏览
  • 现在为止,我们已经完成了Purple Pi OH主板的串口调试和部分配件的连接,接下来,让我们趁热打铁,完成剩余配件的连接!注:配件连接前请断开主板所有供电,避免敏感电路损坏!1.1 耳机接口主板有一路OTMP 标准四节耳机座J6,具备进行音频输出及录音功能,接入耳机后声音将优先从耳机输出,如下图所示:1.21.2 相机接口MIPI CSI 接口如上图所示,支持OV5648 和OV8858 摄像头模组。接入摄像头模组后,使用系统相机软件打开相机拍照和录像,如下图所示:1.3 以太网接口主板有一路
    Industio_触觉智能 2025-01-20 11:04 156浏览
  • 数字隔离芯片是一种实现电气隔离功能的集成电路,在工业自动化、汽车电子、光伏储能与电力通信等领域的电气系统中发挥着至关重要的作用。其不仅可令高、低压系统之间相互独立,提高低压系统的抗干扰能力,同时还可确保高、低压系统之间的安全交互,使系统稳定工作,并避免操作者遭受来自高压系统的电击伤害。典型数字隔离芯片的简化原理图值得一提的是,数字隔离芯片历经多年发展,其应用范围已十分广泛,凡涉及到在高、低压系统之间进行信号传输的场景中基本都需要应用到此种芯片。那么,电气工程师在进行电路设计时到底该如何评估选择一
    华普微HOPERF 2025-01-20 16:50 76浏览
  • 嘿,咱来聊聊RISC-V MCU技术哈。 这RISC-V MCU技术呢,简单来说就是基于一个叫RISC-V的指令集架构做出的微控制器技术。RISC-V这个啊,2010年的时候,是加州大学伯克利分校的研究团队弄出来的,目的就是想搞个新的、开放的指令集架构,能跟上现代计算的需要。到了2015年,专门成立了个RISC-V基金会,让这个架构更标准,也更好地推广开了。这几年啊,这个RISC-V的生态系统发展得可快了,好多公司和机构都加入了RISC-V International,还推出了不少RISC-V
    丙丁先生 2025-01-21 12:10 118浏览
  • 临近春节,各方社交及应酬也变得多起来了,甚至一月份就排满了各式约见。有的是关系好的专业朋友的周末“恳谈会”,基本是关于2025年经济预判的话题,以及如何稳定工作等话题;但更多的预约是来自几个客户老板及副总裁们的见面,他们为今年的经济预判与企业发展焦虑而来。在聊天过程中,我发现今年的聊天有个很有意思的“点”,挺多人尤其关心我到底是怎么成长成现在的多领域风格的,还能掌握一些经济趋势的分析能力,到底学过哪些专业、在企业管过哪些具体事情?单单就这个一个月内,我就重复了数次“为什么”,再辅以我上次写的:《
    牛言喵语 2025-01-22 17:10 68浏览
  • 2024年是很平淡的一年,能保住饭碗就是万幸了,公司业绩不好,跳槽又不敢跳,还有一个原因就是老板对我们这些员工还是很好的,碍于人情也不能在公司困难时去雪上加霜。在工作其间遇到的大问题没有,小问题还是有不少,这里就举一两个来说一下。第一个就是,先看下下面的这个封装,你能猜出它的引脚间距是多少吗?这种排线座比较常规的是0.6mm间距(即排线是0.3mm间距)的,而这个规格也是我们用得最多的,所以我们按惯性思维来看的话,就会认为这个座子就是0.6mm间距的,这样往往就不会去细看规格书了,所以这次的运气
    wuliangu 2025-01-21 00:15 189浏览
  •     IPC-2581是基于ODB++标准、结合PCB行业特点而指定的PCB加工文件规范。    IPC-2581旨在替代CAM350格式,成为PCB加工行业的新的工业规范。    有一些免费软件,可以查看(不可修改)IPC-2581数据文件。这些软件典型用途是工艺校核。    1. Vu2581        出品:Downstream     
    电子知识打边炉 2025-01-22 11:12 65浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦