☰
Altium Designer差分对设计:等长等距与阻抗控制实操指南
2026/10/7 5:54:24 网站建设 项目流程

做高速板子的朋友,十有八九都被差分对折磨过。眼图打不开、误码率高、认证过不了,查一圈图纸,最后往往发现在Altium Designer里差分对的等长和等距做得太随意。我先说个真实经历:去年调一版PCIe转接板,功能倒是正常,但辐射超标,折腾了两周才找到根源——USB3.0那组差分对在绕等长时为了赶时间把间距改小了,差分阻抗直接掉到70多欧。从那以后我再不敢小看AD里那几个规则。这篇就结合我这些年画板子的经验,把差分对的原理、在Altium Designer里的设置方法、等长等距的实操流程一次讲透。不管你是刚入门的新人,还是画了几版板子想系统梳理的老手,应该都能从里面找到有用的东西。

1. 差分信号为什么非要讲究等长等距

1.1 差分信号到底“差”在哪

很多人一上来就找菜单,却不知道自己在调什么,这是后面踩坑的第一大原因。差分信号的本质是“一对极性相反的信号在同一条传输路径上并行传送”,接收端读到的是两条线上的电压差。反过来说,它对共模干扰天生不敏感,因为噪声同时叠加在两条线上,相减之后就抵消了。

再加上差分信号的反向回流特性,它的EMI通常比单端信号小,所以在高速接口上被广泛使用:USB、HDMI、LVDS、PCIe、DDR的DQS和时钟,基本全是差分。拿生活里的事打个比方:两个人在嘈杂大厅里说悄悄话,一个说“你好”,一个说“你坏”,听的人只听“你好”和“你坏”的差,那周围同时加在两个人身上的噪声自然就没用了。做设计时你一定要记住这个底层逻辑,后面理解等长、等距为什么重要就容易多了。

1.2 等长守的是“时序”,等距守的是“阻抗”

等长和等距,很多人理解成“为了好看”,其实完全不是。等长,是让P和N两条线从驱动端到接收端的传播时间尽量一致。高频信号在导体上传播是有速度的,两条线长度一旦不一致,到达接收端的时间就差了,差出来的那就是skew(偏斜)。skew大,接收端判定差分信号的电平翻转就会出现误差,眼图会塌,误码率会升,严重时链路直接不通。

等距,是把两条线之间的间距稳住。间距决定了耦合程度:间距大,耦合弱,差分阻抗偏高;间距小,耦合强,差分阻抗偏低。阻抗一旦偏离目标值,反射和振铃就来了。所以等距本质上是把差分阻抗控制在稳定值附近。这个理解很关键,后面在AD里设置线宽和Gap规则时,你就知道哪些值不能乱动,哪些地方可以灵活改。

1.3 阻抗计算的基本概念:奇模、偶模与直觉公式

差分线存在两种传输状态:偶模(两条线同步变化)和奇模(变化方向相反)。差分信号走的是奇模,奇模阻抗乘2之后,数值上接近差分阻抗。在工程上,有个粗略的直觉公式是:

Zdiff ≈ 2 × Z0 × (1 - k)

其中Z0是单端特性阻抗,k是耦合系数。线距越近k越大,Zdiff越小。这个公式不算精确,但能帮你在脑子里建立趋势:收紧间距,阻抗下降;拉开间距,阻抗上升。真正定线宽线距时,还是要靠SI9000这类工具或AD自带的阻抗计算器去算。举个例子,四层板、FR-4板材、表层走线、介电常数4.2、L1-L2介质厚度约0.2mm,想做到100欧差分对,常见组合是线宽6mil、线距6mil左右。具体会根据板材和叠层微调,但大致这个量级。

2. Altium Designer里差分对的创建与规则设置,一步都不能省

2.1 原理图端先立规矩:网络命名与差分对标记

在AD里,差分对识别依赖命名规则。网络叫USB_P和USB_N,软件就能自动识别;后缀最好统一用_P和_N,大小写也要一致,一个_P一个_p很容易在导入PCB时出错。操作路径是Place > Differential Pair,然后放置在原理图上,AD会生成两个网络并加上差分对标记。AD18以后的版本在属性面板里可以直接设置极性和关联规则。

