3. USB电气特性:差分信号(D+/D-)、电源管理(VBUS、GND)、信号电平标准
好,咱们今天聊聊USB的电气特性。说实话,很多刚入行的朋友觉得协议栈、枚举流程才是重点,电气特性嘛,差不多知道就行。但我得说,这个想法很危险。我见过太多板子调不通,最后查出来是D+、D-走线没等长,或者VBUS纹波太大。嗯,咱们从最基础的开始讲。
3.1 差分信号:D+ 和 D- 的默契配合
USB用两根线传数据,D+和D-。为什么不用一根?因为单端信号抗干扰能力差。你想想看,芯片内部噪声大,外部环境更复杂,一根线传数据,电压稍微抖一下,逻辑就错了。
差分信号就不一样。D+和D-走的是互补信号——D+高,D-就低;D+低,D-就高。接收端看的是两者的差值,不是绝对值。外部噪声同时耦合到两根线上,一减就抵消了。说白了,这就是共模抑制。
关键点:差分信号的核心优势是抗共模干扰。在PCB布局时,D+和D-必须等长、紧耦合走线,否则共模噪声无法抵消。
我在项目中遇到过一件事。有个同事画的板子,D+和D-长度差了快2厘米,结果USB 2.0高速模式死活枚举不上。后来一查,信号歪歪扭扭,眼图都闭了。所以啊,等长走线不是玄学,是硬道理。
3.2 电源管理:VBUS 和 GND 的供电逻辑
USB的供电很简单,VBUS提供5V,GND是地。但简单不代表可以随便搞。
VBUS的电压范围是4.75V到5.25V,这是USB 2.0规范定的。电流呢?低功耗设备最多100mA,高功耗设备可以到500mA。USB 3.0以后能到900mA,但咱们先聚焦2.0。
这里有个坑。我曾经调试一个USB摄像头,插上电脑没反应。量VBUS电压,只有4.3V。怎么回事?线缆太长,压降太大。USB线缆的电阻不能太大,否则远端设备供电不足。规范要求线缆压降不超过125mV,你算算看,如果线缆电阻0.5Ω,500mA电流就是250mV压降,超标了。
避坑指南:我曾经因为VBUS滤波电容放得太远,导致设备热插拔时电压跌落,系统复位。记住,VBUS的10μF去耦电容必须紧挨着USB连接器。
GND的处理也很关键。数字地和模拟地要分开,最后单点接地。否则,大电流回路上产生的噪声会耦合到信号线上。嗯,这个在高速USB设计中尤其重要。
3.3 信号电平标准:低速、全速、高速的区别
USB 2.0有三种速度模式:低速(1.5 Mbps)、全速(12 Mbps)、高速(480 Mbps)。它们的电平标准不一样。
| 速度模式 | 数据速率 | 驱动电压 | 接收阈值 | 上升时间 |
|---|---|---|---|---|
| 低速 | 1.5 Mbps | 3.3V | 0.8V ~ 2.0V | 75 ~ 300 ns |
| 全速 | 12 Mbps | 3.3V | 0.8V ~ 2.0V | 4 ~ 20 ns |
| 高速 | 480 Mbps | 400mV(差分) | 100mV ~ 150mV | 500 ps 以内 |
看到没?低速和全速的驱动电压都是3.3V,但高速只有400mV差分电压。为什么高速用这么低的电压?因为电压摆幅小,信号翻转快,功耗也低。但代价是噪声容限小,对PCB设计要求更高。
我刚开始做高速USB时,总觉得400mV太低了,会不会被噪声淹没?后来发现,只要差分走线做得好,共模噪声被抑制,剩下的信号很干净。反倒是3.3V的全速信号,因为摆幅大,容易产生EMI问题。
3.4 信号状态与总线状态
USB总线有几种状态,靠D+和D-的电平组合来区分。
- J状态:低速模式下D+低、D-高;全速/高速模式下D+高、D-低
- K状态:与J状态相反
- SE0(单端0):D+和D-都拉低,表示复位或断开
- Idle(空闲):全速/低速时,D+或D-被上拉电阻拉到高电平
这里有个细节。全速设备在D+线上接1.5kΩ上拉电阻,低速设备在D-线上接。主机检测到上拉信号,就知道设备连接了,并且能区分速度。高速设备呢?它先以全速模式连接,然后通过握手协议切换到高速。
个人经验:我建议你在设计USB设备时,上拉电阻不要用芯片内部集成的,而是用外部1.5kΩ电阻。为什么?因为调试时可以手动控制上拉,方便测试总线状态。
3.5 实际设计中的注意事项
讲完理论,咱们聊聊实战。USB电气设计有几个要点,我踩过的坑都列出来。
- 阻抗匹配:D+和D-的差分阻抗必须是90Ω ± 15%。PCB叠层设计时要算好线宽和间距。我一般用阻抗计算工具先仿真,再打样验证。
- ESD保护:USB连接器是外露的,静电放电很容易打进来。必须在D+、D-、VBUS上加ESD保护二极管。注意,保护二极管的结电容要小于5pF,否则会衰减高速信号。
- 去耦电容:VBUS上放10μF电解电容和0.1μF陶瓷电容,分别滤除低频和高频噪声。电容要靠近连接器,走线要短。
- 共模扼流圈:如果设备要通过EMI认证,建议在D+和D-上加共模扼流圈。但注意,扼流圈会引入共模电感,影响信号质量,要选宽频型号。
我记得有一次做USB Hub,EMI测试没过。查了半天,发现是D+、D-走线绕得太远,形成了环形天线。后来把走线改短,再加了共模扼流圈,问题就解决了。嗯,有时候问题就是这么简单,但你不去查,永远不知道。
3.6 总结一下
USB电气特性,说白了就是三件事:差分信号怎么走、电源怎么供、电平怎么判。你把这些搞清楚了,USB硬件设计就成功了一半。剩下的,就是协议和软件的事了。
下一章咱们聊USB协议层,从包结构到事务处理,一步步把USB的通信机制拆开来看。到时候你会发现,电气特性是基础,协议是骨架,两者缺一不可。