4、USB电气特性测试:电压摆幅、上升时间、下降时间

电气特性是USB合规测试里最基础也最容易翻车的一块。说白了,信号好不好,先看电压幅度够不够,边沿陡不陡。我在项目里见过不少板子,功能逻辑都对,但一上合规测试就卡在这几个参数上。今天我把压箱底的经验捋一捋,咱们一个一个说透。

4.1 电压摆幅——信号强度的“硬门槛”

电压摆幅(Voltage Swing)就是信号的高电平和低电平之间的差值。对USB 2.0来说,低速/全速模式下,差分信号摆幅要求在0.8V~2.4V之间(以1.5V为参考点)。高速模式下,摆幅更精确:400mV±10%,也就是360mV~440mV。

那USB 3.x呢?它的差分摆幅是800mV~1200mV(Gen1),1000mV~1200mV(Gen2)。注意这是TP1测试点(芯片输出侧)的要求,到了TP2(连接器侧)会有衰减。

关键指标速查:

USB 版本模式差分摆幅规范
USB 2.0Low/Full Speed0.8V~2.4V
USB 2.0High Speed360mV~440mV
USB 3.x Gen1SuperSpeed800mV~1200mV
USB 3.x Gen2SuperSpeed+1000mV~1200mV

你们可能会问:“我测得摆幅刚好在下限,算不算合格?”嗯,我个人建议宁可比中值高一点点,别卡在边缘。因为温度、老化、连接器插拔都会让信号再掉一截。

我的实测经验:

曾经有个高速DUT,室温下摆幅测出370mV(还在范围内),但放到高温箱里直接掉到340mV。后来发现是驱动器的电流偏置电阻精度不够。从那以后,我对外发测试报告时,摆幅至少留10%余量。

4.2 上升时间与下降时间——边沿的“脾气”

上升时间(Tr)和下降时间(Tf)测量的是信号从低到高、从高到低过渡的快慢。通常取10%~90%幅值点的时间差。USB规范里要求很细:

  • USB 2.0 Low/Full Speed:Tr/Tf ≤ 300ns(负载条件下)
  • USB 2.0 High Speed:Tr/Tf 在 500ps~1.5ns 之间(实测经常看到800ps~1.2ns还算稳定)
  • USB 3.x Gen1/Gen2:Tr/Tf ≤ 2.0ns(差分,20%~80%定义)

为什么会有个范围?因为太快了会产生过冲和振铃,太慢了又导致眼图闭合。我在调试一个USB 3.0板子时就碰到过:上升时间只有700ps(明显偏快),结果眼图测试时眼宽不够。后来在TX端串了2Ω电阻才压到1.2ns,勉强通过。

避坑指南:

我曾经在测试高速信号时,直接用普通10×无源探头去测差分对。结果上升时间显示1.8ns,吓我一跳。后来换了2.5GHz带宽的差分探头,才看到真实信号只有1.1ns。记住:测量带宽要够,探头要短地。否则你测到的只是探头本身的响应,不是DUT的。

4.3 测试设置——细节决定成败

示波器带宽至少是信号最高频率的5倍。对USB 2.0高速(480Mbps)来说,2.5GHz带宽是起步。USB 3.0(5Gbps)至少要用12GHz带宽的实时示波器。

采样率呢?我一般取20GS/s以上,才能保真地捕获边沿。另外别忘了做去嵌(de-embedding),把测试夹具、线缆的损耗去掉。否则你测的摆幅可能已经“缺斤短两”了。

4.4 常见失效模式与对策

  1. 摆幅偏小:检查驱动电源纹波、PCB走线阻抗是否50Ω,以及串联电阻是否焊错。
  2. 上升/下降时间不对称:通常意味着输出级的P/N管驱动能力不匹配。回头检查一下驱动偏置电路。
  3. 边沿有过冲:加RC snubber或者调小预加重。
  4. 信号振铃严重:看看阻抗突变点——连接器、过孔、分支走线。

一个小技巧:

测边沿时,别只从10%看到90%。我习惯同时看80%~20%和40%~60%的斜率,能更快发现预加重和后振铃问题。

USB差分信号电压摆幅与边沿时间示意 摆幅 (Vswing) Tr (10%→90%) Tf (90%→10%) 10% 90% D+:蓝线 D-:橙线 摆幅 = V(90%) - V(10%) Tr / Tf 按10%~90%测量

这张图我把D+和D-波形画出来,标了摆幅、上升时间、下降时间以及10%和90%参考线。你实际在示波器上看到的波形大概就这个意思。

4.5 实战中的小总结

电气特性测试看似简单,但坑不少。我建议你按下面这个清单做前检查:

  • 示波器带宽 ≥ 5倍基频,探头地线用弹簧地(别用鳄鱼夹)
  • 先测校准信号(1kHz方波),确认探头补偿正确
  • 测试点选在靠近DUT连接器处,尽量短走线
  • 每次测完记录温度、湿度、电压源值——有时问题出在供电不稳

嗯,这一课就到这。记住了:电压摆幅是基础,上升下降时间是高频信号质量的照妖镜。下次遇到眼图闭合或者测试失败,先回头看这两个参数准没错。