USB 3.0 概述

各位好,我是做高速信号测试的老工程师了。今天咱们聊聊 USB 3.0 到底是什么,它跟 USB 2.0 和后来出的 USB 3.1 到底有啥区别。说实话,我刚入行那会儿,USB 2.0 还是主流,最高 480 Mbps 就觉得挺快了。结果 USB 3.0 一出来直接翻了十倍——5 Gbps,嗯,那会儿真被吓了一跳。

为什么咱们课程要专门讲 USB 3.0 的眼图测试?因为速度上去了,信号完整性就成了最大的坎。USB 2.0 那点速率,PCB 走线长点、连接器差点,基本不会翻车。但 3.0 不一样,5 Gbps 的信号,一个过孔、一个阻抗不连续,眼图就塌了。我在项目里就吃过这亏——样机插 USB 3.0 移动硬盘老是掉盘,查了三天发现是一根差分线的共面阻抗没控好。

USB 3.0 vs USB 2.0 / 3.1 的关键区别

先从最直观的速率说起。USB 2.0 只有 480 Mbps(高速模式),而 USB 3.0 标称 5 Gbps,实际能跑到约 4 Gbps 的有效载荷。USB 3.1 Gen 2 就再翻一倍到 10 Gbps。你想想看,速率每代翻倍,但对信号质量的要求可不是线性增长——是平方级增长的。

特性 USB 2.0 USB 3.0 USB 3.1 Gen 2
最大速率 480 Mbps 5 Gbps 10 Gbps
编码方式 NRZI 8b/10b 128b/132b
信号类型 单端 D+ / D- 差分 SSTX+/- / SSRX+/- 差分 SSTX+/- / SSRX+/-
线对数 1 对 2 对(外加原 USB 2.0 线对) 2 对
物理层架构 半双工 全双工 全双工

关键点记住: USB 3.0 引入了独立的发送和接收差分对,所以能实现全双工通信。而且 8b/10b 编码会多消耗 20% 的带宽,实际有效数据传输率约 4 Gbps。我建议你把这表存脑子里,后面测眼图时会反复用到这些参数。

USB 3.0 系统架构归纳

光知道速率还不够,得理解整个系统是怎么搭的。USB 3.0 的架构很有意思——它没有全盘重来,而是把 USB 2.0 的协议栈保留下来,在物理层上面再叠了一套 SuperSpeed 的传输层。说白了,同一根线缆里跑着两套独立的信号:一套是传统的 USB 2.0(D+ / D-),另一套是新的 SuperSpeed(SSTX / SSRX)。

系统从上到下大致分这几层:

  1. 应用层 —— 你的操作系统、驱动程序、应用软件
  2. 协议层 —— USB 3.0 的事务处理、包结构、流控制
  3. 链路层 —— 链路训练、链路管理、电源管理
  4. 物理层 —— 电气特性、眼图模板、预加重/去加重

咱们这课主要盯的就是物理层。我个人的习惯是,先理清楚整个系统的信号路径再从 Host 看到 Device,中间有什么都会影响眼图。直接看图吧。

USB 3.0 系统架构简图 Host(主机控制器) Hub(集线器) Device 1(U盘) Device 2(硬盘) 物理层:SSTX+/SSRX+/- 链路层:训练/管理 协议层:事务/包 眼图测试重点关注物理层 SSTX/SSRX 差分信号质量 包括抖动、上升时间、眼高眼宽、模板裕量等指标

看这张图,Host 通过 Hub 挂两个 Device,每个节点内部都有完整的协议栈。但咱们测眼图时只关心最底下那层——差分线的电气特性。USB 3.0 用了独立的 SSTX(发送)+ SSRX(接收)两对差分线,每对都要求 90Ω ±15% 的差分阻抗。我在项目里测过很多次,阻抗偏差超过 ±10% 眼图就开始明显闭合了。

小技巧: 做 PCB 设计时,USB 3.0 差分对的间距建议至少保持 2 倍线宽的间距,避免串扰。另外,差分对内的两根线等长误差控制在 5 mil 以内,否则会引入严重的共模噪声。我习惯在 layout 之后先跑一遍阻抗仿真,心里有底再打样。

USB 3.0 为什么需要 8b/10b 编码?

这个问题我经常被问到。USB 2.0 用 NRZI 编码,靠数据跳变来同步时钟。但 5 Gbps 的速率下,如果出现连续的长串 0 或多个 1,接收端的时钟恢复 PLL 很容易失锁。8b/10b 编码保证了平衡性:每个 10 位码字中 0 和 1 的数量最多相差 2,而且最多连续 5 个相同的位。说白了,就是给信号加了“直流平衡”和“足够多的跳变沿”。

我曾经在一款 USB 3.0 摄像头项目中遇到过奇怪的问题:插在 A 机器上好用,插在 B 机器上经常丢帧。最后用示波器抓了 SSTX 波形,发现 8b/10b 编码后的信号确实没问题,但连接器处的共模回流路径被 PCB 走线切断了。所以说,编码只是理论上保证了信号质量,物理实现才是真正的战场。

警告: 不要以为用了 8b/10b 编码就可以省掉预加重或去加重。USB 3.0 的发射端通常要求打开去加重(De‑emphasis),衰减高频分量来降低 ISI 抖动。如果忘了配置这个,眼图会像两眼半闭一样。我见过别的团队因为固件没开去加重,整块板子眼图都过不了模板。

USB 3.0 标准的向后兼容性

USB 3.0 的物理连接器在设计时保留了 USB 2.0 的四根线(VBUS、GND、D+、D-),所以插一个 USB 2.0 设备到 3.0 接口上,设备只能工作在 480 Mbps。反过来也是一样。不过要注意:很多 USB 3.0 的 Hub 内部会把 SuperSpeed 信号回绕到 USB 2.0 的 D+/D- 线上做协商——我见过有人以为 Hub 坏了,其实是信号完整性差导致的训练失败。

咱们这个课程从第一章就开始强调:眼图测试不是最后才做的,是从原理图设计、PCB layout、到调试测试全流程都要跟进的。USB 3.0 的物理层规范里给出了眼图模板的容差范围,后面章节我会详细教你如何用眼图仪测量、怎么分析参数,以及最常见的问题定位方法。

好了,第一章的内容先到这儿。记住,速度越快,细节越要命。下次见面咱们直接撸起袖子干眼图测量。