4、特性阻抗的概念:PCB走线的特性阻抗(50Ω、75Ω等),差分与单端信号
说到SPI端接匹配,有一个绕不开的基础概念——特性阻抗。这东西听起来抽象,其实说白了就是一条传输线对高频信号呈现的“阻力”。你想想看,低速的时候导线就是一根导线,但信号频率一高,走线就开始表现出电阻、电感、电容的分布式特性,特性阻抗就是描述这条走线在这种高频下“天生的”阻抗值。
我记得刚入行那几年,总觉得这是个理论概念,跟我画PCB没啥关系。后来有一次调一块板子,SPI时钟线长了点,波形抖得像心电图,我才真正意识到:不知道特性阻抗,匹配就是瞎蒙。
4.1 什么是特性阻抗?
对于一根均匀的PCB走线,特性阻抗Z₀由单位长度的电感和电容决定:
Z₀ = √(L/C)
其中L是单位长度电感,C是单位长度电容。这个值跟走线的宽度、铜厚、介电常数、参考层距离都有关系。只要走线均匀,特性阻抗就是一个固定的常数,跟信号频率(在一定范围内)关系不大。
为什么SPI会用到这个?一般来说,当走线长度超过信号上升沿空间长度的1/6时,反射就开始影响波形了。SPI时钟频率通常几十兆赫到上百兆赫,上升沿很快,很多PCB上的长走线已经进入了“传输线”领域,不做匹配就会看到过冲、振铃、台阶——这些我都在示波器上亲眼见过。
4.2 单端信号与特性阻抗
单端信号是最常见的信号形式:一根信号线,一个参考地。典型的单端特性阻抗值有50Ω、75Ω等。为什么是50Ω?这不是拍脑袋定的——50Ω在损耗、功率容量、制造工艺之间取得了比较好的折中。
我个人的习惯是:SPI的单端信号线,除非板子特别紧凑,否则我都会按50Ω来设计阻抗。控制阻抗的方法很简单:
- 确定叠层:参考层(地平面)与信号层之间的介质厚度
- 选择合适的线宽:根据板材DK值和铜厚,用阻抗计算工具算出线宽
- 保持线宽一致性:换层时要加阻抗参考的过孔
举个例子,FR4板材、1oz铜、芯板厚度0.2mm(8mil),50Ω单端微带线线宽大约12~14mil。不同厂家工艺有偏差,但差不了太多。
| 目标阻抗 | 典型线宽(1oz铜,FR4,8mil介质厚) | 适用场景 |
|---|---|---|
| 50Ω | 12~14mil | SPI时钟、数据线(大多数情况) |
| 75Ω | 8~9mil | 视频信号、低损耗传输 |
| 100Ω(差分) | 单端~6~7mil,间距~8~10mil | 差分对(如USB、以太网,SPI一般不直接差分) |
4.3 差分信号与差分阻抗
差分信号用两条线共同传递一个信号,两条线相位相反。差分阻抗是指两条线之间的阻抗,典型值是100Ω或90Ω。差分结构的优点是对共模噪声不敏感,抗干扰能力强。
不过,SPI标准本身是单端协议,并不用差分信号。那为什么还要提差分阻抗?
有两个原因:
- SPI的时钟和数据线虽然是单端,但它们之间也存在耦合。 如果两条线靠得很近,就会互相串扰,影响信号质量。控制差分阻抗的概念可以帮助你理解线间距的重要性。
- 有些设计用差分SPI(DSPI) 或者用LVDS电平扩展SPI距离。这时候差分阻抗就是必须考虑的参数了。
有一次我帮一个客户调试一块长距离(1米)的SPI扩展板,他们用的就是差分传输方式,但因为差分阻抗没控制好,高速时误码率很高。后来我建议他们把差分对的线宽和间距算准,并串联了匹配电阻,问题就解决了。
4.4 为什么SPI要关注特性阻抗?
回到SPI本身。大部分SPI工作在几兆到几十兆赫兹,走线长度也就十几厘米,按理说不需要太严格的阻抗控制。但现实是:
- 上升沿很快: 很多MCU的SPI输出上升时间能到2~5ns,相当于空间长度30~75cm。走线超过10cm就开始有反射。
- 过冲可能烧芯片: 不匹配的反射会造成电压过冲,超过IO口的最大额定值。
- 时序裕量变小: 反射让波形变差,建立时间和保持时间被压缩。
4.5 特性阻抗与端接电阻的关系
端接电阻的值,理论上应该等于传输线的特性阻抗。这样当信号到达末端时,能量被电阻吸收,不会反射回来。比如走线是50Ω,串联端接或末端端接就取50Ω。
这就是为什么我前面反复强调要控制特性阻抗——你连走线本身的阻抗都不知道,怎么选端接阻值?
实践中,我会这样操作:
- 先确定PCB叠层,算出信号线的目标线宽(50Ω或100Ω差分)。
- 在Layout阶段保持线宽均匀,避免直角拐弯和过孔过多。
- 根据走线长度和驱动能力选择端接拓扑(串联、并联、RC等)。
- 如果无法精确控制阻抗,至少保证端接电阻在30Ω~70Ω之间,比不加好得多。
4.6 实战小贴士
- 先量后算: 如果板子已经做好了,可以用TDR(时域反射计)测一下实际走线的特性阻抗,再决定端接值。我在实验室用过Tektronix的TDR模块,直观能看到阻抗突变点。
- 仿真省力: 用HyperLynx或ADS简单仿真一下,比靠经验猜准得多。我通常会先跑个快速仿真,确认端接范围,然后留出0Ω或NC的调试位置。
- 留调试位置: 在SPI的时钟线和数据线靠近发送端或接收端预留0402/0603的电阻焊盘,调试时换阻值,找到最佳点再量产。
嗯,这一章主要就是帮大家把特性阻抗这个基础概念吃透。有了这个底,后面讲端接电阻的具体选值和拓扑,你就能明白“为什么”要这么做了。