Allegro线宽、间距、等长、差分_第1页
Allegro线宽、间距、等长、差分_第2页
Allegro线宽、间距、等长、差分_第3页
Allegro线宽、间距、等长、差分_第4页
Allegro线宽、间距、等长、差分_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、A llegro 中的约束规则设置Allegrophan刚好五个字修订记录日期版本描述作者2008-12V1.0初版,学元的总结。适用于Cadence15.5版本。Allegropha n2009-09-08V1.1小改,修改部分措辞Allegropha n2009-10-14V1.2小改,更正、修改几个错漏之处。 添加一些说明性文字。 感谢群里的佳猪、梦姑娘等朋友的指正!Allegropha n目录一: Physical(Line/vias)rule 物理特性(线宽和过孔)约束设置: 41) “ Sevtalues 设”置约束特征值 52) “ Attacpropert y” 绑定约束63)

2、 “Assignmenttable” 约束规则分酉己 8二 “Spacingrule 间”距约束设置 9.1) “ Setvalues” 设置约束特征值 92) “ Attach property”绑定约束103) “Assignmenttable” 约束规贝U分酉己11三 Constraintareas区域约束设置 12四 Allegro 中走线长度的设置 131) 差分线等长设置 132) 一组 Net 等长 16XNet 等长 17或点击图标线宽、线距、区域的约束主要在“ Constraints Sys”中设置,点击Setup/Constraints”打开Constraints Sys”

3、 窗口,如下:On line DRC:药 O Off默认约束设置Set standard values.Extended design rules:Spacing rule setAttach property, nes.Set vakje$.Assignment table.DR匚 modes.线宽约束设置Physical (lines/vias) rule set间距约束设置Attach property nets.Set values.Assignment table.Set DHC modes.Design constrainh.Elecltical constraint 沁区域约束设

4、置onst TaintsStandard design rules:Standard design rules 禾口 ExtendedConstraints Sys”窗口分两个级别,第一级别有两类: design rules。Standard design rules 仅有一级分类,点击 Setstandard values” 设置默认约束值,如下:efault Values FormSubclass:Line to line:Line to padPad to pad:Line width:ML ETCHEtch on subclass:Sama net DRC:ResetHelpV1.1

5、t V1.2 这里的Same netDRC应该打开,特 别是绕等长的时 候。我没用过,也 就没有讲到,以后 研究了再补充。这里可以设置默认值,窗口中所有设置值各自分属于spaci ng rule和Physical rule中名为“Default ”的约束集。“ Extended design rules ”下一级分为三类不同约束设置: Physical ( Line/vias) rule物理特性(线宽和过孔)约束设置和 置。它们的下一级分类其实是具体约束设置的操作步骤,分别有: property ”、AAssig nmen t table ”和“ Set DRC modes”。Spaci ng

6、 rule间距约束设置、Constraint areas区域约束设“ Set values”、 Attach一: Physical设置:(Line/vias ) rule物理特性(线宽和过孔)约束LayerName単端线宽W1(mil)A)差分线宽Wl(mil)A)差分间距I (mil)E)差分线宽W1(mil)B)差分间距(mil)1TOP6.403 805.2057025 803L3 MD14.503.805 803.504505L5 MD24.503.506 103304.708L8 MD34.503705.903 4。4.6010L10 MD4P 4.503.705 903.404.6

7、012BOTTOM640.3.805.205.7025.80|我们以以下的DDR2部分的线宽要求为例进行设置:单端阻抗50 Q,差分阻抗100 Q。表中的间距是指一对差分线P和N之间的Air Gap间距,其中B)的线宽线距可用于 Neck mode在BGA区域的出线。1) Set values”设置约束特征值在窗口上方空白处填入新约束名称,然后点击“ADD”,新的约束就产生了,接下来就按部就班在相应栏填入需要的值。由于DDR2有单端线、差分线两种,我们可以相应的设置两种 Physical特性如:DDR2_ 50OHM,DDR_1000HM。如下图所示:via过孔规格在“ Via list pr

8、operty”中设定,一般设定在默认约束规则下。在左侧数据库可用 列表中点击所需规格钻孔,右侧“Current via list”就会显示选中钻孔,可多选。| Add | |8砂 | Delete |Phvical propertvValueMin fine width:Max lhe width:Min neck width:Max neck length:D iff Pair primary gap:DVFar nock gap:Alloi or etch subclass:T junclions:Min BBvia staggerMaw BBvia stagger:Pad/ped dir

