高速电路设计与仿真之PCB篇(一)

2023-11-19

在电子系统中,信号线的传输需要一定的时间,已经证实:电信号在分布良好的导线中传输速度为3*10^8m/s。假设布线长度为5米,则信号的传输需要17ns ,这种延时在低速系统中可以被忽略,但在高速电路中就不能忽略了。因此在设计高速PCB时,信号延时的问题必须考虑,电路分析需要引入EMI/EMC分析。

以往,Layout工程师总喜欢“凭感觉”、“靠经验”来进行设计,但是在高速电路中,可能会导致以下结果:
1、不可预期的系统行为;
2、模拟系统传输路径上产生不可接受的噪声;
3、系统稳定性、可靠性因为温度的变化产生较大误差;
4、同一PCB上连接的元器件上产生虚假的位错误;
5、大量的电源、地噪声;
6、过冲、下冲及短时信号干扰等。

那到底什么是高速电路呢?
通常数字逻辑电路的频率达到或者超过50MHZ,且工作在这个频率之上的电路占整个系统的1/3以上,就可以称之为高速电路。

如果线传输延时大于数字信号驱动端上升时间的1/2,则可以认为此类信号是高速信号并产生传输线效应。信号的传输发生在信号状态改变的瞬间,如上升或者下降时间。如果传输时间小于上升或者下降时间的1/2,那么信号在改变状态之前,来自接收端的反射信号将到达驱动端。否则,反射信号将在信号改变状态后到达驱动端,如果反射信号很强,叠加的波形就有可能会改变逻辑状态。

通常通过器件手册可以查出信号上升时间的典型值,在PCB中,实际布线长度均定了信号的传输时间。若果过孔多、引脚多或者网络约束多,都降导致延时增大。一般情况下,高速逻辑器件的信号上升时间约为0.2ns。
以Tr表示信号上升时间,以Tpd表示传输延时,若:
Tr>4Tpd,信号落在安全区域;
2Tpd<Tr≤4Tpd,信号落在不确定区域;
Tr≤2Tpd,信号落在问题区域;

当信号落在不确定区域或者问题区域,则应该使用高速布线进行PCB设计。

针对高速PCB设计,一种“自上而下”的设计方法,这是一种建立在实时仿真基础上优化的高效设计流程,如下图所示:
在这里插入图片描述
PCB上传输信号的路径一般有两种,一种是普通意义上的布线,认为在任何时段布线上的任意点上额电势均相等;另一种是传输线,需要考虑信号传输时的影响,并假设信号传输时,沿传输线上的每一点都有不同的电势。
在这里插入图片描述
什么时候将信号路径认为是传输线呢?
一般信号传输路径大于信号波长的1%或者接收端元器件是边缘敏感的,或者系统中没有过冲、下冲容限,此时认为是传输线。在高速PCB中,大部分传输信号的路径都是传输线。

一般可用串联和并联的电容、电阻、电感等效PCB上的布线。通常串联电阻的典型值为0.25-0.55Ω。由于绝缘层的存在,并联电阻阻值一般很高。将寄生电阻、电容、电感加到实际PCB连线中后,连线上的最终阻抗称为特征阻抗Zo。而当阻抗不匹配的时候,则会引起“振铃”现象。

电信号在介质中传播的速度取决于传播介质,而由于布线引起的传播延时与传播介质的介电常数的平方根成正比,如下表:
在这里插入图片描述
PCB布线的物理特性对其阻抗影响很大:
布线材料;
布线宽度;
布线厚度;
与其他布线、平面的间距;
周围材料的介电常数(如空气、FR4等)

传输线会对整个电路设计带来以下效应:
1、信号反射;//产生原因:过长的布线、阻抗不匹配、过量电容、电感等
2、延时和时序错误;//信号在逻辑电平的高低门限之间变化时,保持一段时间信号不跳变。产生原因:驱动过载、布线过长
3、多次跨越逻辑电平门限错误;
4、过冲与下冲;//布线过长或者信号变化太快
5、串扰;//异步信号、时钟信号最易产生串扰
6、电磁辐射;//EMI产生的主要原因是电路工作频率太高及布局、布线不合理

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

