CADENCE仿真步骤.docx

上传人:b****6 文档编号:7236207 上传时间:2023-01-22 格式:DOCX 页数:16 大小:569.79KB
下载 相关 举报
CADENCE仿真步骤.docx_第1页
第1页 / 共16页
CADENCE仿真步骤.docx_第2页
第2页 / 共16页
CADENCE仿真步骤.docx_第3页
第3页 / 共16页
CADENCE仿真步骤.docx_第4页
第4页 / 共16页
CADENCE仿真步骤.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

CADENCE仿真步骤.docx

《CADENCE仿真步骤.docx》由会员分享,可在线阅读,更多相关《CADENCE仿真步骤.docx(16页珍藏版)》请在冰豆网上搜索。

CADENCE仿真步骤.docx

CADENCE仿真步骤

CadenceSPECCTRAQuest仿真步骤

[摘要]本文介绍了CadenceSPECCTRAQuest在高速数字电路的PCB设计中采用的基于信号完整性分析的设计方法的全过程。

从信号完整性仿真前的环境参数的设置,到对所有的高速数字信号赋予PCB板级的信号传输模型,再到通过对信号完整性的计算分析找到设计的解空间,这就是高速数字电路PCB板级设计的根底。

[关键词]板级电路仿真I/OBufferInformationSpecification〔IBIS〕

1引言

电路板级仿真对于今天大多数的PCB板级设计而言已不再是一种选择而是必然之路。

在相当长的一段时间,由于PCB仿真软件使用复杂、缺乏必需的仿真模型、PCB仿真软件本钱偏高等原因导致仿真在电路板级设计中没有得到普及。

随着集成电路的工作速度不断提高,电路的复杂性不断增加之后,多层板和高密度电路板的出现等等都对PCB板级设计提出了更新更高的要求。

尤其是半导体技术的飞速开展,数字器件复杂度越来越高,门电路的规模到达成千上万甚至上百万,现在一个芯片可以完成过去整个电路板的功能,从而使一样的PCB上可以容纳更多的功能。

PCB已不仅仅是支撑电子元器件的平台,而变成了一个高性能的系统构造。

这样,信号完整性在PCB板级设计中成为了一个必须考虑的一个问题。

传统的PCB板的设计依次经过电路设计、幅员设计、PCB制作等工序,而PCB的性能只有通过一系列仪器测试电路板原型来评定。

如果不能满足性能的要求,上述的过程就需要经过屡次的重复,尤其是有些问题往往很难将其量化,反复屡次就不可防止。

这些在当前剧烈的市场竞争面前,无论是设计时间、设计的本钱还是设计的复杂程度上都无法满足要求。

在现在的PCB板级设计中采用电路板级仿真已经成为必然。

基于信号完整性的PCB仿真设计就是根据完整的仿真模型通过对信号完整性的计算分析得出设计的解空间,然后在此根底上完成PCB设计,最后对设计进展验证是否满足预计的信号完整性要求。

如果不能满足要求就需要修改幅员设计。

与传统的PCB板的设计比拟既缩短了设计周期,又降低了设计本钱。

同时,随着软件业的高速开展,涌现出了越来越多操作更简便、功能更多、本钱更低的EDA软件。

越来越完备的仿真模型也得以提供。

所有这些都为PCB设计中广泛的采用电路设计板级仿真提供了充分条件。

下面就CadenceSPECCTRAQuest这一高速电路板级设计仿真工具采用IBIS模型详细介绍进展板级仿真设计的全过程。

2仿真前环境设置

使用CadenceSPECCTRAQuest进展高速电路设计的仿真,不同的设计者根据各自的需要可以灵活的利用这个EDA工具进展仿真设计。

当然,在进展一个完整的PCB板设计前仿真时,按照一定步骤规地完成仿真设计,将会为你的仿真工作带来极大的方便。

可以减少整个仿真工作的工作量、可以减少整个仿真工作中出现错误的可能性、可以留下一个完整的有价值的文档,同时也能养成良好的仿真工作习惯,为今后高效的完成高速电路的仿真设计打下根底。

