| 对比项 | USB 2.0 | USB 3.x |
|---|---|---|
| 传输方式 | 半双工 | 全双工 |
| 信号线对数 | 1 对差分线 (D+/D-) | 2 对差分线 (SSTX+, SSRX+) |
| 信号电平范围 | 0 ~ 3.3V 摆动 | 0.8 ~ 1.2V 摆动 |
| 终端匹配 | 45Ω ~ 65Ω 内置 | 100Ω 差分,精确外置 |
| 驱动能力 | 较强,可驱动较长线缆 | 较弱,对信号完整性敏感 |
核心差异:USB 2.0 依赖长短不一的脉冲宽度传达数据,USB 3.x 则依赖精确的码字边界。这是两者电气测试方法论完全不同的根源。
#### 3. 线缆与连接器结构
回到物理接口,差异也很明显。
USB 2.0 标准的 Type-A 只有 4 个引脚:VBUS、D-、D+、GND。而 USB 3.0 Type-A 向后兼容又加了 5 个引脚,一共 9 脚。
多出来的那些全是为高速信号服务——额外的 2 对差分线加 1 个地。
避坑警示:我曾经在项目里把 USB 3.0 的 SSTX 和 SSRX 接反了。从原理图上根本看不出来,因为都是差分对。手动焊接时搞混,结果主板死活不枚举。后来用示波器抓差分波形才定位到。建议设计时在原理图和 PCB 上明确标注发送/接收方向。
信号的完整性问题也与此相关。USB 3.x 对阻抗连续性和串扰极其敏感。差 5Ω 匹配误差就可能让眼图闭合。而 USB 2.0 容忍度高得多,**毕竟摆幅大、速率低**。
#### 4. 链路层与供电管理差异
物理层下面还有一层深层差别:电源管理和链路状态。
USB 2.0 的电源管理比较简单——设备闲置时进入挂起(Suspend),主机定期发送 SOF 包唤醒。切换时间在毫秒量级,不算太智能。
USB 3.x 引入了 **U0 / U1 / U2 / U3** 四层状态机:
- **U0**:正常传输
- **U1**:快速空闲,链路关闭部分逻辑,恢复时间微秒级
- **U2**:深度空闲,关更多电路,恢复时间长一些
- **U3**:休眠(相当于 Suspend)
这套机制让 USB 3.x 在保持高性能的同时,能大幅降低空闲功耗。但副作用也很明显:状态转换时序如果违规,设备可能无法正常从 U1/U2 唤醒。
我有个客户,项目原本按 USB 2.0 设计的,后来要升级到 USB 3.0,供电完全没考虑 U2/U3 状态机,结果系统唤醒异常。折腾了两周才发现是 **电源管理协议违规**,硬件上改了电容配置才搞定。
#### 5. 知识结构总览
下面这张图总结了我们刚才讲的核心差异:
#### 6. 为什么这些差异决定了测试方法
你可能要问了:知道这些差异,跟实际测试有什么关系?
关系太大了。
USB 2.0 的测试重点在 **信号质量**——眼图模板是否合格,信号上升/下降时间是否达标,抖动在不在范围内。因为它的半双工特性,不必考虑收发同时串扰问题。
USB 3.x 的测试除了眼图,还必须验证 **接收端容忍度**。你想想看,发送和接收同时进行,串扰会严重恶化接收信号。所以 USB 3.x 规范强制要求做 **抖动容限测试(Jitter Tolerance Test)** 和 **接收端眼图模板测试(Receive Electrical Test)**。
我陪过不少团队做这块测试。大家往往把大部分精力花在发射端眼图上,对接收端重视不够。结果设计验证时眼图漂亮,集成到系统里就老是断连。后来定位发现,其实是接收端的 CDR(时钟数据恢复)的 PLL 带宽不合适,对抖动太敏感。嗯,接收端才是 3.x 的精髓。
小经验:做 USB 3.x 的物理层测试时,我习惯先把信号完整性的“四大基本项”列齐:
① 发送端眼图(模板+抖动)
② 接收端抖动容限
③ 差分阻抗连续性
④ 串扰(差模对之间 + 对共模噪声抑制)
#### 7. 把差异用在日常调试中
明白这些差异,对日常调试帮助很大。简单举几个实用场景:
- **枚举失败**:USB 2.0 先查 D+/D- 极性、终端电阻。USB 3.x 要查 SSTX/SSRX 差分对是否反接,以及终端匹配是否准确。
- **数据丢包或断流**:USB 2.0 看信号幅度和抖动;USB 3.x 要查全双工模式下的串扰和接收端 CDR 表现。
- **无法挂起或唤醒**:USB 2.0 看 SOF 包和 Suspend 信号;USB 3.x 看 U1/U2/U3 状态转换时序,尤其是 LFPS(低频率周期性信号)的脉冲宽度是否符合规范。
到现在我还记得,**有一次调试 USB 3.0 硬盘盒断流。眼图看起来也没问题。后来抓信号发现,D+/D- 和 SSTX+/SSTX- 在 PCB 上走得太近,高频串扰让接收端超过了裕量**。之后调整了走线间距,问题就解了。所以这些差异不只是理论,是能直接帮你省时间的利器。
① 发送端眼图(模板+抖动)
② 接收端抖动容限
③ 差分阻抗连续性
④ 串扰(差模对之间 + 对共模噪声抑制)