1、12.1 概述12.2 电路仿真设计的一般流程12.3 电路仿真图的绘制12.4 实际电路仿真分析与设置12.5 Altium Designer 19的信号完整性分析12.1 概 述在电路设计的始末,用户总要对所设计的电路性能进行预测、判断和校验,过去常用的方法是数学和物理方法。这两种方法对设计规模较小的电路是可行的,但存在某些局限和致命的缺陷,并且随着电子技术的发展,构成电路的元器件类型和数量也在不断增多,对电路设计的要求(如可靠性、性价比)也越来越高,单纯的数学和物理方法已经不能满足要求,因而计算机辅助电路仿真分析已成为现代电路设计师的主要助手和工具。所谓电路仿真,就是在电路模型上所进行的
2、系统性能分析与研究方法,它所遵循的基本原则是相似原理。电路仿真按电路的类型不同,其分析的内容也不同。Mixed Sim是Altium Designer 19提供的一个功能强大的数/模混合信号电路仿真器,能提供连续的模拟信号和离散的数字信号仿真。它运行于Altium Designer 19集成环境下,与Altium Designer Schematic原理图输入程序协同工作,作为Schematic的扩展,为用户提供了一个完整的从设计到验证的仿真设计环境,能够很好地满足电路仿真的需要,为PCB的完美设计奠定了坚实的基础。在Altium Designer 19中执行仿真,只需要用Simulation
3、模型绘制元件并连接好原理图,加上激励源,然后单击仿真按钮即可自动开始。用户可以同时观察复杂的模拟信号和数字信号波形,可以得到整个电路性能的全部波形。Altium Designer 19中支持的电路仿真类型主要有交流小信号分析、瞬态分析、噪声分析、直流分析、参数扫描分析、温度扫描分析、傅里叶分析和蒙特卡罗分析等。12.2 电路仿真设计的一般流程采用Mixed Sim进行混合电路仿真设计的一般流程如图12-1所示。12.3 电路仿真图的绘制12.3.1 添加仿真元件库Altium Designer 19已经将元件符号、封装及其仿真模型以集成库的形式集成在“Miscellaneous Devices
4、.IntLib”中了,放置元件时只需再次在元件属性对话框中确认其有没有Simulation模型即可,如图12-2所示。如果需要添加一些特殊用途的库,我们可采用下列方法。Altium Designer 19提供的特殊仿真元件库存放在安装目录下的*:Program FilesAltium AD19Library Simulation中(根据安装目录而定)。仿真库安装操作步骤如下:(1)在打开的电路原理图编辑器界面右边框,单击Components面板,弹出如图12-3所示的库文件选项对话框。(2)单击图12-3中的 按钮,在弹出的下拉菜单中选择 ,弹出如图12-4所示的可用库对话框。(3)单击图12
5、-4中的选择仿真库路径按钮 ,找到Simulation库安装路径,点击【安装】按钮,弹出如图12-5所示Simulation库文件对话框。(4)将图12-5所示的库文件全部选中,单击【确定】按钮,再次弹出可获得的可用库对话框,此时可以看到所选仿真库文件都已经列于【已安装】选项卡下面了,如图12-6所示。(5)单击图12-6中的【关闭】按钮,在Components面板中选择下拉菜单便可见所加载的特殊仿真元件库文件了,如图12-7所示。12.3.2 原理图的绘制与网络节点的标注解决了如何使用仿真元件库的问题,现在开始绘制电路原理图。下面以图12-8所示的双结型晶体管放大电路为例,介绍仿真原理图的绘
6、制方法。下面具体说明操作步骤:(1)运行Altium Designer 19,在新建的工程项目下面添加原理图文档,按照图12-8绘制原理图。(2)放置正弦电压源。在Simulation Sources.IntLib中找到VSIN,双击放置。按下“Tab”键打开如图12-9所示的元件属性设置对话框,设置元件标号及参数。(3)放置直流电压源。在Simulation Sources.IntLib中找到VSRC,双击放置,按下“Tab”键打开如图12-10所示元件属性设置对话框,在General选项卡中设置元件标号及参数,如图12-10(a)所示。单击Parameters选项,在Parameters区
7、域下列参数表中找到Value,在其后面输入15V,如图12-10(b)所示。(4)连接导线。(5)加入网络节点。12.4 实际电路仿真分析与设置12.4.2 仿真分析界面的认识在对电路进行仿真之前,通常要对仿真进行相应的设置。在原理图工作环境下,执行菜单命令“设计”“仿真”“Mixed Sim”,如图12-16所示,弹出如图12-17所示的仿真分析设置对话框,在此进行仿真设置。1.选择分析类型图12-17是Analyses Setup对话框的General Setup选项。在Analyses/Options组中列出了Altium Designer 19所支持的分析类型:静态工作点分析、瞬态分析
8、、直流扫描分析、交流小信号分析、噪声分析、极点零点分析、传递函数分析、温度扫描分析、参数扫描分析、蒙特卡罗分析等。用户可以根据需要选择其中一个或多个参数进行分析。2.选择所采集的数据类型Altium Designer 19在仿真过程中会产生大量的数据,用户可自由选择保存数据的类型,比如节点电压、节点电流、支路电流,以及流经器件的电流、功率等。在图12-17中,单击Collect Data For采集数据类型右边的下拉箭头,弹出如图12-18所示的下拉选项,在此可以选择保存何种数据到输出结果中。3.选择仿真内容Sheets to Netlist的下拉选项用于确定仿真内容(如何生成网表文件)。4.
9、选择欲激活的信号所谓激活的信号,是指在仿真结束后,这些信号的波形或数据将被显示到相应的区域中,以供用户观察和分析。如图12-20所示,左边是所有可选的信号,右边是所选择的激活信号。在仿真时,用户可根据需要选择所要激活的信号。表12-1所示是中间那些按钮的功能,点击这些按钮就可选择或删除要激活的信号。5.高级选项单击图12-17中参数分析选项列表中最后一个Advanced Options,可进行高级选项设置,如图12-21所示。12.4.3 静态工作点分析静态工作点是在分析放大电路时提出来的,它是放大电路正常工作的重要条件。当放大器的输入信号短路,即将图12-8中的IN直接接地时,放大器处于无信
10、号输入状态,称为静态。如果静态工作点选择不合适,则波形会失真,因此设置合适的静态工作点是放大电路正常工作的前提。在图12-8中,R1、R3就是放大电路的偏置电路。静态工作点分析设置操作步骤如下:(1)在图12-17的Available Signals中,选中B、C、E三个信号将其激活。(2)参数分析选择Operating Point Analysis项(后面打钩),其余不选,单击【OK】按钮,即可得到如图12-22所示的仿真结果,关闭Messages即可。12.4.4 瞬态分析前面已经提到,静态工作点对放大电路的工作会产生极大的影响,那么将R1的电阻值由18K改成100K,在图12-17中同时
11、选择Operating Point Analysis(静态工作点分析)和Transient Analysis(瞬态分析),选择B、C、E、IN、OUT为激活信号,然后单击【OK】按钮,得到其静态工作点仿真结果如图12-23所示,其瞬态分析结果如图12-24所示。12.4.5 直流扫描分析直流扫描分析就是直流转移特性分析,输入可在一定范围内变化,例如某个电压从1V变化到20V,步长可自己设定,每一个输入电压都将计算出一组输出参数,并用于显示。下面来分析图12-8中的电源电压。当V2从1V变化到20V,步长为1V时,观察R1(重新设置阻值18K)上的电流和功率。其操作步骤如下:(1)在图12-17
12、所示的对话框中,先激活R1I、R1P两个信号。(2)参数分析只选择DC Sweep Analysis(后面打钩)。在DC Sweep Analysis Setup右侧区域设置扫描参数,如图12-25所示,单击【OK】按钮,即得如图12-26所示的分析结果。12.4.6 交流小信号分析交流小信号分析是在一定的频率范围内计算电路的频率响应,用于获得电路的幅频特性、相频特性曲线。一般来说,电路中的器件参数,如三极管共发射极电流放大倍数并不是常数,而是随着工作频率的升高而下降的;另一方面,当输入信号频率较低时,耦合电容的影响不能忽略,而当输入信号频率较高时,三极管极间寄生电容、引线电感同样不能忽略,因
13、此在输入信号幅度保持不变的情况下,输出信号的幅度或相位总是随着输入信号频率的变化而变化。交流小信号分析属于线性频域分析,仿真程序首先计算电路的直流工作点,以确定电路中非线性器件的线性化模型参数。然后在设定的频率范围内,对已线性化的电路进行频率扫描分析,相当于用扫频仪观察电路的幅频特性。交流小信号分析能够计算出电路的幅频和相频特性或频域传递函数。在进行交流小信号分析时,输入信号源中至少给出一个信号源的交流小信号分析幅度及相位。一般情况下,激励源中交流小信号分析幅度设为个单位,相位为0,这样输出量就是传递函数。但在分析放大器的频率特性时,由于电压放大倍数往往大于1,且电源电压有限,因此信号源中交流
14、小信号分析电压幅度必须小于1 V,以保证放大器不因输入信号幅度太大而使输出信号出现截止或饱和失真。进行交流小信号分析时,保持激励源中交流小信号振幅不变,而激励源的频率在指定范围内按线性或对数变化,计算出每一频率点对应的输出信号的振幅,这样即可获得频率-振幅曲线,从而获得电路的频谱特性,以便直观地了解电路的幅频特性、相频特性。下面分析图12-8的频率响应。其操作步骤如下:(1)在图12-17 的General Setup项中激活OUT信号。(2)只选择AC Small Signal Analysis(后面打钩),打开AC Small Signal Analysis Setup设置对话框,如图12
15、-27所示,设置截止频率为160 MHz,扫描方式为线性,测试点为10。(3)单击【OK】按钮,即得如图12-28所示的交流分析仿真结果。12.4.7 温度扫描分析温度扫描是指在一定温度范围内进行电路参数计算,从而确定电路的温度漂移等性能指标。一般来说,电路中元器件的参数是随环境温度的变化而变化的,因此温度变化最终会影响电路的性能指标。温度扫描分析就是模拟环境温度变化时电路性能指标的变化情况,因此温度扫描分析也是一种常用的仿真方式,在瞬态分析、直流传输特性分析、交流小信号分析时,启用温度扫描分析即可获得电路中有关性能指标随温度变化的情况。下面以图12-8为例,当设置温度从-10 到100 变化
16、,步长为30 时,观察电路的特性。其操作步骤如下:(1)在图12-17所示的General Setup页中激活OUT信号。(2)只选择Temperature Sweep(后面打钩)。(3)设置扫描温度范围及变化规律。(4)单击【OK】按钮,弹出如图12-29所示的错误信息对话框。此对话框表明,温度扫描分析不能单独进行,必须在进行静态工作点分析、交流小信号分析、直流扫描分析、噪声分析、瞬态分析、传递函数分析时方可进行。(5)单击图12-29中的【OK】按钮,返回图12-17所示的仿真分析设置对话框,再选中静态工作点分析、瞬态分析、交流小信号分析中的任何一个,如图12-30所示。(6)单击【OK】
17、按钮,弹出如图12-31所示的扫描结果。图12-31中下面的波形是配合瞬态分析的温度扫描结果,是用不同颜色表示的瞬态分析结果。但是由于显示比例太小,它们重叠在一起,几乎看不出任何区别,因此需要进行单独显示,并进行局部放大,方可清楚地看到温度对瞬态分析的影响。12.4.8 噪声分析电阻和半导体器件等都能产生噪声,噪声电平取决于频率。电阻和半导体器件会产生不同类型的噪声。噪声分析在电路设计中较为常见。下面以图12-8为例,说明噪声分析的设置方法。其操作步骤如下:(1)在图12-17所示的General Setup页中,激活OUT信号。(2)只选择Noise Analysis(后面打钩)。(3)按图
18、12-32所示完成设置。(4)设置完成后,单击【OK】按钮,即得如图12-33所示的噪声分析结果。12.4.9 参数扫描分析参数扫描分析可以与直流扫描分析、交流小信号分析或瞬态分析等分析类型混合使用,参数扫描为研究电路参数变化对电路特性的影响提供了极大的方便。下面以图12-8为例,说明参数扫描分析的设置方法。其操作步骤如下:(1)在图12-17所示的General Setup页中激活OUT信号。(2)选择AC Small Sigal Analysis和Parameter Sweep(后面打钩)。(3)其余的按图12-34所示设置。(4)单击【OK】按钮,即得如图12-35所示的分析结果。12.
19、4.10 蒙特卡罗分析蒙特卡罗分析是一种统计方法。它是在给定电路元器件参数容差遵循统计分布规律的情况下,用一组伪随机数求得元器件参数的随机抽样序列,对这些随机抽样的电路进行直流、交流小信号和瞬态分析,并通过多次分析结果估算出电路性能的统计分布规律。下面以图12-8为例,说明蒙特卡罗分析的设置方法。其操作步骤如下:(1)在图12-17所示的General Setup页中激活OUT信号。(2)选择AC Small Signal Analysis和Monte Carlo Analysis(后面打钩)。(3)其余的按图12-36所示设置。(4)如果想为特定的器件单独设置容差,单击Specific To
20、lerances后面的 按钮,打开如图12-37所示的对话框,单击【Add】按钮进行添加设置。(5)按如图12-37所示完成设置,单击【OK】按钮关闭此窗口,图12-36中的Specific Tolerances后面变成 ,表明已经添加上了特定容差设置。(6)单击【OK】按钮,即得如图12-38所示的分析结果。12.5 Altium Designer 19的信号完整性分析12.5.1 导入4 Port Serial Interface.ddb(1)从Protel 99 SE Example中导入4 Port Serial Interface.ddb到Altium Designer 19中。导入
21、结果如图12-39所示。在左侧Projects面板中可以看到导入的4 Port Serial Interface.PrjPcb,双击两个原理图文档,可以直接将其打开,如图12-40所示。(2)导入PCB文件。双击 ,弹出“DXP导入向导”对话框,如图12-41所示。单击图12-41中的【Next】按钮,弹出如图12-42所示的窗口,选择定义PCB板外形方式。单击图12-42中的【Next】按钮,弹出如图12-43所示的窗口,设置阻焊和助焊规则转换选项。单击图12-43中的【Next】按钮,弹出如图12-44所示的窗口,设置PCB板平面选项。单击图12-44中的【Finish】按钮,弹出如图12
22、-45所示的窗口,转换完成的PCB板显示在设计窗口中。至此,原理图与PCB文件导入完成。12.5.2 PCB板层堆栈设置PCB中的信号完整性分析是基于电路板的结构、各种板材的参数、铜层厚度、电路板结构含有的内部电源层、板上的布局/布线以及器件的信号完整性模型等基本情况进行的。首先我们检查层堆栈设置。用于PCB的层堆栈必须设置正确,电源平面必须连续,分割电源平面将无法得到正确的分析结果。另外,要正确设置所有层的厚度,信号完整性分析才能够产生准确的仿真结果。(1)执行菜单命令“设计”“层叠管理器”,弹出如图12-46所示的窗口。该窗口中显示了板层信息。(2)选择图12-46左下方的【Impedan
23、ce】选项卡,弹出右面窗口,如图12-49所示,单击 ,配置阻抗的相应参数,如图12-50所示。(3)选择图12-46左下方的【Via Types】选项卡,弹出如图12-51所示的过孔类型参数配置窗口。在此窗口中可以对其参数进行修改。12.5.3 信号完整性规则设置1.Signal Stimulus(激励信号)在Signal Stimulus上单击右键,选择“新规则”,在新出现的Signal Stimulus界面下设置相应的参数,如图12-52所示,共有五个参数设置。2.Overshoot-Falling Edge(信号过冲下降沿)该规则主要用于设置信号下降边沿所允许的最大过冲量,即低于信号基
24、准值的最大阻尼振荡,如图12-53。3.Overshoot-Rising Edge(信号过冲上升沿)该规则与Overshoot-Falling Edge相对应,主要用于设置信号上升边沿所允许的最大过冲量,即高于信号基准值的最大阻尼振荡,设置如图12-54所示。4.Undershoot-Falling Edge(信号下冲下降沿)该规则主要用于设置信号下降边沿所允许的最大下冲值,即下降沿上高于信号基准值的最大阻尼振荡,如图12-55所示。5.Undershoot-Rising Edge(信号下冲上升沿)该规则与Undershoot-Falling Edge相对应,主要用于设置信号上升边沿所允许的最
25、大下冲值,即上升沿上低于信号基准值的最大阻尼振荡,设置如图12-56所示。6.Impedance(阻抗)该规则主要用于设置电路允许的最大和最小阻抗,设置如图12-57所示。7.Signal Top Value(信号高电平)该规则主要用于设置信号在高电平状态下所允许的最小稳定电压值,设置如图12-58所示。8.Signal Base Value(信号基准)该规则主要用于设置信号基准电压的最大值,设置如图12-59所示。9.Flight Time-Rising Edge(飞行时间上升沿)该规则主要用于设置信号上升沿最大延迟时间,一般为上升到信号设定值的50%时所需要的时间,设置如图12-60所示,
26、单位为ns。10.Flight Time-Falling Edge(飞行时间下降沿)该规则主要用于设置信号下降沿最大延迟时间,一般为实际的输入电压到阈值电压之间的时间,设置如图12-61所示,单位为ns。11.Slope-Rising Edge(上升沿斜率)该规则主要用于设置信号上升沿从阈值电压上升到高电平电压所允许的最大延迟时间,设置如图12-62所示,单位为ns。12.Slope-Falling Edge(下降沿斜率)该规则主要用于设置信号下降沿从阈值电压下降到低电平电压所允许的最大延迟时间,设置如图12-63所示,单位为ns。13.Supply Nets(电源网络)右键点击Supply
27、Nets,选择【新规则】按钮,在新出现的Supply Nets界面下,将GND网络的Voltage设置为0。按相同方法再添加规则,将VCC网络的Voltage设置为5(电源VCC数值大小根据电路元器件供电参数而定!此处设置是针对4 Port Serial Interface.PrjPcb电路板元件的),单位是V,如图12-64所示。点击【确定】按钮退出。12.5.4 启动信号完整性分析创建原理图与PCB元件链接(1)执行菜单命令“工具”“Signal Integrity”,如图12-65所示,弹出如图12-66所示的错误信息提示窗口,提示PCB元件没有与原理图元件链接,单击【OK】按钮退出。(
28、2)在原理图编辑器中,执行菜单命令“设计”“Update PCB Document 4 Port Serial Interface Board.pcb”,如图12-67(a)所示,或在PCB编辑器中执行菜单命令“设计”“Update Schematices in 4 Port Serial Interface.PrjPcb”,如图12-67(b)所示,弹出如图12-68所示的元件链接窗口。(3)单击图12-68中的“Manual Component Links”(手动元件链接)选项,弹出编辑原理图与PCB之间的元件链接窗口,如图12-69所示。(4)单击图12-69中的按钮,将窗口左边元件全部
29、移到右边,匹配所有元件,如图12-70所示。然后单击【执行更新】按钮,弹出如图12-71所示元件链接信息窗口。(5)单击图12-71中的【OK】按钮,弹出如图12-72所示原理图文档与PCB文档比较结果窗口,提示是否查看差异。单击【Yes】按钮,弹出如图12-73所示原理图文档与PCB文档差异窗口,继续查看。(6)单击图12-73中的【探测差异】按钮,弹出如图12-74所示的差异列表,可以查看差异。12.5.5 信号完整性模型配置(1)在PCB编辑器界面,执行菜单命令“工具”“Signal Integrity”,弹出如图12-75所示的消息及错误警告提示窗口,选择【Model Assignme
30、nts.】(模型配置)按钮,弹出信号完整性模型配置窗口,如图12-76所示。(2)修改器件模型的步骤。(3)将修改后的模型更新到原理图中。12.5.6 信号完整性网络分析信号完整性网络分析操作步骤如下:(1)在图12-76所示的窗口,单击右下角的【Analyze Design】按钮,弹出SI模型设置选项窗口,如图12-78所示。(2)单击图12-78的【Analyze Design】按钮,系统开始进行分析,分析结果如图12-79所示。12.5.7 信号完整性反射分析下面以图形的方式进行信号完整性反射分析,操作步骤如下:(1)双击需要分析的网络TXB,或选中TXB后单击按钮,将其导入到窗口的右侧
31、,如图12-96所示。(2)单击图12-96窗口右下角的【Reflections】按钮,反射分析的波形结果将会显示出来,如图12-97所示。(3)右键点击TXB_U2.13_NoTerm,如图12-98所示,在弹出的列表中选择Cursor A和Cursor B,然后可以利用它们来测量确切的参数。测量结果显示在Sim Data窗口中,如图12-98所示。(4)从图12-97的分析波形中可以看出,由于阻抗不匹配而引起的反射,导致信号的上升沿和下降沿都有一定的过冲。(5)单击图12-96中的【Reanalyze Design】按钮,返回到图12-79所示的界面下。窗口右侧中的“Termination
32、”区域给出了几种终端连接的策略来减小反射所带来的影响。选择Serial Res,如图12-99所示,将最小值和最大值分别设置为25和125;选中“Perform Sweep”选项,在“Sweep Steps”选项中填入10,然后单击【Reflections】按钮,得到如图12-100所示的分析波形。(6)选择一个满足需求的波形,能够看到此波形所对应的阻值为172.2,将此阻值直接接到终端上,如图12-101所示,再次单击【Reflections】按钮,分析结果如图12-102所示。从图中可以看出,信号波形曲线无论是上升沿还是下降沿的过冲都大大减小,曲线很平滑。最后根据此阻值选择一个比较合适的电阻串接在PCB中相应的网络上即可。12.5.8 信号完整性串扰分析信号完整性串扰分析的操作步骤如下:(1)重新返回到图12-79所示的界面下,双击网络RTSB将其导入到右面的窗口,然后右键单击TXB,在弹出的菜单中选择Set Agressor设置干扰源,如图12-103所示,结果如图12-104所示。(2)选择图12-103右下角的【Crosstalk】按钮,就会得到串扰分析波形,如图12-105所示。