1. MIPI基础与物理层:从协议到信号,把底层的门道说清楚
各位同学,咱们今天开篇先聊聊MIPI。很多刚入行的工程师,一听到MIPI就头大——什么D-PHY、C-PHY、CSI-2、DSI,一堆缩写。其实没那么玄乎。我当年刚接触高通平台时,也被这些概念绕晕过。后来调了几个模组,踩了些坑,才慢慢理清楚。
说白了,MIPI就是一套标准。它规定了摄像头、显示屏怎么和主控芯片通信。咱们做相机驱动,最常打交道的就是CSI-2(摄像头接口)和D-PHY(物理层)。今天这一章,咱们就把地基打牢。
1.1 MIPI联盟:谁定的规矩?
MIPI联盟是一个行业组织。ARM、Intel、高通、三星这些大厂都是成员。他们制定了一整套接口标准,专门给移动设备用。为什么?因为手机内部空间寸土寸金,功耗要求又苛刻。传统的并行接口(比如并口摄像头)线太多、功耗高,根本不适合。
MIPI的核心理念就两条:
- 差分信号传输——抗干扰强,速率高
- 低功耗设计——有省电模式,不用时能休眠
我个人习惯把MIPI联盟想象成一个“标准委员会”。他们只出文档,不生产芯片。咱们工程师要做的,就是按照他们的规范去设计硬件、写驱动。
1.2 CSI-2与DSI:一个拍,一个显
MIPI协议族里,咱们最关心两个:
| 协议 | 全称 | 用途 | 方向 |
|---|---|---|---|
| CSI-2 | Camera Serial Interface 2 | 摄像头数据传输 | 从Sensor到主控 |
| DSI | Display Serial Interface | 显示屏数据传输 | 从主控到Display |
咱们这门课主要讲CSI-2。DSI虽然协议不同,但物理层是一样的。所以物理层搞懂了,DSI那边也能触类旁通。
重点:CSI-2定义了数据怎么打包、怎么传。但它不关心信号怎么在线上跑。信号怎么跑,是物理层的事——也就是D-PHY或C-PHY。
1.3 D-PHY物理层:LP和HS,两种活法
D-PHY是MIPI最常用的物理层。它有两种工作模式:
- HS(High Speed)模式:高速传输数据。差分信号,电压摆幅小(约200mV),速率高(每通道最高2.5Gbps)。
- LP(Low Power)模式:低速控制信号。单端信号,电压摆幅大(1.2V),速率低(最高10Mbps)。
为什么会这样设计?你想想看,摄像头传图像数据时,数据量大,必须用HS模式。但平时不传数据时,用HS模式太费电。所以MIPI设计了LP模式,用来做控制、握手、休眠。
我刚开始调试时,遇到过一个问题:Sensor输出图像花屏。查了半天,发现是LP模式下信号质量不好,导致同步头没被正确识别。嗯,这里要注意——LP模式虽然速率低,但信号完整性同样重要。
D-PHY的通道结构
一个典型的D-PHY链路包含:
- 时钟通道(Clock Lane):差分对,提供时钟参考
- 数据通道(Data Lane):差分对,传输数据。数量可以是1、2、4条
时钟和数据通道的关系,我画了张图:
注意看,时钟通道是单向的——从主控发给Sensor。数据通道是双向的,但大部分时间数据是从Sensor流向主控。LP模式下,数据通道也可以反向传控制指令。
1.4 D-PHY vs C-PHY:怎么选?
C-PHY是MIPI后来推出的物理层。它和D-PHY不兼容。我整理了个对比表:
| 对比项 | D-PHY | C-PHY |
|---|---|---|
| 信号线 | 每通道2根线(差分对) | 每通道3根线(三线制) |
| 时钟 | 独立时钟通道 | 时钟嵌入在数据中 |
| 每通道速率 | 最高2.5 Gbps | 最高2.5 Gbps(等效) |
| 功耗 | 较低 | 略高 |
| 引脚数 | 少(2线/通道) | 多(3线/通道) |
| 应用场景 | 主流摄像头、显示屏 | 高端摄像头、高分辨率屏 |
目前市面上绝大多数摄像头模组用的还是D-PHY。C-PHY虽然速率更高,但兼容性差,调试起来也更麻烦。我个人建议,除非项目明确要求C-PHY,否则优先选D-PHY。
我的经验:有一次客户要求用C-PHY接一个4K摄像头。结果layout时没注意三线等长,信号质量一塌糊涂。后来改了两版PCB才搞定。C-PHY对PCB走线要求比D-PHY苛刻得多。
1.5 时钟与数据通道的关系:谁跟着谁?
这个问题很多新手搞混。D-PHY里,时钟通道和数据通道的关系是这样的:
- HS模式下:数据通道以时钟通道为参考。每个时钟周期,数据通道传1个bit(DDR模式下传2个bit)。
- LP模式下:没有时钟。数据通道自己用曼彻斯特编码传控制信号。
举个例子。假设你的Sensor输出1920x1080@30fps,10bit raw。算一下需要的带宽:
1920 * 1080 * 30 * 10 = 622,080,000 bps ≈ 622 Mbps
如果用4条数据通道,每条通道只需要传155.5 Mbps。D-PHY的HS模式轻松搞定。但如果你只用1条通道,那就需要622 Mbps,接近D-PHY的极限了。
避坑指南:我曾经遇到一个项目,Sensor输出分辨率很高,但只接了2条数据通道。结果帧率死活上不去。后来加了2条通道才解决。所以选通道数时,一定要留余量。我一般按带宽的1.5倍来选。
1.6 本章小结
这一章咱们把MIPI的底子打好了。记住几个关键点:
- MIPI是移动设备的标准接口,CSI-2管摄像头,DSI管显示屏
- D-PHY有HS和LP两种模式,各司其职
- 时钟通道和数据通道是分开的,数据以时钟为参考
- C-PHY是D-PHY的升级版,但兼容性差,目前不是主流