首先,我们知道Cadence公司的EDA软件可以运行在WindowsNT环境下和UNIX环境下,除非特别说明,本文所述都是在WindowsNT环境下。

SPECCTRAQuest是CadenceEDA工具中有关高速电路设计的一个模块。

在进展网络拓扑构造提取和信号分析之前,一些前期的准备工作必须正确完成。

★PCB板外型边框〔Outline〕

根据实际构造设置PCB板边框。

★PCB板叠层〔Stackup〕

主要确定PCB板布线层数以及层叠(stack-up)方式,会直接影响到印制线的布线和阻抗。

根据芯片管脚数、芯片密度、网表密度等方面来考虑。

然后根据实际情况确定叠层参数,可以选用各个PCB制板公司推荐的叠层参数。

关键是要选取适宜的布线阻抗。

在Cadence中翻开SetupAdvisor进入EditStack-up对话框,如图1,进展编辑。

★导入网表〔Netlist〕

★器件预布局〔Placement〕

将其中的关键器件进展合理的布局,主要涉及相对距离、抗干扰、散热、高频电路与低频电路、数字电路与模拟电路等方面。

★PCB板布线分区〔Rooms〕

主要用来区分高频电路与低频电路、数字电路与模拟电路以及相对独立的电路。

元器件的布局以及电源和地线的处理将直接影响到电路性能和电磁兼容性能。

★PCB板制止布线区划分〔Keepouts〕

根据PCB制板工艺的要求确定制止布线区。

图1Stack-up编辑框

在完成上述工作以后,还要对将要进展仿真设计的PCB板做如下设置:

●设置PCB板直流电源网络

对于含有多种电压值电源供电的PCB板,正确的设置尤显重要。

在Cadence中翻开SetupAdvisor进入IdentifyDCNets对话框,如图2,进展编辑。

图2设置直流电源网络

●设置器件类型

一般器件类型在原理图库中已经指定并带入PCB图中,但仍然需要对器件类型进展确认,以防不正确的设置。

电阻、电阻排、电容、电感、晶体管、保险丝、二极管等都要设置成DISCRETE。

●为所有IC和独立元器件附仿真模型

所有在仿真设计中需要模型的器件的仿真模型在原理图库中都应该正确指定,对于电阻、电容这些独立元器件需要在原理图中正确指定VALUE属性,SPECCTRAQuest可以自动为它们分配ESpice模型。

首先,翻开SignalLibraryBrower对话框,假设已有规的完整DML模型库,我们可以直接将需要的模型库参加到工作库中。

假设只有IBIS模型,那么需要按Translate->后选择ibis2signoise将IBIS模型转换成DML模型。

如图3。

图3仿真模型库设置框

然后翻开SignalModelAssignment对话框,AutoSetup将自动分配模型给每个已经指定模型的器件。

如图4。

也可以按FindModel为器件手工分配模型,或按CreateModel编辑生成一个模型,这需要有足够的建模经历。

模型分配好后运行SignalAudit会有一个详细的报告,需要仔细的检查。

图4仿真模型分配窗

●设置正确的管脚类型

和器件类型一样,所有器件管脚类型在原理图中已经指定,但仍需确认。

连接器、独立元器件的管脚类型应为UNSPEC。

在图4窗口中点击RefDesPins栏后可以检查每个器件的每个管脚类型。

3仿真步骤

1、拓扑的抽取

在模型添加完成后,即可进入信号线的仿真阶段。

从Allegro或SPECCTRAQUEST中都可以进入ConstraintManager,Allegro的路径是Setup-?

ElectricalConstraintSpreadsheet,SPECCTRAQUEST中的进入路径是Constraints-?

ElectricalConstraintSpreadsheet。

ConstrainManager是Cadence的约束管理器,所有连线的拓扑抽取以及对网络赋拓扑都是在这儿进展的。

翻开界面,如同图5所示:

图5ConstraintManager界面

从左边分类栏看,分成两类,ElectricalConstraintSet类是中所有已经输入到该管理器的电气约束约定,Net类是电路中所有的网络。

