4、USB物理层SI设计:USB 3.0/3.1/3.2/4.0的电气特性、信号编码与均衡
好,咱们接着聊USB的物理层。前面讲了PCIe,现在轮到USB了。说实话,USB这玩意儿比PCIe要“亲民”一些,但到了3.0以后,高速信号该有的坑一个都不少。我这些年调试过的USB问题,从3.0的丢包到4.0的阻抗不连续,真是够写一本小册子了。
今天咱们就聚焦在USB 3.0到4.0的物理层。说白了,就是看它的电气参数怎么定、信号怎么编、均衡怎么做。你把这些搞明白了,layout和调试时心里就有底了。
4.1 USB 3.0/3.1的电气特性:5Gbps和10Gbps的“分水岭”
USB 3.0,也就是现在的USB 3.2 Gen 1,跑的是5Gbps。到了USB 3.1(USB 3.2 Gen 2),翻倍到10Gbps。别看只是翻倍,电气特性上的变化可大了去了。
先看电压摆幅。USB 3.0的差分电压典型值是800mV到1.2V,而3.1为了降低功耗和串扰,降到了700mV到1.0V。我遇到过一块板子,3.0设备插上去好好的,3.1设备就是识别不了。一量才发现,驱动器的摆幅偏小,刚好卡在3.1的接收灵敏度边缘。嗯,这就是典型的“余量不足”。
再看眼图模板。3.0的眼图开口比较大,到了3.1,眼高和眼宽的要求都更严了。我建议你在做预/后仿真时,一定要留出至少20%的余量。别卡着边过,生产一波动就完蛋。
| 参数 | USB 3.0 (5Gbps) | USB 3.1 (10Gbps) |
|---|---|---|
| 差分电压摆幅 | 800mV - 1.2V | 700mV - 1.0V |
| 上升/下降时间 | 50ps - 100ps | 30ps - 60ps |
| 眼高要求 | ≥ 300mV | ≥ 200mV |
| 眼宽要求 | ≥ 0.5 UI | ≥ 0.4 UI |
这里有个细节:USB 3.1的上升时间更快,意味着信号的高频分量更丰富。你想想看,同样的PCB走线,对3.1的损耗就比对3.0大得多。所以,3.1的PCB走线长度通常建议控制在6英寸以内,而3.0可以放宽到8-10英寸。
4.2 信号编码:从8b/10b到128b/132b的进化
USB 3.0和3.1用的都是8b/10b编码。这个编码的好处是直流平衡好,有足够的跳变沿用于时钟恢复。但缺点也很明显——编码效率只有80%。也就是说,5Gbps的线速率,实际数据吞吐只有4Gbps。
到了USB 3.2,虽然还是8b/10b,但引入了双通道(2-lane)模式。说白了就是把两条差分对绑在一起用,速率翻倍到20Gbps。但编码效率没变,还是80%。
USB 4.0就不一样了。它直接用了128b/132b编码,效率飙升到97%。为什么能做到?因为它用了更复杂的扰码和FEC(前向纠错)。我刚开始看USB 4.0的规范时,也被这128b/132b吓了一跳。后来仔细一琢磨,其实它和PCIe 4.0的128b/130b编码思路很像,只是多了一些USB特有的控制字符。
编码效率对比:
- USB 3.0/3.1:8b/10b → 效率80%
- USB 3.2:8b/10b(双通道)→ 效率80%
- USB 4.0:128b/132b → 效率97%
这里要注意,编码效率高了,但代价是接收端的CDR(时钟数据恢复)压力更大。因为128b/132b的跳变密度比8b/10b低,锁相环需要更长的锁定时间。我建议你在做USB 4.0设计时,给CDR留足锁定时间,别一上来就传关键数据。
4.3 均衡技术:CTLE、DFE和FFE的“组合拳”
USB 3.0时代,均衡基本靠CTLE(连续时间线性均衡)就够了。说白了就是一个高通滤波器,把高频分量抬一抬。但到了3.1和3.2,信道损耗更大了,CTLE的增益有限,必须上DFE(判决反馈均衡)。
USB 4.0就更复杂了。它同时用了FFE(前馈均衡)、CTLE和DFE。FFE在发送端做预加重,CTLE在接收端做线性补偿,DFE负责消除码间干扰。这三者配合得好,才能把20Gbps甚至40Gbps的信号从损耗严重的信道里“捞”出来。
我曾经调试过一个USB 4.0的链路,眼图完全闭合,CTLE调到最大也没用。后来发现是发送端的FFE系数没配好。调整了预加重的抽头系数后,眼图一下就睁开了。所以,别光盯着接收端,发送端的均衡同样重要。
个人经验:USB 4.0的均衡参数通常由链路训练自动协商。但如果你在做合规性测试时发现眼图不过,可以尝试手动调整发送端的去加重(De-emphasis)系数。我一般从-3dB开始试,逐步增加到-6dB,看哪个组合的眼图余量最大。
4.4 USB 4.0的物理层新特性:40Gbps的挑战
USB 4.0的物理层,说白了就是“PCIe的底子,USB的皮”。它基于Thunderbolt 3的协议,物理层和PCIe 4.0非常相似。但有几个关键点要注意:
- 信道损耗预算:USB 4.0在20Gbps时,信道损耗预算约为-28dB @ 10GHz。到了40Gbps,损耗预算更紧,大约-20dB @ 20GHz。这意味着你的PCB走线、连接器、线缆,每一个环节都要精打细算。
- 回波损耗:USB 4.0对回波损耗的要求比3.x严格得多。我建议你在设计连接器附近的过孔时,一定要做阻抗优化。我曾经见过一个设计,就因为连接器焊盘处的阻抗不连续,导致回波损耗超标,整个链路都跑不起来。
- 抖动预算:USB 4.0的总抖动预算只有0.3 UI左右。随机抖动(RJ)和确定性抖动(DJ)要分开算。我习惯用统计眼图的方法来评估,确保在最差条件下也能满足要求。
避坑指南:我曾经在USB 4.0的layout中犯过一个错误——把TX和RX的差分对布在了相邻层,而且没有做正交布线。结果串扰大到眼图完全闭合。后来改成同层布线,并加宽了间距,问题才解决。记住,USB 4.0的串扰容限比3.x低得多,间距至少要做到3倍线宽以上。
4.5 实际设计中的SI检查清单
好了,理论讲完了,咱们来点实际的。我每次做USB 3.x/4.0的layout review时,都会过一遍这个清单:
- 阻抗控制:差分阻抗85Ω ± 10%(USB 3.x/4.0都是85Ω,别和PCIe的100Ω搞混了)。
- 走线长度:USB 3.0 ≤ 10英寸,3.1 ≤ 6英寸,4.0 ≤ 4英寸(建议值,具体看损耗预算)。
- 过孔优化:每个过孔的阻抗不连续要控制在±5%以内。我习惯用背钻或填充过孔来减少残桩。
- AC耦合电容:USB 3.x/4.0都需要AC耦合电容,通常放在发送端。电容值建议100nF到330nF,封装用0402或0201,越小越好。
- 参考平面:差分对下方必须有连续的地平面。跨分割是高速信号的大忌。
嗯,差不多就这些。USB物理层的SI设计,说白了就是“损耗、均衡、阻抗”这三个关键词。你把它们吃透了,不管是3.0还是4.0,都能应付自如。下一章咱们聊聊实际测试中的那些坑,到时候再细说。