1. MIPI 基础概念:从联盟到物理层
各位同学,咱们今天正式开讲 MIPI。说实话,我第一次接触 MIPI 的时候,也被那一堆缩写搞得头大——CSI、DSI、D-PHY、C-PHY……但别慌,这些东西拆开来看,其实没那么复杂。
我个人习惯,学任何协议都先搞清楚三个问题:谁定的?干什么用?怎么连的?今天这一章,咱们就把这三个问题一一讲透。
1.1 MIPI 联盟:谁在制定规则?
MIPI 全称是 Mobile Industry Processor Interface,移动行业处理器接口联盟。说白了,就是一群手机芯片、模组、软件公司凑在一起,商量着怎么让摄像头、屏幕、射频这些模块之间能好好说话。
这个联盟成立于 2003 年,创始成员包括 ARM、Intel、Nokia、ST、TI 这些老牌玩家。到现在,会员已经超过 300 家。你想想看,如果没有一个统一的标准,每家芯片厂都用自己的接口,那摄像头模组厂得备多少种方案?
1.2 CSI-2 与 DSI 协议:摄像头和屏幕的“语言”
咱们先看摄像头这边。CSI 是 Camera Serial Interface 的缩写,目前主流版本是 CSI-2。我在项目中遇到过不少工程师,把 CSI 和 D-PHY 混为一谈,其实它们是不同层级的东西。
CSI-2 定义了摄像头数据怎么打包、怎么传、怎么解包。它分三层:
- 应用层:处理像素数据格式,比如 RAW8、RAW10、YUV422 这些
- 协议层:把像素数据拆成一个个包,加上包头包尾
- 物理层:交给 D-PHY 去实际传输
DSI 是 Display Serial Interface,逻辑和 CSI-2 类似,但方向相反——数据从主控流向屏幕。DSI 支持两种模式:
| 模式 | 说明 | 典型场景 |
|---|---|---|
| Command Mode | 主控写寄存器,屏幕自己刷新 | 低功耗、静态画面 |
| Video Mode | 主控逐行发送像素数据 | 视频播放、动态画面 |
嗯,这里要注意:CSI-2 和 DSI 虽然协议不同,但底下的物理层是共用的。所以学会 D-PHY,两个接口都能搞定。
1.3 D-PHY 物理层基础:信号怎么跑?
D-PHY 是 MIPI 最常用的物理层标准。我刚开始调摄像头的时候,总觉得 D-PHY 的时序很玄乎,后来发现,只要抓住几个关键点,就没那么难。
1.3.1 差分信号与 Lane
D-PHY 使用差分信号传输,一对线叫一个 Lane。为什么用差分?抗干扰能力强。你想想看,手机内部那么挤,信号串扰是家常便饭,差分对能有效抑制共模噪声。
一个典型的 MIPI 连接包含:
- Clock Lane:一对差分时钟线,提供同步基准
- Data Lane:一对或多对差分数据线,数量可以是 1、2、4 条
我曾经遇到一个案子,摄像头图像有横条纹,查了半天,最后发现是 Clock Lane 和 Data Lane 的等长没做好。差了几毫米,时序就偏了。
1.3.2 工作模式:HS 与 LP
D-PHY 有两种工作模式,这是很多新手容易搞混的地方:
| 模式 | 电压摆幅 | 速率 | 用途 |
|---|---|---|---|
| HS(高速) | 约 200mV 差分 | 最高 4.5 Gbps/Lane | 传输像素数据 |
| LP(低功耗) | 0-1.2V 单端 | 约 10 Mbps | 传输控制指令、总线状态 |
说白了,HS 模式跑得快但费电,LP 模式跑得慢但省电。系统会在两者之间切换——传数据时切到 HS,空闲时切回 LP。
1.3.3 数据包格式
D-PHY 传输的数据包结构很简单:
SoT(Start of Transmission)→ 包头(PH)→ 数据(Payload)→ 包尾(PF)→ EoT(End of Transmission)
SoT 和 EoT 是物理层加的,用来同步收发双方。包头包含数据类型和长度,包尾是校验和。我在调试时经常用逻辑分析仪抓 SoT 信号,如果 SoT 都抓不到,那说明物理连接有问题。
1.4 本章知识结构图
下面这张图把 MIPI 的层级关系画清楚了,建议你保存下来,后面调试时随时对照:
1.5 本章小结
好,咱们捋一下今天的内容:
- MIPI 联盟:制定移动设备内部接口标准的组织,我们主要用 CSI-2 和 DSI
- CSI-2 / DSI:摄像头和显示器的协议层,负责数据打包和解析
- D-PHY:物理层,用差分信号传输,有 HS 和 LP 两种模式