第一次翻开时,第一类是空的。

对Net类,翻开下面的任何一分类,都可以抽取拓扑。

在Net栏点击SignalIntegrity、Timing、Routing的任何一个,右边就会将本板的全部网络显示出来,如图6所示。

各个网络按字母排列,其中前面有“+〞号的表示是总线或Xnet。

右击所选网络选择SigXplorer,就将拓扑抽取出来并进入SQsignalexplorerexpert界面图7,所有网络的前仿真是在这个界面中进展的。

图6抽取网络拓扑

图7SignalExplorer界面

2、参数设定

因为对各个器件及阻容器件的模型已经在全部指定,所以抽取出来的拓扑上面的各IO都有相应的IO模型,对那些没有指定的模型,Cadence会赋给它缺省的模型。

Cadence抽出的拓扑构造是根据各元器件的相对位置并考虑到布线方便抽取的,其中互连线的距离是它计算的曼哈顿距离〔即Δx+Δy〕。

仿真的主要目的就是根据仿真的结果优化网络的拓扑构造,用来约束PCB布线,使布线按照最优结果方向进展。

SQSignalExplorerExpert界面除了菜单与工具栏以外分为两个局部,即上面的拓扑示意图与下面的参数、测量选择以及结果、控制的标签窗口。

在下面的Parameters标签窗口中的白色区域是可以编辑的,而灰色区域是无法编辑的,CIRCUIT是整个参数的总标题,下面的tlineDelayMode栏可以选择是用时间还是用长度表示传输线的延时〔假设用长度表示,那么缺省的单位是mm,假设用时间表示,那么缺省的单位是ns,其中传输线的缺省传输速度是140mm每ns〕;userRevision表示目前的拓扑版本〔第一次一般是1.0,以后修改拓扑时可以将此处的版本提高,这样以后在ConstraintManage里不用重新赋拓扑,只要升级拓扑即可〕。

点击开单板名称后〔本例中即ODTA〕,下面就列出本拓扑的各个元件〔包括器件、阻容、电源、传输线〕,可以编辑各个元件的特性;

对器件,可以选择对应管脚的IOBUFFER模型,但一般不推荐去更改它的模型,因为已经赋给器件整体模型了,相应的IOBuffer的模型也就确定了。

对阻容器件,可以更改它们的阻容值;

对电源,可以更改电源值;

对传输线,可以更改以下几项:

impedance,即传输线的交流阻抗,可以根据叠层情况在适当围更改它;propDelay,即传输线的延时来表示的长度;traceGeometry,传输线的类型,即是微带线或带状线,由于在前仿真中传输线是用一个集中式的无损耗模型来表示的,所以这边选择微带线或带状线的关系并不大;velocity,传输线的信号传输速度,这边一般不去改变它,用它的缺省值,即5567.72mil/ns,约14cm/ns。

为了得到更大围的仿真结果,扩大参数的选择围,我们一般对阻容器件的阻值、传输线的阻抗、传输线的长度选择多个值进展扫描。

在各个元件的参数设定后,即可在拓扑上加鼓励进展仿真。

首先是加鼓励源,点击模型上面、位号下面的Tristate,出现如图8所示的窗口进展选择:

 

图8鼓励源设置框

在Cadence中共有7种鼓励:

Pulse:

脉冲方波,就是时钟源性质的波形,如果选择Pulse,整个界面中的其他选项是灰的,不允许再选;

Rise:

表示一个上升沿;

Fall:

表示一个下降沿;

Custom:

表示一种可以自定义的波形鼓励,这是最常用的波形,在这种形式下,首先在Frequency中输入信号的频率,在Pattern中输入波形的形状。

其它的填缺省即可;

QuiteHi:

稳定高电平;

QuiteLo:

稳定低电平;

Tristate:

三态,对非驱动源,都选择三态。

我们介绍一下反射仿真的步骤,在反射仿真中,设定拓扑中的各种参数后,指定驱动源,注意在Measurement标签窗口中选择Reflection,在Reflection下面将需要显示结果的值选中。