高速电路设计与仿真之PCB篇(一) 的相关文章

  • Ultra Libraian介绍

    Ultra Libraian介绍 我从Ultra Libraian官网上查找一些信息 在下面统一介绍一下它 方便大家使用 Ultra Libraian简介 Ultra Libraian是一个零件库服务商 提供方便电子工程师和PCB Layo
  • AD PCB布局拖动元器件时出现的红线、绿线(Optimal Placement Vector)

    文章目录 问题 设置 操作 详解 问题 初学AD 看到很多PCB布局拖动元器件时会显示红线 绿线 但在我自己操作界面拖动时没有红 绿线显示 应该是设置的问题 那该怎样隐藏和显示红 绿线呢 于是网上各种找 但找到的都是提出的同样问题或者感性分
  • Altium designer10---PCB添加Logo

    安全之安全 security 博客目录导读 目录 1 生成bmp后缀的图片 画图打开 调整大小 生成bmp 2 生成PCB Logo PCB Logo Creator 图标生成器 Load加载 Convert转换 3 复制到所制作板子的PC
  • Altium Designer20下绘制原理图、原理图库文件

    文章目录 前言 一 新建工程 二 原理图绘制 1 原理图的图纸大小设置 2 原理图的放大与缩小 3 元器件的选择与放置 4 画图及技巧 三 原理图库文件的绘制 总结 前言 本文的主要内容是使用Altium Designer20软件绘制原理图
  • 关于PCB走线及过孔的过流能力

    一 关于PCB走线的过流能力 PCB走线的过流能力都与哪些因素有关 目前考虑有走线线宽 铜箔厚度 走线长度 温升这些因素 下面我们逐个分析及整体分析 1 走线线宽 铜箔厚度以及走线长度对过流能力的影响 通过网上的收集及整理 统计出了下面的表
  • PCB该怎样布局布线,这个小小案例,让你快速了解设计思路!

    在电路设计过程中 应用工程师往往会忽视印刷电路板 PCB 的布局 通常遇到的问题是 电路的原理图是正确的 但并不起作用 或仅以低性能运行 在本文中 我将向您介绍如何正确地布设运算放大器的电路板以确保其功能 性能和稳健性 最近 我与一名实习生
  • 02 电阻容模型的创建

    打开状态栏 画电阻 电容的封装 实操要点 1 SCH Library一定要先选中 出现元件库的列表 2 放置完元件可以按ESC取消 3 Ctrl C V可以复制粘贴用 4 多余的线可以使用Delete删除 5 可以按鼠标右键轻微的拖动屏幕
  • 在Altium Designer设计时候出现的Unknown Pin:Pin XX问题

    之前在布线时候发现一个元器件没有而且一直提示不知道引脚 以为是网络标号没有弄 后来看了一下网络标号也有 然后系统还是提示不知道该引脚 如图所示 然后就按照网上方法把全部网络标号删去了 重新弄也没有用 原理图也检查了一遍 这个元器件的原理图也
  • AD设置覆铜的过孔连接方式

    参考链接 https wenku baidu com view 15666e13f18583d049645956 过孔和焊盘有三种连接状态 noconnect 不连接 reliefconnect 十字形连接 directconnect 直接
  • AD20笔记-PCB设计

    AD20笔记 文章目录 AD20笔记 PCB设计 新建PCB 导入原理图元器件 估计板子的大小 隐藏网络 机械层绘制放置区域 设置原点 设置板子大小 层叠管理器 正片负片 模块化分布 导入DXF文件 单独查看某一层 相连走线选择 精准移位吸
  • 晶振PCB Layout

    晶振PCB Layout 前提摘要 个人说明 限于时间紧迫以及作者水平有限 本文错误 疏漏之处恐不在少数 恳请读者批评指正 意见请留言或者发送邮件至 noahpanzzz gmail com 参考 B站唐老师讲电赛 跟着大厂学画PCB 2
  • Altium Designer 16来自原理图/PCB的各种报错 (持续更新):

    NO1 Net xxx has only one pin 根本原因 在BGA的原理图绘制时 我一般拉出该元件的所有IO的网络 这方便利于我开发其他款板卡 同样也会因为不同板卡的需求不同而造成有些IO并没有使用到 也就是整个原理图中only
  • Altium Designer---PCB覆铜镂空

    AD版本 AD18 转到PCB界面 如下 在PCB页面切换到你想挖空区域所在图层 比如我这里想要挖空Top Layer和Bottom Layer 先切换到Top Layer 右击选择 多边形覆铜挖空 然后在PCB上绘制出想要挖空的区域 如下
  • AD15如何在PCB界面锁定选中元件

    1 进入PCB界面 右下角 PCB PCB Inspector 2 选中你想要锁定的元件 inspector 出现属性 3 将Locked勾选 此时的元件固定在PCB上 无法进行拖动和属性修改
  • HFSS仿真导入到PCB

    一 从HFSS中导出DXF文件 以偶极子天线为例 先导出顶层 选择这个然后保存 然后同理 导出介质层和底层 二 导入PCB文件中 1 导入顶层 导入刚刚导出的顶层文件 然后将比例更改为mm pcb层改为Top Layer 导入之后选中 2
  • PCB是什么?你真的足够了解PCB吗?

    在电子行业有一个关键的部件叫做PCB printed circuit board 印刷电路板 这是一个太基础的部件 导致很多人都很难解释到底什么是PCB 这篇文章将会详细解释PCB的构成 以及在PCB的领域里面常用的一些术语 在接下来的几页
  • 一文带你了解芯片制造的6个关键步骤

    在智能手机等众多数码产品的更新迭代中 科技的改变悄然发生 苹果A15仿生芯片等尖端芯片正使得更多革新技术成为可能 这些芯片是如何被制造出来的 其中又有哪些关键步骤呢 智能手机 个人电脑 游戏机这类现代数码产品的强大性能已无需赘言 而这些强大
  • 使用AD14制作PCB的全部流程以及PCB打样流程介绍

    文章目录 1 各PCB打样公司 1 1 深圳嘉立创 1 2 捷配 1 3 华秋 1 4 猎板 2 嘉立创PCB打样流程 2 1 在线下单 2 2 上传PCB文件 2 3 选择板子数量 2 4 工艺参数设置 3 AD元器件库 4 AD14创建
  • AltiumDesigner99——常用快捷键

    lt gt 1 PCB布线下 PcbDoc p a 在keep out层画线 u a 清除所有布线 l 将顶层元器件放到底层 注意使用系统自带的英文输入法 q 切换坐标轴单位 mm mil 2 原理图库编辑下 SchLib ctrl hom
  • Altium designer 原理图转换为pcb时出现的 unknown pin 和 failed to add class member

    网上有很多方法 大部分都是让直接新建一个pcb文件 这显然太不现实了 上述错误可以看出 unknown pin 的错误是在add pin to net的时候发生的 failed to add class member 的错误实在add to

