ALLEGRO约束设置文档格式.docx

上传人:b****6 文档编号:19292064 上传时间:2023-01-05 格式:DOCX 页数:19 大小:763.69KB
下载 相关 举报
ALLEGRO约束设置文档格式.docx_第1页
第1页 / 共19页
ALLEGRO约束设置文档格式.docx_第2页
第2页 / 共19页
ALLEGRO约束设置文档格式.docx_第3页
第3页 / 共19页
ALLEGRO约束设置文档格式.docx_第4页
第4页 / 共19页
ALLEGRO约束设置文档格式.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

ALLEGRO约束设置文档格式.docx

《ALLEGRO约束设置文档格式.docx》由会员分享,可在线阅读,更多相关《ALLEGRO约束设置文档格式.docx(19页珍藏版)》请在冰豆网上搜索。

ALLEGRO约束设置文档格式.docx

全局约束设置。

在PCBeditor界面下,点击“Setup→Constraints”或点击图标

打开“ConstraintsSys”窗口,将出现下图所示窗口。

点击“Setstandardvalues”,弹出“Defaultvaluesform”界面,在此可设置默认值,且窗口中所有设置值各自分属于spacingrule和Physicalrule中名为“Default”的约束集。

此处我们取默认值。

图1

下面步骤2-步骤4为Physical(Line/vias)rule物理特性(线宽和过孔)约束设置过程

步骤2:

线宽约束设置。

点击“Physical(Line/vias)ruleset→setvalues”,在出现的窗口上方空白处填入新约束名称,如“LVDS_SIG”,然后点击“ADD”,新的约束就产生了。

如果需要设置这是某一层的约束,还要在“subclass”中选择相应的层面。

接下来就在相应栏填入需要的值。

如下图所示:

图2

如果还有其它信号的线宽要求,请重复上述步骤。

Minlinewidth:

最小线宽

Maxlinewidth:

最大线宽,填0=∞

Minneckwidth:

Neck模式最小线宽

Maxnecklength:

Neck模式最大走线长度

DiffPairprimarygap:

首选差分间距(单端线可不填)

DiffPairneckgap:

Neck模式差分间距(单端线可不填)

过孔规格在“Vialistproperty”中设定,一般设定在默认约束规则下。

在左侧数据库可用via列表中点击所需规格钻孔,右侧“Currentvialist”就会显示选中钻孔,可多选。

步骤3:

绑定约束类型。

点击“Physical(Line/vias)ruleset→Attachproperty”后可以直接框选板上各Net来选取,也可以点击右侧的more,在弹出的“FindbyNameorProperty”选择框中选取。

“Namefilter”处填写要绑定的Net名,“?

”可以代替任意一个字符,“*”可以代替任意长字符,如我们要给LVDS差分线添加“LVDS”的“Net_Physical_Type”属性,就可以输入“LVDS*”,就可以将所有LVDS的Net过滤出来,如图:

图3

点击“All”选定net,点击“Apply”,出现“EditProperty”窗后,在左侧下拉选项中选择约束类型“Net_Physical_Type”,然后在右侧相应内容后填入约束名称“LVDS”,

点击“Apply”,这样就完成了约束类型绑定,如图:

图4

图5

步骤4:

约束规则分配。

点击“Physical(Line/vias)ruleset→Assignmenttable”出现约束规则分配列表,分配不同情形下适用怎样的规则。

Physicalrule的约束分配列表如下:

图6

第一列“NetPhysicalProperty”:

在步骤3“Attachproperty”中绑定的约束类型

第二列“AreaProperty”:

约束绑定区域,在第三部分介绍。

第三列“PhysicalConstraintSet”:

在步骤2“Setvalues”中设置的约束特征值

关于约束绑定区域我们以后再说,那么这三行的意思就是:

绑定约束“NO_Type”的信号在“NO_Type”区域内应用Physical约束“DEFAULT”

绑定约束“LVDS”的信号在“NO_Type”区域内应用Physical约束“LVDS_SIG”

下面步骤5-步骤7为“Spacingrule”间距约束设置过程

步骤5:

点击“Spacingrule→Setvalues”设置约束特征值。

由于LVDS差分对要求线间距为7mil,所以我们在窗口上方空白处填入新约束名称“SPACE_7”,然后点击“ADD”,新的约束就产生了,在对应的各个距离内填上相应的数值即可。

图7

步骤6:

点击“Spacingrule→Attachproperty”绑定约束类型。

