Allegro16.6约束管理系统器及使用示例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1约束管理器
约束管理器强制执行objects的优先顺序,最顶层的是System,最底层的是pin-pair。
为顶层对象指定的约束会被底层的对象继承,为底层对象指定的同样的约束优先级高于从上层继承的约束。
尽量在高层次指定约束,层次关系如下:
1.1名词解释
1.1.1pin-pair
Pin-Pair代表一对逻辑连接的管脚,一般是驱动和接收。
Pin-Pairs 可能不是直接连接的,但是肯定存在于同一个net 或者Xnet(所谓Xnet即网络的中间可能串接电阻或者接插件,比如图2-3 中的U1.8到U3.8的连接中间经过了一个电阻,即Xnet)
1.1.2Nets和Xnets
请见图2-4 很容易理解Cadence 的Nets 和Xnets的区别。
所谓nets 就是从一个管脚到其他管脚的电子连接。
如果net 的中间串了无源的、分立的器件,比如电阻、电容或者电感,那么在数据库中每个网络段通过一个独立的net来表示。
约束管理器解释这些网络段
作为相邻的扩展的网络或者Xnet,Xnets在多板连接的结构中也可以贯穿连接器和电缆。
可以将Nets 和Xnets与ECSets 联系起来。
1.1.3Match Groups
Match Group 是nets,Xnets或者pin-pairs 的集合,此集合一定要都匹配(delay 或者length)或者相对于组的一个明确的目标。
如果delta 值没有定义,组的所有成员都将是
绝对匹配的,并允许有一定的偏差。
如果定义了delta 值,那么组所有成员将相对匹配于明确的目标网络。
1.2在线检查设置
首先在约束管理器中需要进行以下设置
Analyze -> Analysis Modes
这样在布线后,在相应的地方都会显示线长或约束相差值;如下图
1.3示例
通过一个实例来理解约束管理器
U1看作是MCU,
U2为DDR,ADDR0-3为地址线,需要作等长处理;CLK为时钟线,差分处理;
U3,U4为连接同一个MCU的DDR;地址线是复用的,设置通过T型网络连接;需要作等长处理
U5为DDR,DDR_DQ0-3为数据线,需要作等长处理
1.3.1差分对约束
即上图中的DDR_CLKP,DDR_CLKN
设置Electrical -> Electrical Constraint Set -> Differential Pair
在Object的Name下方Project右键Create -> Electrical CSet;并输入参数
差分对约束参数主要有以下几个:
Min line spacing:间距最小线距,若实际走线间距小于这个值,DRC就会出错。
Primary Gap:默认间距,差分对最优先线间距(边到边间距)。
Primary width:默认线宽,差分对最优先线宽。
Neck Gap:NECK MODE模式下默认间距差分对Neck模式下的线间距(边到边间距),用于差分对走线在布线密集区域时切换到Neck值。
(NECK 下的线宽用于NECK MODE下的线宽,一般在bga 下面走线的时候有时候两个管脚间距过小,需要使用NECK MODE ,走线时,鼠标右键,选择NECK MODE 即进入NECK模式。
)
Neck Width:NECK MODE 模式下默认线宽差分对Neck模式下的线宽,用于差分对走线在布线密集区域时切换到Neck值;
Dynamic Phase:动态相位检查,在16.3版本新加入的功能。
对差分对路径中每个转角之间造成的路径差异进行检查。
如在整个差分对网络中,正向与反向之间的走线差距不能超过“x mils”。
如果整个路径中的某一个位置,发生了两个信号之间相位偏移超过了规定的“x mils”,这个误差必须在“y mils”围补偿回来。
如下图x=20,y=600.设定约束时tolerance 填入x值,max length填入y值。
Static Phase Tolerance:这个约束设置了两根差分线之间的差值,单位是mil或ns。
设置了此项后,在走线时会实时的显示走线差,在绿灯时符合约束。
Uncoupled length:该约束限制了差分对的一对网络之间的不匹配长度。
差分对刚刚从芯片出来的走线通常是不耦合的,“gather contrlo”可以设置为“ignore(忽略)”和“include (包括)”,意思为在计算不匹配长度时是否包含差分对刚从芯片出来的这段不耦合的线长。
然后在Net -> routing -> Differential Pair中,这时差分对就可以选择刚才设置的规则了;选中规则布线后如下图
1.3.2设置不过电阻的NET等长
即上图中的DDR_DQ0-3,布线要求,DQ1-3以DQ0为参考,线长在±10mil
设置Electrical -> Net -> Routing -> Relative Propagation Delay
选中所需NET,右键Create -> Match Groups,弹出的对话框中命名约束条件并确定;若是先已经创建了MG_DQGROUP,需要添加其他的NET,选中需要添加的NET,右键,Add to -> Match Groups;选择已有的约束条件添加;
在刚才设置的网络组中,可以选择其中的一根作为参考,在对应的【Delta:tolerance】栏中右键Set as target,即可设置为参考网络;假如不设置参考网络,则所有的网络都要匹配到+tolerance;
【Delta:tolerance】
100mil:10mil 假设参考线1000mil,则线围为1000+100 加减10mil;即990~1110mil
-100mil:10mil 假设参考线1000mil,则线围为1000-100 加减10mil;890~990mil
布线后如图:
1.3.3设置过电阻的XNET等长
即上图中的ADDR0-3,布线要求,ADDR1-3以ADDR0为参考,线长在±10mil
设置XNet
Analyze -> Model Assigment;弹出对话框,可以选择某种电阻,也可以选择某个电阻;
现在选中某种电阻;Create -> Model;弹出对话框默认确定,在弹出如下对话框;
因为在原理图中,ADDR3_A 和ADDR3连接排阻的1和8;类推,所以是以1 8 2 6....对应;如下图,ADDR3_A和ADDR3两条NET合并成一条XNRT;
创建Pin-Pair
在ADDR0上右键Create -> Pin-Pair;选中电阻两端MCU和DDR的管脚腿
创建完后如下图
创建Match Group
选中上面的4个PPr,右键Create -> Match Group;接下来就和设置不过电阻的NET等长的步骤一样了;布线之后如下图
1.3.4设置T型等长
1.3.4.1在PCB和约束管理器中创建T型节点
在PCB菜单栏中选中Logic -> Net Schedule,然后选中要设置的T型网络的鼠线,在选中要设置网络的其中一个引脚,右键Insert T 命令,在合适的地方左键放置T点,然后选其他的引脚再选中刚放置的T点,依次设置完该T型网络上的所有的节点;
删除某个T节点,PCB菜单栏中选中Logic -> Net Schedule,选中网络右键Unschedule Net,然后右键Done;
在约束管理器中,右键刚才设置的那根Net,Create -> Electrical CSet,命名,注意勾选Copy Constraints From;然后其他网络就可以使用这个规则了。
然后在其他需要设置T型网络的NET中Referenced Electrical Cset中选中刚才设置的规则;如下图
1.3.4.2在SigXplorer和约束管理器中创建
Electrical -> Net -> Routing -> Wiring
选中需要设置T型网络的net,右键选中SigXplorer,进入界面,重新设置拓扑结果之后,注意上面有元件的编号,Set -> Constraints ; 弹出界面,在Wiring中Verify Schedule 中选中YSE,单击OK;File > Update Constraint Manager;到如下的拓扑结构:然后在其他需要设置T型网络的NET中Referenced Electrical Cset中选中刚才设置的规则
然后通过Pin-Pair的方式设置等长
1.3.4.3设置线长
选中Prop Delay标签,设置方法,在Pins/Tees中先选中T.2再选U4.4,在Rule Type 中选择Length ,分别在min length ,max length 中输入500,510;依次把所有的都设置好;
上面解释:从从T.2到U4.4的线长为500~510mil;
设置相对延时:
选中Rel Prop Delay标签,方法:先在【Rule Editing】栏点击New 按钮,
在【Pins/Tees 】栏点击R4.2
再点击U4.4
注意【Scope】栏为“Local”,
在【Delta Type】栏,选择“None”,
在【Tol Type】栏,选择“Length ”,
在【Tolerance 】栏,输入“20”,
点击ADD按钮。
按上面的方法设置其余三线;
实用标准文案
单击OK;File > Update Constraint Manager;
注意:。
好像走线有过孔时很麻烦,拓扑结构改变?文档大全。