cadence PCB布线仿真资料

cadence PCB布线仿真资料
cadence PCB布线仿真资料

Cadence_SPB16.2入门教程——PCB布线

看了之后对于一个需要画DDR2的新手实在帮助良多,可能更多的人需要,所以分享在这里PCB布线

4.1 PCB层叠结构

层叠结构是一个非常重要的问题,不可忽视,一般选择层叠结构考虑以下原则:

·元件面下面(第二层)为地平面,提供器件屏蔽层以及为顶层布线提供参考平面;

·所有信号层尽可能与地平面相邻;

·尽量避免两信号层直接相邻;

·主电源尽可能与其对应地相邻;

·兼顾层压结构对称。

对于母板的层排布,现有母板很难控制平行长距离布线,对于板级工作频率

在50MHZ以上的(50MHZ以下的情况可参照,适当放宽),建议排布原则:

·元件面、焊接面为完整的地平面(屏蔽);

·无相邻平行布线层;

·所有信号层尽可能与地平面相邻;

·关键信号与地层相邻,不跨分割区。

基于以上原则,对于一个四层板,优先考虑的层叠结构应该是:

·S ←信号

·G ←地平面

·P ←电源层

·S ←信号

对于一个六层板,最优的层叠结构是:

·S1 ←信号

·G1 ←地平面

·S2 ←信号

·G2 ←地平面

·P ←电源层

·S4 ←信号

对于一个八层板,有两种方案:

方案1:方案2:

·S1 ←信号S1 ←信号

·G1 ←地平面G1 ←地平面

·S2 ←信号S2 ←信号

·G2 ←地平面P1 ←电源层

·P ←电源层G2 ←地平面

·S3 ←信号S3 ←信号

·G3 ←地平面P2 ←电源层

·S4 ←信号S4 ←信号

方案2主要是比方案1多了一个电源层,在电源比较多的情况下可以选择方案2。对于更多层的结构也是按照上面的原则来定,可以参考其它的资料。

下面以SMDK6410核心板(设计为八层板)来设置层叠结构,包括规则设置,PCB布线等。

打开程序->Cadence SPB 16.2->PCB Editor,然后打开在第3 章布局好的PCB文件。点击工具栏的图标按钮,或者选择Setup->Cross-section 菜单,如图4.1所示。

图4.1 层叠结构设置

弹出Layout Cross Section对话框,如图4.2所示。

图4.2 Layout Cross Section对话框

由于电路板是用手工建立的,所以在Corss Section中只有Top层和BOTTOM层,需要手工来增加6个层,并调整层叠结构。在Subclass Name一栏前面的序号上点击鼠标右键,弹出一个菜单,如图4.3所示。

图4.3 增加层

可以选择Add Layer Above在该层上方增加一层,可以选择Add Layer Below在该层下方增加一层,还可以选择Remove Layer 删除该层。在走线层之间还需要有一层隔离层。最后设置好的八层板的层叠结构如图4.4所示,采用的是方案2的层叠结构。

图4.4 设置好的八层板层叠结构

Subclass Name一列是该层的名称,可以按照自己的需要来填写。Type 列选择该层的类型,有三种:

·CONDUCTOR:走线层;

·PLANE:平面层,如GND平面;

·DIELECTRIC:介电层,即隔离层。

Material列设置的是该层的材料,一般根据实际PCB板厂提供的资料来设置。Thickness 设置的是该层的厚度,如果是走线层和平面层则是铜皮的厚度。Conductivtl设置的是铜皮的电阻率。Dielectric Constant列设置介电层的介电常,与Thickness列的参数一起都是计算阻抗的必要参数。Loss Tangent列设置介电层的正切损耗。Negtive Artwork设置的是该层是否以负片形式输出底片,表示输出负片,表示输出正片。在这个板中,POWER1与GND2采用负片形式。设置好后点击OK 关闭对话框。

4.2布线规则设置

布线约束规则是PCB布线中很重要的一步工作,规则设置和好坏直接影响到PCB

信号的好坏和工作效率。布线规则主要设置的是差分线,线宽线距,等长匹配,过孔等等。下面一步一步设置这些规则。约束规则在约束管理器中设置。

选择菜单Setup->Constraints->Constraint Manager。或者直接点击工具栏上的图标按钮打开约束管理器,如图4.5所示。

图4.5 打开约束管理器

打开约束管理器后的界面如图4.6所示。

图4.6 约束管理器

可以看到界面包含了两个工作区,左边是工作簿/工作表选择区,用来选择进行约束的类型;右边是工作表区,是对应左边类型的具体约束设置值。在左边共有6个工作表,

而一般只需要设置前面四个工作表的约束就可以了,分别是Eelctrical、Physical、Spacing、Same Net Spacing。分别对应的是电气规则的约束、物理规则的约束,如线宽、间距规则的约束(不同网络)、同一个网络之间的间距规则。

为了能更好的使用约束管理器,先做一点基本概念的解释。

4.2.1对象(object)

对象是约束所要设置的目标,是具有优先级的,顶层指定的约束会被底层的对象继承,底层对象指定的同样约束优先级高于从顶层继承下来的约束,一般尽量在顶层指定约束。

最顶层的对象是系统system,最底层的对象是管脚对pin–pair。对象的层次关系依次为:系统(system)->设计(Designe)-> 总线(bus)->网络类(net class)->总线(bus)-> 差分对(differential pair)-> 扩展网络/网络(Xnet)-> 相对或匹配群组(Match group)-> 管脚对(Pin pair)

(1)系统(system)

系统是最高等级的对象,除了包括设计(比如单板)之外,还包括连接器这些设计的扩展网络、互连电缆和连接器。

(2)设计(Designe)

设计代表一个单板或者系统中的一块单板,在多板结构中,每块板都是系统的一个单独的设计。

(3)网络类集合(net class)

网络类集合可以是总线、网络扩展网络、差分对及群组匹配的集合。

(4)总线(bus)

总线是管脚对、网络或者扩展网络的集合。在总线上获取的约束被所有总线的成员继承。在与原理图相关联时,约束管理器不能创建总线,而且总线是设计层次的,并不属于系统层次。

(5)差分对(differential pair)

用户可以对具有差分性质的两对网络建立差分对。

(6)扩展网络/网络(Xnet)

网络就是从一个管脚到其他管脚的电子连接。如果网络的中间串接了被动的、分立的器件比如电阻、电容或者电感,那么跨接在这些器件的两个网络可以看成一个扩展网络。如图4.7所示,网络net1、net2 和net3组成一个扩展网络。

图4.7 Xnet

(7)相对或匹配群组(Match group)

匹配群组也是网络、扩展网络和管脚对的集合,但集合内的每个成员都要匹配或者相对于匹配于组内的一个明确目标,且只能在【relative propagation delay】工作表定义匹配群组,共涉及了三个参数,目标,相对值和偏差。如果相对值没有定义,匹配群组内的所有成员将是绝对的,并允许一定的偏差。如果定义了相对值,那么组内的所有成员将相对于明确的目标网络。

·目标:组内其他管脚对都要参考的管脚对就是目标,目标可以是默认的也可以是明确指定的管教对,其他的管脚对都要与这个目标比较。

·相对值:每个成员与目标的相对差值,如果没有指定差值,那么所有成员就需要匹配,如果此值不为0,群组就是一个相对匹配的群组。

·偏差:允许匹配的偏差值。

(8)管脚对(Pin pair)

管脚对代表一对逻辑连接的管脚,一般是驱动和接收。Pin pair 可能不是直接连接的,但是肯定存在于同一个网络或者扩展网络中。

4.2.2建立差分对

本设计中共有三对差分线信号,分别是DDR内存时钟信号、USB OTG数据信号、USB HOST 数据信号。在约束管理器中选择Objects->Create->Differential Pair,如图4.8所示。

图4.8 建议差分对

弹出Create Differential Pair对话话,如图4.9所示。

图4.9 Create Differential Pair对话框

在左上角的下拉框中选择Net,然后在下面的列表框中找到DDR 内存芯片的两个时钟信号网络分别是XM1SCLK、XM1SCLKN 在列表框中双击这两个网络或者单击选中后点

按钮加到右边的Selections编辑框中。在Diff Pair Name编辑框中输入差分对的名字:DDRCLK,然后点击Create按钮。点击Close关闭对话框。其它的两个差分对用同样的方法建立,这里就不重复了。最后点击左边Eelctrical工作表下的Net->Routing,在右边的工作表中就可以看到设置好的三个差分对。如图4.10所示。

图4.10 设置好的差分对

4.2.3差分对规则设置

建立好差分对后,还需要建立一个专门于差分对的电气规则。首先点击左边工作表选择区中的Eelctrical工作表下的Eelctrical Constraint Set->Routing->Differential Pair,然后选择菜单Objects->Create->Eelctrical CSet,如图 4.11所示。

图4.11 差分对规则设置

弹出Create Electrical CSet对话框,如图4.12所示。在Electrical CSet编辑框中输入该约束规则的名称:DIFF_FAIR,点击OK关闭对话框。

图4.12 Create Electrical CSet对话框

这时候在右边的工作表内我看看到多了一个DIFF_PAIR约束规则,如图4.13所示。

图4.13 增加的DIFF_PAIR规则

下面给这个差分对约束规则设置参数。差分对约束规则参数主要有以下几个:

·Uncoupled Length:差分对网络中的不匹配的长度。即不能按差分对走线的总长度。

·Min Line Spacing:最小的线间距。

