信号完整性设计规则之单根信号失真最小化
本文内容从《信号完整性与电源完整性分析》整理而来,加入了自己的理解,如有错误,欢迎批评指正。
1. 通常采用所能容许的最长上升边。
上升边越短,带宽越大,信号完整性问题越严重。
2. 使用可控阻抗走线。
可控阻抗走线具有相同的特性阻抗,这是确保信号完整性的必要条件。
3. 所有信号应尽量使用低电压平面作为参考平面。
4. 如果使用不同的电压平面作为信号的参考平面,则这些平面之间必须是紧耦合。为此,用最薄的介质材料将不同的电压平面隔开,并使用多个电感量小的去耦电容。
下图中,信号路径1上的电流在悬空平面2的上表面感应出涡流,平面3的返回电流在悬空平面2的下表面感应出涡流,这些感应的涡流在悬空平面2的左侧相连通。
驱动器在信号路径与底平面3之间的阻抗Zdriver=Z1-2+Z2-3。当Z2-3越小(一般都可满足),Zdriver越接近于Z1-2。
对于多层板中的传输线,驱动器感受到的阻抗主要由信号路径1和与之最近的平面2构成的阻抗决定,而与实际连接在驱动器返回端的平面3无关。
减小相邻平面间阻抗最重要的方法就是尽量减小平面间介质的厚度,这不仅使平面间的阻抗最小,而且两平面会紧密耦合。若平面间是紧耦合,并且它们之间的阻抗很小,则轨道塌陷无论如何都很低,这时驱动器实际连接的是哪个平面都无关紧要了,平面间的耦合为返回电流尽量靠近信号电流提供了低阻抗路径。
5. 单向或双向的点对点拓扑结构都要使用串联端接策略。
这是最常用的方法。
6. 保持桩线的时延小于最快信号的上升边的20%。
此结论来自于SPICE或行为仿真器的仿真结果。
有如下经验法则:
桩线长度Lstubmax(in) < 信号上升边RT(ns)
若上升边为1 ns,就要确保桩线长度小于1 in。
7. 端接电阻应尽可能靠近封装焊盘。
可确保电阻引入的回路电感最小。
8. 如果10fF电容的影响不要紧,就不用担心拐角的影响。
对于高密度电路板中线宽为5mil的典型信号线,一个拐角的电容量约为10fF,此电容量不太可能对信号完整性有很大的影响。
9. 每个信号都必须有返回路径,它位于信号路径的下方,其宽度至少是信号线宽的3倍。
如果50欧姆微带线的返回路径宽度至少是信号线宽的3倍,则其特性阻抗与返回路径无限宽时的特性阻抗的偏差小于1%。
10. 即使让信号走线绕道,也不要跨越返回路径的突变处。
任何妨碍返回电流靠近信号电流的因素(例如返回路径上有一个间隙)都会增加回路电感,并增加信号受到的瞬时阻抗,这将引起信号失真。
11. 避免在信号路径中使用电气性能变化的走线。
避免信号感受到阻抗变化而出现信号失真。
12. 在上升边小于1ns的系统中,应使用SMT电阻并使其回路电感最小。
若按照上升边是时钟周期的7%计算,RT<1ns,时钟频率f>7%GHz=70MHz,目前基本都是SMT电阻,对回路电感基本都要求最小化,SMT电阻的回路电感一般很低。
13. 在上升边小于150ps的系统中,尽可能减小SMT电阻的回路电感,或者采用集成电阻器。
若按照上升边是时钟周期的7%计算,RT<0.15ns,时钟频率f>467MHz。集成电阻器的回路电感一般更低。
14. 过孔通常呈容性。
15. 可以给低成本连接件的焊盘添加一个小电容,以补偿它的高电感。
连接件的串联回路电感是不可避免的。如果不加以控制,它就可能造成大量的反射噪声。补偿技术是为了抵消部分这样的噪声。
补偿就是尽量让信号感受不到很大的感性突变,而是觉得遇到了与导线特性阻抗相匹配的一段传输线。既然理想传输线可以用单节LC网络实现一阶近似,那么在感性突变两侧各加一个小电容器,就能将感性突变转变为一节传输线。
16. 使所有差分对的差分阻抗为一个常量。
17. 尽量避免差分对不对称。
18. 若差分对的线间距改变,则应调整线宽以保持差分阻抗不变。
弱耦合的最大优点是可以使用较大的线宽(弱耦合和紧耦合100Ω差分对的线宽,前者比后者宽了约30%),大线宽意味着更小的串联电阻损耗。
弱耦合改为紧耦合,差分阻抗会减小,使线宽变窄,差分阻抗就会变大。
19. 只要能保持差分阻抗不变,也可以改变差分对中的耦合。
20. 应尽量使差分对紧耦合。
紧耦合优势:
① 互连密度高,可使电路板的成本降到最低。
② 受害差分对的差分噪声比较小。
③ 由非理想返回路径引起的差分阻抗突变程度比较小。
21. 差分对返回路径避免突变。
对于所有的板级差分对,平面上存在很大的返回电流,所以要尽量避免返回路径中的所有突变。若有突变,对差分对中的每条线都要做同样的处理。
22. 若损耗很重要,应使用尽可能宽的信号线。
信号线越宽,串联电阻损耗越小。
23. 若损耗很重要,应使走线尽量短。
走线越短,损耗越小。
24. 若损耗很重要,应使容性突变最小化。
容性突变指测试焊盘、过孔、封装引线或连接至互连中途的短桩线等。
25. 若损耗很重要,应使信号过孔具有50Ω阻抗。
26. 若损耗很重要,应使用低耗散因子(DF)的叠层,即使用高速板材。
27. 若损耗很重要,应使用预加重和均衡化措施。
预加重:在最初的信号中加入额外的高频分量;
均衡化:事先去掉一些低频分量。
相关文章:

信号完整性设计规则之单根信号失真最小化
本文内容从《信号完整性与电源完整性分析》整理而来,加入了自己的理解,如有错误,欢迎批评指正。 1. 通常采用所能容许的最长上升边。 上升边越短,带宽越大,信号完整性问题越严重。 2. 使用可控阻抗走线。 可控阻抗…...
Python3 数据结构
列表 Python中列表是可变的,这是它区别于字符串和元组的最重要的特点,一句话概括即:列表可以修改,而字符串和元组不能。 以下是 Python 中列表的方法: 方法 描述 list.append(x) 把一个元素添加到列表的结尾…...
Compose-Navigation带参传递
带参传递 目前 compose 还不支持传入对象作为参数! 简单双参数 根目录下新建文件夹 entity,新建单例类 ContentType 作为数据类存储位置 新增数据类 DemoContent,这表示我们需要传入的两个参数,后面带问号判空 object ContentT…...

【函数栈帧的创建和销毁】 -- 神仙级别底层原理,你学会了吗?
文章目录1.函数的调用方式 2.函数在栈区上的动作 1.函数的调用方式 相信你对调用函数一点都不陌生,但是在调用函数的过程中,却存在着很多你无法见到的东西,这是底层信息,想要理解透彻,就得深入底层去观察。 本文以…...
Promise的使用及原理
此文章主要讲解核心思想和基本用法,想要了解更多细节全面的使用方式,请阅读官方API 这篇文章假定你具备最基本的异步编程知识,例如知道什么是回调,知道什么是链式调用,同时具备最基本的单词量,例如page、us…...

怎么拥有一个帅气的 CMD 命令窗口 ❓ - Windows
自从拥有这样一个炫酷的命令窗口,我都舍不得关掉它了 关于我为什么我要闲的去 “打扮” 一个命令窗口,这要从星期五下午的一场 摸鱼 🐠 开始,当时我要创建一个 vue ts vite 的项目练练手,为新项目开始做准备&#x…...

时隔多年再学习Vuex,什么?原来如此简单!
时隔多年再学习Vuex,什么?原来如此简单! start 写 Vue 写了好多年了,少不了和 Vuex 打交道。虽然使用它的次数非常频繁,但是潜意识里总觉得这东西很难,导致遇到与之相关的问题就容易慌张。时至今日,升级版…...
Linux笔记_gcc
Linux_gcc程序的翻译链接库make与makefile关于gcc的一些笔记。 程序的翻译 gcc/g是一个编译器。 预处理:头文件展开、条件编译、宏替换、去注释 编译:C语言汇编语言 汇编:汇编->可重定位目标二进制文件,不可以被执行࿰…...
2023美赛MCM A题 详细思路
2023美赛(MCM/ICM)如期开赛,为了尽早的帮大家确定选题。这里我们加急为大家编辑出A赛题详细思路,方便大家快速对A题目的难度有个大致的了解。同时,我们也给出了A题目简要的解题思路,以及该问题在实际解决中可能会遇到的难点。A题的…...

c#: NetTopologySuite凹凸多边形计算
环境: .net 6.0NetTopologySuite 2.5.0vs2022平面二维 一、夹角计算 1.1 计算向量与x轴正方向的夹角 方法: AngleUtility.Angle(Coordinate p) 下图上的t2即为p,之所以这么写是为了和AngleUtility.AngleBetweenOriented做比较 注意: 结果…...