9、ect connect38 MIL omTl 3.5 MIL |5000MILD 口not support constraint areas.AllowedVAnywhere5 MIL|0MIL|5.8 MIL |4 5MILAll Allowed7ConUaint set values nol the for all 冷ubclajses, I CancelResetMin line widht :最小线宽Max line widht: 最大线宽,填 0= gMin neck widht : Neck模式最小线宽Max neck length : Neck模式最大走线长度DiffPair p

10、rimary gap:首选差分间距(单端线可不填)DiffPair neck gap: Neck模式差分间距(单端线可不填)2)Attach property ”绑定约束“ Attach property ”是绑定约束的操作,操作对象是信号(以net名来区分),将相应类别的约束名称与信号绑定,该信号就会遵循绑定约束的设定。点击后可以直接框选板上各Net选取,也可以点击右侧的 more,在弹出的Find by Nameor Preoperty”选择框中选取。“ Name filter ”处填写要绑定的 Net名,“ ?”可以代替任意一个 字符,“ * ”可以代替任意长字符,如我们要给DDR2的D

11、QS差分线添加“ DDR_DQS ”的“ Net_Physical_Type ”属性,就可以输入“ *dqs* ”,就可以将所有DQS、DQS#的Net过滤 出来,如图:ydqyn xy Name or PropertyProperty点击All ”选定net,点击Apply ,出现Edit Property ”窗后,在左侧下拉选项中 选择约束类型“ Net_Physical_Type ”,然后在右侧相应内容后填入约束名称“DDR_DQS ”,点击“ Apply ”,这样就完成了约束绑定,如图:O Use ielected bjecta for a de$dection operator!|

12、UK | 匚anuelSelected ob|ectObjecUvpe: NetValue Filter:Ddr23_DqsODdr2a_Dqs1Ddr2a_Dqs2Ddr2a_Dq53Ddr2a_Dqs5Ddr2a_Dq$EDdr2a_Dqs7Ddr2a_Dq$ttO i Ddr2a_Dqsft1Available objechName filter:T able of ConterUD eleteProperValueDDR DQSAvilaWe PropeftiesName:M ax_B ond_Lengtki Max_Gvia_S tagger Ma_Line_Widb Min_Bon

13、cl_Length M h_B ia_S tagger Min Line Width MinZNeck_Width NPhy gicR T y peT$ Alawed Via ListOKCancelHelPShow PropertiesFile Close HelpHet: DDR2A_DQS#0 DIFFP_MIN_SPACE = 4.E Mil LOGICAL_PATH pTnl62 0al r top(sch_l) : ddr2i NET PHYSICAL TYPE = DDR DQSNet:DIFFP_MIK_SPACE = 4.5 MILLOGICA1_PATH = Pjil162

14、 Oal . top( sch_l) : ddr2eNET PHYSICAL TY PE = DDR DQSNet: DDR2A_DQS#2 DIFFP_MIN_SPACE = 4.5 MIL LOGICAI_PATH = 0)piil62 lai . top (sch_l) : ddr2= NET_EBSICA L_TYPE = DDR_DQS3) Assignment table ”约束规则分配Assignment table”是约束规则分配列表,分配不同情形下适用怎样的规则。Physical rule的约束分配列表如下:Net Phvical PropertyArea PropertyP

15、hysical Constraint SetDdjD 恥眩aNo_TypeBgaDdr_DqsNo_TypeNo_TypeNo_TypeV OK 1CanedResetHelp绑定约束 绑定约束 绑定约束 绑定约束第一列Net Physical Property ”:在2) Attach property” 中绑定的约束第二列Area Property ”:约束绑定区域第三列Physical Constraint Set” :在1) Set values”中设置的约束特征值 关于约束绑定区域我们以后再说,那么这四行的意思就是:“ DDR_DQS ”的信号在“ BGA ”区域内应用 Physic

16、al约束“ BGA ”“ NO_Type ”的信号在“ BGA ”区域内应用 Physical约束“ DEFAULT ” “DDR_DQS ”的信号在“NO_Type”区域内应用 Physical 约束“DDR_100OHM ” “ NO_Type ”的信号在“ NO_Type ”区域内应用 Physical 约束“ DEFAULT ”Spaci ng rule ”间距约束设置Spaci ng rule的设置和Physical rule设置大同小异,方法基本形同。我们以DDR2 一组DQ线的线距要求为例进行设置:一组DQ线DQSetOO包含以下信号::8根DQ线,单端:一根DM,单端:一对DQ

