Altium Designer 22 DRC规则检查解析(转载)

2024-03-27 20:04

本文主要是介绍Altium Designer 22 DRC规则检查解析(转载),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

原文链接:Altium Designer 22 DRC规则检查解析 - 哔哩哔哩 (bilibili.com)

PCB Designer Rules 即用来约束PCB走线或布局的规则条例。通常有如,PCB板厂所提供给你的最小线宽线距参数、最小字符宽高度、最小VIA&PAD内外径参数等,需要设计遵守的,否则会导致产品生产困难(乃至无法生产)或不良率的增加;约束条款即称为PCB Designer Rules;对于一个设计完的PCB,我们常常需要进行DRC规则检查,确保板子的电器连接及制作工艺在设定规则的范围内,确保电路板不出现不必要错误。在使用Altium Designer 22设计完成后的PCB项目文件,根据设计前设置好的规则会进行DRC规则检查,然后软件会出现提示一些警告、错误等问题,针对可能出现的一些常规的规则问题我们做以下规则的解析。

1. Clearance Constraint (Gap=10mil) (All),(All)

间隙约束,也就是约束PCB中的电气间距,比如阻容各类元件的焊盘间距小于规则中的设定值,即报警。

规则设置如下图:


如上图的表中,可以分别设置走线(Track)、贴片焊盘(SMD Pad)、通孔焊盘(TH Pad)、过孔(Via)、覆铜(Copper)、丝印字符(Text)、孔(Hole),这些两两之间的间距都可以设置约束值。

2. Short-Circuit Constraint (Allowed=No) (All),(All)

短路约束,即禁止不同网络的电气相接触。

设置如下图示:


3. Un-Routed Net Constraint ( (All) )

未布线的网络,即没有连线的网络或者断开的某条线。

设置图示:


4. Modified Polygon (Allow modified: No), (Allow shelved: No)

多边形覆铜调整未更新。这项检查是放置在电源分割、模拟地数字地分割时候,调整了分割范围、边框外形而未更新覆铜。

这个错误还是比较明显能够肉眼察觉,出现此错误时,执行菜单Tools->Polygon Pours->Repour Selected,对已选择的错误覆铜执行重新覆铜,或者选择Repour All对整个PCB的覆铜区域全部重新覆铜:


5. Width Constraint (Min=6mil) (Max=100mil) (Preferred=6mil) (All)

布线线宽约束。

规则设置如下:


6. Hole Size Constraint (Min=11.811mil) (Max=196.85mil) (All)

 

孔大小约束。这个参数主要是影响到PCB制板厂对钻孔工艺,对于设置太小或者太大的孔,制板厂未必会有这么细的钻头或者这么精准的工艺,同时也未必有太大的钻头。

规则设置如下图:


7. Hole To Hole Clearance (Gap=10mil) (All),(All)

孔到孔之间的间距约束规则。

有时候元器件的封装有固定孔,而与另一层的元件的固定孔距离太近,从而报错。

如下图中,TF卡座的定位孔与背面的贴片按键固定孔距离太近,出现违反规则的警告:


8. Minimum Solder Mask Sliver (Gap=10mil) (All),(All)

最小阻焊间隙。

一般的在焊盘周围都会包裹着阻焊层,组焊层存在的目的是生成工艺中,阻焊油、绿油的开窗范围。如下图中的D1两个焊盘,周围的紫色外框就是阻焊层,而与下边一个焊盘的组焊层距离小于9mil,而报警。


规则设置如下图:


9. Silk To Solder Mask (Clearance=5mil) (IsPad),(All)

丝印到阻焊距离。

如下图,丝印时一条在Top overlay的导线(制板后,该丝印是在PCB板表面的,一般白色),与阻焊层距离太近。


设置如下图、默认为5mil


10. Silk to Silk (Clearance=5mil) (All),(All)

丝印与丝印间距。

设置如下:


11. Net Antennae (Tolerance=0mil) (All)

网络天线。

这个规则的是指某些网络如果走线走到一半,并且走线长度超过设定值,而没有另一头接应,就形成天线效应。

如下图中的R6电阻的Pin2管脚,多出一根线而未走完或者本该不再走线,这样就致使天线效应的警报。


天线效应规则约束,可以设定走线长度阈值,并且超过此阈值则认为存在天线效应风险而产生警告:


总结