常见的坑是命名随手写,比如DATA1_P和DATA1N或者P_DATA,AD虽然也能识别部分格式,但容易和后缀规则混淆。我一般建议所有差分网络都用_xxx_P/_xxx_N,看起来整齐,转PCB后规则自动匹配也更省事。另外,在原理图库里用差分对符号时,要确保Pin的命名也匹配,否则导入PCB后网络表对不上,规则无法自动附加到差分对上。

2.2 布线规则的核心:线宽、线距与阻抗约束

导入PCB后,在Design > Rules > Routing > Differential Pair Routing里设置主要参数。这里把关键字段说明白:Preferred Width是目标线宽;Preferred Gap是目标间距;Min和Max是允许浮动范围。需要注意,AD里的“Gap”指两条差分线之间的边缘距离,也就是edge-to-edge间距,不是中心距。有些人填错成中心距,规则看着没问题,实际走线时阻抗已经偏了。

举个例子,我把一个四层板100欧差分规则做成:线宽6mil、间距6mil、Min 5mil、Max 8mil。这样DRC不会因为走线绕了一个小弯就报错,但又能守住阻抗大概范围。如果板子上同时有90欧和100欧差分,比如USB3.0是90欧,DDR和时钟是100欧,记得用Where The Object Matches来选择对应网络类别,别一套规则吃遍所有差分对。规则分配错,DRC会乱报,严重时会把该满足的时序给放开。

2.3 交互式差分对布线:快、稳、一步到位

布线时不要一根根画,直接使用Place > Interactive Differential Pair Routing。选中差分对任一网络后按Shift+Ctrl+点击,软件会把P和N成对拉线,并自动保持间距。中途如果需要换层、调整线宽或线距,可以按Tab打开属性面板实时调整。

还有一点特别提醒:内层和表层走线的差分阻抗不一样。如果你走了内层(带状线),但规则还沿用表层微带线参数,阻抗会差十几欧到二十几欧。我一开始也吃过这个亏,以为差分阻抗只跟线宽线距有关,结果忽略了参考平面的距离。所以布内层之前,一定要单独建一套带状线的线宽线距规则,不能一套规则通吃。

2.4 用差分对编辑面板批量管理整板差分对

AD18以上有Differential Pair Editor面板,可以集中查看所有差分对的长度、间距、是否满足规则。打开方式:点击PCB面板,在下拉菜单中选择Differential Pairs Editor。能看到每对线的P和N长度、长度差,以及规则要求。如果你项目里DDR线多,这个面板就是救命的地方。

实际经验是先把所有差分对按类别分成Net Class,比如CLK、DDR_DQS、USB_RX等,在面板里给每类设不同的目标长度和容差。这样DRC跑起来不会互相干扰,也不会因为一个USB差分对没绕等长,把整个DDR组的等长检查全带崩。分组管理这件事,越早做越好,等到几百个网络堆一起再分就非常痛苦了。

3. 等距:差分阻抗控制的实战细节

3.1 先定叠层,再定线宽线距,顺序不能反

差分阻抗不是单独两根线的事,它跟参考平面的距离直接相关。表层微带线和内层带状线,同样的线宽线距,阻抗能差20到30欧。叠层设计时,你要保证走线层旁边有完整连续的GND或电源层。然后根据介质厚度用阻抗计算器算线宽线距。

给个大致的参考数据,以FR-4、DK=4.2为例:100欧差分,4层板表层走线(L1-L2厚度约0.2mm)大致线宽6mil、线距6mil;内层带状线(两边介质厚度各0.1mm)可能要线宽5mil、线距8mil甚至更细。具体要看叠层和板厂工艺,这个表只能用来建立量级概念。实际制板前,我会把整份叠层发给板厂,让板厂用他们的模型再算一遍,两边对得上才投板。

3.2 间距调节:等距不是“每条线都一样宽”

有人把“等距”理解成两条线全程距离恒定,这句话大体对,但在绕等长区域会失效。为了补长度,蛇形绕线段的间距如果和正常段差太多,差分阻抗同样会突变。这也是很多人做完等长后信号质量反而不如不加蛇形的原因。

建议蛇形绕线段也尽量维持和普通段一致的Gap设置。AD在Tune时提供了Constraints选项,可以勾选保持原始间距之类的选项,这样绕出来的蛇形线更均衡。另外,绕线幅度Amplitude不要太大。幅度越大,绕线区域越长,寄生电容也跟着变大。我习惯把Amplitude控制在15到25mil,宁可多绕几个小弯,也不要做一个巨大突起包。

