在高速电路设计中,走线的等长显得越来越重要,因此设置等长这问题也就产生了,对于简单走线等长在以前文档中都有涉及这里不再复述了,下面内容将给大家介绍一下有关Xnet等长的设置问题, 如现在主板DDR, IDE 等部分设等长问题. 注意: 以下设置方法不是公板方式,是我自己摸索的设置方法,所以大家不必效仿,仅供参考! 如果大家有任何其它或简单方法也请分享一下经验! 在这之前首先介绍一下一个新个概念Xnet,见下图: 我们把连续的几段由无源元件(如电阻,电容或电感)连接的net合称为一段Xnet. 大家知道Allegro中有两个常用的走线长度设置,PROPAGATION_DELAY, RELATIVE_ PROPAGATION_DELAY 都只能针对同一Net设置, 下面是一个具体案例: 现在要求U1 到U2 的走线Net*A + Net*B等长, 误差为+/-20Mil,最简单的方式就是分别设置Net*A等长和Net*B等长,误差各为+/-10Mil, 这样是可以达到要求,不过会加大Layout工程师绕线的难度,因为可能Net*A部分空间比较大有足够的绕线空间,而Net*B部分没有空间绕线,所以就比较难达到要求. 如果一种设置能把Net*A与Net*B相加,然后再做等长比对,这样就可以解决问题了, 好的就是Allegro都早为这些问题考虑过了,只要把Net*A 与Net*B设置为一个Xnet问题就解决一半了. 下面内容将详细介绍怎样设置Xnet与Xnet等长. 第一部分: Xnet设置 (下面步骤可能有些简单,不过能达到效果) 0, 需要Allegro Export版本或SPECCTRAQuest中设置, 还好大家有Cracked License天下无敌,什么版本都有J 1, 开启Allegro Export或SPECCTRAQuest(以下省略,用Allegro简称这两个), Open需要设置Xnet的板子. 2, 点击菜单 Analyze>SI/EMI Sim>Model…(比正常方式设置Model简单了些)出来的建议定义DC net直接Yes 即可,然后出现下面的Model设置窗体: 3, 直接在DevType Value/Refdes 中选择要设定Model 的器件或直接在板子上点选要设置Model的器件; 4, 点选Create Model,建立该零件的Model,(如果已经有该零件的Model,并在前面定义,然后Find Model即可,这里主要介绍没有的情况) 在出现对话框中选择Create ESpiceDevice model,点击OK 5, 出现下面窗体: ModelName: 输入产生Model的名字 Circuit type: 选择Type, 电阻,电感或电容 Value: 值 Single Pin: 各Pin的连接顺序, 中间为空格, 这里要注意要看零件的pin的排列,1 2 3 4 5 6 7 8,就是: 1 和2 是一个电阻,其它同理所以如果就是普通电阻电容那就更简单了. Common Pin: 这里不用管它,空着就可以. 上面都输入好了就点击OK,完成Model的建立. 点击OK退出就可以发现连接该排阻的两边的Net 都有了个Xnet属性,如下图: 这样就可以搞定Xnet,很简单吧! 下面就开始等长设置吧! 第二部分 针对Xnet部分的等长设置 设置好了Xnet后就可以在Allegro中设置该Xnet的等长了,有两种方法可以设置Xnet的等长.
第一种, 使用Edit>Properties定义 注意必须使用Pin Pair 才能定义Xnet等长 RELATIVE_ PROPAGATION_DELAY= GroupX : G : U1.5 : U2.4 : 0 : 20 在没有定义Xnet之前这样定义时会提示错误的 其它的和前面的等长设置方法都一样.
如果大家觉得这样设置有些麻烦的话,还有一招可以使用,见下面:
第二种, Constraint Manager 设置 1, 开启Constraint Manager, 点选菜单Setup>Electrical Constraint Spreadsheet或直接点击工具栏 出现Constraint Manager 窗体: 对于Constraint Manager 的一般使用方法这里不再做详细介绍, 如果用户对这部分不熟悉 可以参考其它有关Constraint Manager 使用进行学习. 2, 因为我们目的是要设置等长, 所以我们用Relative Propagation Delay这属性, 从左边控制栏中选择Net>Routing>Relative Propagation Delay, 3, 在右边就会显示整块板子所有的Net或Xnet, 4, 建立需要等长的Pin Pair, 右键点击需要建立Pin Pair 的Xnet 选择起始Pin和结束Pin, 注意: 1, 这里没有先后顺序. 2, 如果Pin Pair 的两个Pin Type全是Passive的话不能Creat, 所以这里还需要定义一下Pin的形态, 如:Out put, In put, Bidirectional等 下面是介绍如何在Allegro中定义Pin type。 如何在Allegro中定义Pin Type? 1, 点击菜单Edit>Properties… 2, 在Find栏位中仅勾选Pin 3, 直接在PCB中选中需要修改Pin Type的Pin 4, 出现下面窗体: 选择Pinuse,在右边定义为BI即可 5, Ok完成Pin Type定义 这样就可以Create Xnet的Pin Pair 了。 点击Apply或OK 就完成Pin Pair 设置. 5, 设置等长Group 当Xnet Pin Pair 建立完成后其它设置就和普通Pin Pair 设置等长是一样的. 使用Ctrl键复选所有需要设置等长的Pin Pair, 右键Create>Match Group 输入Group名字; 注意: Scope选择Global
|