MIPI联盟,即移动产业处理器接口(Mobile Industry Processor Interface 简称MIPI)联盟。MIPI(移动产业处理器接口)是MIPI联盟发起的为移动应用处理器制定的开放标准和一个规范。是2003年由ARM,TI,ST,Nokia等公司成立的联盟。MIPI协议被广泛应用于各种嵌入式图像设备中,如智能手机,VR,智能可穿戴设备等……

MIPI包括两类协议规范:

  1、DSI:Display Serial Interface,主机处理器与显示模块之间的高速串行接口(显示串行接口)。
  2、CSI:Camera Serial Interface,主机处理器与摄像头模块之间的高速串行接口(摄像头串行接口)。

  DSI和CSI共用一种物理层协议D-PHY。DSI协议中有涉及一些其他的顶层协议,如DCS(显示命令接口)、DBI(显示总线接口)、DPI(显示像素接口)。

  

MIPI的物理层主要有以下几种:

  1、D-PHY;D-PHY接口一般是1/2/4 Lane,每个Lane走差分线对,是电流驱动型,单信号幅度一般是200mv,线对差分的幅度在400mv左右,布线要求是等长且成双成对;

  

  2、C-PHY;C-PHY接口是1/2/3 Trio,每个Trio走3根线,最高是9根线,比D-PHY要少一根,且要传输的数据量大一些,在同样是2.5G的速率下,C-PHY可以达到17.1G,而D-PHY只有10G;C-PHY是电压驱动型,由于是两两相差,信号幅度绝对值分别是0,100,200mv,信号较弱,不利于传输。没有单独的同步信号线(时钟嵌入在数据信号中,这样做的目的是为了增加传输带宽,但是也引入了编码技术等),必须要求传输距离短,不能走差分线对。

  

  本篇主要介绍以下DPH-Y相关信息。

物理层D-PHY:

  MIPI电平标准分低速或者叫低功率模式(LP)和高速(HS)两种工作模式;低速模式电平摆幅常见为1.2V;高速模式电平摆幅为200mV,中间电平为200mV。

  

  Lane(通道): 1个clock通道,1-4个data通道,每个通道都为一对差分信号对,对每个数据通道称之为1 Lane。

  传输模式: LP 用于控制模式、低功耗数据传输模式LPDT和极低功耗模式ULPS(单端信号),HS 用于高速传输(差分信号)。

  数据格式: MSB last,LSB first;低位在前高位在后。

  传输放向:Lane0可反向,其余均为单向;LP模式下传输仅采用Lane0。

通用Lane组成(Datan):

  

 一个通用的Lane中包含LP-TX、LP-RX、HS-TX、HS-RX和LP-CD模块,所有收发模块均共用同一个差分线Dp,Dn(在LP模式下,为两根单独的信号线)。整个Lane通过PPI接口(PHY Protocol Interface)与系统的其他部分连接。

  其中,LP-CD模块仅在存在于需要双向通信(Bidirectional)的系统中,对于不需要双向通信(Unidirectional)的系统,如CSI协议,则不需要LP-CD模块。

  Unidirectiona系统,主机(一般固定为Transmitter)则不需要RX模块,从机(一般固定为Receiver)则不需要TX模块。当从机向主机发送数据时(反向传输),此时的DDR时钟仍然是由主机提供(HS模式下,LP模式下则不需要时钟)。

  Bidirectional系统,如DSI(当然,在特定的系统中,DSI也可以是Unidirectional的),一般只需要一个Data Lane具有双向收发的能力,其他的Data Lane和Clock Lane则可以根据实际需求,去除RX或者TX模块。

  下图为Lane状态编码方式及电平状态

  

  下图为HS模式传递数据的状态图

  

  

  下图为双向数据Lane(data0)状态图:

  

  

  

  LP模式数据传输状态过程:

  

  在LP模式下(包括Control Mode和Escape Mode),采用的是Spaced-One-Hot Coding机制。在该机制下,时钟可以从传输的数据中得以体现,因此不需要传输时钟。此时,用户可以根据实际需求,设置Clock Lane继续运行或者关闭以降低功耗。

  从上图可以看出LP模式下还原出CLK(LP CLK=EXOR(Dp,Dn)),一个CLK周期内,DP DN状态为LP10则数字逻辑为1,DP DN状态为LP01则数字逻辑为0,DP DN状态为LP00为暂停状态不传输数据,看下图实列:

    

  ESC MODE:Escape Mode Entry,状态过程:LP11->LP10->LP00->LP01->LP00,后面跟随的为Entry code;

  LPDT:Low-Power Data Transmission,表示LP模式数据传输开始,后面跟随数据类型;

  DI:数据标识,1 byte;

  Data:n bytes data;

  ECC:错误检测;

  Exit ESC:退出Escape模式,状态过程:LP10->LP11。

  MIPI数据类型及编码如常见如下表:

  

  

