【转】mipi-csi-2解读

COMS sensor 彻底不顾人眼最适的800W像素,1200W,1300W不停向上搞。那么问题来了:这么高像素的IC,要达到30帧/S,这传输速率要多给力啊,因此,mipi传输协议战胜了串口,并口的传输方式,成为如今的新宠。 

 
MIPI ——Mobile industry process interface 
多家移动开发或者应用商共同筹划 
接口标准联盟 
节约成本,加快产品开发速度 
内容丰富,显示、照相机、电源管理、射频、存储接口等等spa

CIS(cmos image sensor)中仅用到了mipi协议中的csi-2(camera serial interface二代,标识生成要求)和D-phy(物理层,输出通道要求) 
Camera端作transmitter,平台端作receiver 
简而言之 mipi的做用就是: 
1.数据并行转换成串行; 
2.功能复用,节约传输线; 
3.相对提升传输品质和速度; 
4.增长传输距离; 
5.适用新的平台需求; 
设计

mipiè¾åº

为何mipi那么NB,下面对比一下就照了。 
 DVP å¹¶å£
并口须要 
Vsync:帧同步信号 
Hsync:行同步信号 
和8条数据线,但这10根线,mipi只须要5根。因此,我行,我来! blog

mipiä¿¡å·
Clock和 data中体现差分即低位先出,故如此表示,差分信号P高N低表1,P低N高表0. 
如今对mipi大概有点小小的概念了。再给你看看她的照片,保证你喜欢。MIPI 输出长什么样? 
当当当当~~ 
接口

mipi çç¾é¢ç§ç

帧头标识、帧尾标识(分别由vsync上升降低沿生成) 
行头标识、行尾标识(分别由hsync上升降低沿生成) 
有效数据长包。包含行标识,因此能够省略line_sync短包 
相对于并口传输,便是将vsync、hsync与数据共通道复用传输。 
总之一句话,能用软件解决的必定不要动硬件,能动手的必定不要动嘴。人生哲理。 
什么?不要看PS过的照片!好吧,下面发个素颜照。 
ip

mipi

是否是美如画。 
而mipi的信号符合其通讯协议, 
规定其起始电压在1.1~1.3V,等等,以下图(我比较懒,不服来辩)。这是其电气要求。 开发

çµä½è¦æ±
 
而后软件方面,以下图: get

MIPI æ°æ®é¿åå容

字节(byte)为基本传输单元,每一个byte中有8位(bit) 
Sync dyte:用来同步数据开始,告知接下来为有效数据 
DATA TYPE:该包传输的是什么格式的数据YUV422(1E)/RAW8(2A)/RAW10(2B) 
WC(16bits)= PAYLOAD中的byte数量(即输出窗口的1行中有多少个字节,也即列数。注意raw10为列数的1.25倍,raw12为列数的1.5倍) 
ECC:校验datatype和wc是否出错 
Payload=image data 
CSC:PAYLOAD数据传输校验 
*因为插入了许多数据标识,因此会影响hb或者vb的最小值 
MIPI DPHY 终端概念 
 MIPIç»ç«¯æ¦å¿µ
mipi的信号线是一对差分线,理论上能够高电平传一个数据,低电平也传一个,速度又快,功耗又小。 
不少时候,平台端的mipi时序和Sensor端若是不匹配,就会出问题。硬件问题的话,就亮信号! 同步

Termæªè¿æ¥æåµ

Term未链接状况信号时这样滴。正常的是这样滴: 产品

è¿éåå¾çæè¿°

Sensor输出在设计时已经考虑,应用时主要是FPC或者PCB走线影响 
一般要求: 
差分对内两线等长,尽可能少折线,方向一致; 
差分对间地线走地,减少串扰; 
线上过孔最少; 
至少一侧有铺地; 
线长最长不超过20cm; 
尽可能远离天线; 
目的: 
阻抗匹配、阻抗连续,减小信号损失,得到较高的信号完整性; 
减小信号间耦合,保证信号完整性; 
减小与其余射频信号的相互做用,保证各信号的质量; 
Settle count 
主要是hs_prepare+hs_zero时间与其匹配; 
一般设定T_settle count为T_(hs_prepare+hs_zero)/2; 
是平台设定参数,一般不改默认值,与pclk频率有关;it

不匹配会引发的问题: 
卡顿; 
不出图; 
不规则滚屏、拍照分屏

调节方法: 
增大或者减少T_hs_prepare、hs_zero,参数最小值为1,有时须要调的很难以想象才可行,这是须要配成manual模式。 
 

DDRéæ ·
DDR采样,即在时钟的上升和降低沿均采集数据,保证高速传输又能够有效下降时钟频率,要求时钟和数据相位为正交关系。 
实际中由于负载差别,会限制时钟的创建速度,同时数据的不规律输出(不是肯定的输出序列),因此对setup或者hold时间要求不一样。可能形成误码,引发麻点,严重时会丢行。 
数据传输速率,单位为bps(bit per second)

mipi_data=pclk_tot*10(raw10) 
=pclk_tot*8 (raw8)

pclk_tot=数字输出并行时钟pclk * 数字通道数M  mipi N通道,每通道数据率=mipi_data/N  Mipi时钟速度=每通道数据率/2= mipi_data/4

相关文章
相关标签/搜索