MMC存贮卡可以分为MMC和SPI两种工作模式,MMC模式是标准的默认模式,具有MMC的全部特性。而SPI模式则是MMC存贮卡可选的第二种模式,这个模式是MMC协议的一个子集,主要用于只需要小数量的卡(通常是1个)和低数据传输率(和MMC协议相比)的系统,这个模式可以把设计花费减到最小,但性能就不如MMC。

浅谈SD/MMC卡的SD模式和SPI模式

SD/MMC卡的读写模式分两种。一种是利用SD总线来进行数据传输,这里称为SD模式;另外一种是利用SPI总线来进行数据传输,这里称之为SPI模式。

最初接触SD/MMC卡时,Hanny一直觉得很奇怪,为什么SD/MMC卡要提供两种模式进行访问呢?比较完这两种模式的区别,分析其运用场合,就会明白答案了。

SD卡主要工作于4BIT SD模式下(MMC可能工作在8BIT SD模式下)。其读写最高时钟可达50MHz,因此,市面上的卡的读取速度能到达20MB/s以上,已经算极限了。SD模式也是SD卡的主要工作模式。

而SPI模式只有1BIT的带宽,而且时钟最高只能到25MHz,因此读取速度通常低于3MB/s。但是SPI模式对硬件要求较低,一般广泛用于MP3等对读卡速度要求不高的低端场合。

Hanny当时还有一个疑问:SD模式不是也同样支持1BIT模式吗?为什么不直接用SD的1BIT模式呢?

后来才明白:1、SPI总线是一个通用总线,大部份芯片都用硬件模块;2、SPI模式支持不带CRC校验的传输方式,可以降低硬件要求;3、SD的CMD线与DATA线之间有可能同时产生数据,对没有SD硬件模块的主机支持起来难度较高。

SD(Secure Digital)与 MMC(Multimedia Card)
SD 是一种 flash memory card 的标准,也就是一般常见的 SD 记忆卡,而 MMC 则是较早的一种记忆卡标准,目前已经被 SD 标准所取代。在维基百科上有相当详细的 SD/MMC 规格说明:[
http://zh.wikipedia.org/wiki/Secure_Digital
]。
SDIO(Secure Digital I/O)
SDIO 是目前我们比较关心的技术,SDIO 故名思义,就是 SD 的 I/O 接口(interface)的意思,不过这样解释可能还有点抽像。更具体的说明,SD 本来是记忆卡的标准,但是现在也可以把 SD 拿来插上一些外围接口使用,这样的技术便是 SDIO。
所以 SDIO 本身是一种相当单纯的技术,透过 SD 的 I/O 接脚来连接外部外围,并且透过 SD 上的 I/O 数据接位与这些外围传输数据,而且 SD 协会会员也推出很完整的 SDIO stack 驱动程序,使得 SDIO 外围(我们称为 SDIO 卡)的开发与应用变得相当热门。
现在已经有非常多的手机或是手持装置都支持 SDIO 的功能(SD 标准原本就是针对 mobile device 而制定),而且许多 SDIO 外围也都被开发出来,让手机外接外围更加容易,并且开发上更有弹性(不需要内建外围)。目前常见的 SDIO 外围(SDIO 卡)有:
Wi-Fi card(无线网络卡)
CMOS sensor card(照相模块)
GPS card
GSM/GPRS modem card
Bluetooth card
Radio/TV card(很好玩)

SDIO 的应用将是未来嵌入式系统最重要的接口技术之一,并且也会取代目前 GPIO 式的 SPI 接口。
SD/SDIO 的传输模式
SD 传输模式有以下 3 种:
SPI mode(required)
1-bit mode
4-bit mode

SDIO 同样也支持以上 3 种传输模式。依据 SD 标准,所有的 SD(记忆卡)与 SDIO(外围)都必须支持 SPI mode,因此 SPI mode 是「required」。此外,早期的 MMC 卡(使用 SPI 传输)也能接到 SD 插糟(SD slot),并且使用 SPI mode 或 1-bit mode 来读取。
SD 的 MMC Mode
SD 也能读取 MMC 内存,虽然 MMC 标准上提到,MMC 内存不见得要支持 SPI mode(但是一定要支持 1-bit mode),但是市面上能看到的 MMC 卡其实都有支持 SPI mode。因此,我们可以把 SD 设定成 SPI mode 的传输方式来读取 MMC 记忆卡。
SD 的 MMC Mode 就是用来读取 MMC 卡的一种传输模式。不过,SD 的 MMC Mode 虽然也是使用 SPI mode,但其物理特性仍是有差异的:
MMC 的 SPI mode 最大传输速率为 20 Mbit/s;
SD 的 SPI mode 最大传输速率为 25 Mbit/s。

为避免混淆,有时也用 SPI/MMC mode 与 SPI/SD mode 的写法来做清楚区别。

转载于:https://blog.51cto.com/laokaddk/1248818

