Altium Designer中使用差分对布线
Contents
差分信号系统是采用双绞线进行信号传输的,双绞线中的一条信号线传送原信号,另一条传送的是与原信号反相的信号。差分信号是为了解决信号源和负载之间没有良好的参考地连接而采用的方法,它对电子产品的干扰起到固有的抑制作用。差分信号的另一个优点是它能减小信号线对外产生的电磁干扰(EMI)。
差分对布线是一项要求在印刷电路板上创建利于差分信号(对等和反相的信号)平衡的传输系统的技术。差分线路一般与外部的差分信号系统相连接,如连接器或电缆。
需要注意的是在一对差分双绞线上耦合系数最好能大于90%,但在实际差分线路上一般耦合系数均小于50%。现在专家的意见是PCB布线的任务并不是使指定的差分阻抗能达到指标要求,而是使差分信号经过外部的电缆传送后到达目标器件仍能保持良好的信号质量。
著名的工业高速PCB设计专家Lee Ritchey指出成功的差分信号线路设计并不要求达到指定的差分阻抗,而是要达到以下几点要求:
- 让每条线路的信号阻抗是输入的差分电缆阻抗的一半
- 在接收端使两条线路都分别达到各自的特征阻抗
- 两条差分信号线要等长,使其能在逻辑器件的容限范围内。一般差分信号线长度之差在500mil内是可以接受的
- 布线时让差分线路边接边一同走线,使得即使绕过障碍时也能保证长度能相互匹配
- 差分线路在能保证信号阻抗下可以切换板层进行布线
如需获得更多相关信息,可参阅Lee W. Ritchey的论文Differential Signaling Doesn't Require Differential Impedance,该论文可从http://www.speedingedge.com/RelatedArticles.htm
上查阅。
在原理图中定义差分对
在菜单中Place>>Directive为差分网络放置差分对指令。差分对网络名称必须以“_N”和“_P”作为后辍。对差分网络放置指令后要对其参数进行配置,包括DifferentialPair名称以及True参数。
在设计同步的时候,差分对将从原理图转换到PCB中。
Place directives on the schematic to define differential pairs.
在PCB中查看和管理差分对
在PCB面板的下拉列表中选择“Differential Pairs Editor”后可以查看和管理已定义的差分对。图15-31所示的差分对属于全局的差分对类,当前V_RX0高亮显示,V_RX0_N和V_RX0_P组成差分对,“-”和“+”是系统的标志,指示了差分对的正负极性。

Differential pairs can be viewed and managed in the Differential Pair Editor.
在PCB中定义差分对
用户不但可以在原理图中定义差分对,同样可以在PCB编辑器中定义差分对。
在PCB面板中选择Differential Pairs Editor模式并点击Add按钮。在弹出的Differential Pair对话框中,在现有的网络中选择正极和负极网络,并对差分对进行命名后点击OK。

