当前位置: 首页 > news >正文

AD20 PCB设计核心实践:从规则设置到手工布线全解析

1. 项目概述:从规则到走线,AD20 PCB设计的核心实践

最近在论坛和群里,看到不少朋友在讨论Altium Designer 20(简称AD20)的PCB设计,特别是关于设计规则的设置和手工布线这两个核心环节。很多人觉得规则设置太繁琐,或者手工布线时总感觉不顺手,出来的板子要么DRC(设计规则检查)报错一大堆,要么电气性能和美观度总差那么点意思。这其实非常正常,PCB设计本身就是一门平衡的艺术,需要在电气规则、物理限制、生产工艺和设计效率之间找到最佳结合点。AD20作为一款功能强大的主流EDA工具,提供了极其细致的设计规则系统,但能否用好它,直接决定了你设计的板子是“能工作”还是“优秀可靠”。

我自己在从AD09、AD16一路用到现在的AD20,踩过不少坑,也总结了一些心得。这次就想围绕“设计规则设置”和“手工布线”这两个主题,结合AD20的一些新特性和实用技巧,和大家深入聊聊。无论你是正在学习的学生,还是刚开始接触硬件设计的工程师,希望这篇笔记能帮你建立起清晰、高效的PCB设计工作流,避免一些常见的“坑”,让设计过程更顺畅,设计结果更专业。我们不止要“连通”,更要追求性能、可靠性与可制造性的统一。

2. PCB设计规则系统深度解析与配置策略

设计规则(Design Rules)是PCB设计的“宪法”,它定义了电路中所有元素(如导线、过孔、焊盘、铜皮)之间以及它们与板框等物理对象之间必须遵守的间距、尺寸等约束条件。在AD20中,规则系统更为强大和直观,但初次面对密密麻麻的规则树,很容易让人不知所措。合理的规则设置,是高效、正确完成布线的前提。

2.1 规则分类与核心规则详解

AD20的设计规则管理器(Design -> Rules)将规则分为多个类别。对于大部分板卡设计,我们需要重点关注以下几类:

1. Electrical(电气规则):这是保证电路正确工作的基础。

  • Clearance(安全间距规则):这是最重要的规则之一,定义了不同网络、相同网络的不同对象之间的最小间隔。设置不合理会导致短路或耐压不足。
    • 设置逻辑:通常设置一个全局默认值(如6mil或0.15mm)。对于高压、大电流部分,需要单独创建规则,设置更大的间距(如电源网络之间设置20mil)。在AD20中,可以利用“查询构建器”(Query Builder)或直接输入查询语句(如InNet('VCC'))来精准定位需要特殊规则的对象。
    • 避坑技巧:注意区分“Different Nets Only”(仅不同网络)和“Same Net Only”(仅相同网络)的选项。对于相同网络,过孔和焊盘、导线和焊盘之间的间距可以设置得更小,甚至为0,以方便连接。

2. Routing(布线规则):

  • Width(导线宽度规则):定义不同网络导线的宽度。电流大小决定线宽,可以参考IPC-2152标准或在线线宽计算器。
    • 实操设置:为电源网络(如VCC、GND)设置较宽的线宽(如20-40mil),为信号网络设置默认线宽(如6-10mil)。AD20支持设置最小、首选、最大宽度,布线时会首选“首选宽度”。
    • 经验之谈:对于数字信号线(如时钟、数据线),在空间允许的情况下,适当加宽(如8-12mil)可以降低阻抗,提高可靠性,但要注意与间距规则的平衡。
  • Routing Via Style(过孔样式规则):定义过孔的尺寸。过孔孔径(Hole Size)和焊盘直径(Diameter)需要根据板厂工艺能力和电流需求确定。
    • 常用尺寸:普通信号过孔常用8mil/16mil(孔径/焊盘直径)。电源过孔需要更大,如12mil/24mil或更大。务必咨询PCB板厂的“工艺能力表”,确保你的过孔尺寸在其生产能力范围内。

