☰
AD25 PCB布线画不出线?从设计规则到焊盘属性的完整排查指南
2026/9/27 4:08:15 网站建设 项目流程

1. 从一次"画不出线"的抓狂经历说起

如果你正在用AD25做PCB布线,鼠标点在芯片引脚上,按住左键往外拖,结果——线没出来,光标倒是飘走了,或者干脆弹出一个莫名其妙的提示框。这种情况我遇到过不止一次,而且每次的原因都不太一样。有时候是设计规则在"暗中作梗",有时候是交互式布线的模式没切对,还有一次折腾了半小时才发现是封装焊盘的层设置有问题。

AD25(Altium Designer 25)在PCB布线这块做了不少交互上的调整,尤其是交互式布线和推挤模式的默认行为跟老版本有差异,导致很多从AD20、AD21升上来的朋友一上手就懵了。这个问题的核心其实不复杂,但排查路径比较分散,涉及设计规则检查(DRC)、布线模式设置、焊盘属性、网络连接状态等多个环节。任何一个环节出问题,都会表现为"从芯片引脚画不出线"。

这篇文章适合所有正在用AD25做PCB Layout的工程师,不管你是刚接触AD的新手,还是从老版本迁移过来的老手,都能从中找到对应的排查思路和解决方案。我会按照实际排查的逻辑顺序,从最常见的原因开始,一步步往下挖,把每个环节的原理、操作和避坑经验都讲清楚。

2. 先搞清楚AD25交互式布线的触发逻辑

2.1 布线命令的三种启动方式与各自的适用场景

很多人画不出线,第一步就卡在"怎么启动布线命令"上。AD25里启动交互式布线主要有三种方式,每种方式的触发条件和行为都不一样:

  • 快捷键P+T:这是最常用的方式,按下后进入交互式布线模式,光标变成十字准星,点击起点再点击终点即可。但要注意,P+T启动后需要你先点击一个具有电气属性的起点(焊盘、过孔、走线端点),如果点到了丝印或者机械层上的东西,命令会直接取消。
  • 工具栏按钮:顶部工具栏的"Interactive Routing"按钮,效果和P+T一样,但有些工作区布局下这个按钮可能被隐藏了,找不到的话别慌,右键工具栏区域勾选"Routing"即可。
  • 从菜单栏走:Place → Interactive Routing,路径最长但最稳妥,适合不确定快捷键是否被自定义过的情况。

我个人的习惯是P+T,但如果发现按了没反应,第一件事就是去检查快捷键有没有被其他插件占用。AD25支持第三方扩展,有些扩展会劫持快捷键,这个坑我踩过一次,排查了半天才发现是一个自动布线辅助插件把P+T映射到了别的功能上。

2.2 为什么光标能移动但线出不来

这是最典型的症状:光标在引脚上,点击了,但线就是不出来。这种情况大概率是设计规则冲突导致的。AD25在交互式布线时,会实时检查当前走线是否满足所有适用的设计规则,如果起点焊盘所在的网络没有任何可用的走线层,或者规则中定义的最小线宽、最小间距等参数与焊盘本身冲突,布线命令会被静默拒绝——不报错,但也不出线。

具体来说,以下几个规则最容易导致这个问题:

规则类型常见问题表现
Clearance焊盘间距小于规则最小值点击引脚后无反应
Width最小线宽大于焊盘可容纳宽度线出不来或出来就报错
Routing Layers当前层不在允许布线层列表中切换到某层后无法布线
Via Style过孔尺寸与规则不匹配换层时布线中断

排查方法很简单:在PCB面板中选中那个芯片的所有引脚,然后打开Design → Rules,逐条检查Clearance和Width规则的作用范围是否覆盖了这些焊盘。我通常会把芯片引脚单独建一个Room或者用类(Class)来管理,给它们分配独立的规则,这样既能保证细间距芯片的布线需求,又不会影响板上其他区域。

2.3 交互式布线模式的隐藏开关

AD25的交互式布线有一个"模式"概念,按Shift+R可以循环切换三种模式:Ignore Obstacles(忽略障碍)、Walkaround(绕行)、Push and Shove(推挤)。如果你当前处于Ignore模式,理论上应该什么都能画出来,但如果你处于Push and Shove模式,而周围有其他网络的对象,推挤引擎可能会因为无法找到合法的推挤路径而拒绝出线。

这里有个细节值得注意:AD25的推挤引擎比老版本更"激进",它会尝试推挤同层所有可移动的对象,包括走线、过孔甚至某些类型的焊盘。如果推挤目标被锁定(Locked)或者属于不同类别的对象,引擎会放弃推挤并阻止布线。解决办法是临时切换到Walkaround或Ignore模式,先把线拉出来,再切回Push and Shove做后续调整。

