CADENCE仿真步骤.doc_第1页
CADENCE仿真步骤.doc_第2页
CADENCE仿真步骤.doc_第3页
CADENCE仿真步骤.doc_第4页
CADENCE仿真步骤.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

Cadence SPECCTRAQuest 仿真步骤 摘要 本文介绍了Cadence SPECCTRAQuest在高速数字电路的PCB设计中采用的基于信号完整性分析的设计方法的全过程。从信号完整性仿真前的环境参数的设置,到对所有的高速数字信号赋予PCB板级的信号传输模型,再到通过对信号完整性的计算分析找到设计的解空间,这就是高速数字电路PCB板级设计的基础。 关键词 板级电路仿真 I/O Buffer Information Specification(IBIS) 1 引言电路板级仿真对于今天大多数的PCB板级设计而言已不再是一种选择而是必然之路。在相当长的一段时间,由于PCB仿真软件使用复杂、缺乏必需的仿真模型、PCB仿真软件成本偏高等原因导致仿真在电路板级设计中没有得到普及。随着集成电路的工作速度不断提高,电路的复杂性不断增加之后,多层板和高密度电路板的出现等等都对PCB板级设计提出了更新更高的要求。尤其是半导体技术的飞速发展,数字器件复杂度越来越高,门电路的规模达到成千上万甚至上百万,现在一个芯片可以完成过去整个电路板的功能,从而使相同的PCB上可以容纳更多的功能。PCB已不仅仅是支撑电子元器件的平台,而变成了一个高性能的系统结构。这样,信号完整性在PCB板级设计中成为了一个必须考虑的一个问题。传统的PCB板的设计依次经过电路设计、版图设计、PCB制作等工序,而PCB的性能只有通过一系列仪器测试电路板原型来评定。如果不能满足性能的要求,上述的过程就需要经过多次的重复,尤其是有些问题往往很难将其量化,反复多次就不可避免。这些在当前激烈的市场竞争面前,无论是设计时间、设计的成本还是设计的复杂程度上都无法满足要求。在现在的PCB板级设计中采用电路板级仿真已经成为必然。基于信号完整性的PCB仿真设计就是根据完整的仿真模型通过对信号完整性的计算分析得出设计的解空间,然后在此基础上完成PCB设计,最后对设计进行验证是否满足预计的信号完整性要求。如果不能满足要求就需要修改版图设计。与传统的PCB板的设计比较既缩短了设计周期,又降低了设计成本。同时,随着软件业的高速发展,涌现出了越来越多操作更简便、功能更多、成本更低的EDA软件。越来越完备的仿真模型也得以提供。所有这些都为PCB设计中广泛的采用电路设计板级仿真提供了充分条件。下面就Cadence SPECCTRAQuest这一高速电路板级设计仿真工具采用IBIS模型详细介绍进行板级仿真设计的全过程。2 仿真前环境设置使用Cadence SPECCTRAQuest进行高速电路设计的仿真,不同的设计者根据各自的需要可以灵活的利用这个EDA工具进行仿真设计。当然,在进行一个完整的PCB板设计前仿真时,按照一定步骤规范地完成仿真设计,将会为你的仿真工作带来极大的方便。可以减少整个仿真工作的工作量、可以减少整个仿真工作中出现错误的可能性、可以留下一个完整的有价值的文档,同时也能养成良好的仿真工作习惯,为今后高效的完成高速电路的仿真设计打下基础。首先,我们知道Cadence公司的EDA软件可以运行在WindowsNT环境下和UNIX环境下,除非特别说明,本文所述都是在WindowsNT环境下。SPECCTRAQuest是Cadence EDA工具中有关高速电路设计的一个模块。在进行网络拓扑结构提取和信号分析之前,一些前期的准备工作必须正确完成。 PCB板外型边框(Outline) 根据实际结构设置PCB板边框。 PCB板叠层(Stackup)主要确定PCB板布线层数以及层叠(stack-up)方式,会直接影响到印制线的布线和阻抗。根据芯片管脚数、芯片密度、网表密度等方面来考虑。然后根据实际情况确定叠层参数,可以选用各个PCB制板公司推荐的叠层参数。关键是要选取合适的布线阻抗。在Cadence中打开Setup Advisor进入Edit Stack-up对话框,如图1,进行编辑。 导入网表(Netlist) 器件预布局(Placement)将其中的关键器件进行合理的布局,主要涉及相对距离、抗干扰、散热、高频电路与低频电路、数字电路与模拟电路等方面。 PCB板布线分区(Rooms)主要用来区分高频电路与低频电路、数字电路与模拟电路以及相对独立的电路。元器件的布局以及电源和地线的处理将直接影响到电路性能和电磁兼容性能。 PCB板禁止布线区划分(Keepouts)根据PCB制板工艺的要求确定禁止布线区。图1 Stack-up编辑框在完成上述工作以后,还要对将要进行仿真设计的PCB板做如下设置:l 设置PCB板直流电源网络对于含有多种电压值电源供电的PCB板,正确的设置尤显重要。在Cadence中打开Setup Advisor进入Identify DC Nets对话框,如图2,进行编辑。图2 设置直流电源网络l 设置器件类型一般器件类型在原理图库中已经指定并带入PCB图中,但仍然需要对器件类型进行确认,以防不正确的设置。电阻、电阻排、电容、电感、晶体管、保险丝、二极管等都要设置成DISCRETE。l 为所有IC和独立元器件附仿真模型所有在仿真设计中需要模型的器件的仿真模型在原理图库中都应该正确指定,对于电阻、电容这些独立元器件需要在原理图中正确指定VALUE属性,SPECCTRAQuest可以自动为它们分配ESpice模型。首先,打开Signal Library Brower对话框,若已有规范的完整DML模型库,我们可以直接将需要的模型库加入到工作库中。若只有IBIS模型,则需要按Translate-后选择ibis2signoise将IBIS模型转换成DML模型。如图3。图3 仿真模型库设置框然后打开Signal Model Assignment对话框,Auto Setup将自动分配模型给每个已经指定模型的器件。如图4。也可以按Find Model为器件手工分配模型,或按Create Model编辑生成一个模型,这需要有足够的建模经验。模型分配好后运行Signal Audit会有一个详细的报告,需要仔细的检查。图4 仿真模型分配窗l 设置正确的管脚类型和器件类型一样,所有器件管脚类型在原理图中已经指定,但仍需确认。连接器、独立元器件的管脚类型应为UNSPEC。在图4窗口中点击RefDesPins栏后可以检查每个器件的每个管脚类型。3 仿真步骤1、拓扑的抽取在模型添加完成后,即可进入信号线的仿真阶段。从Allegro或SPECCTRAQUEST中都可以进入Constraint Manager,Allegro的路径是SetupElectrical Constraint Spreadsheet,SPECCTRAQUEST中的进入路径是ConstraintsElectrical Constraint Spreadsheet。Constrain Manager是Cadence的约束管理器,所有连线的拓扑抽取以及对网络赋拓扑都是在这儿进行的。打开界面,如同图5所示:图5 Constraint Manager 界面从左边分类栏看,分成两类,Electrical Constraint Set类是中所有已经输入到该管理器的电气约束约定,Net类是电路中所有的网络。第一次打开时,第一类是空的。对Net类,打开下面的任何一分类,都可以抽取拓扑。在Net栏点击Signal Integrity、Timing、Routing的任何一个,右边就会将本板的全部网络显示出来,如图6所示。各个网络按字母排列,其中前面有“”号的表示是总线或Xnet。右击所选网络选择SigXplorer,就将拓扑抽取出来并进入SQ signal explorer expert界面图7,所有网络的前仿真是在这个界面中进行的。图6 抽取网络拓扑图7 Signal Explorer 界面2、参数设定因为对各个器件及阻容器件的模型已经在全部指定,所以抽取出来的拓扑上面的各IO都有相应的IO模型,对那些没有指定的模型,Cadence会赋给它缺省的模型。Cadence抽出的拓扑结构是根据各元器件的相对位置并考虑到布线方便抽取的,其中互连线的距离是它计算的曼哈顿距离(即x+y)。仿真的主要目的就是根据仿真的结果优化网络的拓扑结构,用来约束PCB布线,使布线按照最优结果方向进行。SQ Signal Explorer Expert界面除了菜单与工具栏以外分为两个部分,即上面的拓扑示意图与下面的参数、测量选择以及结果、控制的标签窗口。在下面的Parameters标签窗口中的白色区域是可以编辑的,而灰色区域是无法编辑的,CIRCUIT是整个参数的总标题,下面的tlineDelayMode栏可以选择是用时间还是用长度表示传输线的延时(若用长度表示,则缺省的单位是mm,若用时间表示,则缺省的单位是ns,其中传输线的缺省传输速度是140mm每ns);userRevision表示目前的拓扑版本(第一次一般是1.0,以后修改拓扑时可以将此处的版本提高,这样以后在Constraint Manage里不用重新赋拓扑,只要升级拓扑即可)。点击开单板名称后(本例中即ODTA),下面就列出本拓扑的内各个元件(包括器件、阻容、电源、传输线),可以编辑各个元件的特性;对器件,可以选择对应管脚的IO BUFFER模型,但一般不推荐去更改它的模型,因为已经赋给器件整体模型了,相应的IO Buffer的模型也就确定了。对阻容器件,可以更改它们的阻容值;对电源,可以更改电源值;对传输线,可以更改以下几项:impedance,即传输线的交流阻抗,可以根据叠层情况在适当范围内更改它;propDelay,即传输线的延时来表示的长度;traceGeometry,传输线的类型,即是微带线或带状线,由于在前仿真中传输线是用一个集中式的无损耗模型来表示的,所以这边选择微带线或带状线的关系并不大;velocity,传输线的信号传输速度,这边一般不去改变它,用它的缺省值,即5567.72mil/ns,约14cm/ns。为了得到更大范围内的仿真结果,扩大参数的选择范围,我们一般对阻容器件的阻值、传输线的阻抗、传输线的长度选择多个值进行扫描。在各个元件的参数设定后,即可在拓扑上加激励进行仿真。首先是加激励源,点击模型上面、位号下面的Tristate,出现如图8所示的窗口进行选择:图8 激励源设置框在Cadence中共有7种激励:Pulse:脉冲方波,就是时钟源性质的波形,如果选择Pulse,整个界面中的其他选项是灰的,不允许再选;Rise:表示一个上升沿;Fall:表示一个下降沿;Custom:表示一种可以自定义的波形激励,这是最常用的波形,在这种形式下,首先在Frequency中输入信号的频率,在Pattern中输入波形的形状。其它的填缺省即可;Quite Hi:稳定高电平;Quite Lo:稳定低电平;Tristate:三态,对非驱动源,都选择三态。我们介绍一下反射仿真的步骤,在反射仿真中,设定拓扑中的各种参数后,指定驱动源,注意在Measurement标签窗口中选择Reflection,在Reflection下面将需要显示结果的值选中。另外还需要设置整个仿真的参数,选择AnalyzePreference,弹出图9所示的窗口:图9 仿真参数设置框其中标签Pulse Stimulus设置驱动源类似时钟波形仿真时的仿真参数,在Switching Frequency中填入时钟的频率,其它项保持它们的缺省值;在标签Simulation Parameters中设置仿真的时间、精度等,如果你对Fixed Duration选中,则仿真时间长度就是后面空格中的值,否则它将对你在激励源中填入的所有波形进行仿真。对Waveform Resolution中是指仿真的精度,即每隔多少时间取一点进行仿真,如果这儿用的是Default,那么Cadence自动认定精度是仿真总时间的百分之一,也就是说它总共抽取100个点进行仿真。对Cutoff Frequency中是指选定范围内对互连线的寄生参数进行计算,这主要是指在拓扑中具有真实的传输线线段时,在前仿真中可以不管这一项。对Buffer Delays是指如何从仿真中得到Buffer Delay,若选择From Library则是指它从仿真模型里得到的,而选择On-the-fly则是从实际仿真数据中得到的,这儿必须选择On-the-fly,以使结果的正确性。Simulation Modes是指仿真的快慢方式,在FTS Mode中共有5种模式可以选择:Fast(驱动、接收都在快模式下)、Typical(正常模式)、Slow(慢模式)、Fast/Slow(驱动在快模式、接收在慢模式)、Slow/Fast(驱动在慢模式、接收在快模式)。为了在Worst Case下仿真,我们一般选择Fast和Slow两种模式进行仿真,最后两种模式因为在实际中不容易遇到,所以我们一般不选。Driver Excitation是指对驱动源进行选择,如选择Active Driver则表示只将拓扑中指定的驱动源作为驱动进行一次仿真,而如选择All-Drivers则是对拓扑中的每个能作为驱动源的器件作为驱动轮流仿真一次,如在图中四个器件都可以作为驱动源(因为都是IO类型的Buffer),则会仿真4次,注意在这种情况下拓扑中的所有器件都必须设成Tristate模式,而且对驱动源是当成Pulse进行仿真的,所以在这种方式下对驱动源的参数设置在Pulse Stimulus中。在Measure Mode中主要设置测量的一些选择,对Measure Delays At:如选Input Threshold表示以输入Buffer的Vil与Vih进行Buffer Delay测量的,如选Vmeas则表示以输出Buffer的参考电压进行测量的,我们应该选择Input Threshold。对Receiver Selection,如选All表示所有非驱动的器件都作为接收,如选Select One则在仿真开始时它会让你选择其中的一个作为接收源。在我们的实际仿真中,对这两个选择的意义并不大,因为无论选哪一种,在仿真后数据报表中都会列出所有非驱动源的数据结果。在Custom Simulation中选择仿真的类别,Reflection表示时域发射仿真,Crosstalk表示串扰仿真,EMI表示电磁干扰仿真。在EMI标签窗口中,主要设定EMI的规则,及接收天线的距离(Cadence对EMI仿真只能看它的EMI能不能符合设定的规则)。3、仿真在拓扑上各元件的参数设定以后以及仿真参数设定以后,即可以进行仿真。我们对图3的拓扑上设定860为驱动源,驱动的数据类型是50MHz的数据,选择快、慢两种模式,仿真完毕后,在下面的Result栏中就会显示出仿真的结果数据,如图10所示。因我们只进行了两组仿真,所以只有两组数据,如果对拓扑中的某些数据进行扫描,则会有更多组的数据。从下面的数据中就可以得到时序及信号质量的一些数据:如OvershootHigh、OvershootLow、SwitchDelay、SettleDelay等。图10 仿真后的数据报表右击某一个数据后选择View Waveform,就可以进入Sigwave界面看波形。如图11所示:双击左边波形名称中任何一个波形符号即可打开或关闭相应的波形,选中波形后还可以更改波形的颜色。对左边的一些波形名称解释如下:ODTA D4 K3表示拓扑中D4器件K3 Pin处的波形;ODTA D4 K3_buffdly表示接测试负载时K3 Pin处的波形;ODTA D4 K3_buffdlyi表示接测试负载时K3 Pad处的波形;ODTA D4 K3i表示拓扑中D4器件K3 Pad处的波形;注意对buffdly与buffdlyi的波形只有驱动端才有,对接收端,都只有输入端Pin 与Pad的两个波形。在波形图上打开测试负载曲线和所关心的接收曲线,同时打开Vmeas和接收端的Vil、Vih,就可以进行SwitchDelay和SettleDelay等数值实际测量,测量的结果应该与主界面Result栏中的数据一致。图11 拓扑中发送端和接收端的波形图目前,Cadence还不能从PCB预布局或PCB板图中直接抽取出差分线进行,对于差分线的仿真必须在SQ Signal Explorer Expert中手工加入元件和互连线来模拟实际的板图结构来进行仿真。手工加入元件的方法是EditAdd Part,即可以加入各种IO Buffer,分立的ESPICE器件,互连线(包括TLINE与TRACE)等。4、给拓扑加约束在仿真中,需要根据仿真结果不断修改拓扑结构以及预布局上元器件的相对位置,得到一个最优的拓扑结果,就需要在拓扑中加入约束,并将有约束的拓扑赋给板中的网络,用以指导与约束随后的PCB布线。加约束的方法:SetConstraint,就可以在弹出的如图12所示框中加入各种约束,下面分别介绍:在Switch-Settle栏,可以填入从各发送端到各接收端的Min Switch Delay和Max Settle Delay,这是对时钟同步信号而言的,是根据芯片Datasheet上的AC参数及公式计算得到的;这一栏的数据对布线而言没有任何作用,它是作为后仿真检查的参考用的;对Prop Delay栏,填入拓扑中各个Pin到Pin、Pin到T点以及T点到T点的传输延时规则,直观地说,也就是对拓扑中各传输线长度的限制,这一栏的规则是最重要的规则,它将直接约束PCB的布线;对Impedance栏,它是对拓扑中各段传输线阻抗的约束,约束了各段传输线的阻抗变化范围,若这一栏不填,则表示对传输线的阻抗无要求;对Rel Prop Delay栏,可以定义一些传输线的长度匹配规则,其中Scope的选项有两个:Local和Global,Local表示只对本条Net/Xnet有效,而Global则对本拓扑对应的所有Net/Xnet在整体的长度匹配上都有约束。对Max Parrallel栏,它进行了平行长度的约束,即它允许在两条线的间距多大时最长能平行多长。这是需要进行串扰仿真后才能得到的数据。对Wiring栏,它约束了拓扑与网络的对应关系,注意在Mapping Mode中,我们一般选择Pinuse and Refdes,表示在赋拓扑的时候可以通过管脚的IO Buffer类型和参考位号将拓扑中Pin与实际网络中的Pin对应起来;对Physical中的各项主要现在线的总长、过孔数、端接长度等;对EMI中可以限制在表层走线的最大长度;对Signal Integrity栏,可以加入对信号的过冲电压、串扰电压、SSN等的限制;对User-Defined栏,可以输入用户自己的其他约束。对以上各栏中,我们用到最多的是Prop Delay,对线长有匹配需要的,也需要用到Rel Prop Delay ,对高速信号,也需要用到Max Parallel这一栏的约束。5、赋拓扑对关键网络的拓扑仿真结束后,就可以把已经完成的拓扑赋给具体的网络。赋拓扑的过程也是在Constraint Manager中进行的,赋拓扑的过程如下:(1)将拓扑文件输入进来,操作:FileImportElectrical CSets.,把仿真完成的拓扑文件输入进来;(2) 将拓扑文件赋给网络,在Objects栏中选中所要的网络(可以多个选),然后选择菜单ObjectElectrical CSets Reference,在弹出的对话框中将选择相应的拓扑即可,如图13就将d0.top赋给网络D0D7。 图12 给拓扑加约束图13 将拓扑赋给网络如果赋拓扑的过程中出错,那么它会提供出错信息。将关键网络的拓扑全部赋完后即可将.brd文件交给PCB工程师进行布线。4 系统级仿真系统级仿真,也就是对于多块PCB板互连情况下的仿真设计,它们通过连接器或电缆相连接。SPECCTRAQuest通过Design Link来定义多快PCB板是如何连接的,连接器或电缆可以用PLGC矩阵或SPICE电路模型描述。在进行系统级仿真前需要如前所述的仿真步骤一样,将连接器或电缆的模型分配好。系统级仿真需要做以下工作:在系统配置中设置Design Link。在Cadence中打开Signal Analysis Library Browser窗,在其中点击Browse Models,然后在Model Browser中点击Add Model选择DesignLink,这样在模型库中就增加了一个DesignLink模型,编辑此模型,如图14。在Drawings部分需要将系统中互连的单板PCB图文件加入并指定设计名。在Connections部分需要互连的各个连接属性(如连接长度),并指定连接名。在Connection PinMap部分需要指定各个连接的管脚对应关系。图14 系统配置编辑窗这样,就可以对存在于系统中各个单板之间的网络进行系统级的仿真,其它的仿真前的环境设置以及整个仿真过程与单板仿真完全相同。5 后仿真前仿真是按照理想的传输线来仿真的,而且前仿真只考虑了单网络的反射效应,没有也没办法将邻近传输线的串

温馨提示

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

评论

0/150

提交评论