·Primary Gap:差分对最优先选择的线间距(边到边间距)。

·Primary Width:差分对最优先选择的线宽。

·Neck Gap:差分对在Neck模式下的线间距(边到边间距),用于在布线密集区域内切换到Neck模式,这时差分走线的线间距由Primary Gap设定的值切换到该值。

·Neck Width:差分对在Neck模式下的线宽,用于在布线密集区域内切换到Neck 模式,这时差分走线的线宽由Primary Width设定的值切换到该值。

最后设置的差分线规则约束参数如图4.14所示。

图4.14 设置好的差分线约束参数

由于布线密度大走线空间有线,所以差分线的间距采用1W原则(线边到线边),如果空间允许,可采用3W原则。分别设置了Primary 模式和Neck模式下的线宽和线间距为(5mil,5mil),(3.15mil,3.15mil)。Neck模式主要用于从CPU芯片扇出时候的线宽线间距。

设置好差分线约束规则后,将该约束规则应用到刚才建立的两个差分信号上,点击左边工作表选择区中的Eelctrical工作表下的Net->Routing在右边的工作表中找到刚才建立的三个差分对,在Referenced Electricl CSet列中选择刚设置好的差分对约束规则DIFF_PAIR,如图4.15所示。

图4.15 将差分对约束规则应用到差分对上

4.2.4 CPU与DDR内存芯片走线约束规则

CPU与DDR内存之间的信号速度都很高,对信号完整性要求很高,需要对时序严格的匹配,以满足信号波形的完整性。布线要求如下:

(1)DDR时钟线,要求差分布线,并要求精确控制差分对的走线等长误差,控制在20mil以内。由于DDR内存使用两片,所以时钟线走线要采用T形或者Y形拓扑结构。阻抗控制在100Ω,长度比地址线长。

(2)DDR数据线,CPU的数据总线宽度为32位,使用两片16位的DDR内存与之连接,所以然CPU的数据线为分两组,DATA0-DATA15,DQS0、DQS1,DQM0、DQM1 为一组;DATA16-DATA31,DQS2、DQS3,DQM2、DQM3为一组。两组的所有信号线需要严格等长匹配,误差控制在50mil以内。由于布线密度大空间有限,信号间距采用1W 原则(线边到线边),如果空间足够应选择3W原则,DDR数据线与其它的信号线必需要足够的间距,至少要保证3W的间距。阻抗控制在60Ω以内。

(3)DDR地址线与其它控制线,DDR地址线与其它控制线为一组,需严格等长匹配,误差控制在100mil以内,走线长度比DDR 数据线长。采用T形或者Y形拓扑结构。

以上约束需要从电气、线宽和间距上分别设置不同的规则,现先讲Electrical工作表下的规则设置。点击左边工作表选择区中的Eelctrical工作表下的Eelctrical Constraint Set->Routing工作表,选择菜单Objects->Create->Eelctrical CSet 建立两个规则(名称分别为DDR_DQ,DDR_ADDR),过程参考4.2.3小节,建立好的规则如图4.16所示。

图4.16 建立DDR约束规则

参数不需要设置。然后点击左边工作表选择区中的Eelctrical 工作表下的Eelctrical Constraint Set->Routing->Relative Propagation工作表,鼠标放在右边刚才建立的两个规则(DDR_DQ,DDR_ADDR)上,点击右键,在弹出的菜单中选择Create->Match Group,如图4.17所示。

图4.17 建立DDR等长匹配规则

在弹出的Create Electrical CSet Match Group对话框中输入名称MATCH_LENTH,如图4.18 所示。点击OK关闭对话框。

图4.18 Create Electrical CSet Match Group对话框

在Pin Pairs列的下拉框中选择Longest Pin Pair,Scope列选择Class,Delta:Tolerance列中先点击下面的按钮,选择单位为mil,然后在编辑框中输入:

0mil:100mil(0mil:50mil)。最后如图4.19所示。注意,只有在Relative Propagation工作表下才能建立这个规则。

图4.19 DDR 等长匹配群组参数

接下来设置等数据线与地址线的等长匹配。先建立两个名称分别为DDR_DATA,DDR_ADDR的Net Class。点击左边工作表选择区中的Eelctrical 工作表下的

Net->Routing->Relative Propagation工作表。在右边的工作表区中同时选中网络

XM1DATA0-XM1DATA31,XM1DQM0-XM1DQM2,XM1DQS0-XM1DQS2(选中后会这些网络名会反色显示),点击鼠标右键,弹出一个菜单项,选择Create->Net Class。如图4.20所示。

图4.20 建立DDR_DATA Net Class

弹出Create Net Class对话框,如图4.21所示。输入名称DDR_DATA,点击OK关闭对话框。

图4.21 Create Net Class对话框

建立DDR_ADDR的过程也一样,同时选中网络XM1ADDR0-XM1ADDR15,XM1CASN、

XM1CKE0、XM1CSN0、XM1RASN、XM1WEN 后右键Create->Net Class。其它就不重复了。

然后将上一步建立的两个电气规则DDR_DQ,DDR_ADDR分别应用到DDR_DATA,DDR_ADDR两个Net Class上。在右边的工作表区内,分别点击DDR_DATA,DDR_ADDR NCls 的Referenced Electrical CSet 编辑框,分别选择DDR_DQ,DDR_ADDR。这时候,约束管理器自动建立了两个Mach Group(MATCH_LENTH_DDR_ADDR,MATCH_LENTH_DDR_DATA),如

图 4.22所示。

图4.22 等长匹配

由于CPU的地址线和其它的一些控制信号被两片DDR内存芯片共用,所以还需要建立一个管脚对(Pin Pair)匹配组来约束等长匹配。在右边工作表区内将DDR_ADDR Net Class 展开,在XM1ADDR0 网络上点击右键,弹出一个菜单项选择Create->Pin Pair。如图 4.23所示。

图4.23 建立Pin Pair

弹出Create Pin Pairs of XM1ADDR0 对话框,如图 4.24 所示。在左右两个编辑框中分别列出了该网络上的所有元件的引脚(Pin),对于每个一XM1ADDRx网络,都有三个Pin。所以每一个XM1ADDRx 网络都需要建立两对管脚对,即CPU-DDR1,CPU-DDR2。在左边的编辑框点点击U15,H24(Out),右边的编辑框中点击U16,J8(In),然后点击Apply按钮,即建立了U15,H24 与U16,J8 两个管脚的Pin Pair。接着在左边的编辑框点点击

U15,H24(Out),右边的编辑框中点击U17,J8(In),然后点击Apply 按钮。又建立了

U15,H24 与U17,J8 两个管脚的Pin Pair。点击OK 后关闭对话框。在工作表区可以看到,在XM1ADDR0 网络下多了两个PPr(Pin Pair)U15,H24:U16,J8,U15,H24:U17,J8。如图4.25所示。用同样的方法为DDR_ADDR Net Class 的每一个网络建立两个管脚对。然后将刚才建立的所有管脚对选中,点击右键,弹出的菜单项中选择Create->Match Group。如图4.26所示。

图4.24 Create Pin Pairs对话框

图4.25 XM1ADDR0网络上的两个Pin Pair

图4.26 建立管脚对匹配群姐

在弹出的Create Match Group对话框中输入名称:MATCH_PPR_ADDR。点击OK关闭对话框。如图4.27所示。

图4.27 Create Match Group对话框

在工作表区可以看到增加了一个MATCH_PPR_ADDR 的MGrp,点击

Delta:Tolerence编辑框,将匹配值修改为0mil:100mil。即误差控制在100mil内。如图4.28所示。

图4.28 MATCH_PPR_ADDR匹配群组

4.2.5设置物理线宽和过孔

点击约束管理器左边工作表选择区里的Pysical工作表,然后再点击Pysical-> Constraint Set->All Layer工作表。在右边的工作表中可以看到已经有一个默认的规则了(名称为DEFAULT),这个规则是建立电路板的时候allegro自动生成的,所有的网络的线宽如果没有特别指定,都是默认使用这个规则,所以要把这个规则的参数修改一下。这个板子如果没有特别要求的走线都将采用4mil的线宽,所以把DEFAULT规则的线宽都改成4mil。改好后的DEFAULT规则如图4.29所示。

图4.29 DEFAULT规则参数

在线宽约束规则中一般只要填写Min Line Width,Neck Min Width,Differential Pair 下的Min Line Spaceing,Primary Gap 和Neck Gap。最后要设置PCB中需要用到的过孔,点击Vias的编辑框,如图4.30所示。

图4.30 添加VIA

弹出Edit Via List对话框,如图4.31所示。

图4.31 Edit Via List 对话框

把Show vias from the library复选框勾上,在左边的Select a via from the library or the database下面的列表框中就会列出你设置的库路径中的所有焊盘过孔,如果没有请检查你设置的库路径是否正确,参考112.2小节。在左边的列表框中找到你需要添加的过孔双击后该过孔就会出现在右边的列表框,在右边有三个按钮,点击Remove可以删除一个已选择的过孔。点击Up或者Down可以改变已选的过孔的上下位置,一般把用得最频繁的那个过孔放在最顶的位置,这样,当在布线的时候需要添加过孔会默认选择最顶的那个过孔,可以提高效率。选择好以后,点击OK关闭对话框。可以看到在工作表中Vias 列的编辑框内就出现在刚才选择的过孔,如图所示。

图4.32 添加好的过孔

