AltiumDesigner中电路仿真.docx
- 文档编号:15223225
- 上传时间:2023-07-02
- 格式:DOCX
- 页数:25
- 大小:1.63MB
AltiumDesigner中电路仿真.docx
《AltiumDesigner中电路仿真.docx》由会员分享,可在线阅读,更多相关《AltiumDesigner中电路仿真.docx(25页珍藏版)》请在冰点文库上搜索。
AltiumDesigner中电路仿真
AltiumDesigner中的电路仿真
今天看了下AltiumDesigner的电路仿真功能,发现它还是蛮强大的,按着help里面的文档《TU0106Defining&runningCircuitSimulationanalyses.PDF»跑了一下,觉得还行,所以就把这个文档翻译下。
。
。
。
。
其中包含了仿真功能的介绍,元件仿真模型的添加与修改,仿真环境的设置,等等。
本人对SPICE仿真了解的不多,里面涉及到SPICE的文件如果有什么错误,欢迎提出!
一、电路仿真功能介绍
AltiumDesigner的混合电路信号仿真工具,在电路原理图设计阶段实现对数模混合信号电路的功能设计仿真,配合简单易用的参数配置窗口,完成基于时序、离散度、信噪比等多种数据的分析。
AltiumDesigner可以在原理图中提供完善的混合信号电路仿真功能,除了
对XSPICE标准的支持之外,还支持对Pspice模型和电路的仿真。
AltiumDesigner中的电路仿真是真正的混合模式仿真器,可以用于对模拟和数字器件的电路分析。
仿真器采用由乔治亚技术研究所(GTRI)开发的增强版事件驱动型XSPICE仿
真模型,该模型是基于伯克里SPICE3代码,并于且SPICE3f5完全兼容。
SPICE3f5模拟器件模型:
包括电阻、电容、电感、电压/电流源、传输线和开关。
五类主
要的通用半导体器件模型,如diodes、BJTs、JFETs、MESFETs和MOSFETs。
XSPICE模拟器件模型是针对一些可能会影响到仿真效率的冗长的无需开发局部电路,而设计的复杂的、非线性器件特性模型代码。
包括特殊功能函数,诸如增益、磁滞效应、限电压及限电流、s域传输函数精确度等。
局部电路模型是指更复杂的器件,如用局部电路语法描述的操作运放、时钟、晶体等。
每个局部电路都下在*.ckt文件中,并在模型名称的
前面加上大写的X。
数字器件模型是用数字SimCode语言编写的,这是一种由事件驱动型XSPICE模型扩展
而来专门用于仿真数字器件的特殊的描述语言,是一种类C语言,实现对数字器件的行为
及特征的描述,参数可以包括传输时延、负载特征等信息;行为可以通过真值表、数学函数和条件控制参数等。
它来源于标准的XSPICE代码模型。
在SimCode中,仿真文件采用ASCII码字符并且保存成.TXT后缀的文件,编译后生成*.scb模型文件。
可以将多个数字器件模型写在同一个文件中。
AltiumDesigner可实现如下功能:
1、仿真电路建立及与仿真模型的连接
AD中由于采用了集成库技术,原理图符号中即包含了对应的仿真模型,因此原理图即可直接用来作为仿真电路,而99SE中的仿真电路则需要另行建立并单独加载各元器件的仿
真模型。
2、外部仿真模型的加入
AD中提供了大量的仿真模型,但在实际电路设计中仍然需要补充、完善仿真模型集。
一方面,用户可编辑系统自带的仿真模型文件来满足仿真需求,另一方面,用户可以直接将
外部标准的仿真模型倒入系统中成为集成库的一部分后即可直接在原理图中进行电路仿真。
3、仿真功能及参数设置
AltiumDesigner的仿真器可以完成各种形式的信号分析,在仿真器的分析设置对话框中,通过全局设置页面,允许用户指定仿真的范围和自动显示仿真的信号。
每一项分析类型可以在独立的设置页面内完成。
AltiumDesigner中允许的分析类型包括:
1)直流工作点分析
2)瞬态分析和傅立叶分析
3)交流小信号分析
4)阻抗特性分析
5)噪声分析
6)Pole-Zero(临界点)分析
7)传递函数分析
8)蒙特卡罗分析
9)参数扫描
10)温度扫描等
二、操作步骤
9.1、使用AltiumDesigner仿真的基本步骤如下:
1)装载与电路仿真相关的元件库
2)在电路上放置仿真元器件(该元件必须带有仿真模型)
3)绘制仿真电路图,方法与绘制原理图一致
4)在仿真电路图中添加仿真电源和激励源
5)设置仿真节点及电路的初始状态
6)对仿真电路原理图进行ERC检查,以纠正错误
7)设置仿真分析的参数
8)运行电路仿真得到仿真结果
9)修改仿真参数或更换元器件,重复5~8的步骤,直至获得满意结果。
9.2、具体实现电路仿真的整个过程
9.2.1、创建工程
1)在工具栏选择File?
New?
Project?
PCBProject,创建一个PCB工程并保存。
2)在工具栏选择File?
New?
Schematic,创建一个原理图文件并保存。
9.2.2、原理图展示
测试电路如图1:
9.2.3、编辑原理图
1、放置有仿真模型的元件
根据上面的电路,我们需要用到元器件
”,点击左边
功能查找LF411CN。
找至ijLF411CN
之后,点击
PlaceLF411CN”,放置元件,若提示元
件库未安装,需要安装,则点击yes”,如图2:
在仿真元件之前,我们可以按TAB”键打开元件属性对话框,在Designator”处填入U1;接着查看LF411CN的仿真模型:
在左下角Models列表选中Simulation,再点击Edit”,可查看模型的一些信息,如图3。
图3
从上图可以看出,仿真模型的路径设置正确且库成功安装。
点击
看模型文件(若找不到模型文件,这里会有错误信息提示),如图
ModelFile”标签,可查
4。
\N&HdTemplatu卜N3%1Preview入ModelFile/
点击NetlistTemplate”标签,可以查看网表模板,如图5。
U>t6?
LF4UMSG
◎DESIGNATORXL胃工X3三珞X5»MODEL
至此,可以放置此元件。
2、为元件添加SIMModel文件
用于电路仿真的Spice模型(.ckt和.mdl文件)位于Library文件夹的集成库中,我们使用时要注意这些文件的后缀。
模型名称是模型连接到SIM模型文件的重要因素,所以要确保
模型名称设置正确。
查找Altium集成库中的模型文件步骤如下:
点击Library面板的
Search按钮,在提示框中填入:
HasModel('SIM','*',False)进行搜索;若想更具体些可填
入:
HasModel('SIM','*LF411*',False)。
若我们不想让元件使用集成库中提供的仿真模型,而想用别的模型代替,我们最好将别的模型文件复制到我们的目标文件夹中。
如果我们想要用的仿真模型在别的集成库中,我们可以:
1)点击File?
Open,打开包含仿真模型的库文件(.intlib)。
2)在输出文件夹(打开集成库时生成的文件夹)中找到仿真文件,将其复制到我们自己的工程文件夹中,之后我们可以进行一些修改。
复制好模型文件,再为元器件添加仿真模型。
为了操作方便,我们直接到安装目录下的Examples/CircuitSimulation/Filter”文件夹中,复制模型文件LF411C.ckt”到自己的工
程文件夹中,接下来的步骤:
1)在Project面板中,右击工程,选择AddExistingtoProject”,将模型文件添加到本工程中。
2)双击元件U1,打开元件属性对话框,在Model列表中选择Simulation,点击
Remove按钮,删除原来的仿真模型。
3)点击Model列表下方的Add下拉按钮,选择Simulation"
4)在ModelSub-Kind中选择SpiceSubcircuit”,使得Spice的前缀为X”
5)在ModelName中输入LF411C”,此时AD会搜索所有的库,来查询是否有与这名称匹配的模型文件。
如果AD找到一个匹配的文件,则立即停止寻找。
对于不是集成库中的模型文件,AD会对添加到工程的文件进行搜索,然后再对搜索路径(Project?
ProjectOptions)中的文件进行搜索。
如果找不到匹配的文件,则有错误信息提示。
6)最后的步骤是检查管教映射是否正确,确保原理图中元件管脚与模型文件中管脚定
义相匹配。
点击PortMap",如图6:
图6
修改管脚映射,在ModelPin列表下拉选择合适的引脚,使其和原先的SIM模型(LF411_NSC)相同。
我们可以点击NetlistTemplate标签,注意到其模型顺序为1,
2,3,4,5;如图7:
件DESIGNATORN14X4N5©MODEL
I七mplqta人Piev荷/(ModdFilej
图7
这些和ModelFile标签中的.SUBCKT头相对应,如图8:
*SnglloOffset
*Connectxons:
«t
*,SUBCKTLF4UC
LeDriftJFETOpAhppkg:
DIPe2.2.9-4.6一pkgCANS2.2.9.4.匕人
Non-InvertingInputInvertingInputPbsitiuePowerSupplyNegslivePowerSupplyOutput
Cl11123.49BE-12
C26715E-12
DC553DX
%TemplateKJpdistF^evnew'ModelFilEj
图8
因此,在PortMap”标签中的ModelPin为U表中,我们可以看到1
(1),2
(2),3(3),4(4),
5(5),被列举出来,其中第一个数字就是模型管脚(就是NetlistTemplate中的%1,%2等),而subcircuit的头则对应着小括号里面的数字。
在Spicenetlist中,我们需要注
意其中节点的连接顺序,这些必须和.SUBCKT头中的节点顺序相匹配。
Netlist头描述了每个管脚的功能,根据这些信息我们可以将其连接到原理图管脚,如:
1
(1)是同相输入,故需连接到原理图管脚3。
原先的管脚映射和修改的管脚映射如图9:
3、放置有仿真模型的电阻电容
放置电阻前,我们可以按Tab”键,打开元件属性窗口,设置电阻值;在Model列表中,
选中Simulation",点击Edit”,查看仿真模型属性。
一般系统默认设置就是正确的,如果没修改过,应该有如图10属性:
图10
同理,放置电容的情况也一样,先设置电容值,再查看仿真模型属性,如图11:
图11
4、放置电压源
首先放置VDD电源。
使用Library”面板的search功能,检索关键字VSRC”;查
找到VSRC”之后,双击元件,若提示集成库未安装则安装,其集成库为Simulation
Sources.IntLib”。
在放置元件前,按“TAEB,打开元件属性对话框,再编辑其仿真模型属性,先确
保其ModelKind”为VoltageSource","ModelSub-Kind”为DCSource”。
点击Parameters”标签,设置电压值,输入“5V:
并使能Component
Parameter:
之后点击OK,完成设置。
如图12:
图12
SimModel-VoltageSource/DCSource
同理放置VSS,并设置其电压值为「5V”
最后添加正弦信号输入:
同样是SimulationSources.IntLib中的VSRC,打开其
仿真模型属性对话框,设置ModelKind"为‘VoltageSource",而ModelSub-Kind”设
置为Sinusoidal”。
点击Parameters”标签,设置电压值,可按如图13设置:
Model-VoltageSource/Sinusoidal
图13
之后点击OK,设置完成,放置信号源。
5、放置电源端口。
点击Place?
PowerPort:
在放置前按TAB”键,设置端口属性。
其中对于标签vdd和vss,其端口属性为Bar”。
对于标签GND,其端口属性为PowerGround”。
对于标签OUT(网络),其端口属性为Circle”
6、连线,编译
根据上面的原理图连接好电路,并在相应的地方放置网络标签,之后编译此原理图。
2.2.4、仿真设置
图14
按照图中显示设置好CollectDataFor”,SheetstoNetlist'和SimViewSetup”等三个区域,并且我们可以看到有一系列的信号在AvailableSignal”中,这些都是AD计算出来
并可以进行仿真的信号。
如果我们想要观察某个信号,只需将其导入(双击此信号)到右
边的ActiveSignal”中;同理,若想删除ActiveSignal”中的信号,也可以通过双击信号实现。
1、传输函数分析(包括傅立叶变换)设置
传输函数分析会生成一个文件,此文件能显示波形图,计算时间变化的瞬态输出(如电压,电流)。
直流偏置分析优先于瞬态分析,此分析能够计算出电路的直流偏置电压;如果UseInitialConditions”选项被使能,直流偏置分析则会根据具体的原理图计算偏置电
压。
首先应该使能TransientAnalysis然后取消UseTransientDefaults”选项,为了观察
到50Khz信号的三个完整波形,我们将停止时间设置为60u;并将时间增长步长设置为
100n,最大增长步长为200n。
最终设置如图15:
图15
2、交流小信号分析设置
交流小信号分析的输出文件显示了电路的频率响应,即以频率为变量计算交流小信号的输出值(这些输出值一般是电压增益)。
首先我们的原理图必须有设置好参数的交流信号源(上面的步骤已经设置好)
使能ACSmallSignalAnalysis”选项
然后根据图16输入参数:
图16
(注:
如上图,开始频率点一般不设置为0,上图100m表示0.1HZ,结束频率点1meg表示1MHZ;SweepType"设置为Decade”表示每100测试点以10为底数增长,总共有701个测试点。
)
至此,交流小信号分析设置完成。
AD进行此电路仿真分析时,先计算电路的直流偏置电压,然后以变化的正弦输入代替原有的信号源,计算此时的电路的输出,输入信号的变化是根据TestPoints”和SweepType”这两个选项进行的。
3、电路仿真与分析
设置完成之后,就可以进行电路仿真一一点击"”图标。
在仿真过程中,AD会将一些警
告和错误信息显示在Message板,如有致命错误可根据面板提示信息修改原理图;如
果工程无错误,此过程还会生成一个SPICENetlist(.nxs)文件,且此文件在每次进行仿
.sdf)文件,里面显示了电路的各种
真时都会重新生成。
仿真分析结束会生成打开一个(
仿真结果(注:
直流偏置最先执行),如图17:
AltnumDesigner-tiAProgramHies1yMtfEjmiECHMStH让3gmpleskirdritSiintiliitiafiVFilter^OutUFHlter.sdf*-*仙5*「.伊和16..|^J[B||^E|
.01P*01riev即0却]jx)feQv[gtatH'爵tU^ndwt
dJ1IT4继0』)IJ60±.
图17
创建波特图
波特图包括了增益和相位信息,我们可以根据交流小信号分析结果得到电路的波特图。
首
先右击上半部分坐标图的询”信号,选择EditWave”,打开编辑波形对话框,然后选择左
边的Magnitude(dB)”,再点击Creat”按钮。
如图18:
图18
同理,对输出增益,在上半部分的坐标图中右击,选择AddWavetoPlot”,在弹出的对
话框中Waveforms”列表选择"out信号,并在右边的ComplexFunctions'冽表选择
Magnitude(dB):
然后点击Creat”按钮,得到输入输出的增益图。
之后重复上述步骤添加相位图,注意在ComplexFunctions'冽表选择Phase(Deg):
最
后结果如图19:
图19
(我们可以在同个坐标图上显示不同的Y轴,使不同的曲线对应不同的Y坐标——只需在
编辑或添加波形文件时,选中AddtonewYaxis”即可;若删除坐标轴,相应的曲线也会
删除,且在这模式下没有Undo功能,故误删的话需重新导入曲线。
)
使用光标工具分析
点击DB(out)”曲线,右击选择CursorA”,再右击选择CursorB”,打开两个测量光标,将光标按图20放置:
10X0
图20
再点击“SimData标签,可以看到此时B-A=-3,且光标B的频率为“20kHz”,如图21:
MedsuFemBntCuifxxs
NomeXY
ADB(ou(]259L29-".G43u
BD8(out)20267k笈竭S
MedsiienentXY
B-A2QQWk-3.0^2
Minimum众-R*10363
MawmumA,<822220U
AvetastA..B-72C;54m
图21
故3dB点的频率为20kHz。
Numb参数扫描设置
参数扫描功能使得我们能够让特定的元件在一个范围内变化;当然相应的交流、直流或瞬态分析也要使能,才能观察相应的特性曲线或数据。
具体步骤如下:
图标,打开设置窗口,使能ParameterSweep"
2)接着选择首要扫描参数元件C2,更改参数;再使能第二参数扫描功能,选择C1,
更改参数;参数设置如图22:
Ansips巳5Setup
图22
设置好之后,点击Ok,进行电路仿真。
仿真后的一些结果如图23,图24与图25:
图23
图24
图25
点击相应的曲线,相应的元件(电容)参数会在左下角显示。
Numb高级设置
AdvancedOptions”设置页面包含一系列的内部SPICE选项,这些选项会影响仿真计算
速度,像错误容量和重复限制等。
如图26
图26
一般按着系统默认的设置就可以进行仿真,若想修改参数只需在相应的条目修改Value值
即可。
设置Integrationmethod”从Trapezoidal到Gear,则计算时间变长,但仿真效果更好,若选择更高的Gear值,效果更好,时间更长。
Numb使用SPICENetlist进行仿真
上文提到软件仿真时会生成SPICENetlist(.nsx)文件,我们也可以根据这个文件进行电
路仿真分析。
我们也可以通过点击图标生成此文件,然后通过此文件进行仿真。
设置
更改时点击Simulate?
Setup,进行仿真:
Simulate?
Run。
原版的英文文件在安装目录的help文件夹中,命名为:
TU0106Defining&running
CircuitSimulationanalyses
这里有个下载链接,也可以直接从这里下载:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- AltiumDesigner 电路 仿真