emmc 命令协议
来源:互联网 发布:忆江南的知作者怎么写 编辑:程序博客网 时间:2024/05/29 17:59
所有的命令都是固定的长度48位
所有命令都是以0开始的,紧接着是传输的方向(主机发出的就为1,设备发出的就为0),接下来的6位是命令的索引,这是一组二进制码(0~63),设备就是对这六位译码,区分是哪种命令,还有一些命令需要arg值(比如地址),这一段的长度为32位,所有的命令都会被CRC7保护着,所以CRC保护的是之前的40位,最后以1结束。
上升沿采样,第一个bit为0为start位,第二个bit是1代表host发出,后面的6个bit为011001为cmd25写数据指令,后面的32bit为argument
命令的应答
应答也是由CMD传输的,由左边的位开始传输,应答位的长度根据应答的类型而定。应答是以0开始的,紧接着是传输的方向(设备 = 0 ),接下来的值根据类型不一样也不一样,除了R3以外都会被CRC7保护着,每条命令都是以1结束的。
一共有五种类型的命令应答形式: R1 ,R1b,R2, R3, R4, R5
R1:
该应答的长度为48位,45:40显示的是命令的索引,39:38是32位的设备状态。
R1b和R1的区别只是在DAT0上存在忙信号的传输
R2:(CID、CSD寄存器)
该应答的长度为136位,CID的内容会作为CMD2和CMD10的应答发送给主机,CSD的内容会作为CMD9的应答发送给主机,仅仅只有CID和CSD的[127:1]被传输,最后一位被应答的结束位所代替。
R3:(OCR寄存器)
该应答的长度为48位,OCR寄存器的值会作为CMD1的应答发送给主机。
R4:(Fast IO)
该应答位的长度48位,ARG部分包括RCA的值、寄存器的值、寄存器的值, 如果操作成功,状态位就会被置位
R5:(中断请求)
该应答的长度为48位,如果应答是主机自己发送的,那么RCA的值为0x0000。
注:
无论是单倍数据率模式还是双倍数据率模式,主机的命令和设备的应答都是在时钟的上升沿采样的。
为了让大家看的更加直观,我后面会陆续把各个应答的波形上传上来,以供参考
- emmc 命令协议
- emmc协议,FFU功能
- EMMC命令详解
- eMMC 原理 4 :总线协议
- 4412 emmc分区的命令
- EMMC
- emmc
- emmc
- EMMC
- eMMC
- emmc
- eMMC
- eMMC原理——总线协议
- eMMC之分区管理、总线协议和工作模式
- eMMC之分区管理、总线协议和工作模式
- eMMC之分区管理、总线协议和工作模式(推荐)
- android系统移植emmc记录(4)-- fdisk 分区命令分析
- android系统移植emmc记录(5)-- fastboot命令分析
- java集合总结
- Android开发工程师个人简历
- Spark性能优化指南——高级篇
- 148. Linked List Random Node
- SQL分页优化
- emmc 命令协议
- Android的相对布局
- 单源最短路径(Dijkstra)算法
- 《JavaScript 操作 Cookie》
- 试验
- I/O篇(2)——I/O流体系简介
- 142. Linked List Cycle II
- MySQL学习笔记五
- 详解Ajax技术