另外一点,由于这个板子需要用到盲埋孔,盲里孔是用过孔生成的,在后面的章节讲。

下面增加两个线宽约束规则,点击菜单Objects->Create->Physical CSet 如图4.33所示。

下面增加两个线宽约束规则,点击菜单Objects->Create->Physical CSet 如图4.33所示。

图4.33 新增线宽约束规则

弹出Create Physical CSet对话框,在Physical CSet编辑框内输入规则名称3.15MIL_WIDTH(另一个10MIL_WIDTH)点击OK 关闭对话框。

图4.34 Create Physical CSet对话框

在右边的工作表中可以看到增加的两个约束规则,并且参数与DEFAULT是完全一样的,如图4.35所示。

图4.35 新增的两个线宽约束规则

其中3.15MIL_WIDTH约束规则将用于S3C6410 BGA封装扇出时候的线宽(3.15mil),因为BGA内部的空间有限,不可能采用更大的线宽,将这个约束规则应用到一个区域规则中,放在后面的章节讲。而10MIL_WIDTH可用于需要加粗的网络,比如电源网络,我们将这个规则应用到一些电源网络上。如果有需要还可以增加更多的线宽约束。

下面要修改3.15MIL_WIDTH 和10MIL_WIDTH 两个约束规则的参数,将

3.15MIL_WIDTH 约束规则的参数都设为3.15,10MIL_WIDTH 都设为10,由于VIA已经自动从DEFAULT规则上复制了,所以就不需要另外添加过孔了,修改好后的参数如图

4.36所示。

图4.36 修改后的两个线宽约束规则参数

下面将10MIL_WIDTH约束规则应用到电源网络上。点击左边工作表选择区的

Net->All Layer 工作表,在右边的工作表中区列出了设计中的所有Net,可以看到所有网络的Referenced Physical CSet 列中都是DEFAULT这个规则,这是allero自动添加的应用。首先建立一个Net Class将所有的电源网络都包括在这个Net Class中。选择菜单Objects->Create->Net Class,如图4.37所示。

图4.37 增加Net Class

弹出Create Net Class对话框,如图4.38所示。在Net Class 编辑框中输入名称POWER点击OK关闭对话框。

图4.38 增加POWER Net Class

在右边的工作表中可以看到增加了POWER NCls。然后在这个Net Class上点击右键弹出一个菜单项,选择Membership->Net Class,如图4.39所示。

图4.39 为Net Class增加成员

弹出Net Class Membership for POWER对话框,如图4.40所示。在左上角的下拉框中选择Net,之后左边的列表框就列出所有的网络,双击需要添加的电源网络将它加到右边的列表框中,也可以单击选中目标网络后点击按钮将它加入到右边的列表框。全部添加完后,点击OK关闭对话框。在右边的工作表区中,可以看到,刚才选择的网络都加入到了POWER的Net Class 中了。然后点击POWRER NCls 的Referenced Physical CSet 编辑框,选择刚才建立好的10MIL_WIDTH约束规则。最后如图 4.41所示。

图4.40 Net Class Membership for POWER 对话框

图4.41 将10MIL_WIDTH 规则应用到POWER 上

最后要将 3.15MIL_WIDTH 这个规则应用到一个Region(区域)规则上,以便在BGA 芯片(S3C6410)扇出的时候能够使用合适的线宽。点击左边Physical 工作表下的Region->All Layer。然后选择菜单Objects->Create->Region,如图4.42所示。

图4.42 新建区域规则

弹出Create Region对话框,输入名称BGA_RGN,点击OK关闭对话框,如图4.43所示。

图4.43 Create Region对话框

然后在右边工作表区里新增了一个BGA_RGN Rgn。点击Referenced Physical CSet 编辑框3.15MIL_WIDTH规则应用到BGA_RGN规则上。如图4.44所示。

图4.44 绑定BGA_RGN规则

如果你自己建了更多更详细的规则需要应用到其它网络上,方法也是一样的,这里就不重复了。

4.2.6设置间距约束规则

间距约束规则包括不同网络之间与相同网络之间。间距规则约束比较复杂,需要考虑信号完整性、阻抗要求以及制板工艺要求等。在4.2.4小节介绍了CPU与内存之间的信号布线要求,为了实现信号完整性的要求我要们专门为CPU与内存之间的信号线、地址控制信号线设置间距约束规则。

首先修改由allegro自动生成的默认间距规则DEFAULT。点击左边工作表选择区的Spacing 工作表下的Spacing Constraint Set->All Layer,在右边可以看到有一个DEFAULT间距规则。间距规则参数比较多,约束管理器将这些参数分成了七大类,每一类用一个单独的电子表格列出来,分别是:Line、Pins、Vias、Shape、Bond Finger、Hole、BB via Gap。如图4.45所示。

图4.45 间距规则参数分类

现在将DEFAULT规则的Line、Pins、Vias、Bond Finger、Hole、BB via Gap 页面下的所有参数设为4mil,而Shape 页面下的参数则设为10mil。Shape页面参数是设置铺铜与其它对象的间距,因此要大一些。如图4.46所示。

图4.46 DEFAULT 规则间距参数

新建一个3.15MIL_SPACE规则用于BGA的区域规则。点击菜单

Objects->Create->Spacing CSet,建立一个名称为3.15MIL_SPACE间距规则,过程参考4.2.5小节。建好后如4.2.6所示。

图4.47 新建3.15MIL_SPACE间距规则

然后将3.15MIL_SPACE规则的Line、Pins、Vias、Bond Finger、Hole、BB via Gap 页面下的所有参数设为3.15mil,而Shape 页面下的参数则设为10mil。如图4.48所示。

图4.48 3.15MIL_SPACE规则参数

然后点击Region->All Layer工作表,由于在Physical工作表中建立了一个

BGA_RGN区域规则,所以在Spacing工作表下同样能看到这个区域规则,点击BGA_RGN规则下的Referenced Spacing CSet编辑框,将3.15MIL_SPACE规则应用到BGA_RGN 区域规则上。如图4.49所示。

图4.49 应用3.15MIL_SPACE规则到区域规则上

为了完成CPU与内存之间的信号线规则约束设置,先建立几组BUS和Net Class。点击左边工作表选择区的Net->All Layer。然后在右边的工作表区将XM1DATA0- XM1DATA15、XM1DQM0、XM1DQM1、XM1DQS0、XM1DQS1 同时选中(按住鼠标左键拖动鼠标连续选择几个,然后按住Ctrl键再单个点击),点击鼠标右键弹出一个菜单项,选择Create->Bus,如图4.50所示。

图4.50 建立一个BUS