Quickly create pairs from the named nets.
同样可以通过网络名称进行差分对的定义,对于一个差分对,其名称有相同的前辍,并以不同的后辍作区分,如TX0_P或TX0_N。在PCB面板中点击Create From Nets按钮打开Create Differential Pairs From Nets对话框。在对话框顶部使用过滤器从现存的网络中筛选出差分对。如图所示为对电路板上以“_P”或“_N”结尾的网络名称进行筛选。
适用的设计规则
对差分对进行布线,必先在PCB Rules和Constraints Editor对话框(在Design>>Rules中调出)中的三项设计规则进行配置,分别是:
- Routing Width - 定义了差分对线路的宽度,线路宽度可以是实际的物理宽度或根据用户定义的特征阻抗自动计算而得。把规则的范围设置到差分对的目标器件上,如*InDifferentialPair*。
- Differential Pairs Routing - 定义了差分网络线路的间距和解耦合长度(当间隔宽度大于Max Gap的设置值时成对的走线将失去耦合)。把规则的范围设置到差分对的目标器件上,如*IsDifferentialPair*。
- Electrical Clearance - 定义了各个器件包括相同的网络和不同的网络(焊盘与焊盘间,焊盘与线路间)的间距。把规则的范围设置到差分对的目标器件上,如*InDifferentialPair*。
差分对线路的长度可以通过Interactive Diff Pair Length Tuning(在Tools菜单中)功能进行调整。该功能可以对差分对线路的期望长度和容限值进行实时调整,并具有不同的选项通过增加各种起伏的波纹状线路调节网络线路长度。
设置设计规则的辖域
设计规则的辖域定义了规则所作用的范围。差分对可以通过如下的检索条件例子对设计规则的辖域进行定义。
- InDifferentialPairClass('All Differential Pairs') - 所有的成对网络都属于差分对类“All Differential Pairs”
- InDifferentialPair('D_V_TX1') -* 定义差分对名称为“D_V_TX1”中的两个网络
- (IsDifferentialPair And (Name = 'D_V_TX1')) - 定义网络名称为“D_V_TX1”的差分对
- (IsDifferentialPair And (Name Like 'D')) -* 定义所有网络名以字母“D”开头的差分对
使用差分对向导定义规则
在PCB面板差分对编辑器中点击Rule Wizard按钮可通过向导的形式对设计规则进行设置。注意在此创建的规则的辖域是在点击Rule Wizard按钮前所选中的对象,如果一对差分对被选中,则设计规则的辖域是一对差分对,如果是一个差分对的类被选中,设计规则的辖域就是该差分对的类。
差分对布线
差分对布线是一对进行的,也就是对两个网络同时布线。对差分对进行布线,可从菜单中选取Place » Differential Pair Routing 或通过鼠标右键菜单调出差分对布线工具。此时将提示用户选取布线对象,点击差分对的任意一个网络开始布线。下图所示为差分对布线。
差分对布线中使用的是遇到第一个障碍停止或忽略障碍的交互式布线模式,使用SHIFT+R快捷键进行循环切换。差分对布线和交互式布线有部分相同的快捷键。使用数字小键盘中的 * 键进行换层。按 5 快捷键来循环可能的过孔模式。按 Shift+F1 快捷键来显示所有可能的快捷键。

