3. 高速PCB设计要点:阻抗匹配、差分走线规则、电源完整性基础

好,咱们进入第三章。说实话,很多FPGA工程师写代码一把好手,板子一调就抓瞎。尤其是Serdes接口,动不动就上Gbps,PCB设计要是不过关,代码写得再漂亮也白搭。我见过太多案例——仿真跑得飞起,板子回来眼图一塌糊涂。说白了,高速PCB设计就是给信号铺一条“高速公路”,路况不好,车就跑不起来。

3.1 阻抗匹配——信号反射的“终结者”

先聊阻抗匹配。为什么这么重要?你想想看,信号在PCB走线上传输,就像水在管道里流。管道粗细突然变了,水就会“反弹”回来,产生水锤效应。信号也一样,阻抗不连续就会反射,反射回来的信号叠加在原信号上,波形就畸变了。

Serdes接口通常要求单端阻抗50Ω,差分阻抗100Ω。这个值不是随便定的,是业界多年经验总结出来的。我个人习惯在布局前就跟板厂确认好他们的工艺能力,比如半固化片厚度、铜厚、介电常数这些参数。你算得再准,板厂做不出来也是白搭。

阻抗计算经验公式(微带线):

Z0 = 87 / √(εr+1.41) * ln(5.98h / (0.8w + t))

其中:εr为介电常数,h为介质厚度,w为线宽,t为铜厚。

实际设计中,我建议直接用Polar SI9000或类似工具计算,别手算,容易出错。

我的小技巧:设计完成后,让板厂提供阻抗测试报告。我遇到过一家板厂,说能控制50Ω±10%,结果回来一测,45Ω都不到。从那以后,我每次都会在板边加阻抗测试条,方便上板测试验证。

3.2 差分走线规则——Serdes的“生命线”

Serdes接口几乎都用差分信号。为什么?抗干扰能力强啊。差分信号靠的是两根线上的电压差来传输信息,外部噪声同时耦合到两根线上,一减就没了。但前提是——你得把这两根线走得“一模一样”。

差分走线的核心规则,我总结成四句话:

  • 等长:两根线长度差控制在5mil以内,最好3mil。Serdes速率越高,要求越严。10Gbps以上,我建议控制在2mil以内。
  • 等距:间距要保持恒定,不能一会儿宽一会儿窄。间距变了,差分阻抗就变了,反射就来了。
  • 同层:差分对的两根线必须走同一层。换层?可以,但必须成对换,而且过孔要对称。
  • 少打过孔:每个过孔都是一个阻抗不连续点。能不过孔就不过孔,实在要过,一对差分线打两个对称的过孔。

注意:差分对内等长比差分对间等长重要得多。我曾经调试一块板子,差分对间长度差了200mil,眼图还能看。但有一次差分对内差了15mil,12.5Gbps的信号直接眼图闭合了。所以,优先保证对内等长。

另外,差分走线要远离其他信号,尤其是时钟和开关电源。我一般保持3W原则——间距是线宽的3倍以上。实在空间不够,至少2W,中间加地孔隔离。

3.3 电源完整性基础——别让电源拖后腿

很多人只盯着信号走线,忽略了电源。其实电源完整性(PI)和信号完整性(SI)是“一体两面”。电源不干净,信号好不了。Serdes的PLL和时钟电路对电源噪声极其敏感,纹波稍微大一点,抖动就上去了。

电源完整性的核心,说白了就是两件事:低阻抗低纹波

3.3.1 去耦电容的布局

去耦电容不是随便放几个就完事的。我见过有人把电容放得老远,那基本没用。电容的作用是提供瞬态电流,距离越近,回路电感越小,效果越好。

电容值 作用频率 放置位置
10-100μF 低频(<1MHz) 板级入口附近
0.1-1μF 中频(1-100MHz) 每个电源引脚附近
10-100pF 高频(>100MHz) 紧贴芯片电源引脚

嗯,这里要注意:高频小电容一定要放在芯片同一面,过孔会引入寄生电感,把高频性能全毁了。我习惯把0402封装的100pF电容放在BGA背面,正对着电源焊盘,中间不打过孔。

3.3.2 电源平面设计

Serdes接口的电源,我强烈建议用独立的电源层。别跟其他数字电路共用,尤其是DDR和FPGA核心供电。为什么呢?因为这些电路电流变化大,会在电源平面上产生很大的噪声。

如果板层不够,至少要做到:

  • Serdes电源区域做挖空隔离,用“护城河”隔开
  • 电源平面和地平面尽量靠近,形成低阻抗的“平板电容”
  • 每个Serdes通道的电源单独滤波,用磁珠+电容组成π型滤波

避坑指南:我曾经在一个项目里,Serdes的1.0V电源和FPGA核心1.0V共用了一个电源层。结果Serdes通道的误码率死活降不下来。后来把Serdes电源单独拉出来,用LDO供电,误码率直接降了两个数量级。所以,有条件就用独立LDO,别省那几块钱。

3.4 层叠结构——打好地基

PCB层叠是高速设计的地基。层叠没定好,后面怎么走线都别扭。对于Serdes接口,我推荐至少4层板:

  • 顶层:信号层,走Serdes差分线
  • 第二层:地平面,完整不间断
  • 第三层:电源层,分割好各电压域
  • 第四层:信号层,走低速控制信号

如果板子复杂,用6层或8层更好。Serdes信号最好走顶层或底层,紧挨着地平面。这样参考平面近,回流路径短,电磁辐射也小。

我个人的习惯是:Serdes差分线走顶层,第二层是完整地平面,第三层走其他高速信号,第四层再一个地平面。这样每个信号层都有相邻的地平面,信号质量有保障。

总结一下本章要点:

  1. 阻抗匹配是基础,50Ω单端、100Ω差分,跟板厂确认工艺
  2. 差分走线要等长、等距、同层、少过孔
  3. 电源完整性不能忽视,去耦电容要靠近、电源要独立
  4. 层叠结构要合理,Serdes信号紧挨地平面

下一章咱们聊Serdes的时钟设计和PLL配置,那又是另一个坑多的地方。到时候见。