弹出Create Bus 对话框,输入名称DDR_DQL 点击OK 关闭对话框。如图4.51所示。用同样的方法现建立一个名称为DDR_DQH(成员为XM1DATA16- XM1DATA31、XM1DQM2、XM1DQM3、XM1DQS2、XM1DQS3,DDR_ADR(成员为XM1ADDR0-XM1ADDR15)的BUS。

图4.51 Create Bus对话框

然后建立一个Net Class,名称为DDR_DQ,将DDR_DQL 和DDR_DQH 两组BUS还有DDRCLK(差分对)包含进去。再建立一个Net Class,名称为DDR_CTR,并将DDR_ADR和XM1CASN、XM1CKE0、XM1CSN0、XM1RASN、XM1WEN几个网络包含进去。如图4.52所示。

图4.52 建立DDR_DQ,DDR_CTR 两组Net Class

新建一个间距规则DDR_SPACE参数都设为4mil,过程参考上面的描述。虽然

DDR_SPACE 间距规则的参数是与DEFAULT 规则一样的,但为了以后修改控制方便这样做是很有必要的,将DDR_SPACE 间距规则应用到DDR_DQ,DDR_CTR 两个Net Class 上,如图4.53所示。

图4.53 应用DDR_SPACE 规则

另外需要注意的是,当PCB板有盲里孔的时候,走线线边到过孔孔壁的间距要足够大,具体为:最小间距能力*(压合次数+1)。如果不是很清楚,最好事先与PCB厂家交流后确定这个值。

4.2.7设置相同网络间距规则

相同网络间距规则设置比较简单,一般只需注意过孔与过孔的间距就行了(包括盲埋孔),同一网络的两个过孔不能靠得太近,具体数据需要与PCB厂家确认后设定,不般不要小于最小间距能力即可。这里将DEFAULT这个默认的规则参数全部设为4mil即可。如图4.54所示。

图4.54 相同网络间距参数

4.3布线

布线前可先将网格设置成合适的参数,具体操作过程可以参考前面的章节,这里就不重复了。

4.3.1手工拉线

首先点击工具栏左上角的图标按钮,将模式切换到Etchedit 模式。然后点击左边的Find按钮,在弹出的面板中,点击All On按钮,将该模式下的所有对象选中。如图4.55所示。

图4.55 Find 面板

在allegro中拉线是一件很轻松的事情,方法有很多种,下面介绍三种常用的方法。

(1)选择Route->Connect 菜单如图4.56所示。或者直接点击工具栏左边的图标按钮。

图4.56 Add Connect菜单

点击右边的Options按钮,弹出布线的Options面板。如所示。

图4.57 布线的Options面板

·Act中显示的为当前的层;

·Alt显示的为将要切换到的层;

·Via中显示为选择的换层时用的过孔;

·Net中显示当前走线的网络,如果点击了某个管脚,即开始布线,则显示该网络名称,否则显示的是Null Net;

·Line Lock中显示的是走线的形式和走线时的拐角。走线形式有Line(直线)和Arc(弧线)两种;走线拐角有Off(无拐角)、45(45°拐角)、90(90°拐角);

·Miter显示管脚的设置,如图 4.57 中1x width和Min表示斜边长度至少为一倍的线宽,但当在Line Lock中选择了Off时此项就不会显示;

·Line width显示的是设置的线宽大小;

·Bubble显示的为推挤走线的方式。其中Off为关闭推挤功能;Hug only为当前走的线遇到已存在的线的时候采取绕过的方式,即原来的线不动。Hug preferred,已存在的线“拥抱”新走的线;Shove preferred 已存在的新走的线推挤;

·Shove vias显示的为推挤过孔的方式。其中Off为关闭推挤功能;Minimal为最小幅度的去推挤Via;Full为完全地去推挤Via;

·Gridless复选框表示走线是否可以在格点上;

·Smooth显示的为自动调整走线的方式。其中Off为关闭自动调整走线功能;Minimal为最小幅度的调整;Full为完全地去调整;

·Snap to connect point复选框表示走线是否从Pin、Via 的中心原点引出;

·Replace etch复选框表示走线是否允许改变存在的Trace,即不用删除命令。在走线时若两点间存在走线,那么再次添加的走线时旧的走线将被自动删除。

设置好Options面板中的参数后,在画图区域内单击需要添加走线的Pin或者Trace,移动鼠标就走出一根线,在需要换层的地方双击左键后就会添加一个过孔,或者点击鼠标右键选择Add Via添加过孔,如图4.58所示。画好线后右键选择Done完成拉线。

图4.58 鼠标右键添加过孔

(2)可以在需要添加直接的管脚或者线段上直接单击鼠标左键来开始拉线,然后设置Options面板中的参数,添加过孔的方法与第(1)种一样,拉好后右键选择Done完成。

(3)需要添加直接的管脚或者线段上点击右键,选择Add Connect,之后与第(2)种方式一样。

在接线的过程中如果觉得预拉线(鼠线)看起来混乱,可以选择菜单

Display->Blank Rats来关闭预拉线的显示,选择All 关闭全部。如所示。如果需要重新显示预拉线,执行菜单Display->Show Rats就行了。

图4.59 关闭预拉线的显示

有些管脚密集的芯片上的管脚编号也会让人觉得眼花僚乱,同样可以关闭Pin Number。选择菜单Display->Color/Visibility。或者直接点击工具栏图标按钮。弹出Color Dialog对话框,如图4.60所示。

图4.60 关闭Pin Number

然后点击Package Gaometry选项,在右边列表中找到Pin_Number复选框,将其取消,点击OK关闭对话框。这时候所用管脚上的编号都不见了。

4.3.2应用区域规则

我们已经在约束管理器中设置好了区域规则,要使用它还需在PCB中完成最后一步。首先选择Shape->Rectangular或者直接点击工具栏的图标。右边的Options 面板参数设置如图4.61所示。在Active Class and Subclass下面的下拉框中选择Constraint Region,第二个下拉框选择All也可以选择单个走线层,这样需要画多次。在Assign to Region下拉框中选择已经在约束管理器中设置好的区域规则BGA_RGN。

图4.61 区域规则

然后在作图区域中,在CPU封装的周围画一个矩形,如图4.62 所示。

图4.62 在芯片封装周围画一个矩形

点击鼠标右键Done完成。之后,在红色矩形的区域内的布线规则将被BGA_RGN区域规则约束,而出了这个矩形之外的区域则受其它你设定的规则约束。

4.3.3扇出布线

扇出布线可以使用Route->Fanout by pick命令和Route->Create Fanout命令。Fanout by pick 命令需要启动自动布线器设置比较麻烦。Create Fanout命令不需要启动自动布线,比较方便,功能要求不多的时候可以用这个命令来完成。选择菜

单Route->Create Fanout,如图4.63所示。

图4.63 扇出布线

然后在作图区域点击鼠标右键弹出一个菜单项选择Fanout Parameters。如图4.64所示。

图4.64 Fanout Parameters

图4.65 Create Fanout对话框

弹出Create Fanout 对话框,如图4.65所示。

·Include Unassigned Pins复选框表示包括在原理图中示连接的管脚;

·Include All Sane Net Pins复选框表示包括所有相同网络的管脚;

·Star显示的是过孔的开始层;

·End显示的是过孔的结束层;

·Via Structure单选框表示使用过孔阵列扇出;

·Via单选框表示使用过孔扇出,在右边的下拉列表框中选择过孔类型;

·Via Direction从下接列表框中选择过孔的方向;

·Override Line Width复选框表示扇出线的线宽,如果没有选中则用约束管理器设定的线宽;

·Pin-Via Space设置过孔到管脚的间距;

·Curve复选框表示扇出引线是否弯曲。有两种弯曲方向:Cw-顺时针方向;Ccw 逆时针方向;

·Curve Radius弯曲半径。

设置好参数后,点击OK关闭对话框,然后用鼠标左键单击要进行扇出的元件。该元件就自动的按照设置的参数扇出。点击鼠标右键选择Done完成。扇出的效果如所示。

图4.66 扇出布线效果

另外如果有些管脚已经布了线,则这些管脚不会被扇出。

4.3.4差分布线

差分信号的布线要求等长等间距,手工很难去控制,在约束管理器中设置了差分对(Differential Pair)后,差分布线就变得简单了。单击差分信号的其中一个管脚,移动鼠标,可以发现另外一个管脚的线也自动出来了,并且两条线的间距都是相等的,拐角也一样。在拉差分线的时候,如果在走线密集的区域,可能切换到Neck模式下,这时候差分线的线宽和间距都变成Neck的线线宽和间距。

在走线的时候点击鼠标右键,弹出一个菜单项,点击Neck Mode则在正常模式和Neck模式下交替切换,如果此时正处于Neck模式,则Neck Mode菜单项前面会有一个“√“如图4.67 所示。

图4.67 差分布线Neck模式与正常模式

有时候如果想以单根线布线,或者在修改差分走线的时候希望另外一条走线不跟着一起变化,可以在走线命令或者修改命令下单击鼠标右键,在弹出的菜单项中选择Single Trace Mode,选中以后Single Trace Mode菜单前面会有一个“√“,再次点击该菜单后又切换回正常的差分线模式,如图4.68所示。

图4.68 Single Trace Mode

4.3.5等长绕线

在有等长要求的走线布完后,需要进行绕线来实现等长匹配。选择Route->Delay Tune如图4.69所示。,或者直接单击左边工具栏的图标按钮。

图4.69 绕线命令

然后在左边的Options面板设置参数。

·Active etch subclass显示的是当前走线层;

·Net显示的是当前绕线的网络名;

·Gap in use显示的是当前设置的间距大小;

·Style选择绕线的方式,有三种选择:Accordion;Trombone;Sawtooth;每一种前面都有个形状的小图标,一看就明白了;

·Centered复选框如果选中就会在走线的两边都绕线,否则只在一边绕线;

·Gap选择绕线的间距。有两种1x space 1 倍线宽;3x space 3 倍线宽;

·Corners选择拐角的方式。有三种:90(90°拐角);45(45°拐角);FullArc (半圆拐角)。

设置好参数后在空间大的地方点击需要绕线的走线,然后移动鼠标就可以绕出线来,这时候观察左下角的标尺,如果变为绿色说明这条走线的长度已经在设定的误差范围了。如图4.70所示。

图4.70 绕蛇形线

4.3.6分割平面

Allegro中的平面下负片都是可以分割的,在分割之前PCB 中必需添加了route keepin区域。所有的正片和负片都要进行敷铜后才能分割。为了在PCB中清楚的区分不同网络的位置,可以将需要分割的网络采用不同的高亮颜色。选择

Display->Color/Visibility菜单,在弹出的Color Dialog对话框选择Nets,然后将需要进行分割的网络使用不同的颜色。如图4.71所示。

图4.71 使用不同颜色区分网络

完成后点击OK关闭对话框。下面用Anti Etch来分割平面。选择菜单项Add->Line,或者直接点击左边工具栏的图标。在Option面板设置如所示。

·Active Class and Subclass选择Anti Etch;

·Subclass选择需要分割的层;

·Line width选15,Line width就是两个分割区域间的间距。其它默认就可以。

图4.72 分割平面

然后点击鼠标左键添加分割线,需要注意的是要保证分割线的起点和终点都超出OutLine一点,画好分割线后单击鼠标右键选择Done完成。如图4.73所示。

图4.73 添加分割线

然后选择菜单Edit->Split Plane->Create,如图4.74所示。

图4.74 创建分割区网络

弹出Create Split Plane对话框,在Select layer for split plane creation 中选择需要分割的层,Shape type desired 选择Dynamic即选择动态铜。

图4.75 Create Split Plane对话框

点击Create后弹出Select a net对话框,如图4.76所示。,这时候发现在PCB 中,有一块分割区域处于高亮的状态,从Select a net对话框的列表框中为这块区域选择一个网络,点击OK后自动切换到下一块区域,直到所有的区域都分配完网络后,点击OK

话话框自动关闭。

图4.76 Select a net对话框

OrCAD Capture CIS Cadence原理图绘制

OrCADCaptureCIS(Cadence原理图绘制) 1,打开软件........................................ 2,设置标题栏..................................... 3,创建工程文件................................... 4,设置颜色........................................ 2.制作原理库.......................................... 1,创建元件库...................................... 2,修改元件库位置,新建原理图封库................. 3,原理封装库的操作............................... 3.绘制原理图.......................................... 1.加入元件库,放置元件............................ 2.原理图的操作.................................... 3.browse命令的使用技巧 ........................... 4.元件的替换与更新................................ 4.导出网表............................................ 1.原理图器件序号修改.............................. 2.原理图规则检查.................................. 3.显示DRC错误信息................................ 4.创建网表........................................ 5.生成元件清单(.BOM)..................................

CADENCE工具VIRTUSO-DRACULA入门介绍

CADENCE工具VIRTUSO/DRACULA入门介绍 (2) 1.使用V IRTUSO/D IV A/D RACULA之前的准备 (2) 1.1.找一台装有IC工具的服务器 (2) 1.2.连接到这台计算机上 (2) 2.IC工具的软件环境配置 (3) 2.1.创建IC工具的启动目录,即工作目录。 (3) 2.2.将配置文件拷贝到IC工具的启动目录 (3) 2.3.将工艺文件和显示文件拷贝至工作目录 (3) 2.4.启动IC工具,命令为icfb& (3) 3.IC工具的使用 (4) 3.1.新建一个设计库 (4) 3.2.Compile一个工艺文件 (5) 3.3.创建新设计 (5) 3.4.编辑电路图 (5) 3.5.编辑版图 (6) 3.6.根据习惯改变版图层次的显示特性 (7) 3.7.完成版图编辑之后保存,退出 (8) 4.版图的DRC检查 (8) 4.1.基于Diva的方式(不推荐) (8) 4.2.基于Dracula的方式(推荐) (8) 5.LVS (10) 5.1.准备版图的GDS文件 (10) 5.2.准备电路网表 (10) 5.3.用LOGLVS转换电路网表成LVS要求格式 (11) 5.4.修改lvs的命令文件 (12) 5.5.运行PDRACULA来生成lvs任务的可执行文件 (12) 5.6.在控制台下,运行https://www.360docs.net/doc/da1366961.html,文件 (12) 5.7.查看错误 (12) 5.8.修正版图或网表错误 (13) 6.一些小经验 (13) 7.附件清单 (14)

Cadence工具Virtuso/Dracula入门介绍 (以上华0.6um DPDM工艺设计库为例) Cadence 是一套功能强大的EDA软件,包含有诸如IC、SE等常用芯片设计工具。其中IC是针对全定制芯片设计应用的,IC本身仍是一套工具集。本手册主要讨论其中的全定制版图设计工具Virtuso和验证工具Diva/Dracula之使用方法。其中Diva是基于Xwindow 的方式,而Dracula是基于命令行的方式;Virtuso中提供这两者的相关接口。 采用Virtuso/ Diva/Dracula进行芯片的设计和验证大致有如下几步:准备schmematic(电路)、画layout(版图)、作版图设计规则检查(DRC)、做电路与版图的一致性检查(LVS)、导出最终版图的gds文件。 缩写术语: ERC: Electrical Rule Check DRC: Design Rule Check LVS: Layout Versus Schematic LPE: Layout Parameter Extraction PRE: Parasitic Resistor Extraction 1.使用Virtuso/Diva/Dracula之前的准备 1.1.找一台装有IC工具的服务器 Virtuso不能单独安装,所以只有在安装了IC工具的计算机上才能使用。 [例]机房的10台服务器(IP:219.223.169.111到219.223.169.120)都能使用Virtuso/Diva/Dracula. 1.2.连接到这台计算机上 除非是在自己的计算机上安装有IC工具,否则您必须保证能够从您的计算机远程登录到装有IC的服务器上。 [例]以登录服务器IC来说明远程登录方法: a.向管理员申请用户(每个人都已经有了一个用户) b.下载远程登录软件Exceed, 在本地计算机上安装; 安装完毕之后进行远程登录配置: 在开始菜单→程序→Hummingbird.Exceed.v7.1.Multilanguage→Exceed→Client Wizard设定xterm,Host:219.223.169.111,Host type: Linux(下拉菜单选择),其余next即可。c.完成登录。 采用其它方式比如vnc、xWin、SSH Secure Shell Client等远程终端方法登录。 『注意』使用不同的远程登陆软件连接服务器;不同的服务器所需的软件设置均有所不同,配置细节请咨询曾经使用过该登陆软件的师兄师姐或同学。

Cadence原理图绘制流程

第一章设计流程 传统的硬件系统设计流程如图1-1所示,由于系统速率较低,整个系统基本工作在集中参数模型下,因此各个设计阶段之间的影响很小。设计人员只需要了解本阶段的基本知识及设计方法即可。但是随着工艺水平的不断提高,系统速率快速的提升,系统的实际行为和理想模型之间的差距越来越大,各设计阶段之间的影响也越来越显著。为了保证设计的正确性,设计流程也因此有所变动,如图1-2所示,主要体现在增加了系统的前仿真和后仿真。通过两次仿真的结果来预测系统在分布参数的情况下是否能够工作正常,减少失败的可能性。 细化并调整以上原理图设计阶段的流 程,并结合我们的实际情况,原理图设计 阶段应该包括如下几个过程: 1、 阅读相关资料和器件手册 在这个阶段应该阅读的资料包括,系统的详细设计、数据流分析、各器件手册、器件成本等。 2、 选择器件并开始建库 在这个阶段应该基本完成从主器件到各种辅助器件的选择工作,并根据选择结果申请建库。 3、 确认器件资料并完成详细设计框图 为保证器件的选择符合系统的要求,在这一阶段需要完成各部分电路具体连接方式的设计框图,同时再次确认器件的相关参数符合系统的要求,并能够和其他器件正确配合。 4、 编写相关文档 这些文档可以包括:器件选择原因、可替换器件列表、器件间的连接框图、相关设计的来源(参考设计、曾验证过的设计等),参数选择说明,高速连接线及其它信息说明。 5、 完成EPLD 内部逻辑设计,并充分考虑可扩展性。

在编写相关文档的的同时需要完成EPLD内部逻辑的设计,确定器件容量及连接方式可行。 6、使用Concept-HDL绘制原理图 7、检查原理图及相关文档确保其一致性。 以上流程中并未包括前仿真的相关内容,在设计中可以根据实际情况,有选择的对部分重要连线作相关仿真,也可以根据I/O的阻抗,上升下降沿变化规律等信息简单分析判断。此流程中的各部分具体要求、注意事项、相关经验和技巧有待进一步完善。

(完整版)HSPICE与CADENCE仿真规范与实例..

电路模拟实验专题 实验文档

一、简介 本实验专题基于SPICE(Simulation Program With Integrated Circuit)仿真模拟,讲授电路模拟的方法和spice仿真工具的使用。 SPICE仿真器有很多版本,比如商用的PSPICE、HSPICE、SPECTRE、ELDO,免费版本的WinSPICE,Spice OPUS等等,其中HSPICE和SPECTRE功能更为强大,在集成电路设计中使用得更为广泛。因此本实验专题以HSPICE和SPECTRE作为主要的仿真工具,进行电路模拟方法和技巧的训练。 参加本实验专题的人员应具备集成电路设计基础、器件模型等相关知识。 二、Spice基本知识(2) 无论哪种spice仿真器,使用的spice语法或语句是一致的或相似的,差别只是在于形式上的不同而已,基本的原理和框架是一致的。因此这里简单介绍一下spice的基本框架,详细的spice语法可参照相关的spice教材或相应仿真器的说明文档。 首先看一个简单的例子,采用spice模拟MOS管的输出特性,对一个NMOS管进行输入输出特性直流扫描。V GS从1V变化到3V,步长为0.5V;V DS从0V变化到5V,步长为0.2V;输出以V GS为参量、I D与V DS之间关系波形图。 *Output Characteristics for NMOS M1 2 1 0 0 MNMOS w=5u l=1.0u VGS 1 0 1.0 VDS 2 0 5 .op .dc vds 0 5 .2 Vgs 1 3 0.5 .plot dc -I(vds) .probe *model .MODEL MNMOS NMOS VTO=0.7 KP=110U +LAMBDA=0.04 GAMMA=0.4 PHI=0.7 .end 描述的仿真电路如下图,

Cadence从原理图到PCB

Cadence从原理图到PCB的流程图: 一.原理图 1.建立工程 2.绘制原理图 3. 生成网络表(Net List): 在画板的时候需要导入网络表,在这之前可以为元件自动编号,在工程管理界面下选中.dsn文件,然后选Tools—Annotate;再进行DRC检测。DRC之后可以尝试去生成网络表了,在工程管理界面下,选Tools--Create Netlist, 二.PCB 1. 打开PCB Editor,在弹出的对话框中选择Allegro PCB Design GXL(legacy),然后点击Ok进入PCB编辑器。接下来就是利用向导建立电路板了,包括确定板子的大小、层数、形状等等参数。 File-new 在弹出的对话框中的Drawing Type选择Board(wizard),然后确定文件名,Browse存盘路径等,最后点Ok进入向导。

注意:板子的路径应该和前面生成网表的路径保持一致。 2.导入网络表 接上一个步骤,将网络表导入到刚建好的PCB中。 在此之前还有一个很重要的工作要做,就是指定PCB封装的路径。点击Setup--User Preferences,在弹出对话框中的Categories中选中Design_paths,分别为padpath和psmpath指定路径,即将PCB元件封装路径添加到padpath和psmpath中,以告知Allegro从指定的路径寻找封装。

元件的PCB封装需要自己做或是直接用别人做好的,封装准备好后往PCB 中导入网络表,点击File--Import--Logic,在Import directory中指定在原理图部分生成的网络表文件路径,其他设置使用默认值即可,点击Import Cadence即可导入网络表。 3.叠层设计,规则设定,布局布线 暂时简单描述下元件的放置,布局,布线,具体的叠层设计,设计规则等后面再详细补充

cadence工具介绍

标签:cadence工具介绍 cadence工具介绍 主要是cadence的常用工具: (一)System & Logic Design & Verification 1、SPW:系统仿真工具,与matlab相似,但是比其专业,用于系统建模,常用于通信系统2、Incisive: 就是大家最常用的nc_verilog, nc_sim, nc_lauch,以及ABV,TBV的集合,仿真和验证功能很强大 (二)Synthesis & Place & Route 1、BuildGates:与DC同期推出的综合工具,但是在国内基本上没有什么市场,偶尔有几家公司用2、RTL Complil er:继BuildGates之后的一个综合工具,号称时序,面积和功耗都优于DC,但是仍然无法取代人们耳熟能详的DC 3、Silicon Ensemble & PKS: 硅谷早期做物理设计的工程师,几乎都用它。是第一个布局布线工具4、First Encount er & SoC Encounter: 继SE以后的很好的P&R工具,但是盗版太少,所以也只有大公司能用且都用,但是目前astro在国内有赶超之意5、Cetlic :噪声分析工具,权威6、Fire&Ice: 分布参数提取工具,国内很多人用synopsys的StarRC 7、VoltageStrom:静态功耗和动态功耗分析的很不错的工具,与s 的Power Complier相同。8、SingnalStrom:时序分析工具,唯一一个能建库的工具9、nanoroute : 很强大的布线器喔,但是不是一般人能用的到的。我也是在cadence实习的时候爽过的,比astro快十倍不止。 (三)custom IC Design 1、Virtoso:版图编辑工具,没有人不知道吧,太常用了,现在还有一个公司的laker 2、diva, dracula, assura: 物理验证工具,用的比较普遍,但是calibre是标准,很多公司都是用其中的一个和calibre同时验证,我好可怜,现在只能用herculus (四)数模混合信号设计这部分太多了,但是一个ADE的环境基本上都能包括,不细说了,打字都打累了(五)PCB A llego最为典型了,很多大公司都用的。 系统分类: 软件开发 | 用户分类: IC设计 | 来源: 原创 | 【推荐给朋 友】 | 【添加到收藏夹】 Cadence 是一个大型的EDA 软件,它几乎可以完成电子设计的方方面面,包括ASIC 设计、FPGA 设计和PCB 板设计。Cadence 在仿真、电路图设计、自动布局布线、版图设计及验证等方面有着绝对的优势。Cadence 包含的工具较多几乎包括了EDA 设计的方方面面。下面主要介绍其产品线的范围。 1、板级电路设计系统。 包括原理图输入、生成、模拟数字/混合电路仿真,fpga设计,pcb编辑和自动布局布线mcm电路设计、高速pcb版图的设计仿真等等。包括: A、Concept HDL原理图设计输入工具, 有for NT和for Unix的产品。

Cadence仿真简介

时序计算和Cadence仿真结果的运用 中兴通讯康讯研究所EDA设计部余昌盛刘忠亮 摘要:本文通过对源同步时序公式的推导,结合对SPECCTRAQuest时序仿真方法的分析,推导出了使用SPECCTRAQuest进行时序仿真时的计算公式,并对公式的使用进行了说明。 关键词:时序仿真源同步时序电路时序公式 一.前言 通常我们在时序仿真中,首先通过时序计算公式得到数据信号与时钟信号的理论关系,在Cadence仿真中,我们也获得了一系列的仿真结果,怎样把仿真结果正确的运用到公式中,仿真结果的具体含义是什么,是我们正确使用Cadence仿真工具的关键。下面对时序计算公式和仿真结果进行详细分析。 二.时序关系的计算 电路设计中的时序计算,就是根据信号驱动器件的输出信号与时钟的关系(Tco——时钟到数据输出有效时间)和信号与时钟在PCB上的传输时间(Tflytime)同时考虑信号驱动的负载效应、时钟的抖动(Tjitter)、共同时钟的相位偏移(Tskew)等,从而在接收端满足接收器件的建立时间(Tsetup)和保持时间(Thold)要求。通过这些参数,我们可以推导出满足建立时间和保持时间的计算公式。 时序电路根据时钟的同步方式的不同,通常分为源同步时序电路(Source-synchronous timing)和共同时钟同步电路(common-clock timing)。这两者在时序分析方法上是类似的,下面以源同步电路来说明。 源同步时序电路也就是同步时钟由发送数据或接收数据的芯片提供。图1中,时钟信号是由CPU驱动到SDRAM方向的单向时钟,数据线Data是双向的。 图1

图2是信号由CPU 向SDRAM 驱动时的时序图,也就是数据与时钟的传输方向相同时 的情况。 Tsetup ’ Thold ’ CPU CLK OUT SDRAM CLK IN CPU Signals OUT SDRAM Signals IN Tco_min Tco_max T ft_clk T ft_data T cycle SDRAM ’S inputs Setup time SDRAM ’S inputs Hold time 图2 图中参数解释如下: ■ Tft_clk :时钟信号在PCB 板上的传输时间; ■ Tft_data :数据信号在PCB 板上的传输时间; ■ Tcycle :时钟周期 ■ Tsetup’:数据到达接收缓冲器端口时实际的建立时间; ■ Thold’:数据到达接收缓冲器端口时实际的保持时间; ■ Tco_max/Tco_min :时钟到数据的输出有效时间。 由图2的时序图,我们可以推导出,为了满足接收芯片的Tsetup 和Thold 时序要求,即 Tsetup’>Tsetup 和Thold’>Thold ,所以Tft_clk 和Tft_data 应满足如下等式: Tft_data_min > Thold – Tco_min + Tft_clk (公式1) Tft_data_max < Tcycle - Tsetup – Tco_max + Tft_clk (公式2) 当信号与时钟传输方向相反时,也就是图1中数据由SDRAM 向CPU 芯片驱动时,可 以推导出类似的公式: Tft_data_min > Thold – Tco_min - Tft_clk (公式3) Tft_data_max < Tcycle - Tsetup – Tco_max - Tft_clk (公式4) 如果我们把时钟的传输延时Tft_clk 看成是一个带符号的数,当时钟的驱动方向与数据 驱动方向相同时,定义Tft_clk 为正数,当时钟驱动方向与数据驱动方向相反时,定义Tft_clk 为负数,则公式3和公式4可以统一到公式1和公式2中。 三.Cadence 的时序仿真 在上面推导出了时序的计算公式,在公式中用到了器件手册中的Tco 参数,器件手册中 Tco 参数的获得,实际上是在某一种测试条件下的测量值,而在实际使用上,驱动器的实际 负载并不是手册上给出的负载条件,因此,我们有必要使用一种工具仿真在实际负载条件下 的信号延时。Cadence 提供了这种工具,它通过仿真提供了实际负载条件下和测试负载条件 下的延时相对值。 我们先来回顾一下CADENCE 的仿真报告形式。仿真报告中涉及到三个参数:FTSmode 、

Cadence 原理图库设计

Cadence原理图库设计 一.工具及库文件目录结构 Cadence提供Part Developer库开发工具供大家建原理图库使用。 Cadence 的元件库必具备如下文件目录结构为: Library----------cell----------view(包括Sym_1,Entity,Chips,Part-table) Sym_1:存放元件符号 Entity:存放元件端口的高层语言描述 Chips:存放元件的物理封装说明和属性 Part-table:存放元件的附加属性,用于构造企业特定部件 我们可以通过定义或修改上述几个文件的内容来创建和修改一个元件库,但通过以下几个步骤来创建元件库则更直观可靠一些。 二.定义逻辑管脚 在打开或新建的Project Manager中,如图示,打开Part Developer。 然后出现如下画面, 点击Create New,下图新菜单中提示大家选择库路径,新建库元件名称及器件类型。

点击ok后,Part Developer首先让大家输入元件的逻辑管脚。一个原理图符号可以有标量管脚和矢量管脚。 标量管脚在符号中有确定位置,便于检查信号与管脚的对应,但矢量管脚却可使原理图更简洁,适用于多位 总线管脚。 点击上图中的Edit,编辑器会让我们对首或尾带有数字的字符串的多种输入方式(A1; 1A; 1A1)进行选择,一但选定,编辑器即可对同时具有数字和字母的管脚输入进行矢量或标量界定。 管脚名首尾均不带数字的字符串如A; A1A则自动被识别为标量管脚。 按照元件手册决定管脚名称及逻辑方向,选择是否为低电平有效,点击ADD即可加入新的管脚。 (注:不论是标量或矢量管脚,均可采用集体输入,如在Pin Names栏可输入A1-A8, 1C-16C)

cadence仿真流程

第一章在Allegro 中准备好进行SI 仿真的PCB 板图 1)在Cadence 中进行SI 分析可以通过几种方式得到结果: * Allegro 的PCB 画板界面,通过处理可以直接得到结果,或者直接以*.brd 存盘。 * 使用SpecctreQuest 打开*.brd,进行必要设置,通过处理直接得到结果。这实际与上述方式类似,只不过是两个独立的模块,真正的仿真软件是下面的SigXplore 程序。 * 直接打开SigXplore 建立拓扑进行仿真。 2)从PowerPCB 转换到Allegro 格式 在PowerPCb 中对已经完成的PCB 板,作如下操作: 在文件菜单,选择Export 操作,出现File Export 窗口,选择ASCII 格式*.asc 文件格式,并指定文件名称和路径(图1.1)。 图1.1 在PowerPCB 中输出通用ASC 格式文件

