你应该知道的关于PCB布线的31条建议
1、走线长度应包含过孔和封装焊盘的长度。
2、布线角度优选135°角出线方式,任意角度出线会导致制版出现工艺问题。

图1 PCB布线的角度
3、布线避免直角或者锐角布线,导致转角位置线宽变化,阻抗变化,造成信号反射,如图2所示。

图2 走线的锐角与直角布线
4、布线应从焊盘的长方向出线,避免从宽方向或者焊盘四角出线,布线的拐角离焊盘位置6mil以上为宜,如图3所示

图3 PCB沿焊盘长边出线
5、如图4所示,相邻焊盘是同网络的,不能直接相连,需要先连接出焊盘之后再进行连接,直接连接容易在手工焊接时连锡。

图4 相同网络焊盘走线链接方式
6、对于小CHIP器件,要注意布线的对称性,保持2端布线线宽一致,如一个管脚铺铜,另一管脚也尽量铺铜处理,减少元件贴片后器件漂移旋转,如图5所示。

图5 CHIP类焊盘的正确出线
7、对于有包地要求的信号,须保证包地的完整性,尽量保证在包地线上进行打GND孔处理,2个GND孔间距不能过远,尽量保持在50-150mil左右,如图6所示。

图6 PCB的包地走线
8、走线应有完整且连续的参考层平面,避免高速信号跨区,建议高速信号距离参考平面的边沿至少有 40mil,如图7所示。

图7 走线的夸分割
9、由于表贴器件焊盘会导致阻抗降低,为减小阻抗突变的影响,建议在表贴焊盘的正下方按焊盘大小挖去一层参考层。常用的表贴器件有:电容、ESD、共模抑制电感、连接器等等,如图8所示。
10、如图9所示,信号线与其回路构成的环路面积要尽可能小。环路面积小,对外辐射小,接收外界的干扰也小。

图8 标贴器件焊盘的挖空处理

图9 布线的环路面积的缩小
11、如图10,布线不允许出现STUB,布线尽量减小残桩长度,建议残桩长度为零。并且避免过孔残桩效应,尤其是残桩长度超过 12mil 时,建议通过仿真来评估过孔残桩对信号完整性的影响,如图11所示。

图10 Stub走线及布线残桩

图11 过孔的残桩
12、尽量避免走线在不同层形成自环。在多层板设计中容易出现此类问题,自环将引起辐射干扰。如图12所示。

图12 PCB布线的自环
13、建议不要在高速信号上放置测试点。
14、对于会产生干扰或者敏感的信号(如射频信号),须规划屏蔽罩,屏蔽罩宽度常规为40mil(一般保持30mil以上,可与客户生产厂家确认),屏蔽罩上尽量多打GND过孔,增加其焊接效果。如图13所示。

图13 敏感模块的屏蔽罩处理
15、同一网络的布线宽度应保持一致,线宽的变化会造成线路特性阻抗的不均匀,当传输的速度较高时会产生反射。在某些条件下,如接插件引出线,BGA封装的引出线类似的结构时,因间距过小可能无法避免线宽的变化,应该尽量减少中间不一致部分的有效长度,如图14所示。

图14 走线线宽的突变
16、IC管脚出线的线宽要小于或者等于焊盘宽度,出线宽度不能比焊盘宽度大,部分信号因载流等要求,线宽较宽的,布线可先保持与管脚宽度一致,布线引出焊盘后6-10mil左右再把线宽加粗处理,如图15所示。

图15 走线不宜超出焊盘宽度
17、布线必须连接到焊盘、过孔中心。
18、有高压信号,须保证其爬电间距,具体参数如16所示。

图16 爬电间距与电气间隙表
19、设计中包含多片DDR或者其他存储器芯片的,须向客户确认布线拓扑结构,确认是否有参考文档。
20、金手指区域需要开整窗处理,多层板设计时,金手指下方所有层的铜应作挖空处理,挖空铜皮的距离板框一般3mm以上,如图17所示。

图17 金手指的开窗与挖空
21、布线应提前规划好瓶颈位置的通道情况,合理规划好通道最窄处的布线能力。

图18 PCB布线通道
22、耦合电容尽量靠近连接器放置。
23、串接电阻应靠近发送端器件放置,端接电阻靠近末端放置,如eMMC时钟信号上的串接电阻,推荐放在靠近 CPU 侧(400mil以内)。
24、建议在IC(如eMMC 颗粒、FLASH颗粒等)的地焊盘各打1个地通孔,有效缩短回流路径, 如图19所示。

图19 GND焊盘的过孔打孔
25、建议ESD器件的每个地焊盘都打一个地通孔,且通孔要尽量靠近焊盘,如图20所示。