17、S,差分线DDR2A_DQ7:0DDR2A DM0DDR2A_DQS0/DDR2A_DQS#0要求:组内间距3倍线宽,DQS/DQS#与其他信号间距不小于 5倍线宽1) Setvalues ”设置约束特征值同样在窗口上方空白处填入新约束名称,然后点击“ADD ”,新的约束就产生了。由于我们要设置的间距有 3倍线宽、5倍线宽两种,我们可以相应的设置两种 Spaci ng特性:“ 3W”,“5W ”。如下图所示:pacing Rule Set Etch Spacing ValuesConstrain# Set Name:Subclass:L05_MD2AddGlobalGlobal fields

18、are used 怕 set multiple constraints only.Spacing:V1.1 t V1.2要注意这里的“ 3W ”、 “ 5W”是对那种线的3倍、5倍!现在是图中设置的 是L05_MD2层的差分线,所以5W应该 是MD2层差分线宽的五倍:3.5*5=17.5Conslainl $et values not lhe sam已 for al subclasses.L ”CancelHmlp 2) Attach property ”绑定约束Spaci ng rule的绑定约束的操作和 Physical rule设置基本相同。选取“ DDR2A_DQ7:0 ”、DDR2A

19、_DM0 ”绑定约束“ 3W/5W ”,如图:同样的方法给“ DDR2A DQS0/DDR2A DQS#0 ”绑定约束“ 5W”。3) Assignment table ”约束规则分配Spaci ng rule的约束分配列表如下:举例,红色下划线的三行的意思是(关于约束绑定区域以后再说):绑定Spaci ng约束“ 3W/5W ”的信号和绑定 Spaci ng约束“ 5W ”的信号在“ BGA ”区 域内应用Spaci ng约束BGA ”绑定Spac ing约束“ 3W/5W ”的信号和绑定Spaci ng约束“ 3W/5W ”的信号在“ No_Type ” 区域内应用Spaci ng约束“

20、3W ” 即组内间距 3W绑定Spaci ng约束5W ”的信号和绑定 Spaci ng约束No_Type ”的信号在No_Type ” 区域内应用Spaci ng约束“ BGA ”5W ”即DQS和其他信号间距5WV1.1-V1.2 :此处应为 5W这里要说一下约束的起名, 我开始学设置时,约束的起名比较乱,如 DDR的DATA线, 线宽约束值叫 DDR_DA TA,绑定线宽约束名也叫 DDR_DATA,间距约束值也叫 DDR_DA TA, 绑定线距约束名还叫 DDR_DA TA,至U最后在约束分配表中分配的时候, 我自己都被搞晕了。后来总结了一下,优化了起名方式,如:DDR单端线阻抗50

21、Q的线宽约束值: DDR_50OHM间距3W、10Mil的线距约束值:3W、10MilDDR组内间距3W组外间距5W的绑定约束:DDR_3W/5W这样约束分配起来就清晰明了了很多,如间距绑定DDR_3W/5W 与DDR_3W/5W 在No_Type区域,明显他们是同组,所以应用组内间距约束值3W。在前面的Physical和Spaci ng设置分配表中,为什么有个区域No_Type ”和BGA ”?这是因为有些区域约束是不可能达到的,比如在 BGA封装的CPU内,弓I线出来,线间距不 可能达到30, 20甚至10个mil。在这些地方,如果你也按照这个约束那么你的PCB中的DRC就不可能消的掉。这

22、时一个解决办法就是把这些地方划为一个Area,然后给它加上Net_Physical_Type和Net_Spacing_Type属性。针对这些Area内,设定合适的、 比较宽松的约 束值。如果不设置,也就是没有区域约束的地方,就是No-Type。提示:约束区域是shape。具体做法是先在Setvalues ”中各添加Physical和Spaci ng的约束值BGA ,填上相 对比较宽松的、合理的值。Constraint areas中选Add ,(注意这时的绘图层),选择好画shape的工具,在工作区绘 制shape如图:注意这里,约束区域 是在那个层的!点击 “ Attach property

23、, shapes” 选刚才画的 shape,绑定约束 Net_Physical_Type 和 Net_Spacing_Type。绑定后 shape属性如图:apertiesShape at 632.00,4360.50 on subclass COUSTRAINT_AREA NET_PHYSICAL_TYPE = BGANET SPACING TYPE = BGA另外,也可以直接用画shape的工具添加约束区域,工作层应选:BOARDGEOMETRYt CONSTRAINT_AREA绑定约束也可以用Edit/Properties” (默认快捷键Ctrl+P )。出现Edit Property”