图1.2 PowerPCB 导出格式设置窗口 点击图1.1 的保存按钮后出现图1.2 ASCII 输出定制窗口,在该窗口中,点击“Select All”项、在Expand Attributes 中选中Parts 和Nets 两项,尤其注意在Format 窗口只能选择PowerPCB V3.0 以下版本格式,否则Allegro 不能正确导入。 3)在Allegro 中导入*.ascPCB 板图 在文件菜单,选择Import 操作,出现一个下拉菜单,在下拉菜单中选择PADS 项,出现PADS IN 设置窗口(图1.3),在该窗口中需要设置3 个必要参数: 图1.3 转换阿三次文件参数设置窗口 i. 在的一栏那填入源asc 文件的目录

于博士Cadence视频教程原理图设计pdf

Cadence SPB 15.7 快速入门视频教程 的SPB 16.2版本 第01讲 - 第15讲:OrCAD Capture CIS原理图创建 第16讲 - 第26讲:Cadence Allegro PCB创建封装 第27讲 - 第36讲:Cadence Allegro PCB创建电路板和元器件布局 第37讲 - 第46讲:Cadence Allegro PCB设置布线规则 第47讲 - 第56讲:Cadence Allegro PCB布线 第57讲 - 第60讲:Cadence Allegro PCB后处理、制作光绘文件 第1讲 课程介绍,学习方法,了解CADENCE软件 1.要开发的工程 本教程以下面的例子来开始原理图设计和PCB布线 2.教程内容