Differential pairs are routed simultaneously.
包括管脚交换的FPGA设计中全面的差分对支持
现代的FPGA,即使在一些廉价的产品中也提供大量的管脚供用户配置成差分对。为了便于设计工作的开展,Altium Designer在FPGA和PCB设计中都对基于FPGA的差分对整合作全面的支持。
在FPGA设计中,可以把单一的网络定义到差分I/O上,如LVDS标准,这样软件就会把一对物理网络映射到PCB设计中。这个过程用户可以通过FPGA Signal Manager进行控制。设计编译器同样可以确定管脚是否在PCB设计中用作差分对并正确映射到FPGA器件中。
差分对中对信号完整性的支持
Altium Designer的信号完整性分析提供对差分对仿真的全面支持。在FPGA管脚中使用LVDS标准能确保运用正确的信号完整性模型。
Altium Designer中使用差分对布线的更多相关文章
- ALTIUM DESIGNER怎么定义差分对布线
方法一:第一步是在原理图中声明,这样做的目的是为了让差分对布线器清楚哪两个网络是属于同一组差分对,设计编译器将查找格式为NETNAME_N和NETNAME_P(即以_N和_P为后缀)的两个同名网络.这 ...
- 借助CAD在Altium Designer中定义不规则PCB外形
借助绘图软件CAD在Altium Designer中定义不规则PCB外形. 工具/原料 CAD2007 Altium Designer2015 方法/步骤 借助CAD绘制的不规则外形,保存成DXF格式 ...
- Altium designer中生成gerbera文件
在Altium designer中生成gerbera文件的方法有很多,不同版本,差异行不太大,正如下边链接地址里博主在10版本下的方法,在6.0版本长也是这样 http://blog.sina.com ...
- Altium Designer中Electrical Type的意思
:之前Altium Designer设计图时发现: 它的引脚上有两个三角 双击打开引脚,打开配置: 于是从网上查了一下:http://blog.csdn.net/jbb0523/article/det ...
- altium designer中如何添加logo
在PCB板卡制作完毕,为了彰显自己的成就感,可以在PCB空白区域添加几个logo或者说明性的英文(就不要中文了,中文可能PCB厂家做不了). 上图是笔者喜欢在空白区域加一个个性化的二维码,算作是对自己 ...
- 关于Altium Designer中的搜索图纸上的元件
一开始以为Altium Designer搜索完成的pcb上的元件用ctrl+f 但是错了,应该是j,c
- Altium Designer中各层的含义
1 Signal layer(信号层) 信号层主要用于布置电路板上的导线.Protel 99 SE提供了32个信号层,包括Top layer(顶层),Bottom layer(底层)和30个MidLa ...
- Altium Designer中,将多个工程下的原理图和PCB合并在一起
TDD双向放大器的设计分为三部分:LNA部分.PA部分和控制开关部分.为了调试方便,已经在三个Altium工程里面分别设计了三部分.现在需要合并成一个板子,为了保留已有的布局布线的工作量,采用这个办法 ...
- 37.altium designer中的class和rules?
在布局布线工程中,遇到复杂工程时,难免要进行class和rules的设置,经过试验证明,class和rules的子目录是有优先级的.
随机推荐
- C#经典系列-跨语言
VS是个大平台,当C#不好实现的时候,可以想想是否可以引用下其他语言下面的方法,或许你有大收获~ 如何判断“a”是不是数字类型. 1.在C#中我们可能会用TryParse来判断当前的”a“是否为整数. ...
- sts 去掉启动的rss功能
STS(spring tools suite) 每次开启都显示,比较烦人,可以在设置中禁用掉,具体方法:window->Perferences,然后查找dashboard,将启动时展示dashb ...
- MyBatis(3):SQL映射
前面学习了config.xml,下面就要进入MyBatis的核心SQL映射了,第一篇文章的时候,student.xml里面是这么写的: 1 2 3 4 5 6 7 8 9 10 11 <?xml ...
- jenkins 执行可执行jar包测试中,请求乱码解决办法
自动化脚本在eclipse中执行,没有问题.jenkins构建打包自动化脚本,在执行脚本时,遇到了脚本中发送的请求的参数为乱码,实现了如下一些解决办法: 1.设置操作系统环境JAVA_TOOL_OPT ...
- EMV/PBOC解析(三) TLV格式解析(C#)
1.什么是TLV格式? TLV即Tag-Length-Value,常在IC卡与POS终端设备中通过这样的一个应用通信协议进行数据交换. 金融系统中的TLV是BER-TLV编码的一个特例编码规范,而BE ...
- Java编程 的动态性,第 2部分: 引入反射--转载
在“ Java编程的动态性,第1部分,”我为您介绍了Java编程类和类装入.该篇文章介绍了一些Java二进制类格式的相关信息.这个月我将阐述使用Java反射API来在运行时接入和使用一些相同信息的基础 ...
- struts2,hibernate,spring整合笔记(4)--struts与spring的整合
饭要一口一口吃,程序也要一步一步写, 很多看起来很复杂的东西最初都是很简单的 下面要整合struts和spring spring就是我们的管家,原来我们费事费神的问题统统扔给她就好了 先写一个测试方法 ...
- Activity内部Handler引起内存泄露的原因分析
有时在Activity中使用Handler时会提示一个内存泄漏的警告,代码通常如下: public class MainActivity extends Activity { private Text ...
- Android AIDL图解
代码来自:http://www.cnblogs.com/mandroid/archive/2011/02/26/1965428.html (XXX.AIDL自动生成的IXXX.java类中 ...
- mysql删除数据库报错及解决方法
前几天在测试环境的数据库上创建了一个数据库,发现不能授权也不能删除. 最后经过排查发现,数据库名称不能出现中划线 " - " , 那么,怎么才能把带有特殊字符的数据库呢? 操作时需 ...
还可查阅