SDIO(安全数字输入输出)/协议

这篇具有很好参考价值的文章主要介绍了SDIO(安全数字输入输出)/协议。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 目录

一、SDIO:安全数字输入输出 

目录

定义

功能

二、SDIO协议

介绍

信号

协议

一般协议

写协议

读协议

命令

命令格式

命令应答

数据

三、一文搞懂SDIO

四、SDIO简介

 五、SD卡引脚定义和图连接

 六、SDIO协议简介

七、MMC、SD、TF、SDIO、SDMMC简介 


一、SDIO:安全数字输入输出 

SDIO_百度百科

SDIO(Secure Digital Input and Output)中文名称:安全数字输入输出,定义了一种外设接口。

中文名 安全数字输入输出

外文名 Secure Digital Input and Output Card

目录

  1. 1 定义
  2. 2 功能

定义

SDIO在SD标准上定义了一种外设接口。SDIO主要有两类应用——可移动和不可移动。可移动设备作为Palm和Windows Mobile的扩展设备,用来增加蓝牙、照相机、GPS和802.11b功能。不可移动设备遵循相同的电气标准,但不要求符合物理标准。某些手机内包含通过SDIO连接CPU的802.11芯片。此举将“珍贵”的I/ O管脚资源用于更重要的功能。

蓝牙、照相机、GPS和802.11b设备有专为它们定义的应用规范。这些应用规范与为PCI和USB设备定义的类规范很相像。它们允许任何宿主设备与任意外设“通话”,只要它们都支持应用规范。

SDIO(Secure Digital Input and Output),即安全数字输入输出接口。它是在SD卡接口的基础上发展而来,它可以兼容之前的SD卡,并可以连接SDIO接口设备,比如:蓝牙、WIFI、GPS等

sdio协议规范,SDIO安全数字输入输出接口,SDIO安全数字输入输出

SDIO

SDIO和SD卡规范间的一个重要区别是增加了低速标准。SDIO卡只需要SPI和1位SD传输模式。低速卡的目标应用是以最小的硬件开支支持低速I/ O能力。低速卡支持类似调制解调器、条码扫描仪和GPS接受器等应用。对“组合”卡(存储器+ SDIO)而言,全速和4位操作对卡内存储器和SDIO部分都是强制要求的。

功能

转换设备的能力:

SD标准有很大的弹性:

比方说,SD插槽不仅能插入内存卡,SDIO卡还是一种界面。即由使用标准SD卡插槽来扩展设备的功能,让设备拥有新的功能。

新功能列举如下:GPS相机、Wi-Fi调频广播、以太网、条形码读卡器、蓝牙等。

拥有与SD memory card同样的终端、形状的卡槽,利用于扩张卡的规格,把对应SDIO卡槽(插口)统称为SDIO卡,扩张卡则被称为SDIO卡。

是为了在个人电脑和PDA等中添加功能而使用SD卡的规格,由于可以使用比PC卡形状还小的卡和插槽,相比于笔记本电脑,更多采用于小巧的PDA中。主要销售的产品有,面向PDA的PHS通讯卡和蓝牙通讯卡,无线网卡,小型数码相机等。

为了使用SDIO,必须要有对应的插槽,数码相机等memory card的专用缝儿插槽不对应SDIO卡。SDIO插槽中能够插入SD memory card来读写。

词条图册

更多图册 

sdio协议规范,SDIO安全数字输入输出接口,SDIO安全数字输入输出

 

二、SDIO协议

SDIO协议 - 知乎

介绍

SDIO是安全数字输入输出接口(Secure Digital Input and Output)的缩写,是从SD内存卡接口的基础上演化出来的一种外设接口。SDIO接口兼容以前的SD内存卡,并且可以连接支持SDIO接口的设备。SDIO的应用比较广泛,目前,有许多手机都支持SDIO功能,并且很多SDIO外设也被开发出来,使得手机外接外设更加容易。常见的SDIO外设有WLAN、GPS、CAMERA、蓝牙等。SDIO总线有两端,其中一端是主机端(HOST),另一端是设备端(DEVICE)。所有的通信都是由HOST端发出命令开始的,在DEVICE端只要能解析HOST的命令,就可以同HOST进行通信了。SDIO的HOST可以连接多个DEVICE。sdio通常工作在25mhz或50mhz的时钟下。