3. Manufacturing(制造规则):

  • Hole To Hole Clearance(孔到孔间距):防止钻孔时钻头打滑导致孔壁破损。一般设置为板厂要求的最小值(如8mil)。
  • Minimum Solder Mask Sliver(阻焊桥最小宽度):防止阻焊油墨在焊盘之间过细而断裂。通常设为3-4mil。
  • Silkscreen Over Component Pads(丝印与焊盘间距):防止丝印印到焊盘上影响焊接。通常设为2mil以上。

4. High Speed(高速规则,如有需要):

  • Matched Net Lengths(等长线规则):用于DDR、高速差分线等需要时序匹配的场景。这是AD20的强项,可以设置目标长度和公差。
  • Differential Pairs Routing(差分对布线规则):定义差分线的线宽、间距和耦合方式。必须优先设置好差分对标识,规则才能生效。

重要提示:规则设置不是一次性的工作。建议在项目初期设置一个基础规则模板,在布局布线过程中,根据实际情况(如遇到瓶颈、发现新的电气需求)随时返回规则管理器进行微调和优化。养成“规则驱动设计”的习惯。

2.2 规则优先级与查询语句的灵活应用

AD20的规则应用遵循优先级(Priority)机制。当同一个对象被多条规则覆盖时,优先级数字小的规则(通常1为最高)生效。这给了我们极大的灵活性。

场景举例:你有一个默认的线宽规则(10mil),但希望VCC网络用30mil,VCC网络中的一个特定芯片的电源引脚(比如U1的第8脚)因为出线空间狭窄,暂时需要用15mil引出。

  1. 创建规则Rule1:名称“Power_Main”, 查询语句InNet('VCC'), 宽度设为30mil, 优先级设为1。
  2. 创建规则Rule2:名称“Power_U1_Pin8”, 查询语句InNet('VCC') And (Pad = 'U1-8'), 宽度设为15mil, 优先级设为2(比1低)。
  3. 默认线宽规则优先级设为3。

这样,U1-8这个焊盘会优先应用15mil的规则,VCC网络的其他部分应用30mil的规则,其他所有网络应用10mil的默认规则。熟练掌握查询语句(支持And,Or,Not等逻辑运算符和对象属性),可以实现像素级精准的规则控制。

常用查询语句示例:

  • InNet('GND'): 应用于GND网络。
  • IsTrack And (Width < 8mil): 查找所有线宽小于8mil的导线。
  • OnLayer('Top Layer'): 应用于顶层对象。
  • (ObjectKind = 'Via') And (HoleSize > 20mil): 查找所有孔径大于20mil的过孔。

3. 手工布线的核心思想、技巧与AD20高效操作

设置好规则,就像是修路前画好了车道线和交通法规。手工布线则是驾驶汽车,将这些“道路”实际修建起来的过程。它不仅是简单的连接,更是优化信号完整性、电源完整性和EMC性能的关键阶段。

3.1 布线前的核心准备:布局优化与扇出处理

布局是布线之母。一个糟糕的布局会让布线变得极其困难甚至不可能。在动手布线前,务必反复审视和优化布局。

  • 模块化布局:将功能相关的电路(如MCU及其外围、电源模块、接口电路)聚集在一起,模块内部优先连接,再处理模块间的互连。
  • 关键路径优先:优先放置和连接关键器件和线路,如晶振、复位电路、高速信号线、电源路径。
  • 预留布线通道:在器件之间留出足够的空间供导线通过,避免后期“见缝插针”导致线绕远或间距不足。

扇出(Fanout)处理:特别是对于BGA、QFN等密集封装芯片,在布线初期,需要先将其引脚用短导线引出,并打上过孔,将信号引到内层或其他层。这个过程就是扇出。

  • AD20技巧:可以使用“交互式扇出”(Tools -> Fanout -> Component)功能,让软件自动为选中的元件进行扇出,然后再手动调整不满意的部分。对于BGA,采用“狗骨头式”(Dog-bone)或“盘中孔”(Via-in-Pad)扇出是常见策略,需要根据板厂工艺决定。

3.2 交互式布线与快捷键的极致运用

