mipi协议中文详解
一、MIPI
MIPI(移动行业处理器接口)是Mobile Industry Processor Interface的缩写。MIPI(移动行业处理器接口)是MIPI联盟发起的为移动应用处理器制定的开放标准。
已经完成和正在计划中的规范如下:
二、MIPI联盟的MIPI DSI规范
1、名词解释
• DCS (DisplayCommandSet):DCS是一个标准化的命令集,用于命令模式的显示模组。
• DSI, CSI (DisplaySerialInterface, CameraSerialInterface
• DSI 定义了一个位于处理器和显示模组之间的高速串行接口。
• CSI 定义了一个位于处理器和摄像模组之间的高速串行接口。
• D-PHY:提供DSI和CSI的物理层定义
2、DSI分层结构
DSI分四层,对应D-PHY、DSI、DCS规范、分层结构图如下:
• PHY 定义了传输媒介,输入/输出电路和和时钟和信号机制。
• Lane Management层:发送和收集数据流到每条lane。
• Low Level Protocol层:定义了如何组帧和解析以及错误检测等。
• Application层:描述高层编码和解析数据流。
3、Command和Video模式
• DSI兼容的外设支持Command或Video操作模式,用哪个模式由外设的构架决定
• Command模式是指采用发送命令和数据到具有显示缓存的控制器。主机通过命令间接的控制外设。Command模式采用双向接口
• Video模式是指从主机传输到外设采用时实象素流。这种模式只能以高速传输。为减少复杂性和节约成本,只采用Video模式的系统可能只有一个单向数据路径
三、D-PHY介绍
1、 D-PHY 描述了一同步、高速、低功耗、低代价的PHY。
• 一个 PHY配置包括
• 一个时钟lane
• 一个或多个数据lane
• 两个Lane的 PHY配置如下图
• 三个主要的lane的类型
• 单向时钟Lane
• 单向数据Lane
• 双向数据Lane
• D-PHY的传输模式
• 低功耗(Low-Power)信号模式(用于控制):10MHz (max)
• 高速(High-Speed)信号模式(用于高速数据传输):80Mbps ~ 1Gbps/Lane
• D-PHY低层协议规定最小数据单位是一个字节
• 发送数据时必须低位在前,高位在后.
• D-PHY适用于移动应用
• DSI:显示串行接口
• 一个时钟lane,一个或多个数据lane
• CSI:摄像串行接口
2、Lane模块
• PHY由D-PHY(Lane模块)组成
• D-PHY可能包含:
• 低功耗发送器(LP-TX)
• 低功耗接收器(LP-RX)
• 高速发送器(HS-TX)
• 高速接收器(HS-RX)
• 低功耗竞争检测器(LP-CD)
• 三个主要lane类型
• 单向时钟Lane
• Master:HS-TX, LP-TX
• Slave:HS-RX, LP-RX
• 单向数据Lane
• Master:HS-TX, LP-TX
• Slave:HS-RX, LP-RX
• 双向数据Lane
• Master, Slave:HS-TX, LP-TX, HS-RX, LP-RX, LP-CD
3、Lane状态和电压
• Lane状态
• LP-00, LP-01, LP-10, LP-11 (单端)
• HS-0, HS-1 (差分)
• Lane电压(典型)
• LP:0-1.2V
• HS:100-300mV (200mV)
4、操作模式
• 数据Lane的三种操作模式
• Escape mode, High-Speed(Burst) mode, Control mode
•从控制模式的停止状态开始的可能事件有:
• Escape mode request (LP-11→LP-10→LP-00→LP-01→LP-00)
• High-Speed mode request (LP-11→LP-01→LP-00)
• Turnaround request (LP-11→LP-10→LP-00→LP-10→LP-00)
• Escape mode是数据Lane在LP状态下的一种特殊操作
•在这种模式下,可以进入一些额外的功能:LPDT, ULPS, Trigger
•数据Lane进入Escape mode模式通过LP-11→LP-10→LP-00→LP-01→LP-00
•一旦进入Escape mode模式,发送端必须发送1个8-bit的命令来响应请求的动作
• Escape mode 使用Spaced-One-Hot Encoding
•超低功耗状态(Ultra-Low Power State)
•这个状态下,lines处于空状态 (LP-00)
• 时钟Lane的超低功耗状态
•时钟Lane通过LP-11→LP-10→LP-00进入ULPS状态
•通过LP-10 → TWAKEUP →LP-11退出这种状态,最小TWAKEUP时间为1ms
• 高速数据传输
•发送高速串行数据的行为称为高速数据传输或触发(burst)
•全部Lanes门同步开始,结束的时间可能不同。
•时钟应该处于高速模式
• 各模操作式下的传输过程
•进入Escape模式的过程 :LP-11→LP-10→LP-00→LP-01→LP-00→Entry Code → LPD (10MHz)
•退出Escape模式的过程:LP-10→LP-11
•进入高速模式的过程:LP-11→LP-01→LP-00→SoT(00011101) → HSD (80Mbps ~ 1Gbps)
•退出高速模式的过程:EoT→LP-11
•控制模式 - BTA 传输过程:LP-11→LP-10→LP-00→LP-10→LP-00
•控制模式 - BTA 接收过程:LP-00→LP-10→LP-11
• 状态转换关系图
四、DSI介绍
1、DSI是一种Lane可扩展的接口,1个时钟Lane/1-4个数据Lane
• DSI兼容的外设支持1个或2个基本的操作模式:
• Command Mode(类似于MPU接口)
• Video Mode(类似于RGB接口)- 必须用高速模式传输数据,支持3种格式的数据传输
• Non-Burst 同步脉冲模式
• Non-Burst 同步事件模式
• Burst模式
• 传输模式:
• 高速信号模式(High-Speed signaling mode)
• 低功耗信号模式(Low-Power signaling mode) - 只使用数据lane 0(时钟是由DP,DN异或而来)。
• 帧类型
• 短帧:4 bytes (固定)
• 长帧:6~65541 bytes (可变)
• 两个数据Lane高速传输示例
2、短帧结构
• 帧头部(4个字节)
• 数据标识(DI) 1个字节
• 帧数据- 2个字节 (长度固定为2个字节)
• 错误检测(ECC) 1个字节
• 帧大小
• 长度固定为4个字节
3、长帧结构
• 帧头部(4个字节)
• 数据标识(DI) 1个字节
• 数据计数- 2个字节 (数据填充的个数)
• 错误检测(ECC) 1个字节
•数据填充(0~65535 字节)
• 长度=WC*字节
• 帧尾:校验和(2个字节)
• 帧大小:
• 4 + (0~65535) + 2 = 6 ~ 65541 字节
4、帧数据类型
五、MIPI DSI信号测量实例
1、MIPI DSI在Low Power模式下的信号测量图
2、MIPI的D-PHY和DSI的传输方式和操作模式
• D-PHY和DSI的传输模式
• 低功耗(Low-Power)信号模式(用于控制):10MHz (max)
• 高速(High-Speed)信号模式(用于高速数据传输):80Mbps ~ 1Gbps/Lane
• D-PHY的操作模式
• Escape mode, High-Speed(Burst) mode, Control mode
• DSI的操作模式
• Command Mode(类似于MPU接口)
• Video Mode(类似于RGB接口)- 必须用高速模式传输数据
3、小结论
• 传输模式和操作模式是不同的概念
• Video Mode操作模式下必须使用High-Speed的传输模式
• Command Mode操作模式并没有规定使用High-Speed或Low Power的传输模式,或者说
• 即使外部LCD模组为Video Mode,但通常在LCD模组初始化时还是使用Command Mode模式来读写寄存器,因为在低速下数据不容易出错并且容易测量。
• Video Mode当然也可以用High-Speed的方式来发送指令,Command Mode操作模式也可以使用High-Speed,只是没有必要这么做。
mipi协议中文详解的更多相关文章
- MIPI协议中文详解【转】
本文转载自:http://www.voidcn.com/blog/michaelcao1980/article/p-6254588.html 一.MIPI MIPI(移动行业处理器接口)是Mobile ...
- Nginx配置文件nginx.conf中文详解(转)
######Nginx配置文件nginx.conf中文详解##### #定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数. worker_ ...
- Nginx配置文件中文详解
######Nginx配置文件nginx.conf中文详解##### #定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数. worker_ ...
- Nginx安全相关配置和nginx.conf中文详解
一.centos下redis安全相关 1.背景 在使用云服务器时,如果我们的redis关闭了protected-mode模式,被病毒攻击的可能会大大增加,因此我们使用redis时候,最好更改默认端口, ...
- [转帖]技术扫盲:新一代基于UDP的低延时网络传输层协议——QUIC详解
技术扫盲:新一代基于UDP的低延时网络传输层协议——QUIC详解 http://www.52im.net/thread-1309-1-1.html 本文来自腾讯资深研发工程师罗成的技术分享, ...
- Nginx 配置文件nginx.conf中文详解
######Nginx配置文件nginx.conf中文详解##### #定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数. worker_ ...
- HTTP协议的详解
[HTTP协议的详解] Ø 请求部分 * 请求行 * 提交方式: * 提交方式有很多,常用的GET和POST: * GET和POST的区别: * GET的提交的参数会显示到地址栏上,而POST不显示. ...
- 协议分析 - DHCP协议解码详解
协议分析 - DHCP协议解码详解 [DHCP协议简介] DHCP,全称是 Dynamic Host Configuration Protocol﹐中文名为动态主机配置协议,它的前身是 ...
- Nginx中文详解、配置部署及高并发优化
一.Nginx常用命令: 1. 启动 Nginx /usr/local/nginx/sbin/nginxpoechant@ubuntu:sudo ./sbin/nginx2. 停 ...
随机推荐
- PostgreSQL Replication之第九章 与pgpool一起工作(7)
9.7 处理故障转移和高可用 可以使用pgpool来解决的一些明显的问题是高可用性和故障转移.一般来讲,有使用pgpool或者不使用pgpool可以用来处理这些问题的各种方法. 9.7.1 使用Pos ...
- Leetcode: Guess Number Higher or Lower
We are playing the Guess Game. The game is as follows: I pick a number from 1 to n. You have to gues ...
- C# 微信支付教程系列之扫码支付
微信支付教程系列之扫码支付 今天,我们来一起探讨一下这个微信扫码支付.何为扫码支付呢?这里面,扫的码就是二维码了,就是我们经常扫一扫的那种二维码图片,例如,我们自己添加好友的时候 ...
- int 与 Integer--话说数组转集合
话说是自从JDK5后,而这就可以自动进行类型转换了. 当然,区别还是有的,就是对象和“非对象”什么的.可是,今天进行一个测试,出了一个小问题,现将代码贴下: 代码0:先来一个正常点的,用String进 ...
- 最大权闭合图(Road constructions)hdu3917
题意:给出n个城市,k条道路,每条道路都有其负责的公司和花费,m个公司来投标修路,给出m个公司承包需要交纳的赋税,如果第i个公司负责修1-->2路,第j个公司负责修2-->3路,如果选择了 ...
- zjuoj 3600 Taxi Fare
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3600 Taxi Fare Time Limit: 2 Seconds ...
- [转]MySQL数据库引擎
经常用MySQL数据库,但是,你在用的时候注意过没有,数据库的存储引擎,可能有注意但是并不清楚什么意思,可能根本没注意过这个问题,使用了默认的数据库引擎,当然我之前属于后者,后来成了前者,然后就有了这 ...
- C++之路进阶——bzoj3524(Couriers)
F.A.Qs Home Discuss ProblemSet Status Ranklist Contest ModifyUser gryz2016 Logout 捐赠本站 Notice:由于本OJ ...
- java中创建线程的几种方法及区别
1,实现Runnable接口创建线程 特点: A:将代码和数据分开,形成清晰的模型 B:线程体run()方法所在的类可以从其它类中继承一些有用的属性和方法 C:有利于保持程序风格的一致性 2,继承Th ...
- OpenGL中两种计算投影矩阵的函数
OpenGL无意间同时看到两种创建投影矩阵的写法,可以说它们完成的是同样的功能,但写法完全不同,可以观摩一下什么叫做异曲同工之妙... 第一种: gltMakeShadowMatrix函数是重点 // ...