2. D-PHY物理层基础
D-PHY 是 MIPI CSI-2 的物理层基石。说白了,它就是摄像头和处理器之间那几根线怎么传信号的规则。
我早年第一次调 MIPI 接口时,以为只要把线连上就能跑。结果图像全是雪花。后来才发现,D-PHY 的电气特性没搞对,LP 和 HS 模式切换乱了,差分信号也没做好。嗯,这节课我们就把这些基础掰开揉碎讲清楚。
2.1 电气特性:电压、电流、时序
D-PHY 使用两种工作模式:LP(Low Power,低功耗)和HS(High Speed,高速)。它们的电压、电流、时序完全不同。
| 参数 | LP 模式 | HS 模式 |
|---|---|---|
| 电压摆幅 | 0 ~ 1.2V(单端) | 200mV 差分(典型) |
| 驱动电流 | ~1mA | ~2.5mA |
| 传输速率 | ~10Mbps | 80Mbps ~ 4.5Gbps |
| 信号线数 | 2 根(Dp, Dn) | 2 根(差分对) |
| 总线状态 | LP-00, LP-01, LP-10, LP-11 | HS-0, HS-1 |
2.2 信号定义:LP 模式四种状态
LP 模式下,Dp 和 Dn 两根线分别拉高或拉低,组合出 4 种总线状态:
- LP-00:Dp=0, Dn=0 → 低功耗待机
- LP-01:Dp=0, Dn=1 → HS 请求
- LP-10:Dp=1, Dn=0 → HS 准备
- LP-11:Dp=1, Dn=1 → 高阻态 / 控制模式
你看,D-PHY 用两根线就能搞定状态机切换和高速数据传输。为什么不用单端?因为差分信号抗干扰能力更强。后面会细说。
2.3 高速数据传输:差分信号原理
HS 模式下,数据通过 Dp 和 Dn 的差分电压传输。一对线,信号是相反的:Dp 高则 Dn 低,反之亦然。接收端只看差值:
Vdiff = V(Dp) - V(Dn)
差分信号的好处很明显:
- 共模抑制:外界噪声在两根线上产生相同的干扰,但差值不受影响。我测过一根长排线上叠加了 1V 的共模噪声,差分信号依然完整。
- 电压摆幅小:200mV 差分就能传 4.5Gbps,功耗极低。
- 电磁干扰小:两根线靠近走,磁场相互抵消。
2.4 LP ↔ HS 状态切换
D-PHY 最大的特点是在 LP 和 HS 之间快速切换。想一想:摄像头要传输大量数据时,不可能一直用 HS 模式,那样功耗太大。平时空闲用 LP 模式待机;需要传数据时,先通过 LP 状态机握手,再切到 HS 模式。
状态切换序列(以 Data Lane 为例):
- LP-11 → 空闲
- LP-01 → 发起 HS 请求
- LP-00 → 进入 HS 准备
- HS-0 → 开始数据传输(SOF 同步序列)
- HS-1 → 数据位
- ... 完成后回到 LP-11
整个过程必须在几十纳秒内完成。如果时序没对齐,接收端可能无法正确识别 HS 起始。我之前调试一款传感器时,发现 LP-00 维持时间不够,导致接收端误判为总线冲突。调整后一切正常。
2.5 D-PHY 物理层结构一览
为了让你更直观地理解,我画了一张 D-PHY 物理层的结构图。它包括发送端(TX)和接收端(RX),以及中间的差分传输线。
图中左边是发送端,右边是接收端。中间橘色区域代表差分传输线对,必须保证差分阻抗 100Ω。实际调试时,我习惯用 TDR 时域反射计测一下 PCB 走线的阻抗,差 10Ω 以上就会导致反射和眼图恶化。
2.6 调试要点:眼图与共模电压
调 D-PHY 最常用的工具是示波器+差分探头。看 HS 模式下的眼图:
- 眼高(垂直张开度)应 ≥ 120mV(差分)
- 眼宽(水平张开度)应 ≥ 0.35UI(单位间隔)
- 共模电压:HS 模式下,Dp 和 Dn 的直流平均电压应在 200mV ~ 400mV 之间
2.7 本章小结
D-PHY 物理层就是三件事:
- LP 模式:4 种状态,传控制指令,功耗极低
- HS 模式:差分信号,200mV 摆幅,高速传输数据
- 切换时序:LP ↔ HS 必须在几十纳秒内完成,否则丢帧
掌握这些基础,后面看 D-PHY 的协议层(字节到包、CRC、ECC)就轻松多了。记住一句话:物理层不稳,协议层白干。