您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > Allegro16.3约束规则
约束规则设置约束管理器是一个交叉的平台,以工作簿和工作表的形式在CadencePCB设计流程中用于管理所有工具的高速电子约束。可以使用约束管理器和SigXplorerExpert开发电路的拓扑并得出电子约束,可以包含定制约束、定制测量和定制激励。所谓约束就是用户定义的限制条件,当在板上走线和放置元件时会遵守这些约束。电子约束(ECSets)就是限制PCB上与电行为有关的对象,比如可以设置某个网络最大传输延迟为2ns。以下图为一约束设置窗口。一、说明先解释一下约束的类型以及约束中用到的简写名词,如下图所示:1、NCIs(NETCLASS)由众多nets或者buses、differentialpairs、Xnet所组成的类,可对其赋予相似的约束。如下图所示。2、NCC(NetClass-Class)一般用在约束组与组之间的间距的时候使用,如下图。3、DPr(DifferentialPairs)差分对一组差分对一般由两条Xnet或者net以差分走线的方式组成,如下图。差分对的形成有两种方式:一是由模型指定的差分对,再者就是由用户自己定义的差分对。•模型定义的差分对:可以在器件信号模型中指定差分对,可以使用PCBDesign,PCBSI,SigXplores来将模型指定给相应的元件。•用户定义的差分对:可以在约束管理器中Net一级的对象中创建差分对,可以灵活的更改差分对命名和更改差分对成员,但是没有模型指定差分对的精确性。以下是设置差分对规则时,需要赋予约束的项。针对以上约束中用到的一些约束点进行解释说明:差分对的worksheets包含5个主要的约束目录:(1)PinDelay此值指一对网络之间管脚封装上的延迟,单位是时间ns或者长度mil。(2)不耦合长度(UncoupledLength)不耦合长度约束是用来限制差分对的一对网络之间的不匹配长度。若“gathercontrol”设置为ignore,则实际不不耦合长度不包括两个驱动和接收之间的耦合带之外的长度。若“gathercontrol”设置为“include”,包含出芯片的这段不耦合长度。当不耦合(即在差分对刚刚从芯片出来的走线通常是不耦合的,不耦合有一定的长度)长度超过“max”时产生冲突。(3)相位偏差(StaticPhaseTolerance)相位偏差约束确保差分对成员在转换时是同相和同步的。实际的数值(actualvalue)从长度上或者时间上反应了差分对成员之间的差值,当差值超出tolerance值时,就会有冲突。(4)最小线间距(MinLineSpacing)最小线间距约束指差分对之间的最小距离,如果小于设定的最小值则报错。添加的最小线间距约束值必须小于或者等于PrimaryGap减去(-)Tolerance,并且也要小于或者等于NeckGap减去(-)Tolerance。(5)耦合参数(CouplingParameters)这里面包括6个部分需要设置。1、Primarygap:设置的是差分对之间的边到边理想间距,(+/-)tolerance值是允许DiffPairs的偏差值,如果间距偏差在范围内,差分对被认为是耦合的;2、Primarywidth:差分对成员的理想宽度;3、Neckgap:约束的是最小允许的边到边的差分间距,当在密集区域走线时,可能切换到neck模式,最小可允许的gap包括NeckGap减去(-)Tolerance,当差分对间距小于ECSet指定给差分对网络的Minneckwidth规则值时,NeckGap覆盖任何PrimaryGap值,确保Neckgap不要低于任何Minlinespaing值,如果设置了(-)tolerance值,不需要定义Neckgap,因为已经说明了需要的Neckgap。;4、Neckwidth:最小可允许的差分对宽度,当在比较密集的区域走线的时,可能需要切换到neck模式;5、(+)Tolerance;6、(-)Tolerance。使用差分计算器可以完成综合线宽和线距的计算以获得特殊的差分阻抗。在约束管理器中右键点击PrimaryGap,NeckGap,或者(+/-)tolerance相应的单元格,在弹出的菜单选择Change命令,然后点击按钮,即可启动差分计算器(如下图所示),差分计算器仅能完成边对边耦合的差分对计算。差分对规则说明分模型定义的差分对和用户定义的差分对来说明:模型定义的差分对用户定义的差分对可以在PCBDesign,PCBSI中使用Analyze-SI/EMIsim-Model命令进行创建,如果要做分析,首先需要进行设置-包含设置叠层、指定DC网络、指定元件CLASS、指定模型等。可以PCBDesign,PCBSI中在约束管理器中使用Creat-DifferentialPair命令创建,也可以使用Logic-AssignDifferentialPair命令创建。在高速设计流程中首选采用模型定义差分对,因为带有独特的差分对的成员特性比如管脚寄生、启动延迟、逻辑门限和缓冲延迟。用户定义的差分对没有模型指定的精确,因为模型指定的有IBIS器件值。差分对成员不能作为其他差分对的成员。差分对成员不能作为其他差分对的成员。模型定义的差分对可以被提取进SigXplorer而带有耦合性。用户定义的差分对仅单根线被提取进SigXplorer。模型定义的差分对有优先级。如果通过用户定义的方法定义了一个差分对,稍后用模型定义的方法又定义了同样的差分对,则模型定义的差分对有优先级。用户定义的差分对与模型定义的差分对相比没有优先级。在约束管理器中不能改变模型定义差分对成员,只能通过编辑模型的方法更改。在约束管理器中可以对用户定义的差分对成员进行更改。模型定义的差分对,参考同样器件类型的任何器件都将继承指定的模型中差分对。这个是可以重用的就像创建ECSet和指定ECSet到很多设计对象。在约束管理器中要分别创建用户定义的差分对,虽然自动设置简化了这个过程,与模型定义的差分对不同。4、管脚对(Pin-Pair)Pin-Pair代表一对逻辑连接的管脚,一般是驱动和接收。Pin-Pairs可能不是直接连接的,但是肯定存在于同一个net或者Xnet(所谓Xnet即网络的中间可能串接电阻或者接插件,比如下图中的U1.8到U3.8的连接中间经过了一个电阻,即Xnet)。可以使用pin-pairs来获取net或者Xnet指定的pin-to-pin约束,也可以使用pin-pairs来获取ECSets通用的pin-to-pin约束,如果参考了某个ECSets会自动定义net或者Xnet的pin-pairs。可以指定pin-pairs(比如图中的U1.8、U3.8)或者基于下面的格式直接提取。当从SigXplorer导入拓扑并应用ECSets给net,约束管理器基于导入的拓扑文件创建net或者Xnet的pinpairs。•Longestpin-pair•Longestdriver-receiverpair•Alldriver-receiverpairs下表中的规则应用于创建Pin-Pair,Pin-Pairs仅能在以下工作表中创建。•在对象中一定要存在某个管脚,才能创建相应的pin-pair;•在AllConstraints和Timing工作表中的对象一定要有驱动和接收;•Pin-pairlength如果已经完成走线则是两个管脚之前走线的长度,如果没走线,就是连接两个管脚的鼠线的曼哈顿距离;•约束管理器确定longest/shortestpin-pairlength是基于驱动和接收,如果没有任何驱动和接收,就考虑Xnet;•对于相对传输延迟约束,仅仅确定longestpin-pair。5、MatchGroup(匹配群组)MatchGroup是nets,Xnets或者pin-pairs的集合,此集合一定要都匹配(delay或者length)或者相对于组内的一个明确的目标。如果delta值没有定义,组内的所有成员都将是绝对匹配的,并允许有一定的偏差。如果定义了delta值,那么组内所有成员将相对匹配于明确的目标网络。下面的是MatchGroup的必要属性:•Target——组内其他pin-pairs都要参考的pin-pair就是目标(Target),可以是默认的也可以是明确指定的pin-pair,其他的pin-pairs都要与这个目标比较。•Delta——每个pin-pair成员与目标pin-pair的差值,如果没有指定此差值,那么所有成员就需要匹配,如果定义了此值不为0,则此群组就是一个相对匹配的群组。•Tolerance——允许匹配的偏差值。5.1下面用三个例子来说明不同情况下的匹配群组(绝对的和相对的)。例1NetTargetDeltaToleranceCommentsData1未指定未指定10mil这个例子中没有参考,所有的网络都必须彼此匹配在10mil之内,如果三个网络中的一个是1000mil,其他两个网络必须在990mil~1010mil之间,delta值未指定(不是0)是绝对的匹配延迟,target也未指定。Data2未指定未指定10milData3未指定未指定10mil例2NetTargetDeltaToleranceCommentsData10mil10milData3是此群组参考值,所有的网络都必须匹配Data3在10mil之内,如果Data3是1000mil,其他两个网络必须在990mil~1010mil之间,delta值被指定是相对的匹配(传输)延迟。Data20mil10milData3参考0mil10mil例3NetTargetDeltaToleranceCommentsData1参考100mil10milData1此群组参考值,所有的网络都必须匹配Data1Data2100mil10mil在100mil之内并加上或者减去指定的偏差值10mil。如果Data1是1000mil,其他两个网络必须在990mil~1110mil之间,对于相对的匹配(传输)延迟delta和tolerance值被指定。Data3100mil10mil5.2如何确定targetpinpair一旦pin-pairs中的一对被选择作为目标,其他的pin-pairs都要与此目标以给定的delta和tolerance内来匹配。约束管理器决定目标pin-pairs的方法如下:•明确指定的pin-pair。•如果所有的pin-pairs都有delta值,那么有最小delta值的网络就是目标。如果超过一对管脚对有同样的最小的delta值,那么有最长的曼哈顿长度的网络被选为目标。•如果所有的管脚对都没有delta值,那么就没有选择目标,所有的管脚对就进行相互比较。5.3相对/匹配的群组规则•MatchGroup仅能在Routing工作簿的RelativePropagationDelay工作表中的指定。•可以为整个群组设置相对的/匹配的群组约束,群组中每个成员可以根据要求修改tolerance。•相对/匹配的群组之间的延迟可以在system和design一级设置。•匹配延迟约束从14.0版数据库升级Delta值为0,暗示所有的群组成员都要匹配一个指定的目标管脚对。二、电气规则设置1、设置网络的最大最小传输延迟(Min/MaxPropagationDelays),此处以单一网络ADV_C0网络为例(示例中所举数字并非实际情况,此处只为说明而已)【Net】工作簿中双击【Routing】展开工作表。在这个工作表中有【Wiring】、【Impedance】、【Min/MaxPropagationDelays】、【TotalEtchLength】、【DifferentialPair】、【RelativePropagationDelay】几种表格。点击【Min/MaxPropagationDelays】显示相关的表格。选择所要设置的网络ADV_C0,在【PropDelay】列下面的【Min】列,输入最小值“0.9”,注意缺省单位是“ns”,意即ADV_C0上的信
本文标题:Allegro16.3约束规则
链接地址:https://www.777doc.com/doc-4242438 .html