在Allegro 中进行SI 仿真
- 格式:doc
- 大小:508.29 KB
- 文档页数:13
Allegro PCB SI:一步一步学会一步一步学会前仿真前仿真 Learn Allegro PCB SI Pre-simulation Step by StepDoc Scope: Cadence 16.5 Doc Number: SFTEC12007 Author: Daniel Zhong Create Date: 2012-04-10 Rev: 1.00Sofer Technology Co., Ltd目录1 Cadence Allegro PCB SI简介 (12)1.1 高速PCB 设计流程 ...................................................... 12 2 Allegro PCB SI的前仿真 . (13)2.1 准备仿真模型和其他需求 (13)2.1.1 获取所使用元器件的仿真模型 (14)2.1.2 获取所使用连接器的仿真模型 (15)2.1.3 获取所使用元器件和连接器的器件手册和用户指南等相关资料 (15)2.1.4 获取所需的规范文档 (15)2.1.5 了解相关电路和接口工作原理 (15)2.1.6 提取与信号完整性相关的要求 (15)2.1.7 预先创建拓扑样本 (16)2.1.8 预先创建相对于不同阈值电压的眼图模板 (16)2.1.9预先创建自定义测量 .................................................. 17 2.2仿真前的规划 .......................................................... 17 2.3关键器件预布局 . ........................................................ 18 2.4 模型加载和仿真配置 .. (18)2.4.1 模型的转化 (19)2.4.2使用SI Design Setup配置 (20)Sofer Technology Co., Ltd2.4.3选择需要配置的信号线 ................................................ 21 2.4.4设置仿真库 ........................................................ 23 2.4.5设置电源和地网络 ................................................... 25 2.4.6设置叠层 .......................................................... 29 2.4.7设置元器件类别 ..................................................... 32 2.4.8为元器件分配和创建模型 .............................................. 33 2.4.9设置差分对 ........................................................ 42 2.4.10设置仿真参数 ..................................................... 47 2.4.11SI Design Audit相关 . ............................................ 55 2.4.12提取拓扑 ........................................................ 57 2.4.13在SigXP 中设置仿真库和仿真参数 ...................................... 59 2.4.14在SigXP 中绘制拓扑 ................................................ 63 2.5 方案空间分析 (73)2.5.1 输出驱动力扫描分析 (76)2.5.2 Stub 长度扫描分析 (78)2.5.3线宽线间距扫描分析 .................................................. 79 2.6 方案到约束规则的转化 . (81)2.6.1 传输线延迟规则的设置 (82)2.6.2 拓扑结构等传输线特性规则的设置 (85)2.6.3 传输线耦合规则的设置 (85)2.6.4拓扑规则在约束管理器中的应用 (86)Sofer Technology Co., Ltd 3 Allegro PCB SI的后仿真 (89)表格表格 1:Routed Interconnect Models参数 (50)表格 2:Simulation 栏眉仿真参数 (52)表格 3:IO Cell Stimulus Edit窗口中的选项 (73)图图 1:传统的PCB 设计流程图 (12)图 2:Allegro PCB SI高速PCB 设计流程图 (13)图 3:眼图模式下的眼图模板 (16)图 4:地址、命令和控制信号传输线拓扑 (17)图 5:RDIMM 的布局示意图 (18)图 6:Model Integrity界面 (19)图 7:使用Model Integrity将IBIS 文件转换至DML 格式 (20)图 8:Cadence Product Choices产品选择器窗口 (21)图 9:Allegro PCB SI GXL界面 (22)图 10:Setup Category Selection窗口 (22)图 11:Setup Xnet Selection窗口 (22)图 12:Allegro PCB SI GXL关于网络设置的提醒框 (23)Sofer Technology Co., Ltd图 13:Setup Library Search Directories窗口 (24)图 14:Setup Library File Extensions窗口 (24)图 15:Setup Working Libraries窗口 (24)图 16:Setup Power and Ground Nets窗口 (25)图 17:Allegro PCB SI GXL电压赋值窗口 (26)图 18:选择“Edit Voltage On Any Net In Design” . (26)图 19:Identify DC Nets窗口。
第一章在Allegro 中准备好进行SI 仿真的PCB 板图1)在Cadence 中进行SI 分析可以通过几种方式得到结果:* Allegro 的PCB 画板界面,通过处理可以直接得到结果,或者直接以*.brd 存盘。
* 使用Specctre Quest 打开*.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 文件的目录ii. 在第二栏指定转换必须的pads_in.ini 文件所在目录(也可将此文件拷入工作目录中,此例)iii. 指定转换后的文件存放目录然后运行“Run”,将在指定的目录中生成转换成功的.brd 文件。
注:pads_in.ini 所在目录路:.Psd_14.2ToolsPCBbin 中。
基于Cadence Allegro SI 16.3的信号完整性仿真信号完整性是指信号在信号线上的质量。
信号具有良好的信号完整性是指当在需要的时候,具有所必需达到的电压电平数值。
差的信号完整性不是由某一因素导致的,而是由板级设计中多种因素共同引起的。
特别是在高速电路中,所使用的芯片的切换速度过快、端接元件布设不合理、电路的互联不合理等都会引起信号的完整性问题。
具体主要包括串扰、反射、过冲与下冲、振荡、信号延迟等。
信号完整性问题由多种因素引起,归结起来有反射、串扰、过冲和下冲、振铃、信号延迟等,其中反射和串扰是引发信号完整性问题的两大主要因素。
反射和我们所熟悉的光经过不连续的介质时都会有部分能量反射回来一样,就是信号在传输线上的回波现象。
此时信号功率没有全部传输到负载处,有一部分被反射回来了。
在高速的PCB中导线必须等效为传输线,按照传输线理论,如果源端与负载端具有相同的阻抗,反射就不会发生了。
如果二者阻抗不匹配就会引起反射,负载会将一部分电压反射回源端。
根据负载阻抗和源阻抗的关系大小不同,反射电压可能为正,也可能为负。
如果反射信号很强,叠加在原信号上,很可能改变逻辑状态,导致接收数据错误。
如果在时钟信号上可能引起时钟沿不单调,进而引起误触发。
一般布线的几何形状、不正确的线端接、经过连接器的传输及电源平面的不连续等因素均会导致此类反射。
另外常有一个输出多个接收,这时不同的布线策略产生的反射对每个接收端的影响也不相同,所以布线策略也是影响反射的一个不可忽视的因素。
串扰是相邻两条信号线之间的不必要的耦合,信号线之间的互感和互容引起线上的噪声。
因此也就把它分为感性串扰和容性串扰,分别引发耦合电流和耦合电压。
当信号的边沿速率低于1ns时,串扰问题就应该考虑了。
如果信号线上有交变的信号电流通过时,会产生交变的磁场,处于磁场中的相邻的信号线会感应出信号电压。
一般PCB板层的参数、信号线间距、驱动端和接收端的电气特性及信号线的端接方式对串扰都有一定的影响。
Allegro PCB SI:一步一步学会前仿真Learn Allegro PCB SI Pre-simulation Step by StepDoc Scope : Cadence 16.5Doc Number : SFTEC12007Author : Daniel ZhongCreate Date : 2012-04-10Rev : 1.00目录1Cadence Allegro PCB SI简介 (7)1.1高速PCB设计流程 (7)2Allegro PCB SI的前仿真 (8)2.1准备仿真模型和其他需求 (8)2.1.1获取所使用元器件的仿真模型 (9)2.1.2获取所使用连接器的仿真模型 (10)2.1.3获取所使用元器件和连接器的器件手册和用户指南等相关资料 (10)2.1.4获取所需的规范文档 (10)2.1.5了解相关电路和接口工作原理 (10)2.1.6提取与信号完整性相关的要求 (10)2.1.7预先创建拓扑样本 (11)2.1.8预先创建相对于不同阈值电压的眼图模板 (11)2.1.9预先创建自定义测量 (12)2.2仿真前的规划 (12)2.3关键器件预布局 (13)2.4模型加载和仿真配置 (13)2.4.1模型的转化 (14)2.4.2使用SI Design Setup配置 (15)2.4.3选择需要配置的信号线 (16)2.4.4设置仿真库 (18)2.4.5设置电源和地网络 (20)2.4.6设置叠层 (24)2.4.7设置元器件类别 (27)2.4.8为元器件分配和创建模型 (28)2.4.9设置差分对 (37)2.4.10设置仿真参数 (42)2.4.11SI Design Audit相关 (50)2.4.12提取拓扑 (52)2.4.13在SigXP中设置仿真库和仿真参数 (54)2.4.14在SigXP中绘制拓扑 (58)2.5方案空间分析 (68)2.5.1输出驱动力扫描分析 (71)2.5.2Stub长度扫描分析 (73)2.5.3线宽线间距扫描分析 (74)2.6方案到约束规则的转化 (76)2.6.1传输线延迟规则的设置 (77)2.6.2拓扑结构等传输线特性规则的设置 (80)2.6.3传输线耦合规则的设置 (80)2.6.4拓扑规则在约束管理器中的应用 (81)3Allegro PCB SI的后仿真 (84)表格表格 1:Routed Interconnect Models参数 (45)表格 2:Simulation栏眉仿真参数 (47)表格 3:IO Cell Stimulus Edit窗口中的选项 (68)图图 1:传统的PCB设计流程图 (7)图 2:Allegro PCB SI高速PCB设计流程图 (8)图 3:眼图模式下的眼图模板 (11)图 4:地址、命令和控制信号传输线拓扑 (12)图 5:RDIMM的布局示意图 (13)图 6:Model Integrity界面 (14)图 7:使用Model Integrity将IBIS文件转换至DML格式 (15)图 8:Cadence Product Choices产品选择器窗口 (16)图 9:Allegro PCB SI GXL界面 (17)图 10:Setup Category Selection窗口 (17)图 11:Setup Xnet Selection窗口 (17)图 12:Allegro PCB SI GXL关于网络设置的提醒框 (18)图 13:Setup Library Search Directories窗口 (19)图 14:Setup Library File Extensions窗口 (19)图 15:Setup Working Libraries窗口 (19)图 16:Setup Power and Ground Nets窗口 (20)图 17:Allegro PCB SI GXL电压赋值窗口 (21)图 18:选择“Edit Voltage On Any Net In Design” (21)图 19:Identify DC Nets窗口。
在仿真之前,需要相应的IBIS模型文件,并把它转换为Cadence需要的DML文件,现在已经下载了一个IBIS 文件,它是Altera公司的cyclone3的IBIS文件:cyclone3.ibs。
为了把它转化,我们首先需要打开Model Integrity打开Model Integrity后,选择File Open 打开需要转化的IBIS文件打开后如下图:点击cyclon3,然后点右键,选择IBIS to DML,来实现IBIS到DML的转化在转化时报错:查看LOG File有如下说明:这个时候实际上是出了很多报错,报错的说明如下:WARNING: CYCLONE3_sstl18c1_cio_d10s Ramp value for maximum of Fall is significantly different with that computed from the corresponding TV curve - fixedERROR: TVCurve start time of CYCLONE3_ttl18_rdio_d8s RisingWaveform rise_1 at line 483255 is not same as CYCLONE3_ttl18_rdio_d8s FallingWaveform fall_1 at line 482667ERROR: TVCurve start time of CYCLONE3_ttl18_rdio_d8s RisingWaveform rise_2 at line 483368 is not same as CYCLONE3_ttl18_rdio_d8s FallingWaveform fall_2 at line 482778WARNING: CYCLONE3_sstl2c1_cio_d12s Ramp value for typical of Fall is significantly different with that computed from the corresponding TV curve - fixedWARNING: CYCLONE3_sstl2c1_rio_d12s Ramp value for typical of Fall is significantly different with that computed from the corresponding TV curve - fixedWARNING: CYCLONE3_ttl18_rdio_d10s Ramp value for maximum of Rise is significantly different with that computed from the corresponding TV curve - fixedTranslation failed due to DMLCHECK errors.Output saved as D:\yanshi\2\cyclone3.dml.txt.Run ibis2signoise -d, a DML will be generated.Examine it with line numbers from the log message.对于这个错误,说明是在DOS环境下运行ibis2signoise -d,可以了,那么就在DOS下运行运行结束后,在运行目录下可以看到已经生成了文件:cyclone3.ibs.dml,修改它为cyclone3.dmlDML文件已经生成,关闭Model Integrity下一步就是要进行仿真了,首先打开PCB SI然后在弹出的菜单中选择红线框住的部分进入PCB SI GXL后打开要仿真的BRD文件。
Allegro 怎么样有效建立SI 模型?如何使用Model
Integrity 转换IBIS 模型
信号完整性仿真大多针对由芯片IO、传输线以及可能存在的接插件和分
立元件所构成的信号网络系统,为了实现精确的仿真,仿真模型的精确性是
首先需要保证的。
一般情况下,Allegro PCB SI 会执行传输线和分立元件的建模,而芯片IO 和连接器的模型通常会由原厂提供。
当前业内常见的芯片
IO 模型有两种格式,IBIS 模型和HSPICE 模型;常见的连接器模型也是两种,SPICE(HSPICE)模型和S 参数模型。
Allegro PCB SI 支持包括上述四种模型在内业界流行的仿真模型,但一般都需要转化为Cadence 自己的
DML(Device Modeling Library)后才能使用。
Allegro PCB SI 在仿真时需要将仿真模型都转变成DML 模型格式这一做法,区别于大多数EDA 软件,这种做法可以说是有利有弊有。
弊,很明
显,就是多一个额外的步骤,虽然这一步骤非常简便;利,则是有利于仿真
库的管理,做到仿真库和原始模型文件的隔离,并且在文件格式转换的同时
也执行了模型的校验。
在大多数情况下,外部模型格式到Cadence DML 模型格式的转换还是非常方便的,只需要用Cadence SPB 系列工具包中的Model Integrity 软件打开模型文件,然后点击转换到DML 即可。
利用Cadence Allegro PCB SI进行SI仿真分析摘要本文主要针对高速电路中的信号完整性分析,利用Cadence Allegro PCB SI 工具进行信号完整性(SI)分析。
说明:本手册中的实例均采用Cadence SPB 16_2操作实现。
目录一、高速数字电路的基本知识 (3)1.1高速电路的定义 (3)1.2高速PCB的设计方法 (3)1.3微带线与带状线 (4)1.4常见的高速数字电路 (5)1.4.1 ECL(Emitter Coupled Logic)射级耦合电路 (5)1.4.2 CML(Current Mode Logic)电流模式电路 (6)1.4.3 GTL(Gunning Transceiver Logic)电路 (6)1.4.4 TTL(Transistor Transistor Logic)电路 (7)1.4.5 BTL(BackPlane Transceiver Logic)电路 (7)1.5信号完整性 (8)1.4.1 反射(Reflection) (8)1.4.2 串扰(Crosstalk) (8)1.4.3 过冲(Overshoot)与下冲(Undershoot) (9)1.4.4 振铃(Ringring) (9)1.4.5 信号延迟(Delay) (9)二、信号完整性分析和仿真流程 (11)2.1 SpecctraQuest interconnect Designer的性能简介 (11)2.2 SpectraQuest(PCB SI)仿真流程 (11)三、仿真前的准备 (13)3.1 IBIS模型 (13)3.1.1 IBIS模型介绍 (13)3.1.2 IBIS模型的获取方法 (14)3.1.2 验证IBIS模型 (14)3.2 预布局 (20)3.3 电路板设置要求(Setup Advisor) (23)3.3.1 叠层设置(Edit Cross-section) (24)3.3.2 设置DC电压值(Identify DC Nets) (25)3.3.3 器件设置(Device Setup) (26)3.3.4 SI模型分配(SI Model Assignment) (27)四、约束驱动布局 (35)4.1 预布局提取和仿真 (35)4.1.2 预布局拓扑提取分析 (37)4.1.3 执行反射仿真 (40)4.1.4 反射仿真测量 (42)4.2 设置和添加约束 (43)4.2.1 运行参数扫描 (43)4.2.2 为拓扑添加约束 (47)4.2.3 分析拓扑约束 (52)五、布线后仿真 (53)5.1 后仿真 (53)5.2反射仿真 (53)5.2.1 设置参数 (53)5.2.2指定要仿真的网络 (53)5.2.3 执行仿真 (55)5.3综合仿真 (57)5.4 串扰仿真 (57)5.5 Simultaneous Switching Noisie仿真 (57)5.6 多析仿真 (57)六、参考文献 (57)说明:本手册中的实例均采用Cadence SPB 16_2操作实现。
基于Cadence Allegro SI 16.3的信号完整性仿真信号完整性是指信号在信号线上的质量。
信号具有良好的信号完整性是指当在需要的时候,具有所必需达到的电压电平数值。
差的信号完整性不是由某一因素导致的,而是由板级设计中多种因素共同引起的。
特别是在高速电路中,所使用的芯片的切换速度过快、端接元件布设不合理、电路的互联不合理等都会引起信号的完整性问题。
具体主要包括串扰、反射、过冲与下冲、振荡、信号延迟等。
信号完整性问题由多种因素引起,归结起来有反射、串扰、过冲和下冲、振铃、信号延迟等,其中反射和串扰是引发信号完整性问题的两大主要因素。
反射和我们所熟悉的光经过不连续的介质时都会有部分能量反射回来一样,就是信号在传输线上的回波现象。
此时信号功率没有全部传输到负载处,有一部分被反射回来了。
在高速的PCB中导线必须等效为传输线,按照传输线理论,如果源端与负载端具有相同的阻抗,反射就不会发生了。
如果二者阻抗不匹配就会引起反射,负载会将一部分电压反射回源端。
根据负载阻抗和源阻抗的关系大小不同,反射电压可能为正,也可能为负。
如果反射信号很强,叠加在原信号上,很可能改变逻辑状态,导致接收数据错误。
如果在时钟信号上可能引起时钟沿不单调,进而引起误触发。
一般布线的几何形状、不正确的线端接、经过连接器的传输及电源平面的不连续等因素均会导致此类反射。
另外常有一个输出多个接收,这时不同的布线策略产生的反射对每个接收端的影响也不相同,所以布线策略也是影响反射的一个不可忽视的因素。
串扰是相邻两条信号线之间的不必要的耦合,信号线之间的互感和互容引起线上的噪声。
因此也就把它分为感性串扰和容性串扰,分别引发耦合电流和耦合电压。
当信号的边沿速率低于1ns时,串扰问题就应该考虑了。
如果信号线上有交变的信号电流通过时,会产生交变的磁场,处于磁场中的相邻的信号线会感应出信号电压。
一般PCB板层的参数、信号线间距、驱动端和接收端的电气特性及信号线的端接方式对串扰都有一定的影响。
信号完整性是指信号在信号线上的质量。
信号具有良好的信号完整性是指当在需要的时候,具有所必需达到的电压电平数值。
差的信号完整性不是由某一因素导致的,而是由板级设计中多种因素共同引起的。
特别是在高速电路中,所使用的芯片的切换速度过快、端接元件布设不合理、电路的互联不合理等都会引起信号的完整性问题。
具体主要包括串扰、反射、过冲与下冲、振荡、信号延迟等。
信号完整性问题由多种因素引起,归结起来有反射、串扰、过冲和下冲、振铃、信号延迟等,其中反射和串扰是引发信号完整性问题的两大主要因素。
反射和我们所熟悉的光经过不连续的介质时都会有部分能量反射回来一样,就是信号在传输线上的回波现象。
此时信号功率没有全部传输到负载处,有一部分被反射回来了。
在高速的PCB中导线必须等效为传输线,按照传输线理论,如果源端与负载端具有相同的阻抗,反射就不会发生了。
如果二者阻抗不匹配就会引起反射,负载会将一部分电压反射回源端。
根据负载阻抗和源阻抗的关系大小不同,反射电压可能为正,也可能为负。
如果反射信号很强,叠加在原信号上,很可能改变逻辑状态,导致接收数据错误。
如果在时钟信号上可能引起时钟沿不单调,进而引起误触发。
一般布线的几何形状、不正确的线端接、经过连接器的传输及电源平面的不连续等因素均会导致此类反射。
另外常有一个输出多个接收,这时不同的布线策略产生的反射对每个接收端的影响也不相同,所以布线策略也是影响反射的一个不可忽视的因素。
串扰是相邻两条信号线之间的不必要的耦合,信号线之间的互感和互容引起线上的噪声。
因此也就把它分为感性串扰和容性串扰,分别引发耦合电流和耦合电压。
当信号的边沿速率低于1ns时,串扰问题就应该考虑了。
如果信号线上有交变的信号电流通过时,会产生交变的磁场,处于磁场中的相邻的信号线会感应出信号电压。
一般PCB板层的参数、信号线间距、驱动端和接收端的电气特性及信号线的端接方式对串扰都有一定的影响。
在Cadence 的信号仿真工具中可以同时对6条耦合信号线进行串扰后仿真,可以设置的扫描参数有:PCB的介电常数,介质的厚度,沉铜厚度,信号线长度和宽度,信号线的间距.仿真时还必须指定一个受侵害的信号线,也就是考察另外的信号线对本条线路的干扰情况,激励设置为常高或是常低,这样就可以测到其他信号线对本条信号线的感应电压的总和,从而可以得到满足要求的最小间距和最大并行长度。
DDR信号完整性仿真频率的确定——孙海峰仿真过程中,我们必须了解如何来确定各类总线的仿真激励源,即Memory Contoller-DIMM之间的各类总线信号工作中的实际频率及其时序特性等,或者认为是DDR-DIMM工作中的外部输入激励信号——因为仿真过程中,必须设置DIMM的模拟激励源,即CPU驱动端的信号,才能仿真DIMM接收端信号SI/窜扰等状况。
实际工作中,DDR各类信号工作频率特征如下图所示:在此基础上,我们如何确定DDR最佳的仿真激励源,如何确定最佳SI仿真频率呢?接下来,将做出详细的阐述。
1、确定DDR核心频率DDR核心频率,即DDR上DRAM颗粒的工作频率,它与DDR数据传输位数有关,由于:DDR等效数据传输频率=DRAM核心频率×DDR读取位数,那么我们即可了解DRAM核心频率=数据等效传输频率/读取位数。
对于不同类型的DDR,数据读取位数为:DDR1(DDR SDRAM):2 bit pre-fetch,同时读取(预取)2n的数据——数据读取位数2;DDR2:4 bit pre-fetch,同时读取(预取)4n的数据——数据读取位数4;DDR3:8 bit pre-fetch,同时读取(预取)8n的数据——数据读取位数8;结论:我们可以从数据传输频率,结合DDR类型,计算出核心频率。
2、确定DDR Controller(CPU)-DDR差分时钟仿真激励源——CK+/CK-差分时钟总线根据DDR时序图,我们可以知道,无论DDR1,DDR2,还是DDR3,DDRx 数据的最大实际传输频率均等于时钟频率,则DDRx最大数据等效工作频率(常说的DDRx能跑多少频率为等效值)为实际频率的2倍(周期为时钟周期1/2),如下图所示:结论:DDRx时钟总线仿真频率等于等效数据传输频率的1/2。
3、确定DDR Controller(CPU)-DDR地址/命令信号线仿真激励源——A*地址总线/BA*Bank地址选择信号/CAS(Column)列命令信号/RAS(Row)行命令信号/WE(Write)写命令使能端对于地址/命令信号仿真激励源的确定,即实际工作频率及其时序特性的确定,我们首先必须认识1-T/2-T这两种DDR常用时序工作模式。
Allegro SI分析串扰教程发布日期:2009-3-6 22:22:46文章来源:搜电浏览次数:2161 概要高速电路板在进行信号完整性分析的时候,和反射一起的串扰噪声的影响也必须考虑。
本文将介绍串扰噪声的理论基础及如何使用Allegro PCB SI对串扰进行分析:2 所谓串扰噪声※Aggressor・・・入侵网络※Victim・・・受害网络众所周知,信号传输线路周围有电磁场发生。
当有多个传输线并行布线时,各自的电磁场互相作用、信号间的能量相互作用产生的信号波动。
我们称为串扰噪声。
引起串扰噪声的原因、与耦合电容(互感电容) 与耦合电感(互感电感)是密切相关的。
互容是引起串扰的一个重要因素,互容是两导体间简单的电场耦合,这种耦合在电路模型中以互容的形式表现出来。
互容将产生一个与入侵线上电压变换率成正比的噪声电流到受害线:互感是受到Aggressor导线上电流产生的电磁场的影响,在静止的Victim导线上产生感应电流的现象。
感应电流一部分向Victim导线的近端(驱动器方向)产生正向的近端串扰,同时一部分感应电流流向Victim导线的远端(接受器方向)产生反向的远端串扰。
这种现象很容易让人联想到,传输线路像一条平静的河面,电场像水,信号像船,传输线路的耦合程度像岸堤的高度(高的岸堤耦合就弱)、波浪的大小表示串扰噪声的大小。
A河,B 河,C河的3个河排列流动的时候、考虑如果当船沿着正中的B河前进。
船前进的话水被推到前方、前方的波浪比较激烈(这个和远端串扰对应)。
船后方、是与船一起伸长的航迹。
(这个和近端串扰对应。
)如果B河发生了的波浪、会流向岸堤内的A河。
另一方面、波浪不易进入岸堤高的C河,而产生波浪。
试着考虑如果在这里,船前进的速度变化了,船的速度上升的话根据船的前进发生的波浪将变得更大、作为结果A河的波浪也变大。
其次,试着考虑B河和并行流的距离长的情况、并行流的距离长、那么流入的水也就多、作为结果A河的波浪变得大。
CADENCE仿真流程第一章进行SI仿真的PCB板图的准备仿真前的准备工作主要包括以下几点:1、仿真板的准备●原理图设计;●PCB封装设计;●PCB板外型边框(Outline)设计,PCB板禁止布线区划分(Keepouts);●输出网表(如果是用CADENCE的Concept HDL设计的原理图,可将网表直接Expot 到BRD文件中;如果是用PowerPCB设计的板图,转换到allegro中的板图,其操作见附录一的说明);●器件预布局(Placement):将其中的关键器件进行合理的预布局,主要涉及相对距离、抗干扰、散热、高频电路与低频电路、数字电路与模拟电路等方面;●PCB板布线分区(Rooms):主要用来区分高频电路与低频电路、数字电路与模拟电路以及相对独立的电路。
元器件的布局以及电源和地线的处理将直接影响到电路性能和电磁兼容性能;2、器件模型的准备●收集器件的IBIS模型(网上下载、向代理申请、修改同类型器件的IBIS模型等)●收集器件的关键参数,如T co、Tsetup、Tholdup等及系统有关的时间参数T clock、Tskew、Tjitter●对IBIS模型进行整理、检查、纠错和验证。
3、确定需要仿真的电路部分,一般包括频率较高,负载较多,拓扑结构比较复杂(点到多点、多点到多点),时钟电路等关键信号线第二章IBIS模型的转化和加载CADENCE中的信号完整性仿真是建立在IBIS模型的基础上的,但又不是直接应用IBIS 模型,CADECE的软件自带一个将IBIS模型转换为自己可用的DML(Device Model Library)模型的功能模块,本章主要就IBIS模型的转换及加载进行讲解。
1、IBIS模型到DML模型的转换在Allegro窗口中选择Analyse\SI/EMI SIM\Library,打开“signal analyze library browser”窗口,在该窗口的右下方点击“Translate →”按钮,在出现的下拉菜单中选择“ibis2signois”项,出现“Select IBIS Source File”窗口(图1),选择想要进行转换的源IBIS文件,按下“打开”按钮,出现转换后文件名及路径设置窗口(缺省设置为和源IBIS文件同名并同路径放置,但此处文件名后缀为dml),设置后按下“保存”按钮,出现保存确定窗口(图2),点击OK按钮即可,随后会出现一个“messages”窗口,该窗口中的报告文件说明在模型转换过程中出现的问题,对其中的“warning”可不用在意,但如果出现“error”则必须进行修改后重新进行模型格式转化直到没有“error”出现为止,此时转换得到的dml文件才是有效的。
allegro_PCB_SI仿真IntroductionAllegro PCB SI仿真可以帮助人们在设计PCB 电路板时进行信号完整性仿真,以验证电路设计的有效性和稳定性。
这个工具是Cadence 公司的Allegro 系列产品中的一个,它可以让我们对PCB 电路板进行模拟分析,发现布线中的信号完整性问题,并接下来进行优化,从而得到更好的结果。
下面我们来详细讲解一下Allegro PCB SI仿真的使用。
功能与特点Allegro PCB SI仿真工具主要有以下功能和特点:1. 电路适配性:根据实际电路接口,自动生成仿真模型,无须手工绘制,可节省大量时间和精力。
2. 建模精度:采用仿真模型进行仿真分析,模型的建立过程和仿真数据的处理过程均达到高精度的要求。
3. 可视化展示:提供直观、易于理解的仿真结果图像,用户可对仿真结果进行直观的分析和判断。
4. 高效优化:在分析结果的基础上,提供了一系列可行性方案,以便优化布局和电路设计,提高设计质量和效率。
5. 多维度仿真:支持多种仿真方式,可以分析不同工作频率、物理层、仿真类型等多种因素的影响。
6. 构建模块化:支持多种最新技术,如DDR、PCIe等,可实现模块化的仿真分析。
使用步骤Allegro PCB SI仿真的使用步骤如下:1. 在Allegro 设计工具中添加SI 仿真属性:在Allegro 中进行PCB 设计工作的人员首先需要添加SI 仿真属性。
这时需要使用Allegro constraint manager 工具,在其中添加SI 属性和控制器约束等信息。
Allegro SI 分析扫描过程会依据这些信息实现电路仿真。
2. 运行Allegro SI 分析:电路设计人员在完成电路布线后,需要使用Allegro SI 分析来分析信号完整性情况,以发现和解决可能存在的电路问题。
执行步骤为:首先选择si_analysis 工具,在其菜单中选择指定布线仿真设置;然后在仿真window 中选择仿真起点、仿真长度等参数,然后点击Run。
使用Allegro SI分析串扰1 概要高速电路板在进行信号完整性分析的时候,和反射一起的串扰噪声的影响也必须考虑。
本文将介绍串扰噪声的理论基础及如何使用Allegro PCB SI对串扰进行分析:2 所谓串扰噪声※ Aggressor 入侵网络※ Victim 受害网络众所周知,信号传输线路周围有电磁场发生。
当有多个传输线并行布线时,各自的电磁场互相作用、信号间的能量相互作用产生的信号波动。
我们称为串扰噪声。
引起串扰噪声的原因、与耦合电容(互感电容) 与耦合电感(互感电感)是密切相关的。
互容是引起串扰的一个重要因素,互容是两导体间简单的电场耦合,这种耦合在电路模型中以互容的形式表现出来。
互容将产生一个与入侵线上电压变换率成正比的噪声电流到受害线:互感是受到Aggressor导线上电流产生的电磁场的影响,在静止的Victim导线上产生感应电流的现象。
感应电流一部分向Victim导线的近端(驱动器方向)产生正向的近端串扰,同时一部分感应电流流向Victim导线的远端(接受器方向)产生反向的远端串扰。
这种现象很容易让人联想到,传输线路像一条平静的河面,电场像水,信号像船,传输线路的耦合程度像岸堤的高度(高的岸堤耦合就弱)、波浪的大小表示串扰噪声的大小。
A河,B河,C河的3个河排列流动的时候、考虑如果当船沿着正中的B河前进。
船前进的话水被推到前方、前方的波浪比较激烈(这个和远端串扰对应)。
船后方、是与船一起伸长的航迹。
(这个和近端串扰对应。
)如果B河发生了的波浪、会流向岸堤内的A河。
另一方面、波浪不易进入岸堤高的C河,而产生波浪。
试着考虑如果在这里,船前进的速度变化了,船的速度上升的话根据船的前进发生的波浪将变得更大、作为结果A 河的波浪也变大。
其次,试着考虑B河和并行流的距离长的情况、并行流的距离长、那么流入的水也就多、作为结果A河的波浪变得大。
上面是串扰噪声一个形象的概述,下面我们就用模拟的方法去确认串扰噪声的行为。
联合Allegro和SIwave建模和提取S参数联合Allegro和SIwave建模和提取S参数Pegasus YuSIwave是Ansoft公司的⼀个全波有限元分析⼯具,⽤于Ansoft的PCB系统解决⽅案。
SIwave利⽤有限元FEM法解析传输线特性:信号线及拐⾓的全波特性线间耦合:⾃动搜索耦合信号线过孔效应:焊盘,反焊盘及过孔耦合SIwave进⾏电源完整性分析:谐振分析,平⾯阻抗,S参数,Y参数,Z参数SIwave⽀持从Allegro的PCB设计转换输⼊,并可以提取S参数。
采⽤Allegro和SIwave 配合建模,是⼀种⽐较HFSS更为快速的⽅式。
通过研究找到了实现这种⽅式的具体步骤。
以建⽴⼀对差分过孔为例(backdrill过孔,带连接的短线),说明这种建模⽅式。
1.建⽴⼀个圆形SMD焊盘在Allegro提供的⼯具⾥,有⼀个⽤于建⽴pad的⼯具PAD DESIGNER。
建⽴⼀个表⾯焊盘然后在File-Save As,将焊盘取个名字保存在Allegro项⽬的physical⽬录⾥。
2.建⽴⼀个有两个焊盘(pin)的封装在Allegro⾥,点击File-New,选择制作封装根据差分线间距设置焊盘间距e选择刚才保存的焊盘3.导⼊PCB封装在ALLEGRO的Logic-Part Logic⾥,导⼊刚才所完成的封装。
设置好器件的位号(如U1)。
然后在Place-Manually选择刚才导⼊的U14. 设置original model信息选择Setup-Outlines-Board Line添加板框,选择Logic-Net Logic并添加⽹络P+,P-和GND从U1的⼀个pin1上route出⼀段线,并赋上P+的⽹络从U1的pin2上route出⼀段线,赋上P-的⽹络。
这⾥不介绍差分⾛线的⽅式。
然后打开Edit-Net Propeties,设置允许的PTH stub长度。
这⾥设置为1mil,可以设置为0然后关闭Constraint Manager。
Cadence Allegro Sigrity介绍高科技企业开发复杂的芯片,封装和单板努力克服由于飞速增长的IC速度和数据传输速率联合引起的供电电压的降低,更高密度,越来越小型化的结构引起的电源完整性和信号完整性问题。
同时,更高的I/O数目,多堆叠的芯片和封装以及更高的电气性能约束都使得IC 封装物理设计更加复杂。
Cadence具有突破型进展的解决方案,基于Sigrity专利技术,解决这些设计挑战。
该解决方案致力于完整的电源供电系统分析跨越了芯片,封装和单板;系统级的信号完整性(SI)分析,包含高速信号传输同步反转噪声和单个和多个芯片封装,最先进的3D封装以及系统级封装(SiPs)的高级物理设计。
Power Integrity电源完整性Cadence 电源完整性(PI)解决方案,基于Sigrity技术,提供signoff 级别精度的PCB和IC封装的AC和DC电源分析。
每个工具都能与Cadence Allegro® PCB 和IC封装物理设计解决方案无缝集成。
Sigrity PowerSIIC封装和PCB设计快速准确的全波电磁场分析作为专业的频域分析工具,为当前高速电路设计中面临的各种信号完整性(SI)、电源完整性(PI)和电磁兼容(EMI/EMC)分析提供快速准确的全波电磁场分析,并提供宽带S参数提取以及频域仿真。
Sigrity™ PowerSI®可以为IC封装和PCB设计提供快速准确的全波电磁场分析,从而解决高速电路设计中日益突出的各种PI和SI问题:如同步切换噪声(SSN)问题,电磁耦合问题,信号回流路径不连续问题,电源谐振问题,去耦电容放置不当问题以及电压超标等问题,从而帮助用户发现或改善潜在的设计风险。
PowerSI可以方便的提取封装和PCB的各种网络参数(S/Y/Z),并对复杂的空间电磁谐振问题产生可视化的输出。
PowerSI能与当前主流的物理设计数据库如PCB, IC封装和系统级封装(SiP)进行无缝连接。
第一章在Allegro 中准备好进行SI 仿真的PCB 板图1)在Cadence 中进行SI 分析可以通过几种方式得到结果:* Allegro 的PCB 画板界面,通过处理可以直接得到结果,或者直接以*.brd 存盘。
* 使用Specctre Quest 打开*.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 文件的目录ii. 在第二栏指定转换必须的pads_in.ini 文件所在目录(也可将此文件拷入工作目录中,此例)iii. 指定转换后的文件存放目录然后运行“Run”,将在指定的目录中生成转换成功的.brd 文件。
注:pads_in.ini 所在目录路:.Psd_14.2ToolsPCBbin 中。
4)在Allegro 文件菜单中使用打开功能将转换好的PCB 板调入Allegro 中。
第二章转换IBIS 库到dml 格式并加载1)库转换操作过程在Allegro 菜单中选择Analyze SI/EMI SIM Library 选项,打开“Signal Analyze Library Browser”窗口,在该窗口的右下方点击“Translatr ->”按钮,在出现的下拉菜单中选择“ibis2signois”项,出现“Select IBIS Source File”窗口(图2.1).按下“打开”按钮,随后出现转换后文件存放目的设置窗口,设置后按下“保存”键,出现保存认定窗口(图2.2)。
注意:必须对此窗口默认的路径设置进行修改,否则无法生成.dml 文件。
图2.1 IBIS 库转换原文件路径设置窗口原该窗口的默认设置为“ibis2signoise in="E:"_ED3082559.ibsout="82559".dml”,实际上ibis2signoise 是一个DOS 文件,可能在一些场合,可执行文件后面的命令参数中“in=”和“out=”被认为是非法字符,所以,将它修改为“ibis2signoise E:_ED3082559.ibs ”即可,它将在IBIS 文件所在目录建立同名的dml 文件。
图2.2 IBIS To dml 转换设置路径窗口(需修改)转换完成以后,会有报告文件弹出,在文件中只要没有“Error”提示,转换文件有效。
2)加载转换后的dml 库图2.3 Signal Analyze Library Browser 窗口在Signal Analyze Library Browser 窗口(图2.3),加载转换后的dml 库文件。
首先点击“Add Existing Library ->”按钮,出现下来菜单(图2.4),该菜单有四个选项:1. Local Lib: 直接指定一个确定的库文件。
这些库文件在:…Psd_14.2sharepcb signal SignalPartLib 中。
图2.4 加载库文件的几个方法2. Local Library Path :指定一个人目录并将目录中所有库文件调入。
在…Psd_14.2share pcb signalSignalPartLib 中安装时,内置有三个库文件目录(安装时没有选择附加的仿真用库):DEFAULT_LIB、Dig_lib(内含abt、als、alvc、fttl 四个子目录)、Packages。
其中als 子目录中有X4ALS 系列标注逻辑器件库,如74als162 等。
3. Standard Cadence Library:在加载两个索引文件(Psd_14.2sharepcbsignal):cds_models.ndx和cds_partlib.ndx,前者包括模块信息,后者包括仿真器件信息。
3)加载成功以后可以点击set working 按钮,将其设置为工作库。
第三章给器件加载对应模型1) 给器件加载模型在Allegro 菜单中选择Analyze SI/EMI SIM Model 选项,打开“Signal Model Assignmen”窗口(图3.1)。
图3.1 为器件指定模型窗口在图3.1 中显示所有使用到的器件名称,选中一个准备设置模型的器件并点击Find 按钮,出现,Model Browser 窗口(图3.2)。
在Model Name Pattern 窗口中填入“*”号,一些模型的名称进入下面的列表框,图3.2 浏览模型窗口在列表框里点击你需要的模块后,在图3.1 中U1(和U2)的“Signal Name”列里就会出现它的模型名称。
2)器件、元件的建模如果在图3.1 里准备加载的模型是无源器件或者是需要自己临时创建的模型,则点击在图3.1 中的create model 按钮出现图3.2 创建模型窗口,对于电阻电容选择Espicemodel(选中蓝色箭头所指项目)后将出现,Creat ESpick Device Model窗口(图3.3)。
其他有源器件用IBISdevice 模型(选中红色箭头所指项目),然后按提示输入value 及各管脚的功能即可,同时可以存盘生成*.dat 文件,这样以后进行仿真时直接load 即可。
此时这个新建的模型就出现在所选器件的“模型名称“栏中。
图 3.3 无源器件建模窗口无源器件包括电阻。
电容、电感,图中的Common 项是设置该元件是否有公用(接地或电源)管脚。
第四章定义板子的地线、电源电压器件仿真必须设置直流电源,否则仿真不能进行,只有定义了电压的电源和地信号,才能在拓补结构中将电源的信号模型调进来。
此操作在Logic 菜单项中选择Identify Nets..选项,出现Identify DC Nets 窗口(图4.1 分别选中VCC 和GND 网络,在Voltage 栏填入5V 和OV,然后确认,完成设置。
图 4.1 直流电源设置窗口调整PCB 板叠层结构满足阻抗要求该功能分别从Aleegro、SpecctraQuest 两个模块进入后进行设置。
1)从Allegro 主窗口设置在Tools 菜单选择Setaup Advior 选项,出现DatBase Setup Advsor 窗口,直接按下“Next“按钮,出现新的DatBase Setup Advsor –Cross-Section 窗口,其中有个“Edit Cross-Section”按键,按下此键进入叠层设计窗口(图5.1),在这个类似Excel 表格式地窗口里,输入需要的各种参数,在表地最后一栏直接计算出该层的阻抗值。
图5.1 叠层设置窗口2)从SpecctraQuest 窗口设置直接从Setup 菜单选择Cross-Section 项进入图5.1 窗口Cadence 仿真流程(2)第六章设置仿真参数在正式进行仿真之前,还需要对各参数进行设置,以便使最终结果更加准确的反映设计者的要求。
这个步骤可以在SpecctraQuest 模块里,也可以在Sigxplore 中完成。
具体需要设置的参数根据不同仿真有不同的要求,大致如下:仿真的周期数(measurement cycle)时钟频率(Clock frequency)占空比(duty cycle)偏移量(offset)固定仿真时间(fixed duration)波形取样时间(waveform resolution)截止频率(cutoff frequency)仿真模式(FTS mode)驱动激励(drive excitation)测量模式(measurement mode)1)SpecctraQuest 模块里设置仿真参数在SpecctraQuest 的菜单里选中AnalyzeSI/EMI SIMPrefences,出现参数设置窗口(图6.1)图6.1 仿真参数设置2)在SigXplore 里的选中AnalyzePrefences 进入的参数设置窗口与图6.1 类似。
第七章用探针(Probe)指定仿真信号线1) 建立仿真信号线网表在SpecctraQuest 里的Logic 下拉菜单里,选择create list of nets,出现“CreatList of Net”窗口(图7.1)。
在窗口上边的Net List Name 栏中填入自己起的网络名称,在“Net Filter”栏输入“* ”;在“Available nets”列表栏中选中需要仿真的网络并将其添加到右边“Selected Nets”栏里。
然后将生成的网表文件进行保存。
图7.1 建立仿真网络2) 选择仿真网络选中AnalyzSI/EMI SimProbe 命令,在弹出的signal analysis 窗口的net 一栏,敲入*,或者通过list of nets,将网表文件调入。
这样所有的net 都出现在最左边的框里,可以选择任何一个信号线进行模拟。
(图7.2)图7.2 选择仿真网络第八章生成仿真结果报告、设定报告包括的参数选中要进行模拟的信号线之后,点击图7.2 下方Reports 功能键,在弹出analysis report generator窗口里进行不同的参数条件设置,如SSN, Reflection、CrossTalk 等等,参数设置完成之后,点击create report 就可以分别生成对反射,串扰,地弹等等的仿真结果报告。
第九章提取电路拓扑结构(建立)1)通过在Aleegro 和SpecctraQuest 界面提取电路拓扑结构点击图7.2 中View Toplogy,假设没有任何设置错误,将直接进入拓扑界面。