MIPI D-PHY / C-PHY协议介绍

MIPI全拼是Mobile Industry Processor Interface
译为:移动行业处理器接口。MIPI是MIPI联盟发起的为移动应用处理器制定的开放标准。目的是把手机内部的接口如摄像头、显示屏接口等接口标准化,从而减少手机设计的复杂程度,增加设计灵活性。

在这里插入图片描述

MIPI协议中分为CSI、DSI等,
-CSI是camera serial interface,应用于相机工作组;
-DSI是display serial interface,应用于显示屏幕工作组。
此外还有应用于低速多点连接工作组的SLIMbus和电源管理工作组的SPMI等。

**CSI和DSI是协议层,其物理层均可以支持D-PHY和C-PHY。D-PHY采用DDR(double data rate)的数据传输方式方式,在时钟的上、下沿都有数据传输,它有一条专用的时钟通道;而C-PHY是不需要专用时钟通道,它的时钟信息嵌入在数据本身当中。

一.MIPI D-PHY

1.D-PHY应用时的计算方法:
以19021080p @ 60hz, raw10,2 lane为例:
-像素时钟 = 2200 * 1125 * 60 = 148.5MHz
-带宽/数据率 = 148.5 * 10 = 1.485Gbps
-lane rate = 1.1485/2 = 742.5Mbps
-bit clock = 742.5/2 = 371.25MHz*
在这里插入图片描述
(1).D-PHY有一条专用的时钟通道用来传输时钟信息,此外还有数据通道,时钟/数据都是以差分对的形式传输,速度快稳定性高。
在这里插入图片描述
(2)D-PHY有LP(low power)、HS(high speed)两种主要的工作模式,LP时速度慢,电压幅值高;HS时幅值低,速度快。
在这里插入图片描述
(3)下图为采集的相机实际波形结果,黄色和蓝色分别是数据P和数据N,红色和绿色是时钟P和时钟N,忽略采集设备带宽的影响,下图一帧数据大约是33ms,对应30Hz的帧率。
在这里插入图片描述
放大以后可以看到一帧中具体一行的数据,如果测量得到时钟的频率是k Mhz,那么D-PHY的速率就是2*k Mbps/lane。
在这里插入图片描述
下面是一行数据的局部放大波形,LP时信号为单端1.2V,HS时,信号在200mV基础上摆动,P、N作差即是差分后的结果。
在这里插入图片描述
在这里插入图片描述
二.MIPI C-PHY

1.C-PHY应用时的计算方法:
C-PHY是〜2.28位/符号的三相符号编码,以1902*1080p @ 60hz, raw10,2 lane为例:
-像素时钟 = 2200 * 1125 * 60 = 148.5MHz
-带宽/数据率 = 148.5 * 10 = 1.485Gbps
-lane rate = (1.1485/2.28)/2 = 326.7Msps

MIPI C-PHY是手机中的重要接口,它的速率比D-PHY还要高,其速率单位是symbol/s/lane,而D-PHY的速率单位是bit/s/lane,换算关系是1 Symbol = 2.28 bits。

C-PHY和D-PHY在pin map上有个重要的区别:C-PHY没有单独的时钟通道,它的时钟隐藏在通信的时序之中。Dphy是每条lane是一对差分线,而Cphy每条lane是3条数据线,彼此差分。下图是使用3 lane的C-PHY接口链路示意图,一条lane包含3条信号线,3条信号线彼此做差分。
在这里插入图片描述
同D-PHY一样,C-PHY也有LP(低功耗)和HS(高速)两种工作模式,我们着重介绍HS时的特点。
在这里插入图片描述
先看下C-PHY的波形,下图是一条lane中A、B和C三根数据线在高速模式时、分别对地的单端信号的波形,可见C-PHY在高速模式时是有高、中、低三种电平状态。
在这里插入图片描述
这三条线彼此作差后得到的眼图波形如下图,三种电平彼此作差,作差后的眼图有3个窟窿4种电平,从上到下的4个电平依次定义为strong1,weak1,weak0,strong0。
在这里插入图片描述
那么是strong是怎么通过单端信号得到的呢?

Wire state(线状态)

C-PHY按照信号线不同高低电平搭配被分成6个wire state,分别为+X、-X;+Y、-Y;+Z、-Z,详见下表。
在这里插入图片描述
举例说明:当A、B、C三条线在HS模式下,分别为高、低、中这三种电平,则将此时的wire state定义为+X,见下图+X部分;同理,当A、B、C分别为高、中、低时,则定义为-Z。
在这里插入图片描述
Strong 1、weak1的定义

CPHY每条lane分为A、B、C三根信号线,两两作差就是Va-Vb、Vb-Vc、Vc-Va,得到的差具有4种电平,从上到下分别被定义为strong1,weak1,weak0,strong0。比如上图中,+X状态下,Va-Vb(红-绿)得到的电平最高,被定义为strong1;-Y状态下,Va-Vb得到的电平为弱高,被定义为weak1。以此类推就可以得到weka0和strong0了,就和下面测试时的眼图对应上去了。
在这里插入图片描述
协议解析

我们要传输的信息是被编码到wire state中的,上文已经介绍CPHY具有+x、-x、+y、-y、+z、-z 6种wire state,当信号处于其中一种状态时,只能往剩下的5中状态切换,不会保持不变,哪怕CPHY传输的数据流不变,信号本身也会一直变化,信息被编码到状态与状态切换之中,被称之为symbol编码,换句话说,一共只有6条路,你占了一条,接下来只能往剩下的5条路里走。
在这里插入图片描述
举例如下,wire state从+X到-Y变化时,根据下面的状态转移图,传输的信息(symbol)就是011;从-Y到-Z传输的信息就是010,如果想要继续保持传输010,那么wire state就要从-Z变到-X,数据和时钟信息都被编码到symbol中,即都被编码到切换的过程中了,因此Cphy也就不需要格外拉一条时钟线了。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43839976/article/details/125589671
PHY