3.软件介绍 Design Entry CIS:板级原理图工具 Design Entry HDL:设计芯片的原理图工具,板级设计不用 Layout Plus:OrCAD自带的PCB布线工具,功能不如PCB Editor强大 Layout Plus SmartRoute Calibrate:OrCAD自带的PCB布线工具,功能不如PCB Editor强大PCB Editor:Cadence 的PCB布线工具 PCB Librarian:Cadence 的PCB封装制作工具 PCB Router:Cadence 的自动布线器 PCB SI:Cadence 的PCB信号完整性信号仿真的工具 SigXplorer:Cadence 的PCB信号完整性信号仿真的工具 4.软件列表

5.开始学习Design Entry CIS 启动:Start/Cadence SPB 16.2/Design Entry CIS 启动后,显示下图: 里面有很多选项,应该是对应不同的License 本教程使用:OrCAD Capture CIS 我个人认为:Allegro PCB Design CIS XL是所有可选程序中,功能最强大的,但不知道,强在哪里;而且本教程的原理图文件可以使用上表中不同的程序打开 6.选择OrCAD Capture CIS,启动后显示下图

Cadenceallegro菜单解释

Cadence allegro菜单解释——file 已有 320 次阅读2009-8-16 19:17|个人分类:|关键词:Cadence allegro file 菜单解释 每一款软件几乎都有File菜单,接下来详细解释一下allegro与其他软件不同的菜单。 new 新建PCB文件,点new菜单进入对话框后,drawing type里面包含有9个选项,一般我们如果设计PCB就选择默认第一个board即可。 如果我们要建封装库选package symbol即可,其他7个选项一般很少用,大家可以理解字面意思就可以知道什么意思了。 open 打开你所要设计的 PCB文件,或者封装库文件。 recent designs 打开你所设计的PCB文件,一般是指近期所设计的或者打开过的PCB文件。 save 保存 save as 另存为,重命名。 import import 菜单包含许多项,下面详细解释一下我们经常用到的命令。 logic 导入网表,详细介绍在allegro基础教程连载已经有介绍,在此不再详细介绍。 artwork 导入从其他PCB文件导出的.art的文件。一般很少用词命令。 命令IPF和stream 很少用,略。 DXF 导入结构要素图或者其他DXF的文件。 导入方法如下: 点import/DXF后,在弹出的对话框选择,在DXF file里选择你要导入的DXF的路径,DXF units 选择MM,然后勾选use default text table和incremental addition,其他默认即可。再点edit/view layers弹出对话框,勾选select all,DXF layer filter 选择all,即为导入所有层的信息,然后在下面的class里选择board geometry,subclass选择assembly_notes,因为一般导入结构要素图都是导入这一层,然后点ok,进入了点import/DXF后弹出的对话框,然后点import即可将结构要素图导入。 IDF IFF Router PCAD 这四个命令也很少用,略。 PADS 一般建库的时候导入焊盘。 sub-drawing 命令功能非常强大,也是我们在PCB设计中经常用的命令,如果能够非常合理的应用sub-drawing命令会提高我们设计PCB的效率。

