如何在@@高速设计@@中通过规则管理来控制阻抗@@@@@@

本文要点@@

阻抗@@不匹配会导致并行网@@络出现信号反射和@@不同步现象@@,从而导致接收器上出现比特错误@@。

要快速识别阻抗@@超标@@,需要在@@@@ PCB 设计工具中使用规则管理器@@@@,然后@@在@@设计规则中设置阻抗@@限制和@@容差@@。

布线后@@仿真工具可用于检查不符合阻抗@@规则的网@@络@@,并确定哪些区域的设计应该更改@@。

走线阻抗@@控制主要在@@于确保走线的尺寸大小合适@@。如果独立考虑一条走线@@,其阻抗@@值是很明确的@@。但是@@,当它靠近另一条走线或@@导体时@@,由于意外耦合作用@@,该走线的阻抗@@将与最初的设计值不同@@。这个问题非常棘手@@,会导致沿着互连的阻抗@@变化不定@@,而传输线和@@接收器之间的极端阻抗@@失配将导致信号反射@@。

尽管我们已根据最佳实践对@@ PCB layout 进行了布线@@,并且布线的走线宽度全部符合设计值@@,但是@@互连中也有可能出现阻抗@@变化@@。这时就需要使用规则驱动设计@@,即@@,在@@对@@ layout 进行布线时@@,根据设计规则来检查电路板@@。如果要处理一块工艺比较陈旧的电路板@@,那么就需要分批检查阻抗@@@@;为此@@,可以运行一个批处理设计规则检查@@ (DRC),一目了然地浏览阻抗@@超标情况@@。

通过规则管理来控制阻抗@@@@,准确发现信号反射@@

要纠正整个电路板上的@@阻抗@@错误@@,Sigrity 的布线后@@仿真功能可以助我们一臂之力@@,用以分析整个单端和@@差分互连的阻抗@@@@。同时@@,还可以发现互连线上特定位置的信号反射@@,如过孔或@@连接器过渡处@@。在@@下文中@@,我们将介绍如何使用@@ Allegro PCB layout 工具和@@@@ Sigrity 分析功能@@。

定义阻抗@@控制的规则@@

阻抗@@控制的目的是确保@@ PCB 上的@@走线在@@每个互连中的几何形状都是一致的@@。该方法适用于单端和@@差分对布线@@。为此@@,需要遵循我们的高速信号标准来定义这些约束规则@@,而这些信号标准又取决于所选的器件或@@设计的接口类型@@。

PCB 设计软件的适应性很强@@,确保用户能够定义任何物理和@@电气规则@@,以符合可制造性设计@@ (DFM) 要求和@@信号标准@@。Allegro 提供的设计工具允许用户使用@@ Allegro Constraint Manager(规则管理器@@)来定义所需的阻抗@@值和@@容差@@。此工具可在@@@@ Allegro PCB Designer 或@@ Allegro Sigrity SI 内访问@@。

对四个阻抗@@控制网@@络进行分析@@。

在@@接下来的例子中@@,我们将讨论如何定义和@@检查现有@@ layout 中一组网@@络的阻抗@@规则@@。如上图所示@@,这四个要检查的网@@络是@@ DDR3 数据总线的一部分@@@@,定义的阻抗@@是@@ 34 欧姆@@。此时@@,我们要检查这些走线的阻抗@@是否在@@@@ JEDEC 标准的限制范围内@@,以及在@@这些走线上是否会发生过度的信号反射@@。

定义规则@@

在@@开始定义规则@@之前@@,我们需要确定规则定义是针对单个网@@络@@,还是针对一组网@@络@@。Allegro PCB Designer 允许用户将几个网@@络划分到一个网@@络组@@,因此可以将同一组设计规则分配至整个网@@络组@@。请注意@@,不是必须要将网@@络分配到网@@络组@@;一个网@@络也可以有自己的设计规则和@@约束@@。所有设计规则都可以在@@@@ Allegro Constraint Manager 中访问@@、查看和@@编辑@@。

要访问@@ Allegro Constraint Manager 并定义电路板中的约束规则@@,请在@@@@ Allegro Sigrity SI 中打开@@@@ .BRD 文件@@。单击@@ Setup 菜单@@并找到@@ Constraints → Constraint Manager。打开@@ Constraint Manager 后@@,可以从屏幕左侧的面板上访问基于网@@络组和@@基于网@@络的电气规则@@。

要为一个网@@络组设置阻抗@@规则@@,请打开@@@@ Electrical Constraint Set 选项@@,然后@@找到@@ Routing → Impedance。下图是在@@该电路板上定义的两个网@@络组@@。这两个网@@络组都是@@ DDR3 接口的一部分@@@@,因此该接口上的@@走线阻抗@@应该设置为@@ 34 欧姆@@。阻抗@@容差设置为@@ 5%。

网@@络组的阻抗@@规则@@。

我们要检查的四条走线不属于这些网@@络组@@,但如有需要@@,我们可以将这些走线分配到这些网@@络组@@。另一种方法是在@@@@ Electrical Constraint Set 中为这些走线单独定义阻抗@@规则@@。为此@@,只需在@@@@ Constraint Manager 中向下滚动到电气工作表中的@@ Net 部分@@。打开@@ Routing → Impedance 部分@@后@@@@,就可以查看所有的网@@络以及它们属于哪个网@@络组@@。

