4、反射与端接(上):反射的成因、反射系数、时域反射计(TDR)原理

各位同学,咱们今天聊聊信号完整性里最基础、也最绕不开的一个话题——反射。

说实话,我入行头两年,最头疼的就是反射。明明原理图看着没问题,板子打回来一测,波形上全是毛刺。后来才明白,反射这东西,你不主动管它,它就会来管你。

4.1 反射是怎么来的?

反射的本质,说白了就一句话:阻抗不连续

信号在传输线上跑,就像水在管道里流。管道粗细均匀,水流就平稳。突然管道变细了,或者变粗了,水就会往回反弹。信号也一样。

你想想看,信号是一个电磁波,它沿着传输线往前传播。每到一个地方,它都会“看一眼”前面的阻抗。如果阻抗和它刚走过的一样,它就继续走。如果不一样,它就得停下来想想——一部分能量继续往前,另一部分能量被弹回去。

这个弹回去的波,就是反射波。

核心结论:反射的根源是阻抗突变。只要传输路径上的瞬时阻抗发生变化,反射就必然发生。

我在项目中遇到过最典型的例子:一个DDR3的数据线,走线从表层换到内层,过孔没处理好。结果眼图直接闭合。查了半天,就是过孔处的阻抗突变导致的反射。

4.2 反射系数——量化反射的数学工具

反射有多大?我们需要一个量来度量它。这就是反射系数,通常用希腊字母 Γ(Gamma)表示。

公式很简单:

Γ = (Z_load - Z0) / (Z_load + Z0)

其中:

  • Z_load:负载端的阻抗(或者说不连续点的阻抗)
  • Z0:传输线的特性阻抗

这个公式能告诉我们什么?我带你看看几个极端情况:

场景 Z_load Γ 现象
完全匹配 Z0 0 无反射,完美
开路 +1 全反射,同相
短路 0 -1 全反射,反相
部分失配 其他值 介于-1和+1之间 部分反射

嗯,这里要注意:反射系数可以是正数,也可以是负数。正数意味着反射波和入射波同相,负数意味着反相。开路和短路是最极端的两种情况,实际设计中我们很少遇到,但理解它们有助于把握反射的本质。

我的经验:实际项目中,反射系数绝对值超过0.3就要警惕了。超过0.5,基本可以断定信号质量会有明显问题。我一般把目标定在0.1以下,也就是反射能量不超过入射能量的1%。

4.3 反射的时域表现——振铃和过冲

反射在波形上长什么样?我直接说结论:

  • 过冲(Overshoot):信号超过目标电压。通常是正反射造成的。
  • 下冲(Undershoot):信号低于目标电压。通常是负反射造成的。
  • 振铃(Ringing):信号来回振荡。这是多次反射的结果。

为什么会振铃?你想想看,信号在驱动端和接收端之间来回弹。每次弹到一端,一部分能量被吸收,一部分又被弹回去。来回几次,能量逐渐衰减,波形就呈现出振荡衰减的样子。

我曾经调试过一个PCIe的时钟信号,振铃幅度达到400mV。查了半天,发现是驱动端输出阻抗和传输线不匹配。加上串联电阻后,振铃直接降到50mV以下。

警告:严重的振铃会导致误触发。数字电路里,一个时钟周期内如果出现多次过零,接收器可能被多次触发。这在高速设计中是致命的。

4.4 时域反射计(TDR)原理——用反射来测量反射

讲到这里,你可能会问:我怎么知道我的板子上哪里有反射?

答案是用TDR——时域反射计。

TDR的原理其实很巧妙。它往传输线里发射一个快速上升沿的阶跃信号,然后观察反射回来的信号。通过分析反射波的时间延迟和幅度,就能知道阻抗不连续点的位置和严重程度。

基本公式:

距离 = (时间延迟 × 传播速度) / 2

为什么要除以2?因为信号去一趟再回来,走了两倍的路程。

TDR能告诉我们什么?

  • 阻抗值:反射波的幅度直接反映阻抗变化的大小
  • 位置:反射波的时间延迟对应不连续点的距离
  • 类型:正反射(阻抗变大)还是负反射(阻抗变小)

我习惯用TDR来验证PCB的阻抗控制是否达标。比如设计要求50Ω,TDR测出来是48Ω到52Ω之间波动,那就算合格。如果测出来45Ω或者55Ω,那就得找工艺问题了。

关键点:TDR的分辨率取决于上升沿的陡峭程度。上升沿越陡,能分辨的阻抗不连续点就越小。现代TDR设备能做到几十皮秒的上升沿,对应几毫米的空间分辨率。

4.5 一个简单的反射计算示例

咱们来算一个实际例子。假设:

  • 传输线特性阻抗 Z0 = 50Ω
  • 接收端输入阻抗 Z_load = 75Ω
  • 驱动端输出信号幅度 1V

第一步,算反射系数:

Γ = (75 - 50) / (75 + 50) = 25 / 125 = 0.2

第二步,算反射电压:

V_reflected = Γ × V_incident = 0.2 × 1V = 0.2V

第三步,算接收端实际看到的电压:

V_load = V_incident + V_reflected = 1V + 0.2V = 1.2V

看到了吗?接收端看到的电压比驱动端输出的高了0.2V。这就是过冲的来源。

我的建议:做SI仿真时,先用手算几个简单场景,心里有个数。仿真软件再强大,也替代不了工程师对物理本质的理解。

4.6 小结

这一节我们讲了反射的成因、反射系数和TDR原理。核心就三句话:

  1. 反射源于阻抗不连续
  2. 反射系数定量描述反射的大小
  3. TDR利用反射来定位和量化阻抗不连续点

下一节我们会讲怎么对付反射——端接。串联端接、并联端接、AC端接、戴维南端接,各有各的适用场景。到时候我会结合具体项目案例,把每种端接的优缺点掰开揉碎了讲。

今天就到这里。有问题随时交流。