SDIO(安全数字输入输出)/协议 三、一文搞懂SDIO

这篇具有很好参考价值的文章主要介绍了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-666501.html

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

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

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

相关文章

  • 一文搞懂UART通信协议

    目录 1、UART简介 2、UART特性 3、UART协议帧 3.1、起始位 3.2、数据位 3.3、奇偶校验位 3.4、停止位 4、UART通信步骤 UART(Universal Asynchronous Receiver/Transmitter,通用异步收发器)是一种双向、串行、异步的通信总线,仅用一根数据接收线和一根数据发送线就能实现全双工通信。典型的

    2024年02月03日
    浏览(43)
  • 一文搞懂CAN和CAN FD总线协议

    1、CAN是什么 控制器 局域网总线(CAN,Controller Area Netw or k)是一种用于实时应用的串行通讯协议总线,它可以使用双绞线来传输 信号 ,是世界上应用最广泛的现场总线之一。 CAN协议用于汽车中各种不同元件之间的 通信 ,以此取代昂贵而笨重的配电线束。 该协议的健壮性使

    2024年02月10日
    浏览(44)
  • 一文搞懂对称加密与非对称加密(RSA)、信息摘要、数字签名

    目录 一、对称加密与非对称加密 二、信息摘要 三、数字签名 四、小练习 对称加密: 加密和解密使用同一个秘钥(如加密方式为+1,那解密方式为-1)常见的对称加密算法:DES,AES,3DES等 非对称加密: 加密和解密使用不同密钥。两个密钥:公共密钥和私有密钥。通常将公钥

    2024年02月16日
    浏览(54)
  • 一文搞懂Secure Boot (安全启动)

    随着汽车新四化的发展,尤其是网联化及自动驾驶的推进,汽车网络信息安全显得越来越重要。 随着高级驾驶辅助(ADAS)及自动驾驶的推出,车辆动力及制动控制需要部分或全部授权给智能驾驶系统,而车辆又暴露在互联网当中,此时如果智能驾驶系统被黑客攻破,后果将不堪

    2024年04月28日
    浏览(33)
  • 一文搞懂UART、RS232、RS485、TTL等常用的接口与协议

    PC机常用的按照接口数量细分为A型(15针),B型(25针),C型(37针),D型(50针),E型(9针)。其中,串行通信常用的是RS232——9针的DB9接口,显示器用的是VGA——15针的DB15接口。现在的笔记本电脑都已取消这种接口,一方面是因为这种接口比较笨重、逐渐被市场淘汰,另

    2024年02月01日
    浏览(46)
  • 安全多方计算之二:一文搞懂百万富翁问题

    两个百万富翁Alice和Bob想知道他们两个谁更富有,但他们都不想让对方及其他第三方知道自己财富的任何信息,这是由中国计算机科学家、2000年图灵奖获得者姚启智教授于1982年在论文《Protocols for secure computations》中提出的姚氏百万富翁问题,开创了密码学研究的新领域:安全

    2024年02月11日
    浏览(43)
  • 8086汇编:输入输出数字、字符、字符串功能

    前言:初学汇编,可能一时难以习惯这种任何事情都要“亲力亲为”的方式。就拿输入输出来说,高级语言一个函数就可以搞定的事情,在汇编中却不是那么容易的。下面简单介绍下8086汇编输入输出数字和字符串的问题。 调用21号中断的0ah和09h号功能,可以实现字符串的输入

    2023年04月25日
    浏览(50)
  • 【ACM竞赛入门】001.一文读懂常见的ACM题型输入输出格式

    本文通过各种类型的A+B题目来帮助大家快速了解ACM题目中常见的输入输出格式,帮助大家快速上手 时间限制: 1s 内存限制: 64MB 题目描述 Your task is to Calculate a + b. Too easy?! Of course! I specially designed the problem for acm beginners. You must have found that some problems have the same titles with this one,

    2024年02月07日
    浏览(56)
  • 【Java探索之旅】从输入输出到猜数字游戏

    🎥 屿小夏 : 个人主页 🔥个人专栏 : Java编程秘籍 🌄 莫道桑榆晚,为霞尚满天! 本文将介绍如何在Java中进行控制台的输入输出操作,并通过一个简单的猜数字游戏示例来展示分支语句、循环语句的运用。让我们一起来探索这些有趣的编程技巧吧! 基本语法 : println 输出

    2024年04月16日
    浏览(31)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包