sdio协议规范,SDIO安全数字输入输出接口,SDIO安全数字输入输出

SDIO总线拓扑

信号

SDIO信号有三种模式,“单线模式”、“4线模式”、“SPI模式”。

CLK:HOST给DEVICE的时钟信号。

VDD:电源信号。

VSS:Ground信号。

DAT0-DAT3:4条数据线

CMD:用于HOST发送命令和DEVICE回复响应。

sdio协议规范,SDIO安全数字输入输出接口,SDIO安全数字输入输出

三种模式的信号定义

协议

SDIO协议,其中包括“无数据传输的一般命令”,“有数据传输的写命令”,“有数据传输的读命令”。协议包含三个要素:命令Command应答Response数据Data

Command:由HOST发送,DEVICE接收,在CMD信号线上传输。以一个起始位为开始,中止位为结束,命令的长度为48位。

Response:由DEVICE发送,HOST接收,在CMD信号线上传输。应答根据不同命令分为4种,长度有48位或136位。

Data:数据是双向的传送的。可以设置为1线模式,也可以设置为4线模式。数据是通过DAT0-DAT3信号线传输的。

一般协议

一般协议传输无应答(no response)命令和无数据(no data)命令。无应答命令只需要传输CMD,不需要应答,命令即携带了所有信息。无数据命令需要在CMD传输之后,返回相应的应答,但无数据传输。应答格式有多种。

sdio协议规范,SDIO安全数字输入输出接口,SDIO安全数字输入输出

写协议

写数据的传输是分块进行的。数据块后面总是跟着CRC位。定义了单块和多块操作。多块操作模式更适合更快的写入操作。当CMD线路上出现停止命令时,多块传输终止。主机可以将数据传输配置为使用单条或多条数据线,此文档只会讨论4位数据线模式。图4-3表明了多块写操作的协议图。单块写操作与多块写操作类似。

sdio协议规范,SDIO安全数字输入输出接口,SDIO安全数字输入输出

读协议

读数据的传输与写数据时类似,参看上面写协议。图4-2表明了多块读操作的协议图。单块读操作与多块读操作类似。

sdio协议规范,SDIO安全数字输入输出接口,SDIO安全数字输入输出

命令

命令分为四种类型:

广播命令(bc):通过SD总线发送到总线上所有从设备,并且不需要应答的命令。

需要应答的广播命令(bcr):通过SD总线发送到总线上所有从设备,并且需要所有的从设备分别应答的命令。

指向地址的命令(ac):没有数据传输的,到某一个指定从设备的命令。

指向地址的数据传输命令(adtc):对指定的从设备进行数据传输的命令。

命令格式

SD命令是一个6字节组成的命令包,其中BYTE1是命令号。命令号bit7表示起始位,bit6表示主机发出的命令。Bit5~bit0表示具体的命令号。BYTE2~BYTE5表示命令内容。BYTE6为7bit的CRC校验以及1bit的结束位。如下。

sdio协议规范,SDIO安全数字输入输出接口,SDIO安全数字输入输出

一种命令格式

一些命令

sdio协议规范,SDIO安全数字输入输出接口,SDIO安全数字输入输出

一部分命令

*R1b:All data blocks are responded to with a data response token followed by a busy signal. The data transferred must not cross a physical block boundary.

*RCA:Relative card address:相对卡地址,卡的本地系统地址,初始化时由主机配置。

命令应答

以R1应答为例。R1:Bit45~bit40表示它所响应的命令的索引。从设备的状态用32位编码。请注意,当涉及到向从设备的数据传输时,在传输每个数据块后,数据线上可能会出现一个忙信号。数据块传输后,主机将检查是否繁忙。

sdio协议规范,SDIO安全数字输入输出接口,SDIO安全数字输入输出

R1应答格式

R1b与R1相同,在数据线上传输可选的繁忙信号。根据命令接收前的状态,从设备在接收到这些命令后可能会变得繁忙。主机将在响应时检查是否繁忙。