图20 ESD器件GND焊盘的打孔
26、避免在时钟器件(如晶体、晶振、时钟发生器、时钟分发器)、开关电源、磁类器件、插件过孔等周边布线。
27、走线换层,且换层前后参考层为地平面时,需要在信号过孔旁边放一个伴随过孔,以保证回流路径的连续性。对于差分信号,信号过孔、回流过孔均应对称放置,如图21(a)所示;对于单端信号,建议在信号过孔旁边放置一个回流过孔以降低过孔之间的串扰,如图21(b)所示。

图21(a)差分换层过孔示意图

图21(b)单端信号换层过孔示意图
28、连接器的地铜皮距离信号 PAD至少要大等于3倍线宽,如图22所示。

图22 GND铜皮与连接器PAD的间距要求
29、在BGA区域平面断开处用走线连接,或者进行削盘处理,以免破坏平面完整性,如图23所示。

图23 BGA区域平面铜皮的处理
30、PCB布线需要包地处理时,推荐包地方式如下,如图24所示,L 为包地线地过孔间隔; D 为包地线距离信号线之间的间距,建议≥4*W。
31、有些重要的高速单端信号,比如时钟信号、复位信号等(如 emmc_clk、emmc_datastrobe、RGMII_CLK 等等)建议包地。包地线每隔 500mil 至少要打一个地孔,如图25所示。

图24 PCB的包地布线