AD20的交互式布线(Place -> Interactive Routing或快捷键P -> T)非常智能,是手工布线的核心工具。

  • 智能推挤与绕行:在布线模式下,当遇到已有走线或障碍物时,按Shift+R可以循环切换推挤模式(Push)、绕行模式(Walkaround)和忽略模式(Ignore)。在拥挤区域,“推挤”模式非常有用,但可能影响已有布线;“绕行”模式更安全。根据场景灵活切换。
  • 动态布线优化:布下一段线后,可以拖动线段或顶点进行优化。按住Ctrl键拖动线段,可以保持角度进行移动。
  • 多线并布:对于需要保持等间距的一组线(如总线),可以使用“多根导线布线”(Place -> Interactive Multi-Routing),一次性布多根线,极大提高效率并保证间距一致。
  • 快捷键是效率的灵魂:
    • *(小键盘):在布线过程中切换层,并自动添加过孔。这是最常用的快捷键之一。
    • 2:在布线过程中添加一个过孔(根据规则),但不换层。
    • Shift+Space:循环切换走线角度模式(45度、90度、任意角度、圆弧)。
    • Space:在45度和90度模式时,切换走线方向。
    • Ctrl+Click:在已完成布线的网络上单击,可以高亮整个网络,方便检查。
    • Tab键:在放置对象(导线、过孔、器件)时,按Tab键可以调出其属性框,进行实时参数修改。

3.3 电源与地线的处理艺术

电源和地线承载大电流,需要低阻抗路径,同时也是噪声耦合的主要渠道,需要特别处理。

  • 加粗处理:严格按照电流计算和规则设置,对电源主线进行加粗。不要仅仅依赖自动布线或默认线宽。
  • 电源平面优先:对于多层板,尽可能为主要的电源和地分配完整的内部层(平面层)。利用平面层极低的阻抗特性为芯片供电。在AD20中,可以通过“内电层分割”(Place -> Polygon Pour -> Split Plane)来在一个电源层上分配多个电压网络。
  • 星型连接与单点接地:对于模拟电路或混合电路,避免电源/地线形成环路。采用星型拓扑或单点接地,将噪声敏感电路的回流路径分开。这需要在布局阶段就规划好。
  • 电源滤波电容的摆放:“就近原则”是铁律。去耦电容必须尽可能靠近芯片的电源引脚放置,其接地端到芯片地引脚的路径也要尽可能短,以形成最小的环路面积。理想情况是电容直接在芯片背面(对于贴片芯片)。

3.4 差分对与高速信号布线要点

对于USB、HDMI、DDR数据线等差分信号或高速信号,布线要求更为苛刻。

  • 差分对布线:在原理图中将两根线定义为差分对(Place -> Directives -> Differential Pair),并导入PCB。布线时使用Place -> Interactive Differential Pair Routing(快捷键P -> I)。
    • 等长与等距:布线过程中要尽量保持两根线平行、等长、等间距。AD20的差分对布线器会自动辅助。
    • 避免过孔:尽量减少过孔,如果必须打孔,应两个信号线对称打孔。
    • 参考平面连续:差分线下方必须有一个完整、无分割的参考平面(通常是地平面),且不要跨平面分割区。
  • 等长布线:对于需要时序匹配的多根线(如DDR的地址/控制线组,数据线组),使用“等长布线”功能(Route -> Interactive Length TuningU -> L)。
    • 策略:先大致连接所有线,然后运行“等长”命令,通过添加蛇形线(Accordion、Trombone、Sawtooth等样式)来补偿较短的线路,使其长度落在目标范围内。调整时注意蛇形线的振幅(Amplitude)和间距(Gap)要符合规则,一般间距≥3倍线宽。

4. 布线后的关键收尾:检查、优化与生产文件输出

布线完成,并不意味着设计结束。严谨的检查和优化是保证设计成功投产的最后关卡。

4.1 设计规则检查与电气连通性验证

  • 运行DRC:执行Tools -> Design Rule Check。仔细查看每一项报错(Violations)。不要忽略任何警告,必须理解每一个错误产生的原因并决定是修改设计还是忽略(如果是误报,可能需要调整规则)。常见的DRC错误包括间距不足、线宽违规、丝印上焊盘等。
  • 飞线检查:确保PCB视图上没有任何飞线(ratsnest)残留。快捷键N -> H可以显示/隐藏所有连接线。如果还有飞线,说明有网络未完全连接。
  • 3D视图检查:使用View -> 3D Layout Mode(快捷键3)查看板子的三维效果。这是检查器件之间、器件与外壳之间是否存在机械干涉的绝佳方式。也可以检查焊盘、过孔的盖油情况。

