SDIO传输数据格式简介

1. SDIO数据流程

1.1 SDIO数据读写流程

1.1.1"no response"和"no data"

具体的操作流程如下所示:

例子:

绿色:SDMMC_CLK

黄色:SDMMC_CMD,空闲时一直处于高电平

  • 主控发出的波形:当最开始的两个电平有一高一低时,是主控发出去的命令;
  • SD卡响应的波形:当最开始的两个电平有连续的两个低电平是表示卡端有响应;

其次主控和响应一般包含48个bit的数据,所以48个clk为一个完整的包。要确认的就是:主控发出去命令包后,SD卡端是否有响应。

1.1.1.1 Command的数据格式

每个Command都有一个起始位(0)和一个结束位(1)。总长度为48位。每个命令都有CRC保护,以便检测传输错误,并可以进行重复操作。

1.1.1.2 Response的数据格式

Response的编码方式取决于它们的内容,长度可以是48位或136位。

1.1.2 数据块操作

1.1.2.1 多数据块读操作

SDIO的Host和Device之间是以数据块形式传输,可以是一次单个数据块,也可以是一次多个数据块。下图给出了一次读取多个数据块的操作:

读操作流程:

  • Device触发中断给Host;
  • Host通过CMD线发起一次command指令;
  • Device给出command对应的response响应;
  • Device发送数据块给Host;
  • Host发送停止接受数据块的指令;
  • Device发送响应并停止发送数据块;
1.1.2.2 多数据块写操作

如下图所示,是一次写多个数据块的操作:

写操作流程:

  • Host通过CMD线发起一次command指令;
  • Device给出command对应的response响应;
  • Host发送数据块给Device;
  • Host发送停止接受数据块的指令;
  • Device发送响应并停止发送数据块;
1.1.2.3 数据类型

SD卡有两种类型的数据包格式。

  • Usual data (8-bit width)
  • Wide width data (SD Memory Register)
1.1.2.3.1 Data Packet Format for Usual Data (8-bit width)

1.1.2.3.2 Data Packet Format for Wide Width Data (Ex.ACMD13)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值