3. 设计规则里那些"看不见的墙"

3.1 Clearance规则的作用域陷阱

Clearance规则是导致画不出线的头号嫌疑犯。AD25的Clearance规则支持非常细粒度的作用域定义,可以针对"网络对网络"、"网络对类"、"类对类"等多种组合。问题在于,很多人在设置规则时只定义了全局的默认规则,却忽略了特定网络可能被其他规则覆盖。

举个例子:你有一个BGA封装的芯片,引脚间距只有0.4mm,而全局Clearance规则设置的是0.2mm。理论上0.4mm的间距减去0.2mm的Clearance,还剩0.2mm的走线空间,应该能画出来。但如果这个芯片的引脚被分配到了一个自定义的类(比如"FinePitch"类),而这个类又有一条更严格的Clearance规则(比如0.15mm),那么实际可用的走线空间就只有0.1mm了。如果此时你的最小线宽规则是0.15mm,那就刚好卡死——线宽加间距超过了引脚间距,布线引擎直接拒绝出线。

注意:AD25的规则优先级是"越具体的规则优先级越高"。如果你不确定哪条规则在起作用,可以在PCB面板中选中对象后,使用右键菜单的"Applicable Rules"功能,它会列出所有适用于当前对象的规则,按优先级排序。

3.2 物理规则与电气规则的交叉影响

除了Clearance,还有一组规则容易被忽略:物理规则(Physical Rules)。物理规则控制的是走线的物理属性,比如线宽、过孔尺寸等。AD25允许你为不同的网络类定义不同的物理规则,但如果你在原理图阶段没有正确设置网络类,或者在PCB中手动修改了网络属性,可能会导致物理规则和电气规则"打架"。

我遇到过一个案例:一个电源网络被错误地分配到了"Default"类,而Default类的物理规则中最小线宽是0.2mm,但这个电源网络实际需要走1mm的粗线。结果就是,当你从电源芯片的引脚往外画线时,布线引擎试图用0.2mm的线宽出线,但电源引脚的焊盘本身可能只有0.5mm宽,加上Clearance后空间不够,线就出不来。解决办法是把电源网络单独建类,分配独立的物理规则,把线宽范围设置成0.5mm到2mm,这样布线引擎就有足够的弹性空间。

3.3 如何快速定位"卡死"的规则

与其一条条规则去翻,不如用AD25内置的规则检查器。具体操作:

  1. 在PCB编辑器中,按T+D打开Design Rule Checker。
  2. 在"Rules To Check"选项卡中,只勾选"Clearance"和"Width"。
  3. 点击"Run Design Rule Check",等待检查完成。
  4. 在Messages面板中查看报错信息,重点关注与芯片引脚相关的条目。

这个方法能快速告诉你哪些引脚存在规则冲突。但要注意,DRC检查的是"已存在的对象",对于"画不出线"这种实时交互问题,DRC可能不会直接报错。这时候你需要结合PCB面板的规则视图来手动排查。

另外,AD25新增了一个很实用的功能:在交互式布线过程中,按Tab键可以调出当前走线的属性面板,里面会显示当前生效的线宽、间距等参数。如果发现参数明显不对,就可以顺藤摸瓜找到对应的规则。

4. 焊盘和封装层面的"隐形障碍"

4.1 焊盘层设置错误导致的布线失败

有时候问题根本不在规则上,而是焊盘本身的属性有问题。AD25中,焊盘的层属性决定了它能在哪些层上被布线。如果一个芯片引脚焊盘被错误地设置成了"仅顶层"(Top Layer Only),而你想从底层走线,那肯定画不出来。

更隐蔽的情况是**焊盘栈(Pad Stack)**设置问题。AD25支持多层的焊盘栈定义,可以分别为顶层、内层、底层设置不同的焊盘形状和尺寸。如果某个内层的焊盘尺寸被设置成了0,或者层属性被关闭了,那么当你的走线需要穿过那个层时,布线引擎会认为没有合法的连接点,从而拒绝出线。

排查方法:双击芯片的任意一个引脚焊盘,打开属性面板,检查"Layers"区域。确保所有需要布线的层都被勾选,并且焊盘尺寸不为零。对于通孔焊盘,还要检查"Hole Size"是否合理,孔径过大可能导致焊盘环宽不足,进而触发规则冲突。

4.2 焊盘与网络的连接状态

另一个常见原因是焊盘没有正确分配到网络。如果芯片引脚在原理图中没有连接到任何网络,或者网络同步时出了问题,PCB中的焊盘可能处于"无网络"状态。AD25的交互式布线要求起点必须具有电气属性,无网络的焊盘虽然看起来是个焊盘,但布线引擎不认。