其中[39:8] card status被定义如下。

sdio协议规范,SDIO安全数字输入输出接口,SDIO安全数字输入输出

card status

数据

此文只讨论4位总线情况,数据一次传输4位(见图4-6)。开始和结束位,以及循环冗余校验位,为每一条数据线路传输。对每个数据行单独计算和检查循环冗余校验比特。CRC校验状态响应和忙指示将由从设备发送到仅在DAT0上的主设备。

数据结构

面向块的数据传输的有效载荷由CRC校验保护。生成多项式是标准的CCITT多项式。

请注意,CRC校验是计算出来的,并附加到块末尾的每个dat行。在宽总线操作的情况下(DAT0-DAT3),单独为每条DAT信号线计算一个16bit的CRC校验。

sdio协议规范,SDIO安全数字输入输出接口,SDIO安全数字输入输出

FPGA 实现

实现的是FPGA作为Device,与SOC通信,实现SOC通过SDIO将数据写入FPGA的DDR中,再从FPGA的DDR中取走数据。这样做的目的是FPGA片上实现编码操作,SDIO接口负责传输原始码流和编码码流。

SDIO IP分为cmd模块和data模块。

cmd模块,根据sdio命令格式设置状态机,正确收取命令,然后通过应答格式将应答回传给主机。sdio有标准的命令,如cmd0~cmd54这些标准命令,需要从机做出相应的执行和应答。命令可以自定义命令,sdio是个标准协议集,所以有wifi-sdio,有card-sdio,这些不同的sdio协议有共同的标准部分,也有自定义的部分。我们实现的sdio也有自定义的部分,可以自定义一些命令,用来使SOC对FPGA侧进行控制。

data模块,通过接收的cmd命令做出读或写的操作,通过data0~data4传输数据,根据crc16校验数据。

三、一文搞懂SDIO

一文搞懂SDIO_曼巴精神传承人的博客-CSDN博客

 

四、SDIO简介

SDIO简介_江波ZK的博客-CSDN博客

 

 五、SD卡引脚定义和图连接

详谈SD卡/微型SD卡的引脚定义与连接(精美多图) - 知乎

 

 六、SDIO协议简介

SDIO协议简介 

 

七、MMC、SD、TF、SDIO、SDMMC简介 

MMC、SD、TF、SDIO、SDMMC简介_撒哈拉的初学者的博客-CSDN博客 文章来源地址https://www.toymoban.com/news/detail-728049.html