随机推荐

  • 按键控制数码管0-99显示,十位不跳,用定时器T0中断

    如果直接在主函数中写按键控制数码管0 99显示 不管怎么延时数码管十位上的数都会闪 原因就是单片机的机器周器太快 人的按键速度是ms级的 所以等你人操作完了 单片机早就执行了不知道多少遍 解决方法就是用中断 这里采用定时器T0溢出中断 工作
  • 单目标应用:基于蛇群优化算法(SO)的无人机(UAV)三维路径规划(提供MATLAB代码)

    一 蛇群优化算法SO 蛇群优化算法 Snake Optimizer SO 由Fatma A Hashim和Abdelazim G Hussien于2022年提出 该算法思路新颖 快速高效 模拟了蛇的觅食和繁殖行为 SO具体原理参考如下链接
  • PyQt5 组件之QMenuBar

    QMenuBar简介 在QMainWindow对象的标题栏下方 水平的QMenuBar被保留显示QMenu对象 QMenuBar类提供了一个可以包含一个或多个QAction对象或 级联的QMenu对象 要创建一个弹出菜单 Pyqt提供了cr
  • FM33G0X之上电过程引脚配置

    八 FM33G0X之上电过程引脚配置 使用官方例程的代码初始化 在实际测试中会出现 配置成输出的引脚在上电过程中会将电平拉高 12v的输入电压 引脚可能会拉到3v 并持续一段时间 这对于实际应用中 是不应该出现的 比如一开始在io口配置中配
  • Visual C++ Redistributable 一键安装All In One Runtimes

    老版本的程序需要在客户端安装低版本的VC运行库Visual Studio 但网上第三方找到的软件要么无法下载 要么版本低 或者要求付费 而且常常有病毒 或者根本就是垃圾广告 因此从微软厂商下载 并编写了一个非常简单的脚本一键安装 右键以管理
  • webpack

    一 背景 随着我们的项目涉及到页面越来越多 功能和业务代码也会随着越多 相应的 webpack 的构建时间也会越来越久 构建时间与我们日常开发效率密切相关 当我们本地开发启动 devServer 或者 build 的时候 如果时间过长 会大
  • simcse模型

    一个对比学习的框架 作者在这里通过将一句话分两次过同一个模型 但使用两种不同的dropout 这样得到的两个sentence embedding就作为模型的正例 而同一个batch中的其他embedding就变为了负例 第二个代理任务就更加
  • linux虚拟机BIOS禁用Intel VT-x,电脑重启开启CPU虚拟化

    安装虚拟机centOS64的时候出现下面这个问题 通过 任务管理器 查看性能 CPU 发现是 已禁用 解决办法 重启电脑 修改BIOS中CPU 的配置 重点是 重启电脑 重点是 重启电脑 重点是 重启电脑 重启的过程中才能修改 重启的时候
  • vue3中使用pinia(大菠萝)状态管理仓库

    在Vue 3中 状态管理是非常重要的一部分 而Pinia 大菠萝 作为一个全新的状态管理库 在Vue 3中提供了更好的状态管理方案 可以方便地实现任意组件之间数据共享 与VueX不同的是 Pinia并不依赖于Vue 3的响应式系统 而是通过
  • scikit-learn学习笔记

    数据划分 from sklearn model selection import train test split 数据预处理 数据标准化 归一化 from sklearn preprocessing import StandardScal
  • 浅谈HTTP

    HTTP Hyper Text Transfer Protocol 超文本传输协议 完成从客户端到服务器的一系列运作流程 是用于从万维网 WWW World Wide Web 服务器传输超文本到本地浏览器的传送协议 HTTP的发展历程 HT
  • python学习笔记(1)-爬取小说

    小说网站上某个小说的爬取 Python版本 3 9 6 ide PyCharm 2021 1 3 基于HTML和Python基础语法知识 涉及内容如下 1 使用requests获取网页资源 2 使用BeautifulSoup拆解网页html
  • Python Socket(二) Socket异常处理方法及Socket错误码一览表

    Python Socket操作的异常处理范例 http blog chinaunix net uid 270894 id 2452366 html socket常见错误码详解 Socket error 10048 Address alrea
  • docker学习:CMD 和 ENTRYPOINT区别

    CMD 指定这个容器启动的时候要运行的命令 只有最后一个会生效 可被替代 ENTRYPOINT 指定这个容器启动的时候要运行的命令 可以追加命令 cmd 测试 ls a的命令 实际上只有 a起作用了 ls没有 测试CMD 编写dockerf
  • 8. UE4的盒体触发器和时间轴(制作感应门)

    一 盒体触发器 Box Trigger 1 创建一个盒体触发器 Box Trigger 拖动到地面上空 按End键 贴近地面 2 选中盒体触发器 在关卡蓝图中添加 On Actor Begin Overlap 事件 进入盒体触发器事件 a
  • Linux系统下查看mysql版本的四种方法分享

    这篇文章主要介绍了Linux系统下查看mysql版本的四种方法 本文讲解了在终端下用mysql V 使用mysql gt status 在help里面查找 使用mysql的函数等4种方法 需要的朋友可以参考下 1 在终端下 mysql V
  • Java进程僵尸进程问题定位

    在Linux服务器上 使用top命令查看CPU使用情况 发现大量僵尸进程 解决办法 1 通过 ps aux grep Z 定位到僵尸进程 最后有defunct的标记 就表明是僵尸进程 USER PID CPU MEM VSZ RSS TTY
  • (linux系统下)MMCV及MMClassification教程及安装问题解决

    说一下依托关系 MMCV是面向计算机视觉的一个基础库 它支持OpenMMLab的各个模块包括MMClassification图像分类 MMDetectionm目标检测 MMOCR文字检测识别等等 本文主要详细介绍一下mmcv和mmcls的安
  • Java分页(支持多种数据库)

    最近研究了下分页 做个总结 1 数据库操作类 做简单封装 DB java package Test import java sql public class DB 加载驱动 static try Class forName com mysq
  • 高速电路设计与仿真之PCB篇(一)

    在电子系统中 信号线的传输需要一定的时间 已经证实 电信号在分布良好的导线中传输速度为3 10 8m s 假设布线长度为5米 则信号的传输需要17ns 这种延时在低速系统中可以被忽略 但在高速电路中就不能忽略了 因此在设计高速PCB时 信号