另外还需要设置整个仿真的参数,选择Analyze——?

Preference,弹出图9所示的窗口:

 

图9仿真参数设置框

其中标签PulseStimulus设置驱动源类似时钟波形仿真时的仿真参数,在SwitchingFrequency中填入时钟的频率,其它项保持它们的缺省值;

在标签SimulationParameters中设置仿真的时间、精度等,如果你对FixedDuration选中,那么仿真时间长度就是后面空格中的值,否那么它将对你在鼓励源中填入的所有波形进展仿真。

对WaveformResolution中是指仿真的精度,即每隔多少时间取一点进展仿真,如果这儿用的是Default,那么Cadence自动认定精度是仿真总时间的百分之一,也就是说它总共抽取100个点进展仿真。

对CutoffFrequency中是指选定围对互连线的寄生参数进展计算,这主要是指在拓扑中具有真实的传输线线段时,在前仿真中可以不管这一项。

对BufferDelays是指如何从仿真中得到BufferDelay,假设选择FromLibrary那么是指它从仿真模型里得到的,而选择On-the-fly那么是从实际仿真数据中得到的,这儿必须选择On-the-fly,以使结果的正确性。

SimulationModes是指仿真的快慢方式,在FTSMode中共有5种模式可以选择:

Fast〔驱动、接收都在快模式下〕、Typical〔正常模式〕、Slow〔慢模式〕、Fast/Slow〔驱动在快模式、接收在慢模式〕、Slow/Fast〔驱动在慢模式、接收在快模式〕。

为了在WorstCase下仿真,我们一般选择Fast和Slow两种模式进展仿真,最后两种模式因为在实际中不容易遇到,所以我们一般不选。

DriverExcitation是指对驱动源进展选择,如选择ActiveDriver那么表示只将拓扑中指定的驱动源作为驱动进展一次仿真,而如选择All-Drivers那么是对拓扑中的每个能作为驱动源的器件作为驱动轮流仿真一次,如在图中四个器件都可以作为驱动源〔因为都是IO类型的Buffer〕,那么会仿真4次,注意在这种情况下拓扑中的所有器件都必须设成Tristate模式,而且对驱动源是当成Pulse进展仿真的,所以在这种方式下对驱动源的参数设置在PulseStimulus中。

在MeasureMode中主要设置测量的一些选择,对MeasureDelaysAt:

如选InputThreshold表示以输入Buffer的Vil与Vih进展BufferDelay测量的,如选Vmeas那么表示以输出Buffer的参考电压进展测量的,我们应该选择InputThreshold。

对ReceiverSelection,如选All表示所有非驱动的器件都作为接收,如选SelectOne那么在仿真开场时它会让你选择其中的一个作为接收源。

在我们的实际仿真中,对这两个选择的意义并不大,因为无论选哪一种,在仿真后数据报表中都会列出所有非驱动源的数据结果。

在CustomSimulation中选择仿真的类别,Reflection表示时域发射仿真,Crosstalk表示串扰仿真,EMI表示电磁干扰仿真。

在EMI标签窗口中,主要设定EMI的规那么,及接收天线的距离〔Cadence对EMI仿真只能看它的EMI能不能符合设定的规那么〕。

3、仿真

在拓扑上各元件的参数设定以后以及仿真参数设定以后,即可以进展仿真。

我们对图3的拓扑上设定860为驱动源,驱动的数据类型是50MHz的数据,选择快、慢两种模式,仿真完毕后,在下面的Result栏中就会显示出仿真的结果数据,如图10所示。

因我们只进展了两组仿真,所以只有两组数据,如果对拓扑中的某些数据进展扫描,那么会有更多组的数据。

从下面的数据中就可以得到时序及信号质量的一些数据:

如OvershootHigh、OvershootLow、SwitchDelay、SettleDelay等。

图10仿真后的数据报表

右击某一个数据后选择ViewWaveform,就可以进入Sigwave界面看波形。

如图11所示:

双击左边波形名称中任何一个波形符号即可翻开或关闭相应的波形,选中波形后还可以更改波形的颜色。