24、窗后, 操作对象(Find)视情况选net或shapes以上约束设置也可以在约束管理器(Constraint Manager)中设置,我没用过,感兴趣的朋友可以自己研究下。四Allegro中走线长度的设置1) Allegro中走线长度一般在约束管理器(Constraint Manager)中设置。 约束管理器(Constraint Manager)主界面如下:Atlcgra Ccmtramt Manager (connected to Allagrn PCB Design 10 1 5.5) Etecfrical Constraint SeJs: R._I X0e dt 血ptts lumn

25、出訓 AQaiyze udt Jjpoli jndtH* tjelp_ 5 XOhiectsUmcci-Lipled LengthPliase T okir siircMin Line SContirolTdlei diicemilniiimilSystem?MIL?|mil旨茁 雷亀册OBJECTS| ?Ele:etrie-al CsBElraint SetSignal Inltgri tyRoutingViri&gImpe dliince:NiiyNliuc PropaH.1 icn DelQS1ZMILDDR2A_IMS22MLDDR2A_IOS32MHL田田l田田l田DOR2A_IQS

26、4DDR2A_&OS5DDR2A_DOS6Mil2MIL2MILDOR2A_IQS72MILXC1Elecfrical CSet ReferencesXG1XG1xeiXC1XG1XG1ETWI| OffortE)Pip DeI期Pin *!Pbih 2milmflSelecti ons:Hun*TyptDBE2A_D9SrFDif Fair3IILEUctr2SLR“ijt J CaiiiGil设置好后就可以绕等长了 可以展开下拉菜单,其中的“fi1 PFFCII KP,在最上面的字段名称上及项目名、Net名上,按下鼠标右键Sort”可以将对象重新排序, “ Analyze ”可以立即执行分

27、析,分析后各种颜色的图示如下,也就是常说的红绿灯:-)Pass -分析的结果符合设定值。Fail -分析的结果不符合设定值。Analysis error -无法执行分析。Directly set -字段的设定值是由使用者直接输入的V1.1-V1.2 :提示:没有红绿灯的哥们,请打开Setup t User Preferences ,展开左边 Etch项,右边 allegro_dynam_timing选择 on 即可。下面的一项 allegro_dynam_timing_fixedpos是设置红绿灯位置锁定还是跟着光标跑的。图中,差分线 DDR2A_DQS0已经满足要求,DDR2A_DQS1已经

28、连通但长度不符合设定,DDR2A_DQS2还未连通,无法分析。2)一组Net等长仍以DDR2 一组DQ线为例,一组DQ线共有11根线:DDR2A_DQ7:0,8根 DQ线 DDR2A_DM0,1 根 DM 线 DDR2A_DQS0/DDR2A_DQS#0,对 DQS差分线长度要求:i. 每对DQS与DQS#之间相差不多于2mil ;ii. DQS/DQS# 比每组 DQ、DM 长50mil,DQS/DQS#作为每个数据 group的target;iii. 每个DQ group长度误差控制在+/-12.5mil。由于是一组等长,在左边工作窗体选择区选择NET t Routing宀Relative

29、 PropagationDelay。在主窗体利用 Ctrl、Shift键,将这11根线全部选定,右击t CreateMatch,在弹出 的对话框中填入组名: DDR2A_DQ0。这样就将这一根线加入到了一个 group中。I0DR2A 007DDR2A_DO6DDR2A_DO5DDR2AQ4DDR2A.DO3DDR2A_l02DDR2A DOOAnalyseAnalyzeSelectDes#ectFind.SelectDes#ectFind.ExpandCollapseODR2A_ODT1DDRA_ODT*DDR2A_O0Tt_8DDR2A_RASi?DDR2A WECreateMembers

30、hipRemoveRenameiDeleteF9Bus. a.Match Group.Pin Pair.-Differential Pair.Eleckical 口4t+Alt-F9曲lt+ Alt-Bus.IF2在Relative Delay下的Delte:Toleranc处填入长度约束。如图,填入的格式举例如下0mil:22rmiil:相对 TARGET 长度误差土 2mil-50mil:1255mil: 比 TARGET 长度短 50mil,误差土 12.5mil填入时可以直接输入数字,不用输入单位。可以在输入框右击t set as target指定那根net 为targeto设定完就可

