2. 串行总线物理层快速检查
串行总线解码失败时,问题往往不在协议层,而在物理层。示波器上看到的波形如果边沿塌陷、幅度不足、共模漂移或反射严重,解码器拿到的就是被"污染"的比特流,再强的协议分析也无从下手。因此,在打开解码功能之前,先做一次物理层快速检查,是提高调试效率的关键一步。本节围绕差分与单端信号特点、探头选择与连接方式、眼图与信号质量预判,以及常见物理层故障对解码的影响展开。
差分与单端信号:先分清被测对象
串行总线按电气形态大致分为两类。单端信号(如 UART、SPI、I²C、部分 LIN)以地为参考,一根信号线相对地线的电压决定逻辑电平,测量时探头地线必须就近接地,否则地环路会引入振铃和噪声。差分信号(如 CAN、CAN FD、RS-485、USB、PCIe、以太网)用一对互补线传输,接收端看的是两条线之间的电压差 V_diff = V+ − V−,共模电压 V_cm = (V+ + V−)/2 则被差分接收器抑制。
差分结构带来的好处是抗共模干扰、抗地弹、辐射低,但也带来新的检查点:两条线是否严格等长、是否成对走线、终端匹配是否到位。若用单端探头分别测 CAN_H 和 CAN_L,再靠数学运算相减,虽然能看到差分波形,但两个通道的时延和共模抑制差异会引入误差,尤其在高速边沿上不可忽视。因此,差分总线优先使用差分探头,单端总线则用高阻无源探头或低电容有源探头。
探头选择与连接方式
探头是物理层检查中最容易被忽视、却最影响结果的一环。选择原则可以概括为:带宽足够、负载足够小、连接足够短。
- 带宽:探头带宽应不低于被测信号最高有效频率分量的 3~5 倍。例如 CAN FD 数据段速率 5 Mbps,其边沿谐波可达数十 MHz,建议探头带宽 ≥ 100 MHz;USB 2.0 高速 480 Mbps 则需 ≥ 1 GHz 差分探头。
- 负载:无源探头典型输入电容 10~15 pF,接在高速总线上会明显拖慢边沿;有源探头可低至 1 pF 以下,适合高速信号。
- 连接:地线越短越好。使用探头自带的鳄鱼夹地线在几十 MHz 以上就会形成明显振铃,应改用弹簧地针或焊接地线,把地回路面积压到最小。
差分探头的连接要成对、等长,A、B 两个输入端分别接 V+ 和 V−,避免一端接地。若必须用两个单端探头做差分测量,应确保两通道使用相同型号、相同长度、相同衰减比,并在示波器上做通道间时延校准(Deskew),否则差分波形会出现虚假的共模毛刺。
眼图与信号质量预判
眼图是把长时间累积的比特波形按单位间隔(UI)叠加而成的统计图,能直观反映信号质量。判断眼图时关注四个指标:眼高(垂直张开度,反映噪声和幅度余量)、眼宽(水平张开度,反映抖动和时序余量)、交叉点位置(反映占空比失真)、以及眼图的"眼皮"厚度(反映确定性抖动)。
对于串行解码,眼图不需要做到通信标准那么严格,但可以用作快速预判:如果眼高低于接收门限的一半,或眼宽小于 0.5 UI,解码器就很可能在边沿附近误判,出现随机错帧。此时应先改善物理层,而不是反复调整解码阈值。
常见物理层故障对解码的影响
物理层故障最终都会以"解码异常"的形式暴露出来,但不同故障对应的现象不同,识别它们有助于快速定位。
| 物理层故障 | 波形表现 | 解码现象 | 排查方向 |
|---|---|---|---|
| 幅度不足 | 高电平偏低或低电平偏高 | 随机错帧、CRC 错误 | 检查供电、终端电阻、驱动能力 |
| 反射振铃 | 边沿出现多次过冲振荡 | 边沿附近多比特错误 | 缩短走线、加匹配电阻 |
| 共模漂移 | V+ 与 V− 整体偏移 | 整帧丢失或间歇性丢帧 | 检查地电位差、隔离器 |
| 地弹/地环路 | 单端信号基准抖动 | 采样点偏移、误码 | 就近接地、缩短地线 |
| 终端失配 | 上升沿变缓、眼宽收窄 | 高速段误码率升高 | 核对终端电阻值 |
物理层检查并不需要昂贵的设备,但需要正确的顺序和判断依据。把差分与单端的差异、探头负载与连接、眼图余量、故障与解码现象的对应关系理清,就能在解码失败时迅速判断问题出在"线"上还是"协议"上,避免在错误的方向上浪费时间。