对于现代的智能手机来说,其内部要塞入太多各种不同接口的设备,给手机的设计 和元器件选择带来很大的难度。下图是一个智能手机的例子,我们可以看到其内部存储、显示、摄像、声音等内部接口都是各不相同的。即使以摄像头接口来说,不 同的摄像头模组厂商也可能会使用不同的接口形式,这给手机厂商设计手机和选择器件带来了很大的难度。

MIPI (Mobile Industry Processor Interface) 是2003年由ARM, Nokia, ST ,TI等公司成立的一个联盟,目的是把手机内部的接口如摄像头、显示屏接口、射频/基带接口等标准化,从而减少手机设计的复杂程度和增加设计灵活性。 MIPI联盟下面有不同的WorkGroup,分别定义了一系列的手机内部接口标准,比如摄像头接口CSI、显示接口DSI、射频接口DigRF、麦克风 /喇叭接口SLIMbus等。统一接口标准的好处是手机厂商根据需要可以从市面上灵活选择不同的芯片和模组,更改设计和功能时更加快捷方便。下图是按照 MIPI的规划下一代智能手机的内部架构。

1、MIPI优点:

MIPI优点:高速率:最多四个通道、每个通道最大为1GBps;

      低功耗:LowPower:1.2V;

      低成本:PIN脚更少,PCB占用成本更少;

      抗干扰:高速传输信号200mV;

2、DSI规范:

2.1分层结构

DSI分四层,对应D-PHY、DSI、DCS规范、分层结构图如下:

(备注:名词解释)

• DCS (DisplayCommandSet):DCS是一个标准化的命令集,用于命令模式的显示模组。
• PHY 定义了传输媒介,输入/输出电路和和时钟和信号机制。

• Lane Management层:发送和收集数据流到每条lane。

• Low Level Protocol层:定义了如何组帧和解析以及错误检测等。

• Application层:描述高层编码和解析数据流。

2.2 Command和Video模式:

• DSI兼容的外设支持Command或Video操作模式,用哪个模式由外设的构架决定
• Command模式是指采用发送命令和数据到具有显示缓存的控制器。主机通过命令间接的控制外设。Command模式采用双向接口
• Video模式是指从主机传输到外设采用时实象素流。这种模式只能以高速传输。为减少复杂性和节约成本,只采用Video模式的系统可能只有一个单向数据路径;

如图所示:

3、D-PHY的模式:(物理层)

• DSI兼容的外设支持Command或Video操作模式,用哪个模式由外设的构架决定

• Command模式是指采用发送命令和数据到具有显示缓存的控制器。主机通过命令间接的控制外设。Command模式采用双向接口

• Video模式是指从主机传输到外设采用时实象素流。这种模式只能以高速传输。为减少复杂性和节约成本,只采用Video模式的系统可能只有一个单向数据路径

3.1 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.2 操作模式:

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

  • 状态转换关系图:
  
 
 

4、DSI介绍:(链路层)

4.1、DSI是一种Lane可扩展的接口,1个时钟Lane/1-4个数据Lane;

DSI兼容的外设支持1个或2个基本的操作模式:    

    • Command Mode(类似于MPU接口)
      • Video Mode(类似于RGB接口)- 必须用高速模式传输数据,支持3种格式的数据传输

• 传输模式:

   • 高速信号模式(High-Speed signaling mode)

    • 低功耗信号模式(Low-Power signaling mode) - 只使用数据lane 0(时钟是由DP,DN异或而来)。

 • 帧类型
      • 短帧:4 bytes (固定)

     短帧结构:
         • 帧头部(4个字节)
          • 数据标识(DI) 1个字节
          • 帧数据- 2个字节 (长度固定为2个字节)
          • 错误检测(ECC) 1个字节
         • 帧大小
          • 长度固定为4个字节

  • 长帧:6~65541 bytes (可变)  
        • 帧头部(4个字节)
          • 数据标识(DI) 1个字节
          • 数据计数- 2个字节 (数据填充的个数)
          • 错误检测(ECC) 1个字节
         •数据填充(0~65535 字节)
            • 长度=WC*字节
         • 帧尾:校验和(2个字节)
         • 帧大小:
            • 4 + (0~65535) + 2 = 6 ~ 65541 字节

 • 两个数据Lane高速传输示例:

 