NFT Insider #86:A16z 领投,YGG 获得 1380 万美元融资,The Sandbox与《北斗神拳》合作
引言:NFT Insider由NFT收藏组织WHALE Members、BeepCrypto联合出品,浓缩每周NFT新闻,为大家带来关于NFT最全面、最新鲜、最有价值的讯息。每期周报将从NFT市场数据,艺术新闻类,游戏新闻类,虚拟世界类&#…...
Sort_Algorithm
排序算法前言插入排序折半插入排序希尔排序冒泡排序快速排序选择排序堆排序归并排序前言 排序算法:将一堆数据元素按关键字递增或者递减的顺序,进行排序。 排序算法的评价指标:时间复杂度,空间复杂度,算法稳定性。 算…...

【初探人工智能】2、雏形开始长成
【初探人工智能】2、雏形开始长成【初探人工智能】2、雏形开始长成安装Flask封装Web接口雏形设置接收参数功能验证聊天写代码代码补全生成图片写在后面笔者初次接触人工智能领域,文章中错误的地方还望各位大佬指正! 【初探人工智能】2、雏形开始长成 在…...

【LeetCode】剑指 Offer(2)
目录 写在前面: 题目: 题目的接口: 解题思路: 代码: 过啦!!! 写在最后: 写在前面: 今天的每日一题好难,我不会dp啊啊啊啊啊啊。 所以&am…...

【JavaSE】Lambda、Stream(659~686)
659.每天一考 1.写出获取Class实例的三种常见方式 Class clazz1 String.class; Class clazz2 person.getClass(); //sout(person); //xxx.yyy.zzz.Person... Class clazz3 Class.forName(String classPath);//体现反射的动态性2.谈谈你对Class类的理解 Class实例对应着加载…...
有限差法(Finite Difference)求梯度和Hessian Matrix(海森矩阵)的python实现
数学参考 有限差方法求导,Finite Difference Approximations of Derivatives,是数值计算中常用的求导方法。数学上也比较简单易用。本文主要针对的是向量值函数,也就是f(x):Rn→Rf(x):\mathbb{R^n}\rightarrow \mathbb{R}f(x):Rn→R当然&…...
day33 贪心算法 | 1005、K次取反后最大化的数组和 134、加油站 135、分发糖果
题目 1005、K次取反后最大化的数组和 给定一个整数数组 A,我们只能用以下方法修改该数组:我们选择某个索引 i 并将 A[i] 替换为 -A[i],然后总共重复这个过程 K 次。(我们可以多次选择同一个索引 i。) 以这种方式修改…...
《蓝桥杯每日一题》递推·AcWing 3777. 砖块
1.题目描述n 个砖块排成一排,从左到右编号依次为 1∼n。每个砖块要么是黑色的,要么是白色的。现在你可以进行以下操作若干次(可以是 0 次):选择两个相邻的砖块,反转它们的颜色。(黑变白…...
mysql读写分离(maxscale)
1. 环境架构 需要三台服务器。192.168.2.10(master)192.168.2.20(slave)192.168.2.30(maxscale) 2. 部署mysql主从同步 mysql主从同步可以参考mysql主从同步 3. 部署maxscale服务 MaxScale中间件软件 …...

第八章 - 数据分组( group by , having , select语句顺序)
第八章 - 数据分组 group by数据分组过滤分组 having分组排序groub by语句的一些规定select语句顺序数据分组 在使用group by进行分组时,一般都会配合聚合函数一起使用,实现统计数据的功能。比如下面例子,需要按性别计算人数。按性别进行分组…...

接口测试中缓存处理策略
在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...

(十)学生端搭建
本次旨在将之前的已完成的部分功能进行拼装到学生端,同时完善学生端的构建。本次工作主要包括: 1.学生端整体界面布局 2.模拟考场与部分个人画像流程的串联 3.整体学生端逻辑 一、学生端 在主界面可以选择自己的用户角色 选择学生则进入学生登录界面…...

Xshell远程连接Kali(默认 | 私钥)Note版
前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...
IGP(Interior Gateway Protocol,内部网关协议)
IGP(Interior Gateway Protocol,内部网关协议) 是一种用于在一个自治系统(AS)内部传递路由信息的路由协议,主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...

2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南
🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...

mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包
文章目录 现象:mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时,可能是因为以下几个原因:1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...

selenium学习实战【Python爬虫】
selenium学习实战【Python爬虫】 文章目录 selenium学习实战【Python爬虫】一、声明二、学习目标三、安装依赖3.1 安装selenium库3.2 安装浏览器驱动3.2.1 查看Edge版本3.2.2 驱动安装 四、代码讲解4.1 配置浏览器4.2 加载更多4.3 寻找内容4.4 完整代码 五、报告文件爬取5.1 提…...