挑战
随着器件开关速度的不断提高,保持信号完整性和满足信号时序要求的挑战也随之而来。信号完整性可通过受控阻抗布线进行管理,为此需要仔细设计PCB堆栈和每层上使用的布线宽度。
通过匹配信号路径的布线长度,满足时序要求。对于一组2个引脚的信号路径,每条路径均将从输出引脚运行至输入引脚,因此仅需计算和对比其长度。但就许多典型设计方案而言,情况并非如此,因为信号路径中可能有一个串联终端元件,或者信号中有两个以上的引脚,此时可以使用Balanced T或Fly-By布线拓扑结构进行布线,如下图所示。
用Balanced T拓扑结构对四个DDR2 RAM芯片进行布线。
解决方案
设计者的任务是将设计要求(例如,为满足时序预估而允许的最大布线长度)转化为一组设计规则(例如,确保满足时序的Length规则,以及检测潜在时序不匹配的Matched Length规则)。
设计者此时将根据信号功能理解信号(例如,“必须将该地址信号从该连接器布线至每个存储设备。为此,我将使用一个终端电阻位于末端的Fly-by拓扑结构。我可能还需要在源头处安装一个串联终接器”)。即使地址A0通过了终端电阻,但对设计者而言,该信号在该电阻另一侧仍然是A0。
但PCB编辑器仅将每个信号简单视为一组相互连接的引脚(通称为网络)——网络A0将从连接器引脚延伸至某个存储元件引脚,然后延伸至另一个存储元件引脚,以此类推。在添加一个串联终端电阻后,该地址线将立即变为两个离散网络。这样将使得设计者难以具体说明关键设计要求(例如,Length和Matched Length设计规则)。
我们可以使用xSignals功能对其进行管理。我们可以使用该功能通过终端元件以及分支,正确处理高速信号路径——在信号源于目的地之间的信号路径。
xSignal本质上是设计者定义的两个节点之间的信号路径。该节点既可以是同一网络内的两个节点,亦可以是由元件隔开的相关网络内的两个节点。我们可以使用xSignal确定相关设计规则(例如,Length和Matched Length)的范围,并在以后执行设计任务过程(例如,进行交互式长度调整)中遵守这些规则。
创建新xSignal
xSignal是两个节点之间的设计者自定义信号路径;它们既可以是同一网络内的两个节点,亦可以是不同网络内的两个节点。
xSignal可以使用以下方法进行定义:
使用xSignals Multi-Chip Wizard。该方法是创建xSignals的最常用方法,我们将在xSignals Multi-Chip Wizard页面上详细介绍。
还可以通过在选中相关对象后,选择适当命令,使用以下方法:
根据选中的焊盘,创建一个单一xSignal。选中所需的起始焊盘和终止焊盘(如果有串联终端元件,则这些焊盘可以在不同网络中)。焊盘既可以在设计空间中直接选中,亦可以在Nets模式下使用PCB面板进行定位和选中(如下图所示)。选中焊盘后,即可以在设计空间中右键单击选中的焊盘,然后运行xSignals » Create xSignal from Selected Pins命令,或者在PCB面板中右键单击其中一个选中的焊盘,然后运行Create xSignal命令。新xSignal将在PCB面板的xSignals模式中列出。
当您根据选中的引脚(封装焊盘)定义一个xSignal时,应在运行Create命令前,仅选中起始焊盘和终止焊盘。
新xSignal的名称将由两个网络名称组合而成,并用连字符分开。xSignal的名称可以在PCB面板的xSignals模式中进行编辑。
可在面板的xSignal Classes区域右键单击,创建一个新类并向其添加成员,以将新xSignal添加到xSignal类中。
选中源元件,然后右键单击所选元件,并选择上下文菜单中的xSignal » Create xSignals between Components命令。Create xSignals Between Components对话框将打开,所选源元件将被选中。该对话框具体如下。
在设计空间中选中一个或多个串联元件,然后右键单击其中一个选中的元件,并从上下文菜单中选择xSignal » Create xSignals from Connected Nets命令。Create xSignals From Connected Nets对话框将打开。所选源元件以及与该元件连接的网络均将被选中。该对话框具体如下具体如下。
如果您想在现有xSignal中创建一个xSignal,则可以使用PCB面板的xSignal模式。请确保已启用面板顶部的Select选项,找到当前xSignal,在面板的xSignal Primitives部分选中所需焊盘,然后在设计空间中右键单击其中一个选中的焊盘,并使用本列表步骤2中所描述的方法完成创建过程。