数据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

HS burst传输数据过程:

  

高速低速模式切换时CLK状态变化过程:

  

数据分发机制:

  发送和收集数据流到每条lane。DSI通道是可扩展的,以提高性能。根据应用对带宽的要求,数据信号的数量可以是1、2、3或4。接口的发送端将传出的数据流分发到一个或多个lane(“分发器”功能)。

  

  

  SoT:start of transmition,开始传输;

  EoT:end of transmition,结束传输;

HS模式下视频数据封包格式:

  (1)Non-Burst Mode with Sync Pulses(同步脉冲模式(同步脉冲的起始位置和宽度)

  在这种模式下,DSI 基于各种不同的同步数据包来做数据同步。这种数据包括:重构,时序校准等。Non-Busrt Mode with Sync Pluses模式主要是用于发送DPI(Display Pixel Interface)类型的数据,可以精确地匹配DPI的像素传输速率,以及时序事件的宽度(Widths of timing events),如同步脉冲。因此,Non-Busrt Mode with Sync Pluses模式的每一个Sync Start都必须都要有一个唯一的Sync End与之对应。

  

  (2)Non-Burst Mode with Sync Events 同步事件模式(同步脉冲的起始位置):

  这种模式和第一种模式很像,但是这种模式不会发重构和时间校准的数据包,它们只发送一种叫做”Sync event”的包。Non-Busrt Mode with Sync Events模式与Non-Busrt Mode with Sync Pluses模式类似,可以认为前者是后者的简化版本。因为Non-Busrt Mode with Sync Events模式不需要精确控制时序事件的宽度,所以Non-Busrt Mode with Sync Events只有Sync Start,而没有Sync End。

  

  (3)Burst Mode 突发模式:

  Burst mode 在传输过程中没有vsync_end 包等信息,在 horizontal 的时序是一样的情况下 DSI 会把连接的速度提升到 Panel 支持的最大速度。在这种模式下发送 RGB 数据包的时间被压缩,以留出更多的时间用来传送其他的数据。通常来说,burst mode是video模式下的首选,因为在该种模式下,Host可以以很短的时间发送完数据包,以使得链路可以有更多的时间处于LP模式,达到了降低系统功耗的目的。在这种模式下,整个过程像素线被缓冲到一个FIFO中,并在单个数据包中传输,没有中断。这种传输模式要求DPI像素FIFO有在其中存储全线有效像素数据的能力。如果像素所需带宽和DSI链路带宽之间的差异非常不同,则最佳使用该模式。这使mipi_dsi_host能够在一次数据突发中快速调度整个有效视频数据,然后返回到低功耗模式。

  

摘自网路:https://zhuanlan.zhihu.com/p/556194711

      http://www.jmrcubed.com/vr/ref_tech/mipi_d_phy_specification_v01-00-00.pdf

  

MIPI-DSI协议的更多相关文章

  1. MIPI DSI协议学习【转】

    本文转载自:http://www.voidcn.com/blog/LoongEmbedded/article/p-6109759.html 1.     MIPI DSI DSI:displayser ...

  2. MIPI DSI协议介绍

    此文根据网上的资料翻译和整理而来 一.MIPI MIPI(移动行业处理器接口)是Mobile Industry Processor Interface的缩写.MIPI(移动行业处理器接口)是MIPI联 ...

  3. LCD之mipi DSI接口驱动调试流程【转】

    转自:http://blog.csdn.net/liwei16611/article/details/68146912 1.LCD MIPI DSI协议 MIPI-DSI是一种应用于显示技术的串行接口 ...

  4. MIPI DSI之DBI DPI含义和区别(3-1)

    一.MIPI MIPI(Mobile Industry Processor Interface/移动工业处理器接口)是2003年由ARM.Nokia.ST 等公司成立联盟并为移动应用处理器制定的一个开 ...

  5. MIPI DSI 和 D-PHY 初始化序列

    MIPI DSI 和 D-PHY 初始化序列 -- 深圳 南山平山村 曾剑锋 参考文档: i.MX 6Dual/6Quad Multimedia Applications Processor Refe ...

  6. 【完整资料】TC358779XBG:HDMI转MIPI DSI芯片方案

    TC358779XBG是一颗HDMI1.4转MIPI  DSI带缩放功能的芯片,分辨率1920*1080,封装BGA80.通信方式:IIC,电源3.3/1.8/2.2,应用领域:平板,广告机,VR,显 ...

  7. 【详细资料】ICN6211:MIPI DSI转RGB芯片简介

    ICN6211功能MIPI DSI转RGB,分辨率1920*1200,封装QFN48

  8. 【详细资料】ICN6202:MIPI DSI转LVDS芯片简介

    ICN6202功能MIPI DSI转LVDS,分辨率1920*1200,封装QFN40

  9. TC358775XBG:MIPI DSI转双路LVDS芯片简介

    TC358775XBG是一颗MIPI DSI转双路LVDS芯片,通信方式:IIC/MIPI command mode,分辨率1920*1200,封装形式:BGA64.

  10. HDMI转MIPI DSI芯片方案TC358870XBG

    型号:TC358870XBG功能:HDMI1.4b转MIPI DSI通信方式:IIC分辨率:2560*1600@60fps/4k*2k@30fps电源:3.3/1.8/1.2/1.1封装形式:BGA8 ...

随机推荐

  1. mui 登录之后tab切换页面会失灵

    我的app做完刚进去的时候底部导航栏的tab切换是正常的,但是退出之后重新登录,我在首页用reload进行了刷新,之后就引发了一些问题,tab切换有时候会失灵,登录转态的改变不成功.原来是reload ...

  2. 痞子衡嵌入式:聊聊i.MXRT1170双核下不同GPIO组的访问以及中断设计

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT1170双核下不同GPIO组的访问以及中断设计. 在双核 i.MXRT1170 下设计应用程序,有一个比较重要的考虑点就是外 ...

  3. 论文解读(NWR)《Graph Auto-Encoder via Neighborhood Wasserstein Reconstruction》

    论文信息 论文标题:Graph Auto-Encoder via Neighborhood Wasserstein Reconstruction论文作者:Shaked Brody, Uri Alon, ...

  4. LeetCode 593. 有效的正方形(向量做法)

    题目 题目链接:593. 有效的正方形 题意:给出二维平面上四个点的坐标,判断这四个点是否能构成一个正方形,四个点的输入顺序不做任何保证. 思路 通过向量运算可以很轻松地解决这道题.任取一点向其他三点 ...

  5. 什么?WPF 不支持 SVG ?

    什么?WPF 不支持 SVG ? 控件名:SharpVectors 作者:Elinam LLC (Japan) 项目地址: https://github.com/ElinamLLC/SharpVect ...

  6. Sirni题解(最小生成树,埃氏筛)(继 Liang-梁)

    目录 前言 题意 思路 一些建议 前言 本篇是对Liang-梁的Sirni(最小生成树,埃氏筛)的后继博客. 通篇原文:https://blog.csdn.net/qq_37555704/articl ...

  7. 「学习笔记」字符串基础:Hash,KMP与Trie

    「学习笔记」字符串基础:Hash,KMP与Trie 点击查看目录 目录 「学习笔记」字符串基础:Hash,KMP与Trie Hash 算法 代码 KMP 算法 前置知识:\(\text{Border} ...

  8. KingbaseES 参数 - ignore_char_null_check

    KingbaseES 基于PostgreSQL进行了大量的Oracle兼容性开发,为了能同时兼容Oracle 和 PG 的特性,增加参数进行控制.以下介绍 KingbaseES 下特有的参数 igno ...

  9. 【Vue学习笔记】—— vuex的语法 { }

    学习笔记 作者:o_Ming vuex Vuex ++ state ++ (用于存储全局数据) 组件访问 state 中的全局数据的方式1: this.$store.state.全局数据 组件访问 s ...

  10. fabric compose文件解读(CA篇)

    CA在fabric中的作用是:分配证书,实现身份认证,配普通的CA机构没什么区别(所以可以用其他CA机构颁发的证书,只要商量好就行) 我的一段CA的conpose文件 1 services: 2 ca ...