4.2 铺铜与优化

铺铜(Polygon Pour)主要用于提供大面积的接地、电源连接,并起到屏蔽和散热的作用。

  • 铺铜设置:Place -> Polygon Pour。关键设置:
    • 网络(Net):通常连接到GND。
    • 铺铜样式(Pour Over):“All Same Net Objects”会覆盖所有同网络的焊盘和导线;“Don‘t Pour Over Same Net Objects”则只填充空白区域,通过“十字花焊盘”(Thermal Relief)连接,便于焊接散热。
    • 移除死铜(Remove Dead Copper):一定要勾选,移除没有电气连接的孤立铜皮。
  • 铺铜优化:铺铜后,边缘可能会产生很多尖锐的毛刺(Antenna),这些是潜在的EMI辐射源。可以使用Tools -> Polygon Pours -> Polygon Manager中的“重铺”功能,或者手动用“铺铜修整”(Place -> Polygon Pour Cutout)和“导线”工具对铺铜边界进行平滑修整。
  • 与走线的间距:确保铺铜与信号线之间有足够的间距(通常等于或大于线-线间距),防止电容耦合。这通过Clearance规则控制。

4.3 生产文件(Gerber)输出详解

这是将设计交付给PCB板厂的最终步骤,必须准确无误。

  1. 生成Gerber文件:File -> Fabrication Outputs -> Gerber Files

    • Layers标签页:选择“Plot Layers”为“Used On”,并勾选所有用到的机械层、丝印层、阻焊层、锡膏层等。在“Mirror Layers”中通常不勾选。
    • Drill Drawing标签页:生成钻孔图。
    • Apertures标签页:保持“Embedded apertures (RS274X)”被选中,这是现代标准。
    • Advanced标签页:在“Leading/Trailing Zeroes”中选择“Suppress leading zeroes”(抑制前导零),这是国内板厂通用格式。其他保持默认。
    • 点击“OK”生成.Gx文件。
  2. 生成钻孔文件:File -> Fabrication Outputs -> NC Drill Files

    • 格式设置与Gerber文件保持一致(如单位、前导零)。
    • 点击“OK”生成.TXT.DRR文件。
  3. 文件打包与检查:将输出的所有Gerber文件(.GTL,.GBL,.GTO,.GBO,.GTS,.GBS,.GTP,.GBP,.GMx等)和钻孔文件(.TXT)打包成一个ZIP文件。强烈建议使用免费的第三方Gerber查看器(如GC-Prevue、Gerbv或在线查看器)打开这个ZIP包,从板厂的角度检查每一层是否正确无误,确认没有缺失层、层错位、孔径错误等问题。

5. 常见问题排查与实战心得记录

在实际操作中,总会遇到一些“奇怪”的问题。这里记录一些典型场景和解决方法。

5.1 布线与规则相关的典型问题

  • 问题:明明空间足够,但就是无法按照设定的线宽布线,软件自动变细。
    • 排查:检查当前布线的网络是否被多条线宽规则覆盖,且优先级更高的规则设置了更小的线宽。检查布线层(Layer)的线宽规则是否被单独设置。使用PCB Rules and Violations面板(Panels菜单下)高亮显示规则应用情况。
  • 问题:差分对布线时,两根线无法保持等间距,或者无法一起推挤。
    • 排查:首先确认原理图中的差分对标识已正确导入PCB(在PCB中Design -> Classes里查看Differential Pair Classes)。其次,检查差分对布线规则(Differential Pairs Routing)中的“Min Gap”、“Max Gap”和“Preferred Gap”是否设置正确且未被其他更高优先级的Clearance规则覆盖。
  • 问题:铺铜后,某些信号线周围的铺铜被“掏空”得厉害,或者与铺铜的间距忽大忽小。
    • 排查:这是铺铜的“孤岛检测”和“避让”算法导致的。可以尝试调整铺铜的“Grid Size”和“Track Width”值(在铺铜属性中),将其设置得更小(如Grid=2mil, Track=4mil),这样铺铜的边缘会更平滑,避让更精确,但会增大文件大小和重铺时间。也可以手动放置“铺铜修整”区域来引导铺铜形状。

