eMMC基础技术4:eMMC command
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不一致,则被认为是传输错误;
4. command分类
| 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的更多相关文章
- eMMC基础技术3:eMMC总线token
1.前言 本文主要介绍eMMC 总线协议相关的内容,主要包括: (1)command token format (2)response token format (3)data packet form ...
- eMMC基础技术2:eMMC概述
0.前言 本文主要参考eMMC规范,从总体上对eMMC 进行简要介绍.主要包含如下的内容: (1)eMMC系统的总体架构 (2)eMMC的总线协议 (3)device controller (4)fl ...
- eMMC基础技术11:flash memory
[转]http://www.wowotech.net/basic_tech/367.html 0.前言 eMMC 是 Flash Memory 的一类,在详细介绍 eMMC 之前,先简单介绍一下 Fl ...
- eMMC基础技术1:MMC简介
[转]http://www.wowotech.net/basic_tech/mmc_sd_sdio_intro.html 1. 前言 熟悉Linux kernel的人都知道,kernel使用MMC s ...
- eMMC基础技术9:分区管理
[转]http://www.wowotech.net/basic_tech/emmc_partitions.html 0.前言 eMMC 标准中,将内部的 Flash Memory 划分为 4 类区域 ...
- emmc基础技术8:操作模式3-interrupt mode
1. 前言 eMMC总线操作包含: boot mode, device identification mode interrupt mode data transfer mode 本文主要描述inte ...
- eMMC基础技术6:eMMC data读写
1. 前言 data可以经data线从host发往device,也可以从device发往host 数据线以是1线(DATA0),4线(DATA0~DATA3),8线(DATA0~DATA7) 对每条数 ...
- emmc基础技术8:操作模式4-data transfer mode
1.前言 eMMC总线操作包含: boot mode, device identification mode interrupt mode data transfer mode 本文主要描述data ...
- eMMC基础技术7:Bus Speed Modes
1. 前言 eMMC有多种速率模式,主要根据如下几个方面进行划分: single rate or dual rate I/O电压 BUS宽度 支持的clock频率范围 最大的传输速率 2. 概览 图 ...
随机推荐
- CSS外边框、边界样式常用组合
一.CSS框线一览表 border-top : 1px solid #6699cc; /*上框线*/ border-bottom : 1px solid #6699cc; /*下框线*/ border ...
- Linux系统IO分析工具之iotop常用参数介绍
Linux系统IO分析工具之iotop常用参数介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在一般运维工作中经常会遇到这么一个场景,服务器的IO负载很高(iostat中的 ...
- mysql清理binlog日志
mysql的binlog日志过多过大,清理过程. 1.查看binlog日志 mysql> show binary logs; +------------------+-----------+ | ...
- SSH框架新线程下执行数据库持久化时 No Session found for current thread
架构:SSH框架 问题:多线程下的持久化操作 异常No Session found for current thread出现环境: SSH框架,采用声明式事务, 通过sessionFactory.ge ...
- 13.模板方法(Template Method)
无处不在的Template Method 如果你只想掌握一种设计模式,那么它就是Template Method!动机(Motivate): 变化 -----是软件设计的永恒主题,如何管理 ...
- linux备份用户权限
1:切换root用户,进入home目录,执行以下命令: [root@localhost home]# ll /home/wangfajun 2: home目录下执行以下命令进行wangfajun用户的 ...
- windows批量修改文件后缀名
有时候需要批量修改一些文件的后缀名,下面介绍批量修改的方法. 1.在文件夹内新建一个.txt文本文档. 2.在文本文档内写:ren * *.mp3 (意思是把没有后缀名的全部改成.mp3的格式, ...
- c++进阶学习
以后可能要做c++开发了..记录要看的书和可能用的技术,让自己有个学习的方向... 1. 语言基础 2. 算法与数据结构基础 3. 多线程开发基础 4. 数据库 5. 网络编程 6. 内存数据库技 ...
- consul - 基础
=============================consul 是什么============================= consul 是 HashiCorp 公司推出的开源工具, 该 ...
- Basic berkeley socket functions
gethostbyname() DNS を通して.Domain の Information を GET する.例えば IP Address なんだ. げん型: #include <netdb.h ...