MIPI协议学习总结(一)
一、MIPI 简介:
MIPI(移动行业处理器接口)是Mobile Industry Processor Interface的缩写。MIPI是MIPI联盟发起的为移动应用处理器制定的开放标准。
已经完成和正在计划中的规范如下:

二、MIPI DSI规范:
1、名词解释
• DCS (Display Command Set):DCS是一个标准化的命令集,用于命令模式的显示模组。
• DSI, CSI (Display Serial Interface , Camera Serial Interface )
• DSI 定义了一个位于处理器和显示模组之间的高速串行接口。
• CSI 定义了一个位于处理器和摄像模组之间的高速串行接口。
• D-PHY:提供DSI和CSI的物理层定义
2、DSI分层结构
DSI分四层,对应D-PHY、DSI、DCS规范;分层结构图如下:
• PHY Layer层:定义了传输媒介,输入/输出电路和和时钟和信号机制。
• 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
2、两个Lane的 PHY配置如下图 :

3、PHY由D-PHY(Lane模块)组成
D-PHY可能包含:
• 低功耗发送器(LP-TX)
• 低功耗接收器(LP-RX)
• 高速发送器(HS-TX)
• 高速接收器(HS-RX)
• 低功耗竞争检测器(LP-CD)
4、三个主要的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
5、D-PHY的传输模式
• 低功耗(Low-Power)信号模式(用于控制):10MHz (max)
• 高速(High-Speed)信号模式(用于高速数据传输):80Mbps ~ 1Gbps/Lane
• D-PHY低层协议规定最小数据单位是一个字节
• 发送数据时必须低位在前,高位在后
6、Lane状态和电压
Lane状态 :
• LP-00, LP-01, LP-10, LP-11 (单端)
• HS-0, HS-1 (差分)
Lane电压(典型) :
• LP:0-1.2V
• HS:100-300mV (200mV)
7、操作模式
数据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)
• Turn around 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、数据帧类型

传输模式和操作模式是不同的概念,Video Mode操作模式下必须使用High-Speed的传输模式 ,Command Mode操作模式并没有规定使用High-Speed或Low Power的传输模式,即使外部LCD模组为Video Mode,但通常在LCD模组初始化时还是使用Command Mode模式来读写寄存器,因为在低速下数据不容易出错并且容易测量。Video Mode也可以用High-Speed的方式来发送指令,Command Mode操作模式也可以使用High-Speed,只是没有必要这么做。
本文参考博客: http://blog.csdn.net/qq160816/article/details/19555957
MIPI协议学习总结(一)的更多相关文章
- MIPI协议学习总结(一)【转】
转自:https://www.cnblogs.com/EaIE099/p/5200341.html 一.MIPI 简介: MIPI(移动行业处理器接口)是Mobile Industry Process ...
- TCP/IP协议学习(五) 基于C# Socket的C/S模型
TCP/IP协议作为现代网络通讯的基石,内容包罗万象,直接去理解理论是比较困难的:然而通过实践先理解网络通讯的理解,在反过来理解学习TCP/IP协议栈就相对简单很多.C#通过提供的Socket API ...
- http协议学习系列
深入理解HTTP协议(转) http://www.blogjava.net/zjusuyong/articles/304788.html http协议学习系列 1. 基础概念篇 1.1 介绍 H ...
- BGP协议学习总结
BGP学习总结 BGP是目前使用的唯一的自治系统间的路由协议,它是一种矢量路由协议,基于TCP的179号端口,它采用单播增量更新的方式更新路由,与其他的路由协议不同的是,BGP只要TCP可达,就可以建 ...
- TCP/IP协议学习之实例ping命令学习笔记
TCP/IP协议学习之实例ping命令学习笔记(一) 一. 目的为了让网络协议学习更有效果,在真实网络上进行ping命令前相关知识的学习,暂时不管DNS,在内网中,进行2台主机间的ping命令的整个详 ...
- HTTP协议学习笔记(四)
HTTP协议学习笔记(四) 与 HTTP 协作的 Web 服务器 一台 Web 服务器可搭建多个独立域名的 Web 网站,也可作为通信路径上的中转服务器提升传输效率. 1.用单台虚拟主机实现多个域名 ...
- HTTP协议学习笔记(三)
HTTP协议学习笔记(三) 1.状态码告知从服务器端返回的请求结果 状态码的职责是当客户端向服务端向服务端发送请求时,描述返回的请求结果.借助状态码,用户可以知道服务端是正常处理了请求,还是出现了错误 ...
- HTTP协议学习笔记(二)
HTTP协议学习笔记(二) 1.HTTP报文 HTTP报文:用于HTTP协议交互的信息.请求报文:请求端(客户端)的HTTP报文叫做请求报文.响应报文:响应端(服务端)的HTTP报文叫做响应报文. H ...
- HTTP协议学习笔记(一)
HTTP协议学习笔记(一) 1.HTTP协议用于客户端和服务端之间的通信 客户端:请求访问文本或图像等资源的一端服务端:提供资源响应的一端 在两台计算机之间使用HTTP协议通信时,在一条通信线路上必定 ...
随机推荐
- 【BZOJ1800】[AHOI2009]飞行棋(暴力)
[BZOJ1800][AHOI2009]飞行棋(暴力) 题面 BZOJ 洛谷 题解 预处理一下前缀和就可以\(O(1)\)计算两点间的距离了,直接\(O(n^4)\)暴力枚举即可. #include& ...
- [luogu2114][起床困难综合症]
luogu2114 思路 因为位运算对于每一位是独立的,所以对每一位都对这n个数进行操作,然后观察最后得出的是1还是0.并且保证每一位拼起来之后要比m小. 代码 #include<cstdio& ...
- NO.10: 在operator=中处理 "自我赋值"
1.确保当对象自我赋值时operator=有良好的行为,其中的技术包括 "来源对象" 和 "目标对象" 的地址,精心周到的语句顺序,以及“ copy and s ...
- Maven的配置以及Eclipse的设置
配置maven仓库 先找到我们解压的maven的conf目录里面的setting.xml 然后加入我们本地仓库的位置(这里仓库所在文件夹是自定义的,比如:我把它放在了D盘根目录的一个文件夹) ecli ...
- python高级数据可视化Dash2
k 线国内版 python dash 的应用首页,是用一个 k 线图来做 damo 的,奈何数据源用的 Google,上不去.当然,可以换 yahoo,但是毕竟国内的还是更亲切些. 官方的 demo ...
- WebServer Security apache / bind / IIS5
s C:\Users\Lindows\Desktop\学习参考 Apache_配置规范_(Linux).zip Apache_配置规范_(Windows).zip BIND_配置规范.zip IIS5 ...
- Spring架构简单描述
原文:https://www.shiyanlou.com/courses/document/212 Spring 概述 1. Spring 是什么 Spring是一个开源的轻量级Java SE(Jav ...
- python -- 题目不看别人的自己写然后比较
题目一 ''' 编写Python脚本,分析xx.log文件,按域名统计访问次数倒序输出 xx.log文件内容如下: https://www.sogo.com/ale.html https://www. ...
- python -- 进程线程协程专题
进程专栏 multiprocessing 高级模块 要让Python程序实现多进程(multiprocessing),我们先了解操作系统的相关知识. Unix/Linux操作系统提供了一个fork() ...
- css去除苹果默认样式
input[type="button"], input[type="submit"], input[type="reset"] { -web ...