如果我们想把一个网@@络分配到电气规则集@@,只需在@@@@ Referenced Electrical C Set 一栏下打开@@下拉菜单@@@@,选择@@所需的电气规则集@@。现在@@@@,我们要把目标阻抗@@值分配到要检查的各个网@@络@@。从下图中可以看到@@,目标阻抗@@设置为@@ 34 欧姆@@,阻抗@@容差为@@ 5%。定义目标阻抗@@值之后@@@@,我们就会看到相应的网@@络被标记为红色@@。如果该网@@络没有立即@@显示@@标记@@,只需从工具栏运行设计规则检查@@(在@@ Tools 菜单@@下选择@@@@ Update DRC)。

各个网@@络的阻抗@@规则@@。

在@@上图中@@,这四个网@@络被标记为了红色@@,因为它们的最小阻抗@@和@@@@/或@@平均阻抗@@超出了@@ 34±5% 的范围@@(32.3-35.7 欧姆@@)。Constraint Manager 显示@@,阻抗@@范围为@@ 32.069-46.62 欧姆@@;这些值可能出现在@@@@这些网@@络的任何位置@@。造成这种现象的原因包括@@与其他导体产生意外的寄生耦合@@、走线宽度不一致@@,或@@在@@参考平面的间隙上进行布线@@。

请注意@@,Allegro Constraint Manager 还支持为@@ PCB 定义其他几种物理和@@电气规则@@。物理规则包括@@焊盘和@@走线间距@@,而电气规则包括@@传播延迟限制和@@返回路径跟踪@@。

确定违反设计规则的网@@络之后@@@@,就可以进一步了解到底是设计的哪些部分@@导致设计规则超标@@。另一种查看规则超标的方法是使用工具菜单@@中的@@ DRC Browser。该工具可以显示@@电路板中超出设计规则的坐标@@,并在@@不同的类别中标记出具体的规则超标项目@@。超标列表可能让人有点眼花缭乱@@,但不必担心@@,Allegro 提供了可视化工具来显示@@规则超标@@。这涉及到使用@@ layout 数据进行布线后@@仿真@@。

运行阻抗@@和@@反射仿真@@

现在@@@@,我们已经准备@@好纠正电路板中的阻抗@@失配@@,要完成此操作@@,可以使用@@ Allegro 中的信号完整性分析功能@@来发现阻抗@@变化并识别存在@@反射的位置@@。

在@@ Allegro 中打开@@@@电路板@@,点击@@ Analyze 菜单@@,并选择@@@@ Workflow Manager 选项@@。随后@@屏幕上会显示@@几个可供执行的分析@@,包括@@ Impedance Workflow 和@@ Reflection Workflow。

首先@@,选择@@ Reflection Workflow 和@@要检查的目标网@@络@@。选择@@目标网@@络后@@@@,点击@@ Start Analysis,开始仿真@@。仿真完成后@@@@,可以点击@@@@ Reflection Vision查看热图@@,热图中标出了网@@络上出现反射的位置@@。我们也可以点击@@@@@@ Reflection Table 来查看具体的上冲@@/下冲值以及它们在@@电路板上的@@坐标@@。在@@本例中的电路板上处理的是@@ DDR 线路@@,因此可以在@@@@ Reflection Table 中将这些值与@@ JEDEC 规范进行比较@@。

下图是本例中四个网@@络的反射结果@@@@。从图中可以看到@@,反射主要发生在@@器件焊盘上@@。相应的值以红色标记@@,并且只产生了约@@ 10 mV 的振铃@@现象@@。在@@互连上很早就可以看到@@ 30 mV 的振铃@@,但用@@ Reflection Vision 工具不容易进行可视化@@;需要双击阻抗@@表中的相应条目才能看到这些结果@@@@。

Reflection Workflow 结果@@。

沿着这些网@@络出现了@@ 30 mV 的振铃@@,它们发生在@@靠近走线的多个点附近@@,相应的走线片段如之前的图片@@所示@@。Impedance Workflow 分析有助于理解这些反射现象@@,它们是由沿互连线的阻抗@@变化而引起的@@,以可视化的方式查看会更为直观@@。

要检查阻抗@@变化@@,请选择@@分析工具栏中的@@ Impedance Workflow 选项@@。选择@@相同的网@@络进行分析并运行仿真@@。选择@@ Impedance Vision 选项@@,可以查看整个互连的阻抗@@@@,同时@@也会显示@@热图@@,其中阻抗@@值以不同的颜色表示@@。

四个网@@络的阻抗@@变化@@。

从图中我们可以直接看到@@,阻抗@@从约@@ 46 欧姆@@突然过渡到约@@ 34 欧姆@@,和@@ Allegro Constraint Manager 中显示@@的数据相同@@。从红色部分@@和@@蓝色部分@@之间的长度变化可以明显看出这一点@@。这对应于网@@络中具有较高上冲的区域@@。下一步是将信号上冲和@@阻抗@@变化与信号标准进行比较@@。这些网@@络的红色部分@@对应@@ FPGA 上的@@ BGA 扇出部分@@@@,所以要限制扇出部分@@@@的宽度@@,防止出现过度的信号反射和@@损失@@。

我们可以采用与上文相同的仿真步骤来检查电路板中的不同网@@络对@@。只需选择@@网@@络对的两端@@,确保整个电路板的差分阻抗@@保持一致@@。对于差分对@@,还需要检查是否符合长度匹配容差@@,该容差可以在@@@@ Allegro Constraint Manager 中定义@@。然后@@可以使用@@@@ DRC Browser 来确定哪里发生了长度失配的情况@@,布线工具可以对标准的长度匹配片段进行布线@@,保持差分对同步@@。

本文转载自@@: Cadence楷登@@PCB及封装资源中心微信公众号@@@@