Spacingrule的绑定约束类型的操作和Physicalrule设置基本相同。

选取LVDS信号绑定约束类型“LVDS_SPACE”,如图:

图8

图9

步骤7:

点击“Spacingrule→Assignmenttable”进行约束规则分配。

Spacingrule的约束分配列表如下:

图10

上图中三行的意思是(关于约束绑定区域第三部分会有介绍):

绑定Spacing约束“No_Type”的信号和绑定Spacing约束“No_Type”的信号在“No_Type”区域内应用Spacing约束“DEFAULT”

绑定Spacing约束“LVDS_SPACE”的信号和绑定Spacing约束“No_Type”的信号在“No_Type”

区域内应用Spacing约束“SPACE_7”

绑定Spacing约束“LVDS_SPACE”的信号和绑定Spacing约束“LVDS_SPACE”的信号在“No_Type”区域内应用Spacing约束“SPACE_7”

下面步骤8到步骤10为差分对等长约束设置过程

步骤8:

差分对配对。

点击“setup→electricalconstraintspreadsheet…”或点击

,打开Allegroconstraintmanager窗口。

选择“net→Routing→DifferentialPair”,选中LVDS_A0_P和LVDS_A0_N右击,在弹出的菜单中选择“create→differentialpair”,如下图所示。

点击后会弹出“createdifferentialpair”界面,在此界面就可以依次对所有差分对配对。

图11

图12

步骤9:

建立ECSet。

在左边工作窗体选择区选择“ElectricalConstraintSet→Routing→DifferentialPair”。

在你的brd文件名(此处为unnamed)上右击→Create→ElectricalCSet,在弹出的对话框中输入约束名,这里起名为“LVDS_LENGTH”,并在图示位置填入允许的长度差值75mil。

图13

如果需要对LVDS信号布线总长度设置约束,则在左边工作窗体选择区选择“ElectricalConstraintSet→Routing→TotalEtchLength”。

在此我们可以看到刚才新建的约束“LVDS_LENGTH”,在其后面的“MinimumEtchLength”和“MaximumEtchLength”中添加布线长度的最小和最大值,如图。

图14

步骤10:

为差分对绑定ECSet。

打开“Net→Routing→DifferentialPair”,在右侧可以看到已经配对的差分线,在“ElectricalCsetReferences…”下单击,在弹出的对话框中选择刚才设置好的约束“LVDS_LENGTH”。

也可以一次填多对,按住左键拖曳选择多个,右键菜单选“Change…”。

这样就给差分线添加了长度约束“LVDS_LENGTH”。

如图:

图15

同理,在“Net→Routing→TotalEtchLength→ElectricalCsetReferences…”下添加“LVDS_LENGTH”约束。

设置好后就可以布线了。

在最上面的字段名称上及项目名、Net名上,按下鼠标右键可以展开下拉菜单,其中的“Sort”可以将对象重新排序,“Analyze”可以立即执行分析,分析后各种颜色的图示如下,也就是常说的红绿灯。

Pass–分析的结果符合设定值。

Fail–分析的结果不符合设定值。

Analysiserror–无法执行分析。

Directlyset–字段的设定值是由使用者直接输入的

图16

提示:

没有红绿灯的,请打开Setup→UserPreferences…,展开左边Etch项,右边allegro_dynam_timing选择on即可。

下面的一项allegro_dynam_timing_fixedpos是设置红绿灯位置锁定还是跟着光标跑的。

设置好后,还要在“constraintmanager”窗口中,点击“anslysis→analysismodes”,在弹出的界面中打开相应的DRC检查项即可,如下图

图17

第二部分:

非差分信号约束设置

非差分信号的约束设置与差分信号的约束设置大致过程相同。

下面我们通过对VGA信号的约束设置分步骤的讲解各个设置过程,其约束条件如下表:

最小线距

最大线长

信号间最大布线差值(mil)

VGA

6

20

5000

设置过程同“第一部分:

差分对约束设置/步骤1”,取默认值即可。

差分对约束设置/步骤2”。

此处线宽约束命名为“VGA_SIG”。

图18

差分对约束设置/步骤3”。

此处“Net_Physical_Type”命名为“VGA”。

图19

差分对约束设置/步骤4”。

图20

设置约束特征值。

差分对约束设置/步骤5”。

VGA信号间距要求20mil,因此此处约束命名为“SPACE_20”。

图21

差分对约束设置/步骤6”。

选取VGA信号绑定约束类型“VGA_SPACE”,如图:

图22

差分对约束设置/步骤7”。

图23

等长约束设置。

在左边工作窗体选择区选择“NET→Routing→RelativePropagationDelay”。

在主窗体利用Ctrl、Shift键,将VGA_BLUE/VGA_GREEN/VGA_RED三根线全部选定,“右击→Create→Match”,在弹出的对话框中填入组名“VGA_RGB”。

这样就将这3根线加入到了一个group中。

在RelativeDelay下的Delte:

Toleranc处填入长度约束200mil。

如图,

图24

填入时可以直接输入数字,不用输入单位。

可以在“VGA_RED”对应的输入框“右击→setastarget”指定其中某根net为target。

如果需要对VGA的信号进行布线总长度约束设置,则在左边工作窗体选择区选择“ElectricalConstraintSet→Routing→TotalEtchLength”。

在此新建约束“VGA_LENGTH”(新建过程参考“第一部分:

差分线约束设置/步骤9”),在其后面的“MinimumEtchLength”和“MaximumEtchLength”中添加布线长度的最小和最大值。

设定完以上约束就可以绕等长了,在右侧的Length上右击→Analyze,可以看到每根Net的长度,当每个字段都以绿色显示时,就说明它们满足设置的长度约束了,如图:

图25

第三部分:

区域约束设置

在PCB的布线过程中有些区域过于严格的约束是不可能达到的,比如在第二部分中的VGA信号,在连接器管脚上是不可能达到20mil间距的。

这时一个解决办法就是把这些地方划为一个Area,然后给它加上Net_Physical_Type和Net_Spacing_Type属性。

针对这些Area,设定合适的、比较宽松的约束值。

如果不设置,也就是没有区域约束的地方,就是“No-Type”。

具体做法是在第一和第二部分的约束设置后,布线开始前,增加以下步骤:

1、参考“第一部分/步骤2和步骤5”在“Setvalues”中各添加Physical和Spacing的约束值“VGA_CONN_AREA”,填上相对比较宽松的、合理的值。

2、在“Constraintareas”中选Add,(注意这时的绘图层为constraintarea),选择好画shape的工具,在工作区绘制shape。

如图:

图26

3、点击“Attachproperty,shapes”选刚才画的shape,绑定约束Net_Physical_Type和Net_Spacing_Type。

绑定后shape属性如图:

图27

图28

增加上述约束区域后,我们就可以开始布线了。

在区域之外我们执行的是前面设置的约束条件VGA_SIG和VGA_SPACE,当进入此区域后,则执行VGA_CONN_AREA的约束条件。

第四部分:

XNet等长设置

我们把连续的几段由无源元件(如电阻,电容或电感)连接的net合称为一段Xnet。

前面说的方法只能对Net设置等长,既差分对的每根线、group中的每根线,操作的对象都是Net。

而下面这种情况中要求Net1A+Net1B=Net2A+Net2B,那我们如何设置呢?

图29

步骤如下:

1、在AllegroPCBeditor中点击菜单“Analyze→SI/EMISim→Model…”,在弹出来的提示界面中直接点击“Yes”即可,然后出现下面的Model设置窗体:

图30

2、直接在“DevTypeValue/Refdes”中选择要设定Model的器件或直接在板子上点选要设置Model的器件。

如果所选器件是电阻、电容、电感之类的双引脚元件,那么直接点“AutoSetup”,出现下图所示内容,然后点击“OK”即可。

如果是多引脚器件则请参考相应工具书,此处暂不做介绍。

图31

3、点击“setup/electricalconstraintspreadsheet…”或点击

,进入约束管理器ConstraintManager的“Net→Routing→RelativePropagationDelay”,在右边就会显示整块板子所有的Net或Xnet。

建立需要等长的PinPair,在需要建立PinPair的Xnet上右击→Create→PinPair:

图32

4、选择起始Pin和结束Pin:

图33

这一步的目的是指定一个XNet等长时计算长度的起始Pin和结束Pin。

如上图中,SIG_A1长度值就是J2.11-R1.1和R1.2-J3.11的长度和。

设好PinPair之后,就可以用设置一般的Net等长的方法来设置XNet的等长,不同的只是将XNet的PinPair选定添加到一个等长组里。

图34

图35

5、在新建组“SIG_XNET”的RelativeDelay/Delte:

Toleranc处填入长度约束20mil。

如下图:

图36

至此,XNET的约束就设置好了,下面可以布线了。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1