1.前言

本文主要对eMMC的command进行详细介绍,主要包含如下内容:

(1)command类型

(2)command格式

2.command类型

command类型 说明
bc 不带response的广播命令
bcr 带有response的广播命令
ac 点对点无数据传输
adtc 点对点数据传输

表 command类型

3. command格式

如上图所示,eMMC Command 由 48 Bits 组成,各个 Bits 的解析如下所示:

表 command格式

  • 总长度48bits;
  • 固定以0开始,以1结束;
  • transmiter bit表示数据的传输方向,1代表从host to device;
  • command index 用6个bits指示了command的索引,取值范围0~63;
  • argument:有些command需要发送参数,是否需要发送参数依赖于具体的命令;
  • CRC7是包含 Start Bit、Transmission Bit、 Command Index 和 Argument 内容的 CRC 校验值。通过CRC7保护,device 端在接收到CMD时同样会计算一个CRC值,如果与host发送的CRC不一致,则被认为是传输错误;
注1:eMMC可能不会支持0~63的所有命令,有些命令可能会不支持
注2:CRC 校验简单来说,是发送方将需要传输的数据“除于”(模2除)一个约定的数,并将得到的余数附在数据上一并发送出去。接收方收到数据后,再做同样的“除法”,然后校验得到余数是否与接收的余数相同。
如果不相同,那么意味着数据在传输过程中发生了改变。更多的细节不在本文展开描述,感兴趣的读者可以参考 CRC wiki 中的介绍。

4. command分类

eMMC将command index(0~56)分成12个class,每个class代表一类功能,包含所有commands的一个子集。
具体某一个设备支持哪些class的命令,可以通过CSD寄存器的CCC[95:84] feilds来查询,如bit84为1则表示支持class0
 
device command class class description  note
class 0 basic 基本命令
class 1 obsolete  废弃
class 2 block read 块数据读相关命令,包括设置块长度、读取单块、读取多块
class 3 obsolete 废弃
class 4 block write 块数据写相关命令,包括设置块个数、写入单块、写入多块、修改设备id寄存器、修改CSD、设置RTC
class 5 erase 设置擦除组开始地址、设置擦除组结束地址、擦除操作
class 6 write protection 设置写保护、清除写保护、获取device的写保护状态、获取写保护类型
class 7 lock device lock/unlock device
class 8 application-specific 指示下一个命令是一个特定应用命令而非标准命令  
class 9 I/O mode 写寄存器、设置系统进入中断模式
class 10 security protocols 连续传输数据块从device to host或从host to device
class 11 command queuing 执行队列里的任务
class 12 reserved \

表 command分类

5.参考文档

[1] http://www.jedec.org/sites/default/files/docs/JESD84-B51.pdf

eMMC基础技术4:eMMC command的更多相关文章

  1. eMMC基础技术3:eMMC总线token

    1.前言 本文主要介绍eMMC 总线协议相关的内容,主要包括: (1)command token format (2)response token format (3)data packet form ...

  2. eMMC基础技术2:eMMC概述

    0.前言 本文主要参考eMMC规范,从总体上对eMMC 进行简要介绍.主要包含如下的内容: (1)eMMC系统的总体架构 (2)eMMC的总线协议 (3)device controller (4)fl ...

  3. eMMC基础技术11:flash memory

    [转]http://www.wowotech.net/basic_tech/367.html 0.前言 eMMC 是 Flash Memory 的一类,在详细介绍 eMMC 之前,先简单介绍一下 Fl ...

  4. eMMC基础技术1:MMC简介

    [转]http://www.wowotech.net/basic_tech/mmc_sd_sdio_intro.html 1. 前言 熟悉Linux kernel的人都知道,kernel使用MMC s ...

  5. eMMC基础技术9:分区管理

    [转]http://www.wowotech.net/basic_tech/emmc_partitions.html 0.前言 eMMC 标准中,将内部的 Flash Memory 划分为 4 类区域 ...

  6. emmc基础技术8:操作模式3-interrupt mode

    1. 前言 eMMC总线操作包含: boot mode, device identification mode interrupt mode data transfer mode 本文主要描述inte ...

  7. eMMC基础技术6:eMMC data读写

    1. 前言 data可以经data线从host发往device,也可以从device发往host 数据线以是1线(DATA0),4线(DATA0~DATA3),8线(DATA0~DATA7) 对每条数 ...

  8. emmc基础技术8:操作模式4-data transfer mode

    1.前言 eMMC总线操作包含: boot mode, device identification mode interrupt mode data transfer mode 本文主要描述data ...

  9. eMMC基础技术7:Bus Speed Modes

    1. 前言 eMMC有多种速率模式,主要根据如下几个方面进行划分: single rate or dual rate I/O电压 BUS宽度 支持的clock频率范围 最大的传输速率 2. 概览 图 ...

随机推荐

  1. Docker: 安装配置入门[二]

    一.安装配置启动 1.环境 [root@docker1 ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) [root@d ...

  2. Oracle 去重并显示所有列数据

    一.原始数据(默认会生成一个 rownum 的序列,如下图的第一列) select t.* from ZD_DIC t where t.zdlx = '人员类型' 二.先分组,再给组内的内容进行排序 ...

  3. vue基础篇---vue组件《2》

    定义全局组件 我们通过Vue的component方法来定义一个全局组件. <div id="app"> <!--使用定义好的全局组件--> <coun ...

  4. WEB网站类型系统中使用的OFFICE控件

    WEB下使用的OFFICE控件介绍,另提供一个原创破解首先来个名词解释,Office网络文档控件,就是在网页中编辑office文档的控件(前提是browser已经安装OFFICE).最近一个项目需要用 ...

  5. EL表达式遍历集合获取下标

    如题,HTML页面很多时候需要循环遍历一个集合,并且获得集合元素得下标做判断,或者把下标传递给后台作为参数 那么我们就需要用到EL表达式的varStatus 代码一:<c:forEach var ...

  6. Understanding Favicon

    Favicon 简介 Favicon : 是favorites icon 的缩写,被称为website icon . page icon. urlicon. 最初定义一个favicon的方法是将一个名 ...

  7. python 调用 java代码

    一.JPype简述 1.JPype是什么? JPype是一个能够让 python 代码方便地调用 Java 代码的工具,从而克服了 python 在某些领域(如服务器端编程)中的不足. 2.JPype ...

  8. Word设置多级标题

    选中标题1的内容,点击编号图标,选中一个经典的编号模板,如下图 之后,再次点击编号图标,然后选中“定义新的多级列表”,将打开一个对话框 确保标题1的标号正确: 接着,确保标题2的编号正确: 依次类推, ...

  9. Java8新特性_stream API 练习

    交易员类 public class Trader { private String name; private String city; public Trader() { } public Trad ...

  10. Groovy 设计模式 -- proxy & delegate

    Proxy https://en.m.wikipedia.org/wiki/Proxy 代理人 与 被代理人 是 一对一的关系. A proxy is an agent or substitute a ...