总结论:

 • 传输模式和操作模式是不同的概念;
 • 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协议-DSI的更多相关文章

  1. mipi和dsi

    转自: http://blog.csdn.net/longxiaowu/article/details/24410021 一.MIPI MIPI(移动行业处理器接口)是Mobile Industry ...

  2. mipi协议中文详解

    一.MIPI MIPI(移动行业处理器接口)是Mobile Industry Processor Interface的缩写.MIPI(移动行业处理器接口)是MIPI联盟发起的为移动应用处理器制定的开放 ...

  3. MIPI协议学习总结(一)【转】

    转自:https://www.cnblogs.com/EaIE099/p/5200341.html 一.MIPI 简介: MIPI(移动行业处理器接口)是Mobile Industry Process ...

  4. MIPI协议学习总结(一)

    一.MIPI 简介: MIPI(移动行业处理器接口)是Mobile Industry Processor Interface的缩写.MIPI是MIPI联盟发起的为移动应用处理器制定的开放标准. 已经完 ...

  5. MIPI协议中文详解【转】

    本文转载自:http://www.voidcn.com/blog/michaelcao1980/article/p-6254588.html 一.MIPI MIPI(移动行业处理器接口)是Mobile ...

  6. 理解mipi协议

    完成mipi信号通道分配后,需要生成与物理层对接的时序.同步信号: MIPI规定,传输过程中,包内是200mV.包间以及包启动和包结束时是1.2V,两种不同的电压摆幅,需要两组不同的LVDS驱动电路在 ...

  7. 理解mipi协议【转】

    转自:http://blog.csdn.net/wanglining1987/article/details/50202615 完成mipi信号通道分配后,需要生成与物理层对接的时序.同步信号: MI ...

  8. 什么是MIPI

        随着客户要求手机摄像头像素越来越高同时要求高的传输速度传统的并口传输越来越受到挑战.提高并口传输的输出时钟是一个办法但会导致系统的EMC设计变得越来困难,增加传输线的位数是但是这又不符合小型化 ...

  9. MIPI接口

    接口 分辨率 说明 RGB 800*480以下 大部分AP均支持RGB接口,此类LCD在低端平板广泛使用 LVDS 1024*768及以上 主要通过转换芯片将RGB等专程LVDS来支持:少量AP直接集 ...

随机推荐

  1. System.out.println()的解释

    上周面试的时候,面试官让我解释一下输出语句每一个单词是什么意思.当是有点蒙,后来想想这不就是考察对java中常用的的包,类和其中的方法的熟悉程度吗? 我们首先来看看System:这是一个类名,存在于j ...

  2. Oracle自动备份数据

    一. Oracle自动备份单表一个月数据 方式一:三步处理(建批处理文件,写sql文件,设置任务计划) 1. 第一步:建立一个批处理文件 @echo off Set OrclSid=orcl Set ...

  3. 用jQuery绑定事件到动态创建的元素上

    jQuery最常用的一个功能就是对DOM的操作,与之相关的比如对事件的绑定和Ajax动态内容加载.当我们绑定事件到Ajax load回来的内容上或其他动态创建的元素上时会发现事件没响应,和你预想的结果 ...

  4. 如何正确使用javah

    bogon:src zexu$ javah -jni -classpath /Users/zexu/github/ijkplayer/android/ijkplayer/ijkplayer-java/ ...

  5. 面试题汇总--数据储存/应用程序/UI控件/客户端的安全性与框架处理。。。

    一 数据储存  1.如果后期需要增加数据库中的字段怎么实现,如果不使用 CoreData 呢?编写 SQL 语句来操作原来表中的字段1)增加表字段ALTER TABLE 表名 ADD COLUMN 字 ...

  6. 通信机制-TCP/IP、Http、Socket的区别

    原文转自:http://blog.csdn.net/axing1991/article/details/45149087 网络由下往上分为 物理层.数据链路层.网络层.传输层.会话层.表示层和应用层. ...

  7. 消息服务框架(MSF)应用实例之分布式事务三阶段提交协议的实现

    一,分布式事务简介 在当前互联网,大数据和人工智能的热潮中,传统企业也受到这一潮流的冲击,纷纷响应国家“互联网+”的战略号召,企业开始将越来越多的应用从公司内网迁移到云端和移动端,或者将之前孤立的IT ...

  8. nodejs+mongodb+vue前后台配置ueditor

    笔者在做一个个人博客项目的时候需要一个富文本框输入组件与后台进行交互,但是官方配置里面没有关于nodejs的,于是自己查阅资料研究了一下,最后终于应用到了系统中. 一.后台配置 首先是找到了这个项目: ...

  9. ucore lab1 bootloader学习笔记

    ---恢复内容开始--- 开机流程回忆 以Intel 80386为例,计算机加电后,CPU从物理地址0xFFFFFFF0(由初始化的CS:EIP确定,此时CS和IP的值分别是0xF000和0xFFF0 ...

  10. SpringMVC对包的扫描范围扩大后,导致的事务配置不生效问题

    问题场景 项目使用的框架:Spring 4.1.4 + Hibernate 4.3.8 + MySQL. web.xml中对Spring的配置: <!-- 把 Spring 容器集成到 Web ...