在PCB Designer工作中,只有对Rules正确的设置,才能保证PCB Designer的可制造性(即DFM)、Designer Rules Check的准确性;当然也有很多时候是因为Designer Rules设置不正确导致EQ修正困难或无法修正被要求重新Designer,特别是在impedance或differential控制的时候。整体而言,即所有的规则检查都是基于设计规则的,而非规则检查可以通过即认定无问题。正确的规则设置是对设计文件的负责,另外结构的适配也可通过规则来进行限制。如上所述就是PCB设计的常规设计规则检查;设计规则检查(DRC)是一项强大的自动功能,它可以检查设计逻辑和物理的完整性。检查是针对任何或所有启用的设计规则,并且可以在设计时在线检查,并以批量的方式检查,这样结果会列在消息面板中,并生成一个报告文件。 作者:亿道电子 https://www.bilibili.com/read/cv18047318/ 出处:bilibili

这篇关于Altium Designer 22 DRC规则检查解析(转载)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/853238

相关文章

Java中Redisson 的原理深度解析

《Java中Redisson的原理深度解析》Redisson是一个高性能的Redis客户端,它通过将Redis数据结构映射为Java对象和分布式对象,实现了在Java应用中方便地使用Redis,本文... 目录前言一、核心设计理念二、核心架构与通信层1. 基于 Netty 的异步非阻塞通信2. 编解码器三、

Java HashMap的底层实现原理深度解析

《JavaHashMap的底层实现原理深度解析》HashMap基于数组+链表+红黑树结构,通过哈希算法和扩容机制优化性能,负载因子与树化阈值平衡效率,是Java开发必备的高效数据结构,本文给大家介绍... 目录一、概述:HashMap的宏观结构二、核心数据结构解析1. 数组(桶数组)2. 链表节点(Node

Java 虚拟线程的创建与使用深度解析

《Java虚拟线程的创建与使用深度解析》虚拟线程是Java19中以预览特性形式引入,Java21起正式发布的轻量级线程,本文给大家介绍Java虚拟线程的创建与使用,感兴趣的朋友一起看看吧... 目录一、虚拟线程简介1.1 什么是虚拟线程?1.2 为什么需要虚拟线程?二、虚拟线程与平台线程对比代码对比示例:三

一文解析C#中的StringSplitOptions枚举

《一文解析C#中的StringSplitOptions枚举》StringSplitOptions是C#中的一个枚举类型,用于控制string.Split()方法分割字符串时的行为,核心作用是处理分割后... 目录C#的StringSplitOptions枚举1.StringSplitOptions枚举的常用

Python函数作用域与闭包举例深度解析

《Python函数作用域与闭包举例深度解析》Python函数的作用域规则和闭包是编程中的关键概念,它们决定了变量的访问和生命周期,:本文主要介绍Python函数作用域与闭包的相关资料,文中通过代码... 目录1. 基础作用域访问示例1:访问全局变量示例2:访问外层函数变量2. 闭包基础示例3:简单闭包示例4

Python版本与package版本兼容性检查方法总结

《Python版本与package版本兼容性检查方法总结》:本文主要介绍Python版本与package版本兼容性检查方法的相关资料,文中提供四种检查方法,分别是pip查询、conda管理、PyP... 目录引言为什么会出现兼容性问题方法一:用 pip 官方命令查询可用版本方法二:conda 管理包环境方法

MyBatis延迟加载与多级缓存全解析

《MyBatis延迟加载与多级缓存全解析》文章介绍MyBatis的延迟加载与多级缓存机制,延迟加载按需加载关联数据提升性能,一级缓存会话级默认开启,二级缓存工厂级支持跨会话共享,增删改操作会清空对应缓... 目录MyBATis延迟加载策略一对多示例一对多示例MyBatis框架的缓存一级缓存二级缓存MyBat

前端缓存策略的自解方案全解析

《前端缓存策略的自解方案全解析》缓存从来都是前端的一个痛点,很多前端搞不清楚缓存到底是何物,:本文主要介绍前端缓存的自解方案,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、为什么“清缓存”成了技术圈的梗二、先给缓存“把个脉”:浏览器到底缓存了谁?三、设计思路:把“发版”做成“自愈”四、代码

Java集合之Iterator迭代器实现代码解析

《Java集合之Iterator迭代器实现代码解析》迭代器Iterator是Java集合框架中的一个核心接口,位于java.util包下,它定义了一种标准的元素访问机制,为各种集合类型提供了一种统一的... 目录一、什么是Iterator二、Iterator的核心方法三、基本使用示例四、Iterator的工

Python之变量命名规则详解

《Python之变量命名规则详解》Python变量命名需遵守语法规范(字母开头、不使用关键字),遵循三要(自解释、明确功能)和三不要(避免缩写、语法错误、滥用下划线)原则,确保代码易读易维护... 目录1. 硬性规则2. “三要” 原则2.1. 要体现变量的 “实际作用”,拒绝 “无意义命名”2.2. 要让