3.3 参考平面与过孔:等距之外的隐形杀手

差分对跨过分割槽,或者参考平面被开窗,回流路径就不完整了。带来两个问题:一是共模噪声变大,差分信号的优势被削弱;二是差分阻抗瞬间跳变,反射增加。所以布线时优先保证参考平面完整。如果实在要跨,尽量垂直跨过,并在跨越点附近加去耦电容,帮助回流信号找到低阻抗路径。

过孔也是容易被忽视的地方。差分对换层时,过孔间距、过孔反焊盘大小都会改变局部阻抗。高端板子会仿真过孔,普通板子至少做到两条线对称打孔,别一条打孔一条不打孔。换层位置的Gap也要和正常走线尽量一致,过孔附近不要突然拉大间距,否则每换一次层就多一次阻抗突变。

4. 等长:Altium Designer里差分对等长调节实战

4.1 等长规则设置:目标长度与容差的合理选择

在Design > Rules > High Speed > Matched Length里设置,指定容差,比如±5mil。差分对内部P/N差通常控制在±5mil以内,越高速要求越严。有些芯片手册会直接给,如果没有,5mil是一个相对安全的起步值。实际操作中我会按Net Class分组设置:时钟类差分对要求最严,比如±2mil;普通数据类可放宽到±10mil,这样DRC不会整天红一片。

注意Matched Length规则设置之后,还要检查规则优先级。多个匹配规则同时存在时,更严格的Net Class规则要排在更前面,否则通用规则会覆盖严格规则。AD的规则系统是按优先级从上往下执行的,优先级搞反,你辛辛苦苦设的±2mil可能根本没生效。

4.2 交互式长度调节操作步骤

布线完成一段后,选中目标差分对,点击Route > Interactive Diff Pair Length Tuning,AD会沿走线拉出一段可调节的蛇形补偿。快捷键Tab可以设置蛇形的振幅、间距。振幅决定每折的宽度,间距决定两个折之间的空隙。AD里预设了锯齿(Accordion)、手风琴、波浪等几种形状,一般我选Accordion,可调性强。

长度到达目标时,AD会显示绿色对勾。这个过程要放大确认绕线区没有破坏间距规则,尤其是线宽变细或变粗的地方。实用小技巧:绕等长之前先把差分对的路径尽量拉直,留好空白区域。等长绕线尽量绕在相对空旷的位置,而不是连接器旁边或过孔密集区,这样后续微调方便,信号质量也更好。如果绕完发现DRC报错,按Shift+H查看该网络长度,再进入Tune模式微调即可。

4.3 等长操作的时间顺序:先布局,再布线,最后绕等长

很多人刚学AD时着急,一上来就画线,画完发现长度差得离谱,只能大面积返工。正确顺序是对每条差分信号做初步路径规划,把总长度估算一遍,尽量让同组线基本差不多,最后再用蛇形线微调。

比如DDR地址线组,它们之间的长度差可以控制在20到50mil以内,不必每条都精确到个位数,关键是把组内一致性做好。先走等长约束宽松的组,再走严格组,这个习惯能省很多时间。还有一点,不同差分对之间的长度差不要统一照搬芯片手册中的组内容差。如果手册只给了组内容差,你不加区分地套到所有线上,DRC会连旁边一对不相关的USB线都要卡你。

4.4 等长检查:别只靠眼睛看,用数据说话

绕完蛇形线,先跑DRC看Matched Length规则是否全绿。再打开PCB面板里的Differential Pair Editor,查看每对差分线的P/N长度差。AD显示的数值是按走线长度算的,如果你加过延迟补偿器件,比如原理图中的延时走线或蛇形走线,还要在器件两端验证。

这里分享一个我常用的方法:选中某根线后按Shift+H,可以查看该网络的实际长度和阻值。经过蛇形补偿后长度通常会显示成物理长度,但等长判断标准是电气长度,不是物理长度,所以过孔段、折弯处都要多留些余量。比如目标差±5mil,我通常做到长度差2到3mil以内才收手,给制造误差留余地。

5. 常见问题与排查技巧实录

5.1 相位翻转:最隐蔽的“硬伤”

现象:差分对能出信号,但频率稍微一高就不稳定,辐射超标,眼图塌陷。用示波器看会发现P/N波形是反的,或者根本不对称。原因:布线时P/N在某个过孔或扇出处交换了顺序。规则没报错,因为AD默认差分对是允许极性翻转的,检查不到位就容易中招。

