1. 信号完整性概述:从“能跑就行”到“跑得稳、跑得快”

各位硬件工程师,咱们开门见山。信号完整性,英文叫 Signal Integrity,简称 SI。说白了,就是研究“信号在传输过程中有没有变形、有没有走样、有没有互相干扰”的一门学问。

我刚开始做硬件那会儿,板子频率低,几十兆赫兹,随便拉根线都能工作。那时候大家常说:“能跑就行,管它什么完整性?” 但到了今天,DDR4 跑 3200MT/s,SerDes 跑到 25Gbps 甚至更高,你再不管信号完整性,板子大概率是点不亮的。

1.1 什么是信号完整性?

信号完整性,简单讲就是:信号从驱动端发出,经过传输路径,到达接收端时,还能保持正确的逻辑电平、时序关系和波形形状。

你想想看,一个完美的方波从芯片管脚出来,经过 PCB 走线、过孔、连接器,到了接收端却变成了圆头圆脑、甚至带着振铃的波形。这就是信号完整性问题。

核心定义:信号完整性 = 信号在传输过程中保持其原始形状和时序的能力。

我习惯把信号完整性比作“快递”。驱动端是发货人,接收端是收货人,PCB 走线就是快递路线。如果快递在路上被挤压变形、送错了时间、或者被其他包裹撞坏了,那就是信号完整性问题。

1.2 为什么需要关注信号完整性?

这个问题,我当年也问过我的导师。他的回答很直接:“因为不关注,你的板子会死得很惨。”

具体来说,有这几个原因:

  • 速率提升,物理限制凸显:信号频率越高,波长越短。当走线长度超过信号波长的 1/10 时,普通的导线就不能再被看作“短路”,而是一个传输线。传输线效应会带来反射、衰减、串扰等一系列问题。
  • 芯片工艺进步,电压裕量变小:现在很多芯片的内核电压只有 0.8V 甚至更低。信号噪声稍微大一点,就可能误判逻辑电平。我记得有一次调试一个 1.2V 的 DDR3 接口,噪声峰峰值只有 200mV,但接收端的输入阈值窗口只有 150mV,结果就是频繁报错。
  • 系统复杂度增加,干扰源增多:一块板子上可能有数字电路、模拟电路、射频电路、电源电路。它们之间会互相干扰。你不做 SI 设计,EMI 问题就会找上门来。
  • 一次流片/打样成本太高:现在打样一块 12 层以上的高速 PCB,动辄几千上万。如果因为信号完整性问题导致改版,时间和金钱的损失都很大。

避坑指南:我曾经接手过一个项目,前同事设计的板子,10Gbps 光模块接口,走线长度差了 300mil 没做等长补偿。结果眼图完全闭合,根本没法通信。最后只能飞线改板,多花了两周时间。所以,SI 问题不是“锦上添花”,而是“雪中送炭”。

1.3 信号完整性的三大核心问题

信号完整性涉及的问题很多,但归纳起来,核心就是三个:时序、噪声、EMI。这三者互相影响,但各有侧重。

1.3.1 时序问题

时序,就是信号在正确的时间到达正确的位置。数字电路的本质是“在时钟边沿采样数据”。如果数据信号相对于时钟信号到达得太早或太晚,采样就会出错。

时序问题主要包括:

  • 建立时间/保持时间违例:数据在时钟边沿到来前后,需要保持稳定一段时间。如果走线延迟导致数据变化刚好落在时钟边沿上,就会产生亚稳态。
  • 时钟偏斜:同一个时钟信号到达不同寄存器的路径长度不同,导致时钟边沿到达时间有差异。
  • 信号延迟:走线长度、过孔、负载电容都会影响信号传播延迟。

个人经验:我习惯在做 PCB 布局前,先用时序预算工具算一遍。比如 DDR 接口,数据信号相对于 DQS 的时序裕量,至少要留出 20% 的余量。否则,温度一变,时序就可能崩掉。

1.3.2 噪声问题

噪声,就是信号上叠加的不需要的电压波动。噪声会降低信号质量,严重时导致逻辑误判。

常见的噪声类型:

噪声类型 产生原因 典型表现
反射 阻抗不连续(走线拐角、过孔、连接器) 信号过冲、下冲、振铃
串扰 相邻走线之间的电磁耦合 信号上出现毛刺或延迟变化
电源噪声 电源分配网络(PDN)阻抗过高 信号电平整体抖动
地弹 多个输出同时切换,地电位波动 输出信号整体上移或下移

说白了,噪声就是“信号不干净了”。我遇到过最头疼的一次,是 8 层板的 FPGA 接口,串扰导致数据线偶尔跳变。查了三天,最后发现是相邻层走线平行距离太长,间距只有 3mil。改成 5mil 间距后,问题消失。

1.3.3 EMI 问题

EMI,电磁干扰,全称 Electromagnetic Interference。它和 SI 是“一体两面”的关系。SI 关注的是信号本身的质量,EMI 关注的是信号对外界的辐射,以及外界对信号的干扰。

EMI 问题通常分为两类:

  • 辐射发射:板子上的高频信号通过走线、电缆、机箱缝隙向外辐射电磁波,干扰其他设备。
  • 传导发射:噪声通过电源线、信号线传导到其他设备。

EMI 问题往往和 SI 问题相伴而生。比如,信号反射严重时,会产生很大的过冲,这个过冲的高频分量就会成为辐射源。所以,做好 SI 设计,通常也能改善 EMI。

核心观点:SI、时序、EMI 三者不是孤立的。一个反射严重的信号,既会带来噪声,也会产生 EMI,还可能因为振铃导致时序误判。所以,做 SI 设计要“三位一体”地考虑。

1.4 三大核心问题的关系图

下面这张图,是我自己总结的。它展示了 SI、时序、EMI 三者之间的内在联系。

信号完整性三大核心问题关系图 信号完整性三大核心问题关系图 信号完整性 (SI) 时序问题 噪声问题 EMI 问题 反射导致延迟变化 阻抗不连续产生噪声 高频分量辐射 噪声通过传导/辐射 时序抖动产生辐射 说明:SI 是核心,时序和噪声是 SI 问题的具体表现,EMI 是 SI 问题的外部延伸。三者相互影响,需要统一考虑。

1.5 什么时候开始考虑 SI?

很多工程师问我:“SI 分析应该在哪个阶段做?” 我的回答是:越早越好。

我建议的流程是这样的:

  1. 方案阶段:评估芯片接口速率、走线长度、层叠结构。确定是否需要仿真。
  2. 预布局阶段:用仿真工具跑一下关键信号的拓扑结构,确定端接方案。
  3. 布局布线阶段:实时检查阻抗、串扰、时序。发现问题及时调整。
  4. 后仿真阶段:提取 S 参数,做眼图分析、时序分析。
  5. 测试验证阶段:用示波器测眼图、TDR 测阻抗,验证仿真结果。

个人习惯:我一般在原理图设计阶段,就会把关键信号的拓扑结构画出来,估算一下走线长度和延迟。这样到了 PCB 阶段,心里就有底了。不要等到板子画完了再回头改,那代价太大了。

1.6 本章小结

信号完整性不是什么玄学。它就是一门研究“信号在传输过程中如何保持质量”的工程学科。核心问题就三个:时序、噪声、EMI。这三者互相纠缠,但抓住了主线,就能理清思路。

嗯,这一章算是开个头。后面的章节,我会带着大家一步步深入:从传输线理论,到反射与端接,再到串扰、电源完整性、S 参数、眼图…… 每一章都会有实际案例和仿真代码。咱们一起,把 SI 从理论变成实战能力。