4. MIPI D-PHY 电气特性:差分信号、电压摆幅、HS/LP模式切换
各位做摄像头调试的同行,大家好。今天我们来聊聊 MIPI D-PHY 的电气特性。这部分内容,说白了就是物理层怎么干活。你想想看,数据在线上跑,电压怎么摆,模式怎么切,这些搞不清楚,调试的时候很容易抓瞎。
我个人习惯,拿到一块新的摄像头模组,第一件事就是拿示波器看 D-PHY 的波形。波形对了,后面协议解析才有意义。波形不对,你软件配得再花哨也是白搭。
4.1 差分信号:为什么是两根线?
MIPI D-PHY 用的是差分信号传输。什么是差分信号?就是一条数据用两根线来传:一根叫 Dp(正极),一根叫 Dn(负极)。
信号的值,看的是两根线之间的电压差,而不是对地的电压。
- 差分电压 VID = VDp - VDn
- 接收端只看这个差值,不看单端对地电压
这样做的好处很明显。我在项目中遇到过,板子走线长了,地平面有噪声。如果是单端信号,噪声直接叠加在信号上,波形就花了。但差分信号不一样,噪声同时耦合到 Dp 和 Dn 上,一减就抵消了。这就是共模抑制。
核心优势:
- 抗共模噪声能力强
- 电磁辐射(EMI)更低
- 信号摆幅小,功耗低
- 适合高速传输
嗯,这里要注意。差分信号虽然抗干扰,但对 PCB 走线有要求。两条线必须等长,间距要一致。我见过有人把 Dp 和 Dn 走成 10mm 和 15mm 的长度差,结果眼图直接闭了。等长,是差分对的第一原则。
4.2 电压摆幅:HS 模式与 LP 模式
MIPI D-PHY 有两种工作模式:高速模式(HS)和低功耗模式(LP)。这两种模式的电压摆幅完全不同。
4.2.1 HS 模式:高速传输
HS 模式用来传真正的数据,比如摄像头采集的图像数据。它的电压摆幅很小。
| 参数 | 最小值 | 典型值 | 最大值 |
|---|---|---|---|
| 差分电压 VID | 140 mV | 200 mV | 270 mV |
| 共模电压 VCM | 150 mV | 200 mV | 250 mV |
| 单端摆幅(每根线) | - | ±100 mV | - |
你看,差分电压才 200mV 左右。为什么这么小?因为 HS 模式跑得快,动辄几百 Mbps 甚至 Gbps。摆幅小,上升下降时间就短,功耗也低。
我曾经调试一块 4-lane 的摄像头,HS 模式下数据速率跑到 1.5 Gbps/lane。示波器上看,差分信号摆幅只有 180mV。一开始我还担心信号太小,后来查了 spec,完全在范围内。
4.2.2 LP 模式:控制与握手
LP 模式用来传控制信号,比如进入待机、唤醒、切换方向等。它的电压摆幅大得多。
| 参数 | 最小值 | 典型值 | 最大值 |
|---|---|---|---|
| 逻辑 1(VIH) | 880 mV | 1.2 V | - |
| 逻辑 0(VIL) | - | 0 V | 550 mV |
| 信号摆幅 | - | 1.2 V | - |
LP 模式下,信号是单端传输的。Dp 和 Dn 各自独立表示 0 和 1。比如 LP-11 表示 Dp=1, Dn=1,这是空闲状态。LP-00 表示 Dp=0, Dn=0,这是进入 HS 模式前的桥接状态。
小技巧: 调试时,用示波器看 LP 模式的波形,可以判断主控和模组之间的握手是否正常。如果 LP-11 到 LP-00 的切换时间不对,HS 模式可能根本进不去。
4.3 HS/LP 模式切换:时序是关键
HS 和 LP 模式之间怎么切换?不是直接跳的,中间有一套严格的时序。
你想想看,HS 模式摆幅才 200mV,LP 模式摆幅 1.2V。如果直接切换,接收端的偏置电压会乱掉,数据肯定出错。
4.3.1 从 LP 进入 HS
这个过程叫 HS-TX 启动序列。大致流程如下:
- LP-11:空闲状态,Dp 和 Dn 都是高电平
- LP-00:Dp 和 Dn 同时拉低,持续 TLPX 时间
- LP-01:Dp 保持低,Dn 拉高,持续 THS-PREPARE
- HS-ZERO:进入 HS 模式,发送一段 0 电平,持续 THS-ZERO
- HS 数据:开始传输真正的数据
这个序列里,每个阶段的持续时间都有严格规定。比如 TLPX 一般是 50ns 左右,THS-PREPARE 是 40ns + 4*UI。
避坑指南: 我曾经遇到一个案子,摄像头偶尔不出图。抓波形发现,LP-00 到 LP-01 的切换时间偏长了 10ns。就是这 10ns,导致接收端误判了状态,HS 模式没进去。后来调整了主控的时序配置,问题解决。所以,时序参数一定要严格按照 spec 来,别想当然。
4.3.2 从 HS 回到 LP
这个过程叫 HS-TX 停止序列:
- HS 数据结束:发送完最后一个 bit
- HS-TRAIL:保持 HS 状态一段时间,TTRAIL
- LP-11:Dp 和 Dn 同时拉高,回到空闲状态
这里要注意 HS-TRAIL 时间。太短了,接收端来不及退出 HS 模式。太长了,浪费功耗。一般 spec 要求 TTRAIL 在 60ns 左右。
4.4 知识结构图:D-PHY 电气特性全景
下面这张图,把 D-PHY 的电气特性串起来了。从差分信号到两种模式,再到模式切换的时序,一目了然。
4.5 调试中的常见问题
最后,我总结几个实际调试中容易踩的坑。
- 差分走线不等长:导致信号歪斜,眼图闭合。建议等长控制在 5mm 以内。
- HS 模式摆幅偏低:低于 140mV 时,接收端可能无法识别。检查驱动电流配置。
- LP→HS 切换时序不对:TLPX 或 THS-PREPARE 超出 spec,导致握手失败。
- 共模电压漂移:HS 模式下 VCM 偏离 200mV 太多,可能是电源噪声或接地不良。
我的习惯: 每次拿到新模组,先测 LP 模式的空闲电压,再测 HS 模式的差分摆幅和共模电压。这三个值对了,物理层基本没问题。剩下的就是协议层的事了。
好了,关于 D-PHY 的电气特性,今天就聊到这里。记住一句话:差分信号是基础,电压摆幅分两种,模式切换看时序。把这三点吃透了,MIPI 调试就成功了一半。