eMMC的MMC模式与SPI模式相关推荐

  1. SPI模式下MCU对SD卡的控制及操作命令

    一.前言 SD 卡有两个可选的通讯协议:SD 模式和 SPI模式 SD 模式是SD 卡标准的读写方式,但是在选用SD 模式时,往往需要选择带有SD 卡控制器接口的 MCU,或者必须加入额外的SD卡控制 ...

  2. sd卡tf卡进入spi模式

    现在我们手机的内存卡多为Micro SD卡,又叫TF卡,所以Micro SD卡比SD卡常见.自己曾经也想写写SD卡的读取程序,但又不想特地再去买个SD卡,这时想起手机内存卡不是和SD卡很像吗?在网上查 ...

  3. SD卡 SPI模式操作(1)初始化SD卡

    原文(本人转载):帆登小站-SD卡 SPI模式操作(1)初始化SD卡 作者是初学者,水平有限,本文仅作为个人学习笔记使用,不能保证内容的正确性.部分资料来源于网络,参考了SD卡协议2.0手册等资料,如 ...

  4. cmd的发送 mmc_MMC卡SPI模式

    MMC/SD卡简单SPI模式驱动 1.  SPI模式下CRC检验无效的. 2.  命令格式是6个字节,采用大端法进行数据传输. 3.  第一个是(命令号|0x40). 4.  第2-5个是有些命令需要 ...

  5. SD卡的SDIO模式/SPI模式设计扫盲

    SD SD卡(secure digital card)是SD卡协会开发的低成本,非易失性存储卡格式(相比较于RAM,SD卡掉电数据不丢失): 随着本世纪电子技术的高速发展,对于这种中等型号,节能.节省 ...

  6. STM32 HAL库 实现基于SPI模式的SD卡、TF卡FATS文件系统+模拟U盘的应用笔记

    前言 很多单片机不带SDIO接口,所以在使用SD卡时必须使用SPI模式进行读写. 想做一个基于SPI的SD卡文件系统读写SD卡上的文件,再配合USB接口做一个模拟U盘.只能利用业余时间慢慢更新,也不知 ...

  7. Uboot SPL的Boot模式选择(从MMC切换到SPI启动)

    目前主流的Uboot启动模式分为三级启动: 上电开机后,芯片Boot Rom的代码会被加载到内部的SRam运行,由于通常SRam的内存很小(几十K左右),这就决定了Boot Rom中的代码是做不了太多 ...

  8. 51-20210316华为海思Hi3516DV300的linux系统编译1(SPI模式)

    51-20210316华为海思Hi3516DV300的linux系统编译 2021/3/16 10:42 https://xueqiu.com/7970718062/159110439 官井想开挖掘机 ...

  9. SD卡学习(SDIO和SPI模式)

    SD卡学习(SDIO和SPI模式) ** SD卡的操作模式:SD卡模式(SDIO).SPI模式(默认为SD模式). 其中SD卡模式的信号线有:CLK.CMD.DAT0-DAT3,6根线. SPI模式的 ...

  10. Micro SD 卡(TF卡) spi 模式实现方法

    首先贴上一写SD卡SPI模式下的参考电路,以及一些比较不错的帖子的连接: 1:http://www.go-gddq.com/html/s733/2009-12/477854.htm 2:http:// ...

最新文章

  1. java单例设计模式
  2. JS简单循环遍历json数组的方法
  3. 软件测试中英文词汇汇总
  4. putty 远程linux桌面,Linux远程桌面工具Xming+Putty的搭建
  5. 软件测试作业3:软件测试的16条公理
  6. 计算机部件动漫,因一个片段肝了整部番,电脑配件上榜,它满屏“虎狼之词”...
  7. linux登录后自动打开终端,linux登录信息/打开终端信息
  8. 广义典型相关分析_一文教你掌握广义估计方程
  9. 操作系统学习(二)、分段机制
  10. CanvasRenderingContext2D.imageSmoothingEnabled
  11. 公网服务器与局域网手机长连接
  12. UDP用户态协议栈详细实现
  13. java 实现电子签名_java swing实现手写板电子签名系统
  14. APP专项测试——弱网测试
  15. 高清加载具体(如清明上河图)
  16. 用聚宽量化炒股-5获取数据函数-8)获取概念成分股代码函数get_concept_stocks、查询股票所属概念板块函数get_concept()
  17. 美国会委员会建议禁止中国国企收购美国资产
  18. crontab 每天凌晨12点定时器_清运队长每天凌晨3点转运垃圾,因为垃圾分类工作时间大大减少了...
  19. js编码书写规范(自学习用)
  20. R语言中使用UpSet包绘制多集合Venn图

热门文章

  1. 推荐系统:基于内容的推荐
  2. C#中public函数的用法_python中的lambda函数用法
  3. linux下用c语言写黄金矿工,c语言课程设计黄金矿工(提高篇)
  4. php pop3,php使用smtp,pop3协议收发邮件代码
  5. SQL Server-【知识与实战VIII】触发器(下)
  6. 【安装包】eclipse
  7. 7-7 整数的分类处理 (20 分)
  8. Ns3 构建哑铃型拓扑,并实现两个点的TCP连接(详细请戳全文)
  9. 彻底理解ThreadLocal(转)
  10. 首次体验 Live Writter