到了这里,关于SDIO(安全数字输入输出)/协议的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • SDIO读写SD卡速度有多快?

    前两天测试了SPI方式读写SD卡的速度《SPI方式读写SD卡速度测试》,今天来测试一下SDIO方式的读写速度。 测试条件: 单片机:STM32F407VET6 编译环境:MDK 5.30+HAL库 SD卡:闪迪32GB/64GB TF卡 文件系统:FatFS R0.12c 之前测试中说过了,非DMA方式速度和资源利用率都不如DMA方式,所以今

    2024年02月02日
    浏览(43)
  • stm32读写SD卡(SDIO模式)

    目录 一、SD卡简介 二、源码下载 三、移植条件 1、芯片参数 2、硬件连接 四、驱动代码 1、依赖宏如下 2、驱动代码实现 3、测试代码 4、运行截图 五、总结 SD卡有SDIO驱动模式和SPI驱动模式,本例中使用SDIO模式驱动SD卡。 https://download.csdn.net/download/qq_30095023/88702705 https://downl

    2024年01月24日
    浏览(46)
  • xilinx zynq7000系列 sdio时钟超频详解

    zynq7000的时钟系统很简单,首先是PS_CLK输入时钟,这是外部33.33333Mhz晶振时钟,直接输入到三路PLL(锁相环),分别是 ARM PLL、I/O PLL、DDR PLL;ARM PLL给 CPU核心、SCU(用来管理多核通信)、OCM、AXI总线提供时钟;I/O PLL给各类外设包括SDIO、USB、Ethernet等提供时钟;DDR PLL仅用来给DDR2/3提供

    2023年04月08日
    浏览(41)
  • STM32CubeMX教程27 SDIO - 读写SD卡

    正点原子stm32f407探索者开发板V2.4 STM32CubeMX软件(Version 6.10.0) keil µVision5 IDE(MDK-Arm) ST-LINK/V2驱动 逻辑分析仪nanoDLA 野火DAP仿真器 XCOM V2.6串口助手 使用STM32CubeMX软件配置STM32F407开发板 SDIO读写4线SD卡,实现轮询方式读写SD卡、以中断方式读取SD卡和以DMA方式读取SD卡 安全数码

    2024年02月19日
    浏览(64)
  • STM32——SDIO的学习(驱动SD卡)(实战篇)

    目录 一、SDIO寄存器 1.1 SDIO电源控制寄存器(SDIO_POWER) 1.2 SDIO时钟控制寄存器(SDIO_CLKCR) 1.3 SDIO参数寄存器(SDIO_ARG) 1.4 SDIO命令寄存器(SDIO_CMD) 1.5 SDIO命令响应寄存器(SDIO_RESPCMD) 1.6 SDIO响应 1..4 寄存器(SDIO_RESPx) 1.7 SDIO数据定时器寄存器(SDIO_DTIMER) 1.8 SDIO数据长度寄存器(SDIO_DLEN) 1.9 SDI

    2024年02月16日
    浏览(65)
  • STM32——SDIO的学习(驱动SD卡)(理论篇)

    目录 一、SD卡简介 1.1历史 1.2 tf卡和SD卡的区别 1.3 mmc,emmc,nand,flash的关系 1.4 SD卡的规格等级 1.4.1按容量分 1.4.2 class等级 1.4.3 UHS总线模式 1.4.4 UHS速度等级 1.4.5 VSC视频速度等级 二、SD卡的内部结构 三、SDIO的学习 3.1 SDIO的主要功能 3.2 SDIO总线拓扑 ​3.3 SDIO功能描述  3.3.1 SD

    2024年02月16日
    浏览(47)
  • stm32在SDIO模式下SD写入错误的问题

    1、问题描述 使用FAT32 f_write 多次执行写操作时,会报FR_DISK_ERR错误,而且是刚开始写不报错,写几次后会一直报错。 设断点跟踪到HAL_SD_WriteBlocks中,在调用SDMMC_CmdWriteMultiBlock时,会报SDMMC_ERROR_TX_UNDERRUN,意思 是Transmit FIFO underrun 2、原因分析 如下图所示,SDMMC开始写操作时,首

    2023年04月24日
    浏览(43)
  • 嵌入式Linux&Android开发-WiFi&BT SDIO调试

    目录   一、基本概念 WiFi STA 模式 和 AP 模式 SDIO(Secure Digital I/O) SDIO-WiFi 模块 二、项目中WiFi说明 三、rockchip WiFi启动流程简介 WiFi应用部分 wpa_supplicant 四、RK WiFi驱动移植流程 4.1 BSP已支持WiFi 4.2 BSP未支持WiFi 五、排查流程 5.1 检查DTS 5.2 排查DTS对应的GPIO设置 5.3检查电压电平

    2023年04月08日
    浏览(68)
  • STM32用一线式驱动SD NAND,SDIO的一线式驱动

    SDIO的一线式和四线式 SDIO(Secure Digital Input/Output)是一种用于在嵌入式系统中连接外部设备的标准接口。在SDIO标准中,一线式和四线式是指SDIO接口的不同工作模式。 一线式(Single-Line Mode): 工作原理: 在一线式模式下,SDIO接口仅使用单个数据线进行通信。这个模式通常用

    2024年01月17日
    浏览(40)
  • STM32对SD卡的读、写、擦除操作(SDIO模式)(DMA)

    对于STM32操作SD卡来说,最重要的就算 初始化 、 写操作 、 读操作 、 擦除 这几个操作了。 对于初始化部分上一篇文章已经分析,本篇就主要分析写、读、擦除操作。 本篇函数来自于 STM32提供的例程 。参考野火的程序进行了解释,与野火函数有些不同。 这几种函数完成之后

    2023年04月08日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包