1. 从原理图到物理连接:布线设计的核心价值
画了几天原理图,导入了网络表,把一堆元器件在PCB板上摆得整整齐齐,是不是感觉大功告成,可以松一口气了?如果你这么想,那接下来的布线环节,可能会让你之前的努力前功尽弃。在Altium Designer(AD)这类EDA工具中,布线设计是连接逻辑世界与物理世界的桥梁,是将抽象的电气连接转化为实实在在的铜箔走线的过程。它绝不仅仅是“用线把点连起来”那么简单,而是决定一块电路板性能、可靠性、可制造性乃至成本的关键环节。
我见过太多新手,甚至是有些经验的工程师,在布线这一步栽跟头。有的板子布通了,但一上电就发热严重,信号乱七八糟;有的板子看起来走线规整,但送到工厂却被告知无法生产,或者良率极低。布线设计,本质上是在满足一系列复杂且相互制约的约束条件下,寻找最优解的艺术。这些约束包括:电气规则(如线宽承载的电流、阻抗匹配)、物理规则(如最小线宽/线距、过孔尺寸)、时序规则(对高速信号至关重要)、以及生产工艺的边界(如蚀刻能力、钻孔精度)。AD15作为一款经典的PCB设计工具,提供了强大而灵活的布线功能,但如何驾驭这些功能,避开陷阱,布出一块“漂亮”的板子,才是真正的挑战。
2. 布线前的必修课:规则设置与叠层规划
在动手拉第一根线之前,有两项准备工作比布线本身更重要。忽略它们,你的布线工作很可能事倍功半,甚至推倒重来。
2.1 设计规则:布线的“交通法规”
AD中的设计规则(Design Rules)就是PCB设计的法律。它明确规定了什么能做,什么不能做,以及怎么做才算合格。通过菜单Design->Rules...打开规则管理器,这里面的条目繁多,但对于初学者,必须优先关注以下几类:
电气规则(Electrical):
- Clearance(安全间距):这是最重要的规则之一,规定了不同网络(Net)的导电图形(走线、焊盘、覆铜)之间的最小距离。设置过小,可能导致生产时短路或高压击穿;设置过大,则会浪费空间,增加板子尺寸。一般低压数字电路可以设为6-8mil(0.15-0.2mm),有高压或爬电距离要求的部分需要单独加大。
- Short-Circuit(短路):通常禁止任何网络之间的短路。除非你有特殊需求(如测试点),否则务必保持为不允许(Not Allowed)。
布线规则(Routing):
- Width(宽度):定义不同网络走线的宽度范围。电源线和地线需要根据电流大小计算加宽。例如,根据经验公式,1A电流大约需要40mil(1mm)的线宽(1oz铜厚)。你可以为电源网络(如VCC、GND)创建单独的规则,设置更宽的线宽。
- Routing Via Style(过孔样式):定义过孔的尺寸。过孔由钻孔直径(Hole Size)和外径(Diameter)组成。外径通常比钻孔大约8-10mil,以确保有足够的环宽(Annular Ring)用于可靠连接。标准过孔可以设为钻孔12mil/外径24mil。高密度板可能需要更小的过孔。
如何设置规则优先级?AD的规则是有优先级的。你可以为整个板子设置一个默认的线宽规则(如10mil),然后为“GND”网络创建一个新规则,设置线宽为20-40mil,并在“Where The First Object Matches”中选择“Net”,并指定GND网络。AD会优先应用更具体的规则。
注意:规则设置不是一次性的。在布线过程中,你可能会发现某些区域的间距需要调整,或者某些信号需要特殊的线宽。养成随时检查和调整规则的习惯。
2.2 叠层规划:为信号和电源规划“车道”
单面板和双面板的叠层相对简单,但对于稍复杂的电路,四层板是性价比和性能的甜点。合理的叠层结构是良好布线的基础。
一个典型的四层板叠层结构如下(从上到下):
- Top Layer(顶层):主要放置元器件和少量走线。
- Internal Plane 1(内电层1):通常作为地平面(GND Plane)。一个完整的地平面能为信号提供最短的返回路径,是抑制电磁干扰(EMI)和保证信号完整性的关键。
- Internal Plane 2(内电层2):通常作为电源平面(Power Plane)。为各个芯片提供干净、低阻抗的电源。
- Bottom Layer(底层):主要进行布线。
为什么需要完整的平面?高速信号的电流总是沿着阻抗最小的路径返回源端。如果下方有一个完整的地平面,返回电流就会紧贴着信号走线的正下方流动,形成可控的回路。如果地平面不完整,返回电流就会四处乱窜,变成天线辐射噪声,也会干扰其他信号。
在AD中,通过Design->Layer Stack Manager来管理叠层。对于内电层,你需要将其类型设置为“Internal Plane”,并为其分配网络(如GND或VCC)。这样,当你在此层放置过孔或通孔焊盘时,AD会自动根据网络连接情况,在平面层生成“反焊盘”(隔离圈)或“花焊盘”(热焊盘,用于散热连接)。
我的经验是:即使你的板子很简单,也尽量采用“信号层-地平面-电源平面-信号层”的思维来规划。在双面板上,可以通过大面积覆铜来模拟地平面和电源平面,但要特别注意覆铜的完整性,避免被过多的走线割裂。
3. 核心布线策略与AD15实操技巧
规则和叠层定好了,终于可以开始布线了。AD15提供了交互式布线(Interactive Routing)、多根布线、差分对布线等多种工具。
3.1 交互式布线:从手动到智能
按下快捷键P -> T或点击工具栏图标进入交互式布线模式。单击一个焊盘开始,移动鼠标,AD会根据你设定的规则(如拐角模式、避让间距)实时显示走线预览。
几个关键技巧:
- 切换层与打孔:布线过程中,按数字键盘的
*键可以在可用信号层之间切换(如从Top Layer切换到底层),并自动在切换点放置一个过孔。这是最常用的操作之一。 - 调整走线宽度:布线时,按
Tab键可以实时调出属性框,修改当前走线的宽度,即使它不符合规则,AD也会提示但允许你继续(用于特殊情况)。 - 推挤与绕行:在布线设置中,你可以选择“推挤障碍物”(Push Obstacles)或“绕开障碍物”(Walkaround)模式。前者会推开已有的走线为你让路,后者则会自动寻找路径绕过。对于高密度板,“推挤”模式需要谨慎使用,容易把布局搞乱。
- 完成与回退:右键单击或按
ESC键结束当前走线。按Backspace键可以回退上一步拐点。
3.2 电源与地网络的处理:优先且粗壮
电源和地网络承载大电流,且对噪声敏感,必须优先处理。
- 加粗走线:如前所述,通过规则为电源网络设置更宽的线宽(如VCC12V设为30mil)。在布线时,确保这些网络确实使用了设定的宽线。
- 使用平面层:充分利用内电层作为电源和地平面。芯片的电源和地引脚,尽量通过过孔直接连接到相应的平面层,这是最短、阻抗最低的连接方式。
- 星型连接 vs 菊花链:对于模拟电路或对噪声特别敏感的器件,电源最好采用星型连接(一个中心点分支到各个器件),避免器件之间的噪声通过电源线串扰。数字电路对菊花链的容忍度较高。
- 电源入口处的滤波:在电源从接口进入板子的地方,就近放置大电容(如100uF)进行储能和低频滤波,再配合小电容(如0.1uF)进行高频去耦。每个芯片的电源引脚附近,也必须放置一个0.1uF左右的去耦电容,且电容的接地端到芯片地引脚和地平面的路径要尽可能短。
3.3 信号线的布线要点:清晰与有序
- 避免直角和锐角:直角拐角在高频下相当于一个电容,容易导致信号反射和辐射。尽量使用45度角或圆弧走线。AD在交互式布线时,默认就是45度角模式。
- 走线顺序建议:先布关键信号(如时钟、高速差分线、模拟小信号),再布其他一般信号线,最后处理电源和地。因为关键信号对路径和参考平面的要求最苛刻。
- 3W原则:为了减少串扰,相邻走线中心距应至少是线宽(W)的3倍。这在空间允许的情况下应尽量遵守。
- 环路面积最小化:任何信号线与其回流路径(通常是地平面)构成的环路,都是一个天线,环路面积越大,辐射和接收干扰的能力越强。确保信号线正下方有完整的地平面参考,是减小环路面积最有效的方法。
4. 差分对、等长与扇出:进阶布线技术
当电路涉及高速信号(如USB、HDMI、DDR内存)时,就需要更精细的布线控制。
4.1 差分对布线
差分信号利用两根相位相反的信号线传输,抗干扰能力极强。在AD中,你需要先定义差分对。
- 在原理图中,通过放置
Directives->Differential Pair来标注差分网络(如USB_DP, USB_DN)。 - 导入PCB后,在PCB界面通过
Design->Classes可以查看和管理差分对类。 - 布线时,使用快捷键
P -> I进行差分对交互式布线。两根线会像“轨道”一样并行前进,自动保持你设定的间距(在规则中设置)。 - 差分对的关键规则是阻抗控制和等长。阻抗通常由线宽、间距以及到参考平面的距离决定,可能需要与板厂沟通。等长则需要在布线后稍微调整。
4.2 等长布线
对于并行总线(如DDR)或要求严格的差分对,需要使一组信号线的长度尽可能相等,以保证时序一致。AD的“等长布线”功能非常强大。
- 先完成这组信号的大致布线。
- 通过
Design->Classes创建“Net Class”,将需要等长的网络加进去。 - 在规则中(
Design->Rules->High Speed->Matched Net Lengths)为该网络类创建规则,设置目标长度和公差(如±10mil)。 - 使用“交互式长度调整”工具(
T -> R),在需要调整的走线上单击并拖动,AD会自动添加蛇形走线(Serpentine),直到长度符合要求。蛇形走线的振幅和间隙需要设置合理,一般保持3倍线宽以上。
4.3 BGA芯片的扇出
对于引脚密集的BGA封装芯片,将所有引脚引出来是第一道难关,这就是“扇出”(Fanout)。
- 过孔策略:通常使用盲孔或埋孔成本太高,最常用的是在焊盘之间打微通孔(Microvia)。对于0.8mm及以上间距的BGA,可以在两个焊盘之间走一根线并打一个过孔。对于更密的,可能需要盘中孔(Via in Pad)工艺,但这会增加成本。
- AD的扇出工具:
Tools->Component Placement->Fanout Selected Component。这个工具可以自动为选中的BGA器件进行扇出。但是!自动扇出的结果往往不够优化,我强烈建议先使用自动扇出了解其思路,然后手动调整。手动扇出时,遵循“从内圈到外圈”的顺序,并尽量让过孔排列整齐,为内层走线留出通道。 - 逃逸布线:扇出完成后,需要将过孔引出的线走到BGA区域外部,这就是逃逸布线。尽量让走线方向有规律,例如内圈走线朝一个方向,外圈走线朝另一个方向,避免混乱。
5. 布线后的关键收尾:DRC检查与覆铜处理
所有线都布通了,先别急着庆祝。最后的两步决定了板子的质量和可靠性。
5.1 设计规则检查(DRC)
这是你的“最终质检”。运行Tools->Design Rule Check...。在规则检查报告中,你需要重点关注:
- Un-Routed Net(未布线网络):必须为0。如果有,说明有网络没连上。
- Clearance Violations(间距冲突):任何非预期的短路风险都必须解决。
- Width Violations(线宽违规):检查是否有走线违反了最小/最大线宽规则。
- Silk to Solder Mask Clearance(丝印到阻焊间距):确保丝印不会印到焊盘上。
必须处理完所有错误(Errors),警告(Warnings)可以根据实际情况判断(例如,某些测试点故意设置的短路警告可以忽略)。我曾有一次忽略了两个电源网络间一个微小的间距报错,结果板子做回来短路,损失惨重。
5.2 覆铜(Polygon Pour)
覆铜的主要目的是提供大面积的接地和电源连接,减小地阻抗,增强抗干扰能力,也能辅助散热。
- 选择层(通常是顶层和底层),使用
P -> G快捷键放置多边形覆铜。 - 沿着板框画出覆铜区域。在属性中,将其连接到GND网络。
- 关键参数设置:
- Pour Over All Same Net Objects:勾选,这样覆铜会自动连接同网络的焊盘和走线。
- Remove Dead Copper:勾选,移除没有连接到指定网络的孤立铜皮,避免形成“天线”。
- Grid Size 和 Track Width:网格覆铜的栅格大小和线宽。通常网格覆铜(如20mil栅格,10mil线宽)比实心覆铜更利于PCB生产时的热应力释放,防止板子受热起泡。对于高频电路,可能需要实心覆铜以减少阻抗。
- 覆铜后,右键覆铜选择
Polygon Actions->Repour All重新灌注。务必在DRC检查前完成覆铜并重新灌注,因为覆铜会改变走线间距。
一个常见的坑:芯片底部如果有大面积覆铜,且芯片接地引脚通过过孔连接到内层地平面,那么芯片底部的覆铜与内层地平面之间会形成一个寄生电容。对于某些敏感模拟电路,这可能引入噪声。此时,可以考虑在芯片底部区域进行“覆铜挖空”,或者将该区域覆铜连接到安静的“模拟地”。
布线设计是一个不断权衡和折中的过程。没有绝对完美的布线,只有最适合当前设计目标的布线。每一次布线都是一次学习,你会逐渐理解电流如何流动,信号如何传播,噪声如何产生又如何被抑制。当你布完一块复杂的板子,通过所有DRC检查,那种满足感,是单纯画原理图无法比拟的。记住,耐心和细致是布线工程师最好的朋友。多参考成熟的设计,多动手实践,遇到问题多思考背后的物理原理,你的布线水平自然会稳步提升。