5.2 性能与操作优化心得

  • 卡顿问题:处理大板子或高密度设计时,AD20可能会卡顿。除了升级硬件,可以尝试:关闭在线DRC(Tools -> Design Rule Check,取消勾选“Online”);在铺铜管理器中将复杂铺铜的“重建模式”改为“手动”;分层显示,暂时隐藏不操作的层(Shift+S切换单层模式)。
  • 模板与复用:将常用的规则设置(如6层板通用规则)、层叠结构、图纸模板保存为.PcbDoc.PcbLib文件,在新项目开始时直接调用,可以节省大量重复劳动。
  • 版本管理:PCB设计文件也应纳入版本管理(如Git)。AD20的本地历史记录功能有限。建议定期使用“智能PDF”输出功能(File -> Smart PDF)生成带原理图和PCB视图的文档,作为设计快照存档。

手工布线是一项需要耐心和经验积累的技能。没有绝对“正确”的走线,只有更“优”的方案。最好的学习方法就是多动手,从简单的双面板开始,遇到问题就查阅资料、思考规则、尝试调整。每一次解决DRC报错,每一次优化出一条简洁漂亮的走线,每一次看到自己设计的板子成功上电运行,都是对这项技能最好的巩固和奖励。记住,规则是你的护栏,经验是你的导航,而耐心则是抵达终点的燃料。

http://www.jsqmd.com/news/1321612/

相关文章:

  • 如何用Sunshine搭建家庭游戏串流服务器:终极免费指南
  • 爱回收回收手机安全吗?测评博主实测双重清除全流程 - 甄选测评官
  • Origin热力图进阶:自定义调色盘与颜色标尺提升数据可视化表现力
  • Unity二维数组序列化数据丢失问题:ISerializationCallbackReceiver接口的完整解决方案
  • 私有云盘搭建:Cloudreve与WebDAV协议在Windows下的正确挂载与优化指南
  • UE4 PSO缓存实战:从构建到热更的完整优化指南
  • 思科NEXUS交换机密码重置实战指南:从Bootloader到业务恢复
  • Python构建AI应用:从环境配置到FastAPI部署的5个实操步骤
  • Unity URP卡通渲染插件安装与配置全指南:从原理到实战
  • Godot着色器实战:10个核心特效实现与性能优化指南
  • 别再手动汇总了!基于LLM+RAG的智能周报系统架构图首次披露(含企业级安全边界与审计留痕设计)
  • 支付宝沙箱支付避坑指南:从环境配置到联调上线的实战经验
  • Unity着色率优化:动态控制像素着色精细度以提升渲染性能
  • 手机自带工具mp4转mp3,安卓系统自带提取视频音频mp3 iPhone自带功能把视频mp4转mp3音频实用指南
  • Unity Hub新建项目启动闪退:系统排查与解决方案全指南
  • Word长文档排版实战:样式、多级列表与分节符详解
  • 基于Blynk平台的Wio Terminal无线OTA固件更新实战指南
  • 生物制造企业国际化战略与技术融合分析
  • 视频技术核心三要素:分辨率、帧率与码流的权衡艺术
  • Flutter开发:避免全家桶陷阱与项目优化实践
  • 亲属关系公证有效期多久?亲属关系公证线上办理要多久?
  • Godot着色器实战指南:从脉冲发光到溶解特效,掌握移动端优化技巧
  • find全盘条件精准查找文件实战
  • 朴素贝叶斯算法:从贝叶斯定理到文本分类实战
  • Unity游戏技能系统架构设计:Gameplay Ability System核心原理与实现
  • 5分钟终极指南:如何在Mac上免费读写NTFS硬盘的完整解决方案
  • 这几家专业PPT代做美化,闭眼入不踩坑! - 甄选测评官
  • Agentic SRE 落地实战:告别救火式运维,解锁人机协同可靠性新范式
  • Cocos Creator游戏开发:资源管理与性能优化实战指南
  • RyzenAdj深度调优指南:3步解锁AMD锐龙处理器的隐藏性能潜力