检查方法很简单:在PCB面板中选中芯片,查看"Net"列是否为空。如果为空,说明网络没有同步过来。解决办法是回到原理图,检查该引脚的连接,然后重新执行"Update PCB Document"(快捷键D+U)。如果原理图没问题但PCB中仍然无网络,可以尝试在PCB中手动给焊盘分配网络,但这不是长久之计,最好还是从原理图源头解决。

提示:AD25在工程同步时,如果遇到网络冲突(比如两个不同的网络被分配到了同一个焊盘),会弹出"Engineering Change Order"对话框。很多人习惯性点"Execute"一路到底,结果把一些关键的网络变更给忽略了。建议每次同步时都仔细看一下ECO列表,确认没有意外的网络删除或修改。

4.3 封装原点与栅格设置的干扰

这个原因比较"玄学",但确实存在。如果芯片封装的原点设置得离焊盘很远,而你的栅格(Grid)设置又比较粗,可能会导致光标无法精确捕捉到焊盘中心。AD25的交互式布线需要你点击焊盘的电气热点(通常是焊盘中心),如果栅格太粗,光标跳过了热点,布线命令就会取消。

解决办法:把栅格切换到Fine Grid或者Snap to Object Hotspot模式。AD25默认的快捷键是G切换栅格,Shift+Ctrl+G打开栅格管理器。我通常会在布线细间距芯片时,把栅格设成0.05mm或者更小,同时开启"Snap to Object Hotspot",这样光标会自动吸附到最近的电气热点上,避免点空。

5. 从排查到修复的完整操作链路

5.1 第一步:确认布线命令是否正常启动

在动手改任何设置之前,先做一个最简单的测试:在板子上随便找一个独立的、有网络的焊盘(比如一个电阻的焊盘),尝试从它画线。如果这个焊盘能正常出线,说明布线命令本身没问题,问题出在芯片引脚相关的设置上。如果这个焊盘也画不出线,那问题就是全局性的,可能是快捷键冲突、工作区配置错误,或者软件本身的状态异常。

全局性问题的排查顺序:

  1. 检查快捷键:Tools → Customize → Keyboard,搜索"Interactive Routing",确认快捷键没有被占用或修改。
  2. 重置工作区:View → Workspace Layouts → Default,恢复默认布局。
  3. 重启软件:别笑,AD25偶尔会有状态缓存问题,重启能解决不少玄学故障。

5.2 第二步:用DRC和规则面板锁定冲突规则

确认布线命令正常后,下一步就是排查规则冲突。我习惯的操作流程是:

  1. 按T+D运行DRC,只勾选Clearance和Width。
  2. 查看Messages面板,记录所有与芯片引脚相关的报错。
  3. 打开Design → Rules,找到对应的规则条目。
  4. 在规则的作用域(Scope)中,确认是否覆盖了芯片引脚所在的网络或类。
  5. 临时放宽规则参数(比如把Clearance从0.2mm改成0.15mm),测试是否能出线。

如果放宽规则后能出线,说明确实是规则太严导致的。这时候不要直接保留放宽后的规则,而是应该针对芯片引脚单独建一个规则作用域,给它分配更合适的参数。比如细间距芯片可以设置更小的Clearance和更细的线宽,而板上其他区域保持原有规则。

5.3 第三步:检查焊盘属性和网络分配

规则没问题的话,接下来检查焊盘本身。选中芯片的所有引脚,在PCB面板中查看以下属性:

  • Net:是否为空?为空则说明网络未同步。
  • Layer:是否包含了你想要布线的层?
  • Pad Stack:各层的焊盘尺寸是否合理?
  • Hole Size:通孔焊盘的孔径是否过大?

如果发现网络为空,回到原理图重新同步。如果层属性有问题,手动修改焊盘属性,或者直接更新封装库中的封装定义,然后从库中更新到PCB。

5.4 第四步:调整交互式布线模式和栅格

如果以上都没问题,那可能是布线模式或栅格设置在捣乱。尝试以下操作:

  • 按Shift+R切换到Ignore Obstacles模式,测试是否能出线。
  • 按G切换到更细的栅格,或者开启Snap to Object Hotspot。
  • 按Shift+W打开线宽选择菜单,手动选择一个合适的线宽,而不是用默认值。

我个人的经验是,AD25在Push and Shove模式下对细间距芯片的支持不如老版本稳定,有时候推挤引擎会"过度思考",导致布线命令响应迟缓甚至无响应。遇到这种情况,我会先切到Walkaround模式把线拉出来,再切回Push and Shove做微调。

6. 几个容易被忽略的"冷门"原因

6.1 板层堆栈设置与布线层启用状态