31、以绕等长了,在右侧的Length上右击t Analyze,可以看到每根 Net的长度,当每个字段都以绿色显示时,就说明它们满足设置的长度约束了,如图:Piin DalayPinPihmillMlRcfcienObjectscec Pim PdiirsEfectrlcRc-Lltrwe OcldyLemgltliD 专 HmTolctActualMargin+f-milmiV曰 System El FM1?0AIEl DDR2A_D0ft IDR2A.DM0 DDR2A_DO7 DDR2A_DO DDR2A.DO5 DDP2A_DO4 DiDR2A_DO DR3A_DO2 bl)R?A_DOl

32、bDR2A_DCM PftR2A_DO$Q DDR2A DO$mAll Diivees -AII u.All Driviers/AIR.All Drivers/AIR.All Dtivers/AIR.All Drivers/AIR.All Drivers/AIR.All Driver$/AIR.All Drivers/AIR,. AIIWvers/AIR.All Drlvers/AIFC 2ML Al) Di lvep A 丫 2ML Al) Di lvePs API OkDbaJ Ghobal (Global |GlDbal Glob 创 Global GlobalGlob 曰Glob 制T

33、ARGET-50 MILr12.5 -SO MIL12.S ML愛TG MM-SO MIL12.5 MLitej mil-SO MIL: 12.5 ML11,41 MIL1 MlLi? MILMIL7J7 Mil1.9 MIL 1J MIL11-0 MILU5 ML12.25 MIL50 MIL: 12.5 ML-S0MIL:1l2.S ML-50MIL:12.5 ML-50ri1IL:1l2F5 ML-50 MIL:! 2,5 ML-50 MIL: 12.5 MLMIL1931 341932.57 1929671927 86 1934 661928 431S27JStezBjas 1979

34、93 1980.023) XNet等长我们把连续的几段由无源元件(如电阻,电容或电感)连接的net合称为一段Xnet,如下图:前面说的方法只能对 Net设置等长,既差分对的每根线、group中的每根线,操作的对象都是Net。而有时仅对 Net设置等长是不够的,比如下面这种情况:NetlAXiietlU1U2现在要求U1到U2的走线Net*A + Net*B等长,误差为+/-20Mil,最简单的方式就是分别 设置Net*A等长和Net*B等长,误差各为+/-10Mil,这样是可以达到要求,不过会加大Layout工程师绕线的难度,因为可能Net*A部分空间比较大有足够的绕线空间,而Net*B部分没

35、有空间绕线,所以就比较难达到要求。如果一种设置能把Net*A与Net*B相加撚后再做等长比对,这样就可以解决问题了,好的就是Allegro都早为这些问题考虑过了,只要把 Net*A与Net*B设置为一个Xnet问题就解决 一半了。下面内容将详细介绍怎样设置Xnet与Xnet等长。1、在Allegro中点击菜单 Analyze宀SI/EMI Sim宀Model,出来的建议定义 DC ne值接 Yes即可,然后出现下面的 Model设置窗体:2、直接在DevType Value/Refdes中选择要设定Model的器件或直接在板子上点选要设 置Model的器件;3、点选Create Model,建

36、立该零件的 Model ;】Cieate I bisDevice modelC*) Create ESpiceDevice model同ihueI 在出现对话框中选择 Create ESpiceDevice model,点击OK ;4、出现下面窗体:2 |4 6 81131ModelName : 输入产生Model的名字,Circuit type: 选择Type,电阻,电感或电容,Value:值,Single Pin:各Pin的连接顺序,中间为空格,这里要注意要看零件的pin的排列,1 2 34 5 678,就是:1和2是一个电阻,其它同理,所以如果 就是普通电阻电容那就更简单了,Com mo

37、n Pi n:这里不用管它,空着就可以,上面都输入好了就点击 0K,完成Model的建立。点击OK退出就可以发现连接该电容的两边的Net都有了个Xnet属性,如下图:下面介绍XNet的等长设置。进入约束管理器 Constraint Manager 的 NetRouting Relative Propagation Delay,在右 边就会显示整块板子所有的Net或Xnet:日 System日圧)XG1 RX0?MILXG1 RX12MILXG1_PXP12MILxGijketri2MILE XG1_RXXGl.RXCPjj2 MILl+l?MIL建立需要等长的 Pin Pair,在需要建立 Pin Pair的Xnet上右击宀Create宀Pin Pair:XGREIAnalyzeF9jettedDeselectFind.ExpandAlt-XGO FtXCreateXG0_RX XGC_RX

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论