排查方法:在原理图里确认差分对符号的极性,在PCB里用Differential Pair Editor或Show Polarity高亮看P和N位置。一旦发现反相,立刻调整。特别提醒:如果一个网络叫USB_P,另一个叫USB_N,但原理图中USB_N接到接收端的“+”端,这就是原理图级别的极性错误,AD不会自动帮你纠正。

5.2 绕完等长,信号反而更差了

现象:不加蛇形还好,一加蛇形眼图变差,误码率上升。原因一是绕线时幅度过大,金属线形成寄生电容和电感,局部阻抗突变;二是绕线位置正好在过孔附近,等于在本来就阻抗不连续的地方又加了一段扰动。

对策:绕线区放在完整参考平面上方,避开过孔和器件;振幅适中;绕线后用DRC检查线宽和线距是否仍然满足差分规则。还有一个细节:蛇形折角尽量圆润,高速下90°锐角会产生明显反射。AD支持在走线属性里设置弧形转角,我通常把绕线转角设成45°或圆弧,成本不高,信号质量提升明显。

5.3 等长做了、阻抗却崩了:间距被挤压

现象:DRC等长全绿,但板子回来测阻抗,发现有一段严重偏离,经过定位发现就是蛇形绕线区域。原因:蛇形线之间的Gap太小,或者绕线形状本身把两条线拉近了。差分阻抗对间距极其敏感,Gap从6mil变成4mil,阻抗能掉接近10欧。

对策:设置好Tune参数后,在绕线区域做一次DRC或手动量测Gap。如果发现太挤,就减小振幅、增加折间距,用更多但更小的折来完成长度补偿。这个经验补一句:不要迷信“越挤越好”,差分线之间的间距一旦小于工艺能力,板厂不仅难加工,阻抗也会失控。

5.4 AC耦合电容摆放不当

差分链路里的AC耦合电容对等长等距影响很大。常见错误是电容放得不对称,P和N到电容两端的长度差明显;或者电容间距和走线间距不一致,每过一个电容就多一次阻抗跳变。

正确做法:把成对电容并排摆放,两个电容中心距离尽量对称;电容附近的走线宽度要按PAD尺寸做过渡,避免线宽突变;跨电容后继续等长,不要只补电容一段。如果板子空间实在不够,可以接受电容附近有一小段阻抗偏差,但要尽量让偏差一致,不要让P和N不对称。

5.5 常见问题速查表:从现象到对策

现象可能原因解决办法
差分对无法识别,布不了差分线网络命名不统一,未正确放置Differential Pair标记原理图中统一_P/_N后缀,重新放置差分对标记
布出的差分线间距不恒定使用了普通交互布线,没用差分对布线删除重画,改用Interactive Differential Pair Routing
等长DRC报红Matched Length规则优先级被通用规则覆盖调整Net Class优先级,严格规则置于最前
阻抗偏移很大参考平面被分割、线宽线距与叠层不匹配先检查叠层,再检查跨分割和过孔区域
绕完等长眼图变差绕线幅度过大,或绕线区过孔密集降低Amplitude,绕线区选在空旷且平面完整区域
P/N极性反了扇出或过孔处交换了顺序用Show Polarity功能检查,修正后重布

5.6 投板前的差分对最终检查清单

板子发出去之前,我会按这个清单过一遍,全绿才投板。第一,Differential Pair Editor里每对差分的P/N长度差都在规则容差内,且留有2到3mil余量。第二,所有差分对都分好了Net Class,规则优先级没有互相覆盖。第三,差分走线跨分割处已处理,有必要的已加去耦电容。第四,过孔换层位置对称,反焊盘尺寸与板厂确认过。第五,AC耦合电容及周边走线已用等长规则覆盖。

最后分享一个我自己的习惯:板子投出去之前,把Differential Pair Editor面板截个图,连同阻抗计算书、叠层文件一起发给板厂做确认。很多时候板厂会帮你提前发现叠层和阻抗的偏差,这比板子回来上示波器再发现问题省太多时间。画差分对这事,原理说穿了一页纸,真正做起来全是细节。把这几个规则吃透,再勤用DRC和面板检查,踩坑概率会小很多。希望这篇能把你在AD里绕等长等距的弯路省下来,祝出板顺利。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询