对左边的一些波形名称解释如下:

ODTAD4K3表示拓扑中D4器件K3Pin处的波形;

ODTAD4K3_buffdly表示接测试负载时K3Pin处的波形;

ODTAD4K3_buffdlyi表示接测试负载时K3Pad处的波形;

ODTAD4K3i表示拓扑中D4器件K3Pad处的波形;

注意对buffdly与buffdlyi的波形只有驱动端才有,对接收端,都只有输入端Pin与Pad的两个波形。

在波形图上翻开测试负载曲线和所关心的接收曲线,同时翻开Vmeas和接收端的Vil、Vih,就可以进展SwitchDelay和SettleDelay等数值实际测量,测量的结果应该与主界面Result栏中的数据一致。

图11拓扑中发送端和接收端的波形图

目前,Cadence还不能从PCB预布局或PCB板图中直接抽取出差分线进展,对于差分线的仿真必须在SQSignalExplorerExpert中手工参加元件和互连线来模拟实际的板图构造来进展仿真。

手工参加元件的方法是Edit——?

AddPart,即可以参加各种IOBuffer,分立的ESPICE器件,互连线〔包括TLINE与TRACE〕等。

4、给拓扑加约束

在仿真中,需要根据仿真结果不断修改拓扑构造以及预布局上元器件的相对位置,得到一个最优的拓扑结果,就需要在拓扑中参加约束,并将有约束的拓扑赋给板中的网络,用以指导与约束随后的PCB布线。

加约束的方法:

Set—?

Constraint,就可以在弹出的如图12所示框中参加各种约束,下面分别介绍:

☆在Switch-Settle栏,可以填入从各发送端到各接收端的MinSwitchDelay和MaxSettleDelay,这是对时钟同步信号而言的,是根据芯片Datasheet上的AC参数及公式计算得到的;这一栏的数据对布线而言没有任何作用,它是作为后仿真检查的参考用的;

☆对PropDelay栏,填入拓扑中各个Pin到Pin、Pin到T点以及T点到T点的传输延时规那么,直观地说,也就是对拓扑中各传输线长度的限制,这一栏的规那么是最重要的规那么,它将直接约束PCB的布线;

☆对Impedance栏,它是对拓扑中各段传输线阻抗的约束,约束了各段传输线的阻抗变化围,假设这一栏不填,那么表示对传输线的阻抗无要求;

对RelPropDelay栏,可以定义一些传输线的长度匹配规那么,其中Scope的选项有两个:

Local和Global,Local表示只对本条Net/Xnet有效,而Global那么对本拓扑对应的所有Net/Xnet在整体的长度匹配上都有约束。

☆对MaxParrallel栏,它进展了平行长度的约束,即它允许在两条线的间距多大时最长能平行多长。

这是需要进展串扰仿真后才能得到的数据。

☆对Wiring栏,它约束了拓扑与网络的对应关系,注意在MappingMode中,我们一般选择PinuseandRefdes,表示在赋拓扑的时候可以通过管脚的IOBuffer类型和参考位号将拓扑中Pin与实际网络中的Pin对应起来;对Physical中的各项主要现在线的总长、过孔数、端接长度等;对EMI中可以限制在表层走线的最大长度;

☆对SignalIntegrity栏,可以参加对信号的过冲电压、串扰电压、SSN等的限制;

对User-Defined栏,可以输入用户自己的其他约束。

☆对以上各栏中,我们用到最多的是PropDelay,对线长有匹配需要的,也需要用到RelPropDelay,对高速信号,也需要用到MaxParallel这一栏的约束。

5、赋拓扑

对关键网络的拓扑仿真完毕后,就可以把已经完成的拓扑赋给具体的网络。

赋拓扑的过程也是在ConstraintManager中进展的,赋拓扑的过程如下:

〔1〕将拓扑文件输入进来,操作:

File-?

Import-?

ElectricalCSets..,把仿真完成的拓扑文件输入进来;

〔2〕将拓扑文件赋给网络,在Objects栏中选中所要的网络〔可以多个选〕,然后选择菜单Object——?

