尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

Altium Designer DRC检查全解析:从规则设置到生产前校验

Altium Designer DRC检查全解析:从规则设置到生产前校验 1. 从“能用”到“可靠”为什么DRC检查是PCB设计的生命线画完原理图把元器件在PCB板上摆好连上线导出一堆Gerber文件发给板厂——这大概是很多电子工程师新手第一次独立完成PCB设计时的全部流程。看着自己设计的板子从3D预览里“立”起来那种成就感确实很足。但很快现实就会给你上一课板子打回来要么是电源和地短路了要么是某个芯片的引脚根本没连上或者更隐蔽的信号在高速下跑起来全是干扰根本没法用。问题出在哪十有八九是跳过了或者轻视了设计规则检查这一步。DRC全称Design Rule Check翻译过来就是设计规则检查。在Altium Designer这类EDA工具里它不是一个可选项而是从“纸上谈兵”的设计稿到“能实际生产并稳定工作”的物理电路板之间那道最重要的质量闸门。你可以把它理解为PCB界的“编译器和静态代码分析工具”。写代码时语法错误编译器会报错潜在的逻辑漏洞、内存泄漏可能需要专门的静态分析工具来扫描。DRC干的就是类似的活儿它根据你预先设定好的一系列“规则”对你的PCB设计进行地毯式扫描找出所有违反规则的地方。这些规则不是软件凭空生成的它们是你对这次设计、对生产工艺、对产品可靠性要求的数字化体现。比如你规定电源线至少要0.5mm宽这是为了承载足够的电流你规定两条信号线之间的最小间距是0.2mm这是为了满足PCB工厂的工艺能力防止短路你规定过孔的内径不能小于0.3mm这是为了确保电镀时孔壁不会镀不上铜。DRC检查就是确保你的实际布线百分百遵守了这些你自己定下的“法律”。很多新手会觉得我的线连上了网络都通了3D看着也没问题DRC报的那些“错误”很多看起来无关紧要甚至有些“误报”干脆忽略掉或者把规则改宽松一点让错误消失。这是非常危险的思维。一个未解决的DRC错误就像一颗埋在地里的地雷可能在测试阶段就引爆也可能在客户手里用了几个月才突然发作。它带来的代价远不止是重做一块板子的金钱和时间成本更是对项目进度和团队信心的沉重打击。因此真正专业的PCB设计其标志之一就是DRC报告是“零错误”、“零警告”或仅有已评估确认可忽略的警告。这份干净的检查报告是你向同事、向领导、向生产方交付可靠设计的最有力背书。2. 规则体系的构建从“通用模板”到“精准定制”在Altium Designer中执行DRC检查本身非常简单菜单一点即可。但检查结果是否有意义完全取决于你之前建立的规则体系是否合理、完整。规则设置才是DRC的灵魂所在也是最能体现工程师经验的地方。Altium Designer的规则系统非常庞大但我们可以将其分为几个核心类别来理解和构建。2.1 电气规则确保电路功能的正确性这是最基础、也最不容有失的一类规则。它主要检查逻辑连接上的问题。Clearance安全间距规则这是使用频率最高、也最关键的规则之一。它规定了不同网络Net的导电图形如导线、焊盘、覆铜之间的最小距离。设置时你需要考虑PCB厂家的工艺能力最小线宽/线距通常常规工艺为6/6mil约0.15/0.15mm。你设定的规则必须大于或等于这个值比如设为8mil或0.2mm为生产留出余量。电压差高压网络之间、高压与低压网络之间需要更大的安全间距以防爬电或击穿。例如220V交流部分和低压直流部分间距可能需要设置到2mm甚至更远。在AD中你可以为不同的网络类Net Class设置不同的间距规则。如何设置在规则编辑器Design - Rules中找到Electrical - Clearance。你可以设置一个全局默认值如0.2mm然后通过右键“新建规则”来创建针对特定网络或网络类的、优先级更高的规则。优先级数字越小优先级越高。Short-Circuit短路规则顾名思义检查是否允许不同网络短路。在任何情况下你都应该将其设置为“不允许”Allow Short Circuit 不勾选。这是底线规则。Un-Routed Net未布线网络规则检查是否所有网络都已物理连接。一个网络从原理图导入后在PCB上可能表现为飞线Ratsnest。此规则会找出所有仍有飞线存在的网络。确保此项检查通过是板子能正常工作的最基本前提。Un-Connected Pin未连接引脚规则检查元件封装上是否有引脚未连接到任何网络。这能帮你发现原理图封装或PCB封装绘制错误比如引脚序号不匹配。2.2 布线规则平衡性能与工艺这类规则控制PCB布线的物理特征直接影响信号完整性、电源完整性和可制造性。Width布线宽度规则为不同网络设置合适的线宽。电源线根据电流大小计算。一个粗略的经验公式是1A电流需要1mm约40mil的线宽在1oz铜厚温升10℃的条件下。对于大电流路径要单独设置规则。信号线一般使用默认宽度如0.2mm约8mil。对于阻抗控制线如USB差分线、DDR数据线线宽需与叠层结构、介质厚度一起计算以达到目标阻抗如50Ω单端90Ω差分。设置技巧可以为Power网络类创建一个宽线规则如0.5mm为Signal网络类创建默认规则如0.2mm。AD支持为同一网络设置最小、首选、最大宽度布线时会按首选宽度进行。Routing Via Style过孔样式规则设置过孔的尺寸。孔径Hole Size指机械钻孔的直径。必须考虑板厂的钻孔能力通常最小0.2mm和成本。孔径越小成本越高。内层焊盘Pad直径需比孔径大至少0.2mm以上以保证可靠性。经验值普通信号过孔常用“外径0.6mm / 孔径0.3mm”或“24mil/12mil”。电源过孔需要更大以减小阻抗和承载电流如“外径1.0mm / 孔径0.6mm”。Differential Pairs Routing差分对布线规则这是高速设计的核心。你需要为定义的差分对如USB_DP/USB_DN设置规则包括Min/Max Width差分线的线宽。Min/Max Gap差分线对内部两条线之间的间距。这个间距是保持差分阻抗恒定的关键参数之一。Max Uncoupled Length允许差分对两条线不平行耦合的最大长度。这个值要设小以保证差分信号质量。2.3 平面与制造规则为生产保驾护航这类规则关注的是大规模生产时的可行性和一致性。Polygon Connect Style覆铜连接方式规则决定覆铜地平面或电源平面如何连接到相同网络的焊盘上。Relief Connect热焊盘连接通过几条细线通常2-4条连接。优点是焊接时散热慢容易上锡缺点是连接阻抗稍高。适用于需要手工焊接的插件元件焊盘。Direct Connect直接连接覆铜直接全覆盖焊盘。优点是连接阻抗极低缺点是焊接时散热极快可能导致虚焊。适用于表贴元件尤其是需要良好接地或散热的器件。No Connect不连接顾名思义。通常不用。建议为Through Hole元件封装类设置Relief Connect为SMD元件封装类设置Direct Connect。Manufacturing制造相关规则Minimum Solder Mask Sliver阻焊层最小桥接阻焊油墨在两个焊盘之间能保持不断裂的最小宽度。小于此值阻焊可能会破裂导致焊接时桥连。一般设为0.1mm。Silk to Solder Mask Clearance丝印到阻焊间距防止丝印印到焊盘上。至少0.1mm。Hole Size孔尺寸规则可以额外约束钻孔的最小、最大尺寸作为对过孔规则的补充或对非电钻孔如安装孔的约束。Layer Pairs板层对规则定义哪些层是“配对层”用于盲埋孔设计。对于普通通孔板通常不需要修改。High Speed高速规则对于有高速信号如时钟频率超过50MHz的设计这部分规则至关重要。Matched Net Lengths等长规则要求一组网络如DDR的数据线走线长度在设定的容差内如±10mil以确保信号同步到达。Length长度规则约束单根网络的最小、最大长度。设置等长是我个人的一个实操心得不要一开始就蛇形绕线。先以最简洁的方式连接所有需要等长的网络然后利用AD的“交互式长度调整”工具针对最长的那根线作为目标去调整其他较短的线。绕线时优先在空间充裕、远离敏感区域的地方进行并保持蛇形线的间距Gap至少为3倍线宽以减少串扰。3. DRC检查的执行与报告解读从“错误列表”到“问题诊断”规则设置好后就可以运行DRC了。但把检查报告跑出来只是第一步如何高效、准确地解读报告并解决问题才是真正的考验。3.1 执行检查范围与策略在Tools - Design Rule Check...中打开DRC对话框。这里有几个关键选择检查范围Online在线检查在你布线过程中实时检查。对于Clearance这类规则非常有用能即时防止你画出违反规则的线。但它会消耗一些系统资源在复杂板卡上可能会让软件变卡。建议在布局和布线初期开启在线间距检查后期可关闭以提高流畅度。Batch批量检查一次性检查所有规则。这是我们最终发布前必须执行的完整检查。规则类别选择在Rules To Check标签页你可以勾选或取消勾选具体的规则类别。一个高效的工作流是分阶段检查布局完成后先运行Electrical电气规则和Placement放置规则如果设置了元件间距确保没有短路、未连接等致命错误元件摆放合理。布线完成后运行所有规则进行终极校验。此时你可以暂时关闭一些与当前阶段无关的规则如Fanout Control让报告更简洁。报告选项我强烈建议勾选Create Report File创建报告文件。这个文本文件会详细列出每一个违规的具体位置、涉及的对象和违反的规则值比仅在看板图上找错误标记要清晰得多。3.2 解读报告与定位错误运行批量DRC后任何违规都会在PCB图纸上以高亮绿色默认显示并在Messages面板中列出。利用“违规详情”面板双击Messages面板中的一条错误或者点击PCB上的绿色高亮对象AD会弹出Violation Details面板。这个面板是你的“诊断中心”它会告诉你违反了什么规则Rule Violated。涉及哪些对象Object 1 Object 2并可以直接在PCB上闪烁显示它们。当前的测量值是多少规则要求又是多少。例如“Clearance Constraint: 0.1mm between Pad on TopLayer and Track on TopLayer (Actual: 0.08mm)”。这非常直观。常见错误类型与排查思路Clearance Constraint安全间距违规这是最常见的错误。可能原因布线太挤焊盘出线方向不当覆铜后铜皮与相邻导线/焊盘间距不足。排查时先使用快捷键ShiftS切换到单层模式逐层检查能有效排除其他层图形的视觉干扰。Width Constraint宽度约束违规通常是电源线宽不足或者某个网络的线宽规则设置错误。检查该网络的规则优先级。Un-Routed Net Constraint未布线网络检查是否真的忘了连线或者连线在某个过孔处没有真正连接上看似连上实则网络未通。使用CtrlH高亮显示该网络顺着飞线仔细查看。Polygon Connect Style覆铜连接错误某个焊盘你希望是直接连接但实际是热焊盘连接或者反之。检查该焊盘所属元件的封装是否被正确的规则覆盖。关于“假错误”与规则优化丝印重叠元件序号Designator或轮廓Outline压在焊盘上这在实际生产中确实会造成问题必须修改。但有时丝印之间的小重叠可以忽略你可以通过调整Silk To Silk Clearance规则的值来放宽限制或者手动移动丝印位置。测试点上的阻焊如果你在焊盘上添加了测试点作为测试点用途的过孔或焊盘DRC可能会报告阻焊开窗错误。这时你需要评估这个测试点是否需要上锡如果需要这个“错误”可以接受如果不需要则应调整测试点的属性或规则。个人经验永远不要为了“消除DRC错误”而去随意放宽核心规则如安全间距、线宽。正确的做法是1) 定位到具体错误对象2) 分析这个错误是否真的会影响电气性能或可制造性3) 如果确实不影响考虑是否为这个特定对象创建一条更宽松的、但范围精确的例外规则而不是修改全局规则。例如一个大的安装孔周围不需要和其他地网络保持严格的间距你可以为这个安装孔单独创建一个Clearance规则设置较大的间距并赋予高优先级。4. 进阶利用Query系统实现精准规则控制当设计变得复杂时全局统一的规则往往不够用。Altium Designer强大的Query系统允许你像写数据库查询语句一样精确地定位到特定对象并对其应用规则。这是将DRC从“粗放检查”升级到“精细化管理”的关键。4.1 Query基础语法与应用在创建新规则时Where The Object Matches下拉框选择Custom Query即可手动输入查询语句。按网络类Net Class这是最常用的方式。假设你创建了一个名为Power的网络类包含了VCC_5VVCC_3V3等网络。那么查询语句就是InNetClass(Power)这条规则就会应用于所有属于Power网络类的走线、焊盘等。按网络名Net针对单个特定网络。例如为时钟线CLK_50M设置更严格的间距InNet(CLK_50M)按元件标识Component Designator针对特定元件。例如为U1这个BGA芯片下的所有过孔设置较小的尺寸(HasFootprint(U1)) And (IsVia)这条语句的意思是查找所有属于元件U1的过孔。按层Layer例如规定顶层TopLayer的走线最小宽度为0.15mm内层MidLayer1的走线最小宽度为0.1mm因为内层蚀刻因素可能不同OnLayer(TopLayer) //顶层规则 OnLayer(MidLayer1) //内层规则4.2 组合查询应对复杂场景通过And与、Or或、Not非进行组合可以实现非常精细的控制。场景一为板子边缘的走线设置更大的安全间距以防止在板边加工时受损。(OnLayer(TopLayer) Or OnLayer(BottomLayer)) And (ObjectDistanceFromBoard(Board Outline) 1mm)解释查找所有在顶层或底层且距离板框小于1mm的对象。然后为这些对象创建一个更大的Clearance规则。场景二允许某个特定区域如散热器下方的覆铜与元件引脚间距更小。WithinPolygon(Heatsink_Area) And IsPad解释查找所有位于名为Heatsink_Area的多边形区域内的焊盘。然后为这些焊盘创建一个特殊的、间距更小的Clearance规则。这里Heatsink_Area需要你事先在Mechanical Layer上画好一个多边形区域并为其命名。个人踩坑心得使用Query时一定要注意规则的优先级Priority。AD按优先级从高到低应用规则。如果你为InNet(VCC_5V)设置了一个线宽规则优先级1又为InNetClass(Power)设置了一个线宽规则优先级2而VCC_5V正好在Power网络类里那么VCC_5V将遵循优先级1的规则。如果顺序反了你的特殊规则就可能被覆盖。每次添加重要例外规则后最好去PCB Rules and Constraints Editor对话框的底部查看一下规则列表的优先级顺序。5. 生产输出前的最终校验清单在解决完所有DRC错误准备输出生产文件Gerber、钻孔文件等之前我强烈建议你按照以下清单进行一次人工工具的最终复核。这能帮你抓住那些DRC可能检查不到但会导致生产失败的“幽灵”问题。层叠结构Layer Stack确认在Design - Layer Stack Manager中逐层核对介质厚度、铜厚是否与PCB厂家沟通的一致所有用到的信号层、平面层是否都已正确添加并命名对于阻抗控制板是否已将计算好的线宽、间距参数更新到对应的布线规则中孔属性与钻孔表Drill Table核对执行Tools - Hole Size Editor检查所有孔的尺寸。特别注意非圆形孔槽孔是否正确标识。在PCB视图按L打开视图配置确保Drill Drawing层和Drill Guide层已开启。查看生成的钻孔图表确认孔的数量、大小、位置是否合理有无异常的巨大或微小钻孔。丝印Silkscreen清晰度检查切换到所有丝印层Top Overlay Bottom Overlay缩放至1:1视图或打印预览检查所有元件的位号Designator是否清晰可见且没有隐藏在元件本体下丝印文字、图形是否有重叠、断裂极性标识如二极管、电解电容的正负、引脚1标识是否明确装配图Assembly Drawing与BOM对应生成一份装配图通常从PCB导出PDF与你的物料清单BOM进行交叉核对。确保图上每个元件的位置、位号都与BOM一一对应。这是防止贴片厂贴错料的关键一步。Gerber文件生成与第三方查看器验证使用File - Fabrication Outputs - Gerber Files生成文件后不要直接发走使用免费的第三方Gerber查看软件如GC-Prevue、CAM350的简易版打开你生成的Gerber文件。以板厂的视角检查各层图形是否正确对齐检查钻孔层与线路层的对位阻焊层Solder Mask是否正确地开窗在了所有需要焊接的焊盘上是否有任何多余的、不应该存在的碎铜或线段这是一个极其重要的习惯很多由软件设置或导出步骤导致的问题只有在第三方查看器中才会暴露出来。设计版本与归档在最终文件打包前在PCB图纸的某个机械层如Mechanical 1上用文字明确标注版本号、日期、项目名称。将整个项目文件夹连同生成的Gerber文件、钻孔文件、BOM、装配图、原理图PDF等打包成一个以版本号命名的压缩包进行归档。清晰的版本管理能避免未来无尽的混乱。经过这样一轮从规则设定、在线约束、批量检查、进阶控制到最终复核的完整流程DRC就不再是一个令人头疼的“找茬工具”而是一个强大的“设计伙伴”。它迫使你在设计过程中就不断思考可制造性、可靠性将问题消灭在图纸阶段。最终当你拿到那块完全按照你意图生产出来、一次性测试成功的电路板时你会感谢那个曾经认真对待每一个DRC错误的自己。这份严谨正是专业工程师与业余爱好者之间一道看不见却至关重要的分水岭。
返回列表