CADENCE从原理图到PCB步骤(精)

CADENCE从原理图到PCB步骤 一.原理图 1.建立工程 与其他绘图软件一样,OrCAD以Project来管理各种设计文件。点击开始菜单,然后依次是所有程序-- Allegro SPB 15.5--Design Entry CIS,在弹出的Studio Suite Selection对话框中选择第一项OrCAD_Capture_CIS_option with capture,点击Ok进入Capture CIS。接下来是File--New--Project,在弹出的对话框中填入工程名、路径等等,点击Ok进入设计界面。2.绘制原理图 新建工程后打开的是默认的原理图文件SCHEMATIC1 PAGE1,右侧有工具栏,用于放置元件、画线和添加网络等等,用法和Protel类似。点击上侧工具栏的Project manager(文件夹树图标)进入工程管理界面,在这里可以修改原理图文件名、设置原理图纸张大小和添加原理图库等等。 1)修改原理图纸张大小: 双击SCHEMATIC1文件夹,右键点击PAGE1,选择Schematic1 Page Properties,在Page Size 中可以选择单位、大小等; 2)添加原理图库: File--New--Library,可以看到在Library文件夹中多了一个library1.olb的原理图库文件,右键单击该文件,选择Save,改名存盘; 3)添加新元件: 常用的元件用自带的(比如说电阻、电容的),很多时候都要自己做元件,或者用别人做好的元件。右键单击刚才新建的olb库文件,选New Part,或是New Part From Spreadsheet,后者以表格的方式建立新元件,对于画管脚特多的芯片元件非常合适,可以直接从芯片Datasheet中的引脚描述表格中直接拷贝、粘贴即可(pdf格式的Datasheet按住Alt键可以按列选择),可以批量添加管脚,方便快捷。 4)生成网络表(Net List): 在画板的时候需要导入网络表,在这之前原理图应该差不多完工了,剩下的工作就是查缺补漏。可以为元件自动编号,在工程管理界面下选中.dsn文件,然后选Tools—Annotate (注解),在弹出的对话框中选定一些编号规则,根据需求进行修改或用默认设置即可。进行DRC检测也是在生成网络表之前的一项重要工作,可以避免出现一些不必要的设计错误。DRC之后可以尝试去生成网络表了,还是在工程管理界面下,选Tools--Create Netlist,可以在弹出的对话框中选择网络表的存放路径,其他默认设置即可,生成网络表的过程中如果出错,可以通Windows--Session Log查看出错的原因,比如说有元器件忘了添加封装等。 5)更新元件到原理图: 当元件库中的某个元件修改后需要原理图也同步更新时,可以不必重新放置元件(万一有100个或更多该元件岂不是要疯了),在工程管理界面下,双击Design Cache文件夹,选中刚才修改的元件,右键单击选择Update Cache,一路yes下去即可将原理图中该元件全部更新。 6)一些细节: 画原理图时的放大和缩小分别是按键“i”(Zoom In)和“o”(Zoom Out)和Protel有所区别;在创建元件封装的时候,除了GND可以同名以外,不能有其他同名的管脚,否者报错,不过貌似报错也没有影响,因为打开OrCAD自带的元件库时(比如Xilinx的FPGA),也有除GND外的同名管脚;添加网络标号的快捷键是“n”,不过在OrCAD中网络标号无法复制,记得Protel中是可以通过复制已有的网络标号来添加新的网络标号的。

cadence软件介绍

1.Allegro PCB Design CIS Allegro PCB Design CIS Allegro Designer Entry CIS集成强大的原理图设计功能,其特点主要是具有快捷的元件信息管理系统(CIS),并具有通用PCB设计入口。扩展的CIS功能可以方便地访问本地元件优选数据库和元件信息。通过减少重新搜索元件信息或重复建库,手动输入元件信息,维护元件数据的时间,从而可以提高生产率。无论是设计全新的模拟,数字,或混合信号电路,还是修改现有电路板的电路原理图,或进行层次结构电路图设计,Allegro Designer Entry CIS 提供电路设计从构思到生产所需的一切。 Allegro Designer Entry CIS是全球应用最多且经过生产验证的原理图输入工具和强大的元件信息管理系统。 优点 1、提供快捷,直观的,具备完备功能的原理图编辑工具 2、通过层次式和变体(基于同一原理图,不同机型导出)设计提高复杂原理图的设计效率 3、具备强大功能的CIS,帮助加速设计进程,降低项目成本 4、原理图提供的自动缩放/搜索/导航功能,结合Allegro PCB Editor之间的交互探测和交互摆放,和集成的 AMS-Simulatuor帮助提供设计的可生产性 5、减少重复搜寻元件信息的时间,接收来自MRP,ERP和PLM的数据和支持关系型数据库使智能选择元件成为可能 6、通过直接访问ActiveParts和ActiveParts门户网站,提供给选择原理图设计所需要的元件和直接获取器件供应商元件数据更大的便利,ActiveParts提供了超过200万份的元器件数据 7、通过FPGA输出/输入双向数据流程自动整合可编程门阵列(FPGA)和可编程逻辑器件(PLD),从而缩短设计时间 功能特色 全功能原理图编辑器 Allegro Designer Entry CIS,带有拼接式和层次式的原理图页面编辑器,它具有快捷、直观的原理图编辑的特点。原理图页面编辑器整合了标准的Windows用户界面,这些功能和特性是为工程师完成设计任务和发布设计设计数据而特别定制的。 1、在一个会话窗中可以查看和编辑多个项目 2、通过互联网访问最新元器件 3、对“What-if”场景使用状态标签 4、在设计中引入了高效率的电子表格式的属性编辑或者是在原理图编辑器中编辑属性和打印定义好的属性