图25 重要信号线的包地处理
声明:本文凡亿教育原创文章,转载请注明来源!
相关文章:
你应该知道的关于PCB布线的31条建议
1、走线长度应包含过孔和封装焊盘的长度。 2、布线角度优选135角出线方式,任意角度出线会导致制版出现工艺问题。 图1 PCB布线的角度 3、布线避免直角或者锐角布线,导致转角位置线宽变化,阻抗变化,造成信号反射,如图2…...
matlab中dir的各种使用方法(包括递归遍历子文件夹)
遍历文件夹1下的所有文件夹和文件(不会递归遍历): listdir(’ D:\文件夹1’);遍历文件夹1及其所有子文件夹下的所有文件夹和文件(会递归遍历): listdir(’ D:\文件夹1\** );遍历文件夹1下的所有csv文件&…...
软件测试/测试开发丨Selenium环境安装与使用
Selenium 官方网站: www.selenium.dev/ 简介: 用于web浏览器测试的工具;支持的浏览器包括IE,Firefox,Safari,Chrome,Edge等;使用简单,可使用Java,Python等…...
WPF实战学习笔记15-使用Memo类的GetAll接口
使用Memo类的GetAll接口 总体参照上节即可 创建MemoService接口 新建文件Mytodo/Service/IMemoService.cs using MyToDo.Share.Models; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace M…...
算法与数据结构-二分查找
文章目录 什么是二分查找二分查找的时间复杂度二分查找的代码实现简单实现:不重复有序数组查找目标值变体实现:查找第一个值等于给定值的元素变体实现:查找最后一个值等于给定值的元素变体实现:查找最后一个小于给定值的元素变体实…...
【软件测试】什么是selenium
1.seleniumJava环境搭建 前置条件: Java最低版本要求为8,浏览器使用chrome浏览器 1.1下载chrome浏览器 https://www.google.cn/chrome/ 1.2查看浏览器版本 点击关于Google chrome. 记住版本的前三个数. 1.3下载浏览器驱动 http://chromedriver.chromium.org/downloads 下载…...
redis线程模型
文章目录 一、redis单线程模型1.1 为什么redis命令处理是单线程,而不采用多线程1.2 单线程的局限及redis的优化方式 二、redis单线程为什么这么快2.1 采用的机制2.2 优化的措施 三、redis的IO多线程模型3.1 redis 为什么引入IO多线程模型3.2 配置io-threads-do-read…...
【idea工具】idea工具,build的时候提示:程序包 com.xxx.xx不存在的错误
idea工具,build的时候提示:程序包 com.xxx.xx不存在的错误,如下图,折腾了好一会, 做了如下操作还是不行,idea工具编译的时候,还是提示 程序包不存在。 a. idea中,重新导入项目,也还…...
线性代数——特征值和特征向量
系列文章目录 线性代数——行列式线性代数——矩阵线性代数——向量线性代数——线性方程组线性代数——特征值和特征向量线性代数——二次型 文章目录 系列文章目录版权声明补充知识求和公式的性质常用希腊字符读音 特征值和特征向量相似矩阵相似对角化实对称矩阵 版权声明 …...
运筹系列83:使用分枝定界求解tsp问题
1. 辅助函数 Node算子用来存储搜索树的状态。其中level等于path的长度,path是当前节点已经访问过的vertex清单,bound则是当前的lb。 这里的bound函数是一种启发式方法,等于当前路径的总长度,再加上往后走两步的最小值。 struct …...
linux 指令 第3期
cat cat 指令: 首先我们知道一个文件内容属性 我们对文件操作就有两个方面:对文件内容和属性的操作 扩展:echo 指令 直接打印echo后面跟的字符串 看: 这其实是把它打印到了显示器上,我们也可以改变一下它的打印位置…...
测试用例实战
测试用例实战 三角形判断 三角形测试用例设计 测试用例编写 先做正向数据,再做反向数据。 只要有一条边长为0,那就是不符合要求,不需要再进行判断,重复。 四边形 四边形测试用例...
Unity XML1——XML基本语法
一、XML 概述 全称:可拓展标记语言(EXtensible Markup Language) XML 是国际通用的,它是被设计来用于传输和存储数据的一种文本特殊格式,文件后缀一般为 .xml 我们在游戏中可以把游戏数据按照 XML 的格式标…...
了解Unity编辑器之组件篇Playables和Rendering(十)
Playables 一、Playable Director:是一种用于控制和管理剧情、动画和音频的工具。它作为一个中央控制器,可以管理播放动画剧情、视频剧情和音频剧情,以及它们之间的时间、顺序和交互。 Playable Director组件具有以下作用: 剧情控…...
python的包管理器pip安装经常失败的解决办法:修改pip镜像源
pip 常用的国内镜像源: https://pypi.tuna.tsinghua.edu.cn/simple/ // 清华 http://mirrors.aliyun.com/pypi/simple/ // 阿里云 https://pypi.mirrors.ustc.edu.cn/simple/ // 中国科技大学 http://pypi.hustunique.com/ // 华中理…...
忘记安卓图案/密码锁如何解锁?
如何解锁Android手机图案锁?如何删除忘记的密码?Android 手机锁定后如何重置?这是许多智能手机用户在网上提出的几个问题。为了回答这些问题,我们想出了一些简单有效的方法来解锁任何设备而不丢失数据。 忘记手机密码可能会令人恐…...
Bash编程
目录: bash编程语法bash脚本编写 1.bash编程语法 Bash 编程基础 变量引号数组控制语句函数 Bash 变量 语法: Variable_namevalue Bash 变量定义的规则 变量名区分大小写,a和A为两个不同的变量。变量名可以使用大小写字母混编的形式进行…...
vue指令-v-model修饰符
vue指令-v-model修饰符 1、目标2、语法 1、目标 让v-modelv-mode拥有更强大的功能 2、语法 v-model.修饰符“Vue数据变量” .number 以parseFloat转成数字类型 .trime 去除首位空白字符 .lazy 在change时触发而非input时示例1 <template><div id"app"&g…...
【论文精读CVPR_2023】3D-Aware Face Swapping
【论文精读CVPR_2023】3D-Aware Face Swapping 前言Abstract1. Introduction2. Related WorkFace Swapping.3D-Aware Generative Models.GAN Inversion.3. Method3.1. Overview3.2. Inferring 3D Prior from 2D Images3.3. Face Swapping via Latent Code Manipulation3.4. Joi…...
flutter开发实战-自定义相机camera功能
flutter开发实战-自定义相机camera功能。 Flutter 本质上只是一个 UI 框架,运行在宿主平台之上,Flutter 本身是无法提供一些系统能力,比如使用蓝牙、相机、GPS等,因此要在 Flutter 中调用这些能力就必须和原生平台进行通信。 实现…...
网络编程(Modbus进阶)
思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...
【kafka】Golang实现分布式Masscan任务调度系统
要求: 输出两个程序,一个命令行程序(命令行参数用flag)和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽,然后将消息推送到kafka里面。 服务端程序: 从kafka消费者接收…...
利用ngx_stream_return_module构建简易 TCP/UDP 响应网关
一、模块概述 ngx_stream_return_module 提供了一个极简的指令: return <value>;在收到客户端连接后,立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量(如 $time_iso8601、$remote_addr 等)&a…...
简易版抽奖活动的设计技术方案
1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...
vue3 定时器-定义全局方法 vue+ts
1.创建ts文件 路径:src/utils/timer.ts 完整代码: import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...
根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:
根据万维钢精英日课6的内容,使用AI(2025)可以参考以下方法: 四个洞见 模型已经比人聪明:以ChatGPT o3为代表的AI非常强大,能运用高级理论解释道理、引用最新学术论文,生成对顶尖科学家都有用的…...
在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?
uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件,用于在原生应用中加载 HTML 页面: 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...
处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的
修改bug思路: 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑:async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...
系统掌握PyTorch:图解张量、Autograd、DataLoader、nn.Module与实战模型
本文较长,建议点赞收藏,以免遗失。更多AI大模型应用开发学习视频及资料,尽在聚客AI学院。 本文通过代码驱动的方式,系统讲解PyTorch核心概念和实战技巧,涵盖张量操作、自动微分、数据加载、模型构建和训练全流程&#…...
学习一下用鸿蒙DevEco Studio HarmonyOS5实现百度地图
在鸿蒙(HarmonyOS5)中集成百度地图,可以通过以下步骤和技术方案实现。结合鸿蒙的分布式能力和百度地图的API,可以构建跨设备的定位、导航和地图展示功能。 1. 鸿蒙环境准备 开发工具:下载安装 De…...
