差分对布线是一种设计技术,用于创建一个平衡的传输系统,能够在印刷电路板上传输差分(相等且相反)信号。通常,这种差分布线将与外部差分传输系统(如连接器和电缆)接口。
差分信号系统是一种通过一对紧密耦合的载体传输信号的系统,其中一个载体传输信号,另一个载体传输与信号等大但相反的镜像。差分信号的开发是为了适应信号源的逻辑参考地无法与负载的逻辑参考地良好连接的情况。差分信号天生对共模电气噪声具有免疫性,这是电子产品中最常见的干扰因素。差分信号的另一个主要优点是它最小化了信号对产生的电磁干扰(EMI)。
差分对PCB布线是一种设计技术,用于创建一个平衡的传输系统,能够在印刷电路板上传输差分(等大且相反)信号。通常,这种差分布线将与外部差分传输系统(如连接器和电缆)接口。
需要注意的是,尽管在双绞线差分电缆中实现的耦合比可能高于99%,但在差分对布线中实现的耦合通常会低于50%。当前的专家意见认为,PCB布线任务不是试图确保达到特定的差分阻抗,而是要专注于确保差分信号在从外部电缆传输到目标组件的过程中以良好的状态到达。
根据著名的行业高速PCB设计专家Lee Ritchey的说法,成功的差分信号传输需要:
- 将每个路由信号阻抗设置为传入差分电缆阻抗的一半。
- 确保两个信号线在接收端各自以其特性阻抗正确终止。
- 两条线应等长,容差应符合逻辑家族和设计中使用的电路频率。应专注于保持时序;匹配长度足够接近以满足设计的偏斜预算。示例长度容差包括高速USB,长度不匹配应不大于150 mils;DDR2时钟需要匹配到25 mils以内。
- 利用将两个信号并排路由的好处,有助于实现匹配长度的高质量路由。在需要时,可以接受分开以绕过障碍物。
- 只要能维持信号阻抗,层变化是可以接受的。
从原理图转移差分对到PCB编辑器
如果您已经在原理图中对网络放置了差分对指令,默认的项目选项设置将导致在PCB上创建差分对成员。在PCB项目选项对话框中使用以下选项来配置此功能:
- 比较器标签页 - 额外的差分对(然后检查不同的差分对以获取后续更新,如果您也在创建/更改设计规则,则选择规则选项)
- ECO生成标签页 - 添加差分对(然后更改差分对以获取后续更新,如果您也在创建/更改设计规则,则选择规则选项)
- 类生成标签页 - 生成网络类(如果您还在创建网络类以用于定义PCB差分对布线规则的范围)
在PCB上查看和管理差分对
差分对的定义可以在设置为
差分对编辑器模式的
PCB面板中查看和管理。下面的图片显示了属于差分对类
ROCKET_IO_LINES
的对。对
V_RX0
被高亮显示;这对中的网络是
V_RX0_N
和
V_RX0_P
。每个成员网络名称旁边显示的
-和
+是系统标志,指示它是对中的正成员还是负成员。
在差分对编辑器中可以查看和管理差分对。在差分对类别区域右键点击以创建新的类别。
在PCB面板的差分对编辑器模式下,其三个主要区域会变化,以反映当前PCB设计的差分对层次结构(从上到下排序):
- 差分对类别。
- 类别中的单个成员差分对。
- 构成差分对的基本网络(负和正)。
定义差分对类别
通常,设计规则需要针对不止一对差分对。在这种情况下,您可以定义差分对的类别,将它们聚集到逻辑组中。右键单击差分对类别条目然后选择属性(或直接双击条目)将打开编辑对象类对话框,在该对话框中,您可以重命名或查看/修改类别中差分对的成员资格。要完全控制和编辑所有类别,包括差分对类别,请使用主菜单中的设计 » 类别命令打开对象类别资源管理器对话框。
对象类资源管理器允许创建、查看和修改所有类,包括差分对。
管理差分对
差分对可以在原理图上定义,也可以在PCB编辑器中定义。后者的管理是通过配置为差分对编辑器模式的PCB面板中的差分对区域来执行的。对于选定的特定差分对类别,属于该类别的所有当前定义的差分对对象都将在差分对区域中列出。
使用该区域下方的按钮根据需要管理您的差分对:
- 要创建一个新的差分对对象,请点击添加按钮。在弹出的差分对对话框中,为正负网选择现有网络,为该对命名,然后点击确定。
请注意,只有可用的网络会被列出供选择。当前已定义为现有差分对一部分的网络不会被列出。
快速从命名的网络中创建对。
- 要修改现有的差分对,请选择其条目并点击编辑按钮。将打开差分对对话框,当前选择的用于对的网络将被输入到正网络和负网络下拉字段中。根据需要更改对的一个或两个网络,或重命名对。
您也可以在差分对条目上右键单击,然后选择
属性,或者直接双击条目。
从设计网络创建差分对
如果您正在配对具有一致命名方案的网络(即它们具有公共前缀和一致的正/负后缀,例如,TX0_P
和 TX0_N
),您可以使用从网络创建差分对对话框。在差分对编辑器模式下的PCB面板中点击从网络创建按钮以打开对话框。
根据对话框顶部的过滤器条目,列出了待创建的差分对对象。
这种自动化方法的有效性直接取决于为构成差分对的特定网络所使用的命名约定。理想情况下,会使用一种命名约定,以便一个共同的根后面跟着一个一致的正/负指示符(P
和N
)。例如,考虑接收信号D_ETH_O.RX
,这是设计中的一个差分信号。构成此信号的两个网络是ETH_O.RX_P
和ETH_O.RX_N
- 分别代表信号的正面和负面。
对话框顶部的过滤器使您能够快速定位这些网络,按照它们所属的网络类别以及用于区分预定配对中的正负网络的特定区分因素,例如,_P
和 _N
。您还可以定义要添加到创建的差分对对象的前缀,并确定它们将被添加到哪个差分对类中。
对于每个差分对对象,对话框列出了其组成的正负网络。默认情况下,所有潜在的差分对对象都被选中以创建,可以通过清除相关的创建复选框来排除单个对象。
设置所有选项后,点击执行按钮 - 将创建差分对对象,并且PCB面板将相应更新。
- 在PCB面板中右键点击网络条目,然后选择属性(或直接双击条目)将打开编辑网络对话框,在其中您可以根据需要查看/修改网络的属性。
- 使用规则向导按钮访问差分对规则向导,并以自动化过程实施差分对规则属性。请参阅下面的使用差分对规则向导定义规则部分以了解更多信息。
将xSignals与差分对一起使用
主页: 使用xSignals定义高速信号路径
如果您的差分对在信号路径中有串联组件,您可能会发现创建xSignals很有价值。xSignal是设计师定义的两个节点之间的信号路径。它们可以是同一网络内的两个节点,也可以是不同网络中的两个节点。使用xSignal,您可以定义信号路径,使其包括串联组件两侧的网络。xSignals的路径长度计算包括通过串联组件的路径长度,当在PCB面板的xSignals模式中选择xSignal时,会显示细线来表示。
这些差分对已被定义为xSignals;路径长度包括串联组件。
适用的设计规则
要交互式地布线一对差分对,请在PCB规则和约束编辑器对话框(设计 » 规则)中创建并配置以下两个设计规则:
- 差分对布线 - 定义了对中网络的布线宽度、对中网络间的间隔(间距)以及整体未耦合长度(当间距宽于最大间距设置时,对变得未耦合)。设置此规则的范围以针对差分对的对象,例如,
IsDifferentialPair
或 InDifferentialPairClass(
'所有差分对
')
。注意,最小/首选/最大间距设置可以在布线过程中使用,但在设计规则检查中不能使用。在设计规则检查期间,对中网络间的距离通过适用的电气间隙设计规则进行测试,如下面的高亮框所解释的。
- 电气间隙 - 定义任何两个基本对象(例如,焊盘-焊盘、走线-焊盘)在任何网络、相同网络或不同网络上的最小间隙。将此规则的范围设置为针对差分对成员的目标对象,例如,
InDifferentialPair
,并在对话框的约束区域中选择适当的对象类型,如下所示。
重要提示:当您布线一对差分对时,差分对中的布线将根据当前的最小/首选/最大间隙设置分开,该设置在相应的差分对布线设计规则中定义(按Shift+6在布线过程中切换间隙模式,检查状态栏以查看哪种模式正在应用)。然而,在设计规则检查过程中,所有电气对象将使用适用的电气间隙设计规则进行测试,因此,如果用于布线差分对的间隙值小于电气间隙设计规则设定的差分对网络之间允许的最小间隙,则会发生电气间隙设计规则的违规。如果差分对中的网络彼此之间的距离小于适用的电气间隙设计规则允许的最小设置,则您需要添加一个额外的电气间隙设计规则,针对差分对,允许它们具有等于差分对布线间隙设置的间隙。此规则还应具有定义要测试的网络类型的设置,设置为相同的差分对,如 此图像中所示。
设置设计规则的范围
设计规则的范围定义了您希望将规则应用到的对象集合。由于差分对是一个对象,您可以使用如下查询示例:
- InAnyDifferentialPair - 是任何差分对中的对象。
- InDifferentialPair('D_V_TX1') - 定位名为
D_V_TX1
的差分对中的两个网络。
- InDifferentialPairClass('ROCKET_IO_LINES') - 定位属于名为
ROCKET_IO_LINES
的差分对类中所有对的所有网络。
- (IsDifferentialPair And (Name = 'D_V_TX1')) - 定位名称为
D_V_TX1
的差分对对象。
- (IsDifferentialPair And (Name Like 'D*')) - 定位所有名称以字母
D
开头的差分对对象。
使用差分对规则向导定义规则
虽然可以使用PCB规则和约束编辑器(设计» 规则)手动创建规则,但PCB面板在差分对编辑器模式下提供了差分对规则向导的便利。使用规则向导按钮(位于PCB面板的网络区域下方)访问向导,并根据需要实施规则属性。
差分对规则向导通过规则定义过程指导您。
请注意,规则的范围将取决于启动向导之前在PCB面板中的选择,如下所示:
差分对类别
如果选择了所有差分对类别,则每个规则的范围将是全部
。
如果选择了特定的差分对类别,每个规则的范围将是 InDifferentialPairClass('ClassName')
。
差分对
如果在面板中选择了单个差分对对象,范围将是:
- 宽度 -
InDifferentialPair('PairName')
- 匹配的网络长度和差分对布线 -
IsDifferentialPair And (Name = 'PairName'))
如果在面板中选择了多个差分对对象,每个对对象将有单独的范围条目,每个条目之间用“或”操作符分隔。例如,针对单独选择的差分对对象D_ETH_O.TX
和D_ETH_O.RX
的布线宽度规则将具有以下范围:
InDifferentialPair('D_ETH_O.TX') 或 InDifferentialPair('D_ETH_O.RX')
请注意,差分对中的一个网络与不属于该对的任何其他电气对象之间的间隙,由适用的间隙规则监控。
布线差分对
相关页面: 交互式布线
差分对作为一对进行布线 - 也就是说,您会同时布线两个网络。要布线一个差分对,请从布线菜单或活动栏中选择交互式差分对布线。系统会提示您选择对中的一个网络;点击任意一个即可开始布线。选择差分对中的正线或负线都没有关系,因为系统会自动也选择另一条线。下面的视频展示了一个差分对的布线过程。
在差分对布线过程中,您可以执行以下功能:
- Shift+R 循环切换冲突解决路由模式(绕行、推挤、拥抱并推挤、遇到第一个障碍物停止、忽略障碍物)。
- Shift+空格键 循环切换可用的拐角样式(45度拐角、拐角处45度弧、任意角度、90度拐角、拐角处90度弧)。
- 使用任意角度拐角样式布线差分对时,按住 Shift 键,使用切线弧进行差分对布线。
- 按 空格键 在两种拐角方向子模式之间切换。
- 按 退格键 删除最后一个顶点。
- 按 3 循环可能的差分对布线宽度(用户选择、规则最小值、规则首选、规则最大值)。
- 按 Shift+6 循环可能的差分对间距(规则最小值、规则首选、规则最大值)。
- 使用数字小键盘上的 + 和 - 键切换布线层。
- 切换层并插入过孔时:按数字小键盘上的 * 键或使用 Ctrl+Shift+滚轮滚动 快捷键组合,然后
- 按 4 循环可能的过孔尺寸(用户选择、规则最小值、规则首选、规则最大值)
- 按 5 在层变化时循环可能的过孔图案
- 按 6 循环可能的过孔堆叠,或按 8 显示列表以供选择(了解更多关于交互式布线中控制过孔放置)
- Shift+F1 显示所有可用的命令内快捷键。
- 在拐角处弧形模式中,按 "," 键减小最大弧半径,按 "." 键增加最大弧半径。通过移动光标可以交互式地更改弧大小。该设置定义了允许的最大弧半径,当您进行布线时,该半径会在状态栏上显示。
- 使用交互式差分对布线工具时,请注意,耦合差分对具有优先权。因此,SMD到角落和SMD入口设计规则可能无法按预期工作。如果在布线差分对时严格遵守这些规则是必需的,请使用快速差分对布线工具。
- 任意角度差分对布线的当前主要限制包括:
- 目前不支持通过具有不同设计规则的房间边界的布线转换。
- 目前不支持SMD入口设计规则。
- 目前不支持自动环路移除。
很多设置,比如当前的布线模式、宽度、间隙和过孔尺寸,都显示在状态栏(如下所示)或头顶显示(按
Shift+H切换开/关)。
许多差分对布线行为与单网交互式布线相同。
► 了解更多关于
交互式布线
配置交互式差分对路由器
在交互式差分对路由模式的属性面板中,可以在交互式差分对路由过程中更改许多交互式差分对路由设置。在路由过程中按Tab键显示面板。
为了识别差分对中的成员,使用了耦合的概念。当软件识别到属于差分对的对象时,如果在属性面板的交互式滑动或交互式通孔拖动模式中启用了保持耦合选项(如下所述),它将尝试拖动对方的轨迹或通孔。
以下可折叠部分包含有关可用选项和控制的信息:
[折叠 collapsed class="" title="网络信息" id="net_information_idpr"]
- DP 名称 – 显示差分对的名称。
- DP 类别 – 显示路由所属的差分对类别(如果它是差分对类别的成员)。
- 已选择
- 长度 – 选定段的总长度和。
- 延迟 – 选定段的总延迟,包括那些未布线的。
- 总计
- 长度 – 总信号长度。 信号长度是节点到节点距离的准确计算。放置的对象被分析以解决堆叠或重叠的对象和垫片内的漫游路径,且包括通孔长度。如果网络没有完全布线,也包括连接线的曼哈顿(X + Y)长度。
- 延迟 – 总长度的布线段的延迟。
从
属性面板的
差分对布线模式中选择
DP 名称、
DP 类别、
长度和
延迟的可点击链接,将被重定向到
PCB – 网络面板,在那里您可以查看和更改相关网络的详细信息。
[/折叠]
属性
- 层 – 使用下拉菜单指定布线所在的层。
- 间隙 – 使用下拉菜单或Shift+6快捷键循环选择允许的间隙。
- 最小 – 选择以指定同一差分对中不同网络之间原语的最小允许间隙。
- 首选 – 选择以指定同一差分对中不同网络之间原语的首选间隙。
- 最大 – 选择以指定同一差分对中不同网络之间原语的最大允许间隙。
- 过孔 – 如果过孔与模板关联,则此处显示模板名称。
- 过孔直径 – 指定过孔直径。
- 过孔尺寸 – 指定过孔孔径大小。
- 宽度 – 使用下拉菜单指定宽度。
- 最小 – 表示将使用为当前网络定义的设计规则最小宽度
- 首选 – 表示将使用为当前网络定义的设计规则首选宽度。
- 最大 – 表示将使用为当前网络定义的设计规则最大宽度。
- 布线模式 – 使用下拉菜单或使用 Shift+R 快捷键循环选择所需的布线模式。以下选项可用:
忽略障碍物
– 选择此项以忽略现有对象(布线可以自由放置)。违规情况会被突出显示。
绕过障碍物
– 选择此项让交互式路由器绕过现有的轨迹、焊盘和过孔。如果此模式无法绕过障碍物而不引起违规,会出现指示器显示路线被阻塞。
推开障碍物
– 选择此项让交互式路由器将现有轨迹推开以腾出空间。此模式还可以推动过孔以为新布线腾出空间。如果此模式无法推开障碍物而不引起违规,会出现指示器显示路线被阻塞。
紧贴并推开障碍物
– 选择此项让交互式路由器尽可能紧贴现有的轨迹、焊盘和过孔,并在必要时推开障碍物以继续布线。如果此模式无法紧贴或推开障碍物而不引起违规,会出现指示器显示路线被阻塞。
遇到第一个障碍物时停止
– 在此模式下,布线引擎会在遇到阻碍其前进的第一个障碍物时停止。
仅当前层自动布线
– 选择此项以仅在当前层启用自动布线。
多层自动布线
– 选择此项以在多层上启用自动布线。
- 拐角样式 – 选择所需的布线拐角样式或使用 Shift+Spacebar 快捷键循环选择拐角样式。
- 限制为90/45 – 启用此项以将布线限制为仅90度和45度。
- 光泽度(已布线) – 从面板中选择所需的光泽度级别,或使用 Shift+Ctrl+G 快捷键循环选择以下选项:
- 关闭 – 在此模式下,基本上禁用了光泽度。但是,请注意,在布线/拖动发生后仍会运行清理程序以消除例如重叠的轨迹段。此模式通常在板布局的最后阶段很有用(例如,当手动拖动轨迹、清理焊盘入口等时)。
- 弱 – 在此模式下,应用低级别的光泽度,交互式路由器仅考虑直接连接到或在您当前正在布线(或正在拖动的轨迹/过孔)区域内的轨迹。此光泽度模式通常适用于微调轨迹布局或处理关键轨迹时。
- 强 – 在此模式下,应用高级别的光泽度,交互式路由器寻找最短路径,平滑轨迹等。此光泽度模式通常在布局过程的早期阶段很有用,当目标是快速完成大量板上布线时。
- 光泽度(邻居) – 从面板直接选择所需的光泽度级别,以应用于当前正在布线的网络直接推动的轨迹,通过以下选项:
- 关闭 – 在此模式下,基本上禁用了光泽度。但是,请注意,在布线/拖动发生后仍会运行清理程序以消除例如重叠的轨迹段。此模式通常在板布局的最后阶段很有用(例如,当手动拖动轨迹、清理焊盘入口等时)。
- 弱 – 在此模式下,应用低级别的光泽度,交互式路由器仅考虑直接连接到或在您当前正在布线(或正在拖动的轨迹/过孔)区域内的轨迹。此光泽度模式通常适用于微调轨迹布局或处理关键轨迹时。
- 强 – 在此模式下,应用高级别的光泽度,交互式路由器寻找最短路径,平滑轨迹等。此光泽度模式通常在布局过程的早期阶段很有用,当目标是快速完成大量板上布线时。
- 自动结束布线 – 启用后,当您完成到目标焊盘的布线时,布线工具不会继续处于布线模式从目标焊盘出发,而是重置并准备好让您点击下一个源焊盘从中布线。如果禁用此选项,当您布线到目标焊盘后,工具将保持在布线模式中,并使用之前的目标焊盘作为下一次布线的源。
- 自动移除环路 – 启用此选项以自动移除在手动布线过程中创建的任何冗余环路。这允许您重新布线连接而无需手动移除冗余轨迹。然而,有时您需要布线网络,例如电源网络,并且需要环路;您可以使用 Shift+D 快捷键为选定的网络切换此选项,以覆盖同一网络的全局设置。
- 移除带有过孔的环路 – 启用此选项以自动移除带有过孔的环路。禁用此选项以在移除环路时保留过孔。
- 移除网络天线 – 启用此选项以移除任
当“追踪中心”功能退出封闭测试阶段时:删除上面的条件框及其内容,移除下面的条件框,保留内容。