ElectricalCSetsReference,在弹出的对话框中将选择相应的拓扑即可,如图13就将d0.top赋给网络D0-D7。

图12给拓扑加约束

图13将拓扑赋给网络

如果赋拓扑的过程中出错,那么它会提供出错信息。

将关键网络的拓扑全部赋完后即可将.brd文件交给PCB工程师进展布线。

4系统级仿真

系统级仿真,也就是对于多块PCB板互连情况下的仿真设计,它们通过连接器或电缆相连接。

SPECCTRAQuest通过DesignLink来定义多快PCB板是如何连接的,连接器或电缆可以用PLGC矩阵或SPICE电路模型描述。

在进展系统级仿真前需要如前所述的仿真步骤一样,将连接器或电缆的模型分配好。

系统级仿真需要做以下工作:

在系统配置中设置DesignLink。

在Cadence中翻开SignalAnalysisLibraryBrowser窗,在其中点击BrowseModels,然后在ModelBrowser中点击AddModel选择DesignLink,这样在模型库中就增加了一个DesignLink模型,编辑此模型,如图14。

在Drawings局部需要将系统中互连的单板PCB图文件参加并指定设计名。

在Connections局部需要互连的各个连接属性〔如连接长度〕,并指定连接名。

在ConnectionPinMap局部需要指定各个连接的管脚对应关系。

图14系统配置编辑窗

这样,就可以对存在于系统中各个单板之间的网络进展系统级的仿真,其它的仿真前的环境设置以及整个仿真过程与单板仿真完全一样。

5后仿真

前仿真是按照理想的传输线来仿真的,而且前仿真只考虑了单网络的反射效应,没有也没方法将邻近传输线的串扰等因素考虑进来,另外在实际布线中会有穿层,导致阻抗的变化以及增加过孔等,这些都是在前仿真中无法计算进去的。

因此在单板布线完成后,对一些关键的网络需要进展后仿真来验证,假设后仿真不能满足时序的要求,那么需要对这类线进展重新仿真与布线,假设布线空间已经很小,那么可能要对板子的局部围甚至整个板子重新布线。

后仿真有两种方法,一般的方法是在ConstraintManager中,翻开Tools——?

Options,将弹出的对话框中的IncludeRoutedInterconnect栏选上,然后按前仿真的步骤进展拓扑抽取与仿真。

用这种方法进展后仿真,虽然拓扑中的传输线都是实际的布线,而且也包括了过孔,但它还是仅仅考虑了该单网络的效应,没有考虑串扰、SSN等因素,所以这种方法的后仿真并不值得提倡。

经典的后仿真是按如下步骤做的:

在Allegro中翻开菜单Analyze——?

SI/EMISim——?

Probe,在弹出的SignalAnalysis对话框中选择网络,如图15所示。

图15后仿真网络选择框

按ViewTopology按钮可以看该网络完整的拓扑,与上一种方法从ConstraintManager中抽取出来的拓扑构造一样。

按Reports按钮可以进入对话框用来产生仿真数据报表,按Waveforms按钮可以进入对话框用来产生仿真波形。

该方法的后仿真可以方便地得到反射、串扰、SSN等的仿真数据报表与仿真波形,对发射而言,它还可以综合邻近网络的串扰以及SSN等因素得到一个比拟准确的结果。

注意在此方法中,驱动源不能选择Custom模式,只能选择Pulse模式,如果要仿真一条地址或数据线,将频率设为原频率的一半即可,如要仿真100M的数据,那么当成50M的Pulse〔时钟〕来仿即可,因为50M的时钟就相当于100M的0101格式的数据。

6结论

随着集成电路技术、半导体技术的飞速开展,今后的PCB板级设计必将朝着电路速度越来越高、板层越来越多、电路板复杂度越来越高、板密度越来越大的方向开展,板级仿真设计也将成为必然的选择。

本文详细的描述了CadenceSPECCTRAQuest在高速数字电路PCB板级仿真的全过程,并通过实例

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

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

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

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