目录
- 前言
- DVP(并口)
- LVDS
- MIPI(MIPI-CSI2)
- 总结
前言
摄像头是一个独立的芯片,和主控芯片是弧线独立的,两者通过接口进行交互,交互的信息有控制信号和数据信号
控制信号常用I2C、SPI,I2C用的最多
数据信号常用的有MIPI、LVDS、HISPI、并口
本文主要介绍数据交互接口
DVP(并口)
以AR0130为例
控制信号通过I2C两根总线进行传递
时钟信号通过
SENSOR_CLK
传递,对AR0130来说它是输入线,对HI3518E来说是输出线
通过时钟控制同步异步是非常常见的,通过时钟控制,可以让从设备工作在主设备的CLOCK之下。
如果没有CLC,那么双方就是异步通信的。比如串口没有CLC,就是异步通信的;SPI就是同步通信的。
注意,这个SENSOR_CLK和I2C的CLC无关
数据引脚在图片右侧。
由于引脚是复用的,于是在VIU功能以外还被用作其他功能。(可以看到左边写的是MIPIxxxxx)。
可以看到数据通信线有12根,可以看出AR0130是一个12位数据并行口。采集到的图像信息就是通过这12根线传过来的
下面还有三根信号线。是对于AR0130是输出引脚,对于hi3518E是输入引脚。
这15根就是AR0130输出给hi3518E的。
VIU_HS、VIU_VS,是AR0130给HI3518E的,用于行同步和场同步。
- SENSOR_CLK是HI3518E给AR0130,让AR0130内部CPU运行的时钟信号。
- VIU_CLK是跟图像有关的时钟信号
以上就是以AR0130为例,介绍的并口sensor
为什么叫bin口?
数据线有多根并行的就叫并口,所有采用并口的sensor都是类似的。
下面看一下OV9712,它的数据线是从2-11,一共10根,10位并行口,大体和AR0130一致
并口传输的是CMOS电平信号(重点是非差分)
并口的sensor属于比较低端老旧的,新型高像素的都是MIPI/LVDS/HISPI等差分信号的
差分信号与单端信号
LVDS
Low Voltage Differential Signal(低电压差分信号)
电压很低,1v左右,消耗资源少,差分信号保证抗干扰能力。
LVDS的接口和并口的不太一样,没有I2C、CLK
接口由1组差分clock和若干组差分信号线组成,既然有CLK,那么LVDS就是同步信号
LVDS的控制信号和数据信号复用接口,CLK是用于同步。既然是复用的,LVDS的协议中也一定有区分控制信号和数据信号的方法。
LVDS主要用于视频传输的两个领域:
- camera和主控——视频采集
- LCD和主控——视频显示
视频采集和视频显示是互相可逆的过程,技术、难点也是类似的。
LVDS利用差分抗干扰能力,提升clock频率从而提升贷款,传输举例也更远
LVDS的时钟频率可以非常高,但是并口的不行,HI3518E手册中如下
频率越高干扰就严重,排线就不能太长,长了视频变形严重
由于LVDS频率可以很高的特点,即使LVDS只有两组信号线,那也可以比12线并口的传输速率高
LVDS本身支持多种设置,数据线组数不固定
数据线组数越多带宽(同时间传输的数据量)越大
clock频率越高带宽越大(牺牲抗干扰和距离)
并口和LVDS之间可以互转,但是需要专门的电平转换芯片,类似232和485。一般不会这么干,这样会明显增加成本
MIPI(MIPI-CSI2)
LVDS的sensor存在但是不是非常常用,一般MIPI接口的sensor会用的比较多
Mobile Industry Processor Interface(移动工业处理器接口)
MIPI是由ARM和一系列手机公司成立的联盟,目的是为了将手机内部的接口如摄像头、显示屏接口、射频/基带接口等标准化,从而减少手机设计的复杂程度和增加设计灵活性,增加兼容性。
MIPI中,比较成熟的接口有DSI(显示器接口)和CSI(摄像头接口)。对于我个人而言,要研究的就是摄像头接口,业内常用的是CSI2
- MIPI-CSI2是手机主控和外部摄像机连接的方式
- MIPI-DSI2是手机主控和LCD屏幕连接的方式 如图右上角所示 如上图,
- 应用层只关心数据怎么传输
-
协议层关心数据传输遵守什么样的协议
如这一帧是I帧还是P帧,大端还是小端,就在这里定。
MIPI接口的协议层就定了1组差分CLOCK和1-4组差分信号线组成,而LVDS没有非常明确的规定,MIPI一定再1-4组之内
- Lane管理,关心具体数据如何在1-4条差分信号线中分配
- PHY Layer关心具体布线
MIPI和LVDS虽然都是差分对信号,但是不兼容,不能直接对接
相较于LVDS,MIPI的架构层次更分明,广泛应用再手机平板等领域中,可以认为MIPI是LVDS的升级版
MIPI的数据线组数越多带宽(同时间传输的数据量)越大
clock频率越高带宽越大(牺牲抗干扰和距离)
DVP(并口)和LVDS和MIPI,两两之间可以互转,但是需要专门的电平转换芯片。一般不会这么干,这样会明显增加成本
总结
- 老旧的、低端的、数据量小的就用单端信号(DVP(并口))
- 新的、高端的、数据量大的都用差分信号(LVSD、MIPI)
稍微复杂的通信协议,物理层、协议层、应用层都得对接才行
比如MIPI的架构就非常复杂,LVDS的层次就没那么多,他们就不能直接对接。
再比如USB、ethernet结构就非常复杂,如果双方的层次不能对上就无法直接对接
于是有些公司就会专门去出这样的电平转换芯片专门对接