Cadence原理图设计简介

原理图设计简介 本文简要介绍了原理图的设计过程,希望能对初学者有所帮助。 一.建立一个新的工程 在进行一个新的设计时,首先必须利用Project Manager 对该设计目录进行配置,使该目录具有如下的文件结构。 所用的文件库 信息。 Design directory 启动Project Manager Open: 打开一个已有Project . New :建立一个新的Project . 点击New 如下图: cadence 将会以你所填入的project name 如:myproject 给project file 和design library 分别命

名为myproject.cpm和myproject.lib 点击下一步 Available Library:列出所有可选择的库。包括cadence自带库等。Project Library:个人工程中将用到的所有库。如myproject_lib 点击下一步 点击下一步

点击Finish完成对设计目录的配置。 为统一原理图库,所有共享的原理图库统一放在CDMA硬件讨论园地----PCB设计专栏内。 其中:libcdma 目录为IS95项目所用的器件库。 libcdma1目录为IS95项目之后所用的器件库。 每台机器上只能存放一套共享的原理图库,一般指定放在D:盘的根目录下, 即:D:\libcdma , D:\libcdma1 ... * 注意:设计开始时,应该首先将机器上的库与共享的原理图库同步。 下面介绍如何将共享库加入到自己的工程库中。 点击Setup 点击Edit 编辑cds.lib文件。添入以下语句: define libcdma d:\libcdma define libcdma1 d:\libcdma1 则库libcdma , libcdma1被加入Availiable Library 项内。如下图:

cadence原理图设计规范

原理图设计规范 理念: 设计好一份规范的原理图对设计好PCB/跟机/做客户资料具有指导性意义,是做好一款产品的基础。 一、标准图框图幅 根据实际需要,我公司常用图幅为A2、A3、A4,并有标准格式的图框。其中每一图幅可根据方向分为Landscape(纵向)及Portrait(横向)。在选用图纸时,应能准确清晰的表达区域电路的完整功能。 二、电路布局 原理图的作用是表示电路连接关系,因此需要注意电路结构的易读性。一般可将电路按照功能划分成几个部分,并按照信号流程将各部分合理布局。连线时,需注意避免线条的不必要交叉,以免难于辨识。具体要求如下: 1. 各功能块布局要合理, 整份原理图需布局均衡. 避免有些地方很挤,而有些 地方又很松, PCB 设计同等道理. 2. 尽量将各功能部分模块化(如功放,RADIO, E.VOL, SUB-WOOFER 等),以便于同 类机型资源共享, 各功能模块界线需清晰. 3. 接插口(如电源/喇叭插座, AUX IN, RCA OUTPUT, KB/CD SERVO 接口等)尽 量分布在图纸的四周围, 示意出实际接口外形及每一接脚的功能. 4. 可调元件(如电位器), 切换开关等对应的功能需标识清楚. 5. 滤波器件(如高/低频滤波电容,电感)需置于作用部位的就近处. 6. 重要的控制或信号线需标明流向及用文字标明功能. 7. CPU 为整机的控制中心, 接口线最多. 故CPU周边需留多一些空间进行布线 及相关标注,而不致于显得过分拥挤. 8. CPU 的设置管脚(如AREA1/AREA2, CLOCK1/CLOCK2等)需于旁边做一表格进 行对应设置的说明. 9. 重要器件(如接插座,IC, TUNER 等)外框用粗体线(统一 0.5mm). 10. 元件标号照公司要求按功能块进行标识. 11. 元件参数/数值务求准确标识. 特别留意功率电阻一定需标明功率值, 高耐 压的滤波电容需标明耐压值. 12. 每张原理图都需有公司的标准图框,并标明对应图纸的功能,文件名,制图人 名/审核人名, 日期, 版本号.

Cadence软件介绍

Cadence软件介绍 Cadence 是一个大型的EDA 软件,它几乎可以完成电子设计的方方面面,包括ASIC 设计、FPGA 设计和PCB 板设计。Cadence 在仿真、电路图设计、自动布局布线、版图设计及验证等方面有着绝对的优势。Cadence 包含的工具较多几乎包括了EDA 设计的方方面面。下面主要介绍其产品线的范围。 1、板级电路设计系统 包括原理图输入、生成、模拟数字/混合电路仿真,fpga设计,pcb编辑和自动布局布线mcm电路设计、高速pcb版图的设计仿真等等。包括: A、Concept HDL原理图设计输入工具, 有for NT和for Unix的产品。 B、Check Plus HDL原理图设计规则检查工具。(NT & Unix) D、Allegro Expert专家级PCB版图编辑工具(NT & Unix) E、SPECTRA Expert AutoRouter 专家级pcb自动布线工具 F、SigNoise信噪分析工具 G、EMControl 电磁兼容性检查工具 H、Synplify FPGA / CPLD综合工具 I、HDL Analyst HDL分析器 J、Advanced Package Designer先进的MCM封装设计工具 2、Alta系统级无线设计 这部分包括: A、SPW (Cierto Signal Processing Work System)信号处理系统。 可以说,spw包括了matlab的很多功能,连demo都有点象。它是面向

电子系统的模块化设计、仿真和实现的环境。它的通常的应用领域包括无线和有线载波通信、多媒体和网络设备。在进行算法设计、滤波器设计、c Code生成、软/硬件结构联合设计和硬件综合的理想环境。 它里面非常有意思的就是信号计算器。 B、HDS (Hardware Design System)硬件系统设计系统 它现在是SPW的集成组件之一。包括仿真、库和分析扩展部分。可以进行spw的定点分析行为级和rtl级的代码生成。 C、Mutimedia多媒体(Multimedia Design Kit) 它可以进行多媒体应用的设计,包括电视会议系统、数字电视等等以及任何种类的图象处理系统的设计。 D、无线技术Wireless(IS-136 Verification Environment) 无线电技术标准系统级验证工具,可以在系统级的抽象层上生成、开发和改进遵守IS-54/136 标准的信号处理算法。在完成硬件结构设计后,就可以使用hds直接生成可综合的hdl描述和相应的标准检测程序(testbench)。 E、IS-95无线标准系统级验证 同上。 F、BONeS网络协议分析和验证的设计工具。 它是一套软件系统,专门用来做多媒体网络结构和协议的设计的。可以用来快速的生成和分析结构单元之间的信息流的抽象模型,并建立一个完整的无线网络的运作模型。例如,用户可以改进atm转换器的算法,并建立其基于微处理器包括高速缓存和内存和总线、通信处理方法的应用模型。 G、VCC 虚拟协同设计工具包 它是用来进行基于可重用的ip核的系统级设计环境。 3、逻辑设计与验证(LDV) LDV包括的模块有:

Cadence-原理图批量修改元器件属性

一、导出BOM 前提条件:对所有器件的位号进行过检测。不允许出来两个器件使用相同的位号。最简单的方式是通过Tool→Annotate重新进行编排,保证不会出错。 步骤1,选中所在的工程设计,如下图 步骤2,点击Tools→Bill of Meterials

步骤3:选中“Place each part entry on a separate line”,并且在header和Combined propert string 中输入你所想要导出的参数,其中必须选择”Reference”,这个是器件的位号,属于唯一值,后面有大用。 至此,BOM已经按照我们想要的格式导出来的。接下来就是修改BOM 二、修改BOM的内容 步骤1:打开BOM,刚打开的BOM应该是长得跟下面差不多

步骤2:将期修改一下,去掉一些不必要的几行,和不必要的列“item”和”quantity”修改后应该是这样。 步骤3:根据自己的想法,修改BOM的具体内容,注意,Reference这一列一定不能修改。

这个演示只是装简单地添加了一个叫做Mount的属性,用于表明这个器件要不要焊接 修改完成后,如下图所示: 三、生成upd文件。 Cadence Capture CIS能够从UPD文件中自动更新器件的属性。所以一个很重要的步骤就是生成UPD文件。 UPD文件格式的基本样子是这样子的: "{Part Reference}" "TOL" "R1" "10%" "U1" "/IGNORE/" 步骤1:添加分号。方便起见将工作簿修改一下名字,同时增加两个新的工作页。如下图

步骤2:在sheet2的A1格中输入="$"&sheet1!A1&"$" 。如下图所示。这样做的目录是将sheet1的A1格的内容前后各加一个$号。其实添加$号也不是最终目的,只是这样操作比较简单

相关文档
最新文档