AD25的层堆栈管理器(Layer Stack Manager)允许你定义任意数量的信号层、内电层和机械层。但如果你在层堆栈中禁用了某个信号层,或者在"Routing Layers"规则中没有勾选该层,那么即使你在PCB视图中切换到了那一层,布线引擎也不会允许你在该层走线。

检查方法:Design → Layer Stack Manager,确认所有需要的信号层都处于启用状态。然后打开Design → Rules → Routing → Routing Layers,确认允许布线的层列表中包含了你要用的层。这个坑我在一个六层板项目里踩过,当时内层的一个信号层被意外禁用了,导致从BGA引脚往内层扇出时死活画不出线,排查了快一个小时才发现是层堆栈的问题。

6.2 网络类的"锁定"状态

AD25允许对网络类设置"锁定"属性,锁定后的网络类在布线时会受到额外限制。如果你不小心把芯片所在的网络类锁定了,或者某个网络被单独设置了"Locked"属性,布线引擎可能会拒绝修改该网络的走线。

检查方法:在PCB面板的" Nets"视图中,查看芯片引脚对应的网络是否有锁图标。如果有,右键取消锁定即可。这个功能本来是为了保护关键网络不被误改,但在多人协作或者版本迁移时,容易变成"绊脚石"。

6.3 软件性能与显卡驱动的兼容性问题

这个原因比较少见,但确实存在。AD25对显卡性能的要求比老版本高,尤其是在推挤模式下,需要实时计算大量几何运算。如果你的显卡驱动比较旧,或者显卡本身性能不足,可能会导致布线命令响应异常——表现为点击引脚后光标卡顿、线出不来、甚至软件无响应。

排查方法:尝试关闭推挤模式,切换到Ignore或Walkaround模式,看问题是否消失。如果消失了,说明是性能问题。解决办法包括更新显卡驱动、降低PCB视图的渲染质量(View → Rendering → Quality),或者在Preferences中关闭一些不必要的实时预览功能。

7. 实操心得与日常预防建议

7.1 建立自己的"布线前检查清单"

与其每次遇到问题再排查,不如在开始布线前做一遍系统检查。我自己的检查清单是这样的:

  1. 原理图网络是否全部同步到PCB?ECO是否有未执行的变更?
  2. 设计规则是否覆盖了所有关键网络?细间距芯片是否有独立规则?
  3. 层堆栈是否配置正确?所有需要的信号层是否启用?
  4. 芯片封装的焊盘属性是否正确?网络分配是否完整?
  5. 栅格设置是否适合当前布线精度?是否开启了热点吸附?
  6. 交互式布线模式是否适合当前场景?推挤模式是否必要?

这个清单花不了几分钟,但能避免大部分"画不出线"的问题。尤其是从其他工程师手里接手项目时,这套检查流程能帮你快速摸清项目的规则配置和潜在坑点。

7.2 规则管理的最佳实践

AD25的规则系统很强大,但也很容易变得混乱。我的建议是:

  • 按功能建类:把电源、地、高速信号、细间距芯片分别建类,每类分配独立的规则。
  • 规则命名要清晰:不要用"Rule1"、"Rule2"这种名字,用"Power_Net_Width"、"BGA_Clearance"这种一看就懂的命名。
  • 定期导出规则:Design → Rules → Export Rules,把规则导出成.RUL文件备份。换项目或者重装软件时,直接导入即可。
  • 慎用全局规则:全局规则的作用范围太大,容易误伤。尽量用具体的作用域来定义规则。

7.3 遇到问题时的排查顺序

最后分享一个我总结的排查顺序,基本上能覆盖90%以上的"画不出线"问题:

排查步骤检查内容常用工具/操作
1布线命令是否正常测试独立焊盘、检查快捷键
2设计规则是否冲突T+D运行DRC、Design Rules面板
3焊盘网络和层属性PCB面板、焊盘属性对话框
4布线模式和栅格Shift+R切换模式、G切换栅格
5层堆栈和布线层启用Layer Stack Manager、Routing Layers规则
6网络锁定状态PCB面板Nets视图
7软件性能和驱动切换模式测试、更新驱动

这个顺序是从最常见到最冷门排列的,按这个顺序排查,基本不会走弯路。当然,实际项目中可能会遇到多个原因叠加的情况,比如规则冲突加上焊盘网络未同步,这时候就需要耐心地逐项排除。

AD25在PCB布线这块的整体体验比老版本有提升,尤其是推挤算法的智能化程度更高了,但新特性也带来了新的学习成本。我的建议是,不要急着上手就画,先花点时间把规则系统和层堆栈配置好,把常用快捷键和模式切换练熟,后面的布线效率会高很多。毕竟,画不出线只是表象,背后往往是配置和规则的问题,把这些基础打牢了,布线本身就是个体力活,没什么好怕的。

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

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

立即咨询