在本文中,我们将了解如何使用QSPICE导入第三方模型。这一操作非常有用,因为市场上现有的模型不计其数,软件不可能将其全部包括在内。QSPICE允许用户通过极其简单有效的程序导入外部模型。
第一个操作是以文本格式提供所需的组件模型。通常,它们的声明以后缀“.model”开头,并指定一个标准SPICE模型。在互联网或存档中找到模型后,只需选中文本模型并使用[CTRL][C]组合键将其复制到剪贴板即可。然后,在仿真软件的电路图上方,使用[CTRL][V]组合键粘贴组件。例如,假设您想创建一个包含BC547 NPN晶体管的电路图。在网上搜索找到后,用鼠标选择它的整个定义并将其复制到剪贴板中,如图1所示。QSPICE用于导入外部电子元件的程序可能是所有仿真器中最简单的程序之一。
图1:从网上选择一个SPICE模型
在本例中,BC547晶体管的模型由以下SPICE指令定义:
.model BC547 NPN( Vtf=1.7 Cjc=7.306p Nc=2 Tr=46.91n Ne=1.307
+ Cje=22.01p Isc=0 Xtb=1.5 Rb=10 Rc=1
+ Tf=411.1p Xti=3 Ikr=0 Bf=400 Fc=.5
+ Ise=14.34f Br=6.092 Ikf=.2847 Mje=.377 Mjc=.3416
+ Vaf=74.03 Vjc=.75 Vje=.75 Xtf=3 Itf=.6
+ Is=14.34f Eg=1.11 )
选择并复制包含模型的文本后,您需要在QSPICE电路图上定位,并通过按[CTRL][V]键粘贴剪贴板的内容。软件会智能启动组件的自动生成过程,理解文本内容,如图2所示,根据以下两种不同情况要求确认内容类型:
图2:将外部组件自动导入QSPICE
该程序虽然简单,但却也以其出人意料的简单性而脱颖而出,最重要的是该软件能够根据模型描述自动识别组件类型。程序会独立使用相应的电气符号,从而大大简化了设计流程,并确保电路原理图表示更加准确。这一创新功能不仅简化了工作流程,而且还促进了新组件的集成,从而提供了一个更高效、更易于使用的设计环境。导入模型只需几秒钟的时间,并能保证极高的程序可靠性。图3显示了使用新导入的BC547晶体管创建的简单共发射极放大器的图。在同一图中,还有两个与放大器的输入和输出信号相关的波形图。
图3:包含从外部模型导入的BC547的晶体管放大器
所有导入并出现在电路图中的半导体元件都要参考“model”指令,其中指定了定义元件本身特性的参数值。该指令指定了组件的类型(二极管、双极晶体管等)。最重要的模型类型如下:
上面看到的过程是指导入使用“.model”指令定义的组件。在这种情况下,本地建模允许程序选择正确的符号用于电气图中,并100%保证成功。
导入标有“.subckt”指令的子电路并不像前面的本地模型那么简单。对于要显示的符号,该程序并不那么自动,但是导入一个封装在单个容器中的非常复杂的电路的优势是毋庸置疑的。假设您导入的是TL081运放,其SPICE模型如下所示。它是一个包含低功耗、低噪声运算放大器的8引脚集成电路。它专为通用应用而设计,例如放大器、高通和低通滤波器、极低频带通滤波器和模拟加法器等,并且可以配置为单位增益缓冲器。
* CONNECTIONS: NON-INVERTING INPUT
* | INVERTING INPUT
* | | POSITIVE POWER SUPPLY
* | | | NEGATIVE POWER SUPPLY
* | | | | OUTPUT
* | | | | |
* | | | | |
*.SUBCKT OPAMP 1 2 3 4 5
* …netlist…
*.ENDS OPAMP
.SUBCKT TL081_MC 1 2 3 4 5
*
c1 11 12 2.887E-12
c2 6 7 11.50E-12
dc 5 53 dx
de 54 5 dx
dlp 90 91 dx
dln 92 90 dx
dp 4 3 dx
egnd 99 0 poly(2) (3,0) (4,0) 0 .5 .5
fb 7 99 poly(5) vb vc ve vlp vln 0 11.94E6
+ -10E6 10E6 10E6 -10E6
ga 6 0 11 12 251.3E-6
gcm 0 6 10 99 2.513E-9
iss 3 10 dc 130.0E-6
hlim 90 0 vlim 1K
j1 11 2 10 jx
j2 12 1 10 jx
r2 6 9 100.0E3
rd1 4 11 3.979E3
rd2 4 12 3.979E3
ro1 8 5 35
ro2 7 99 35
rp 3 4 21.43E3
rss 10 99 1.538E6
vb 9 0 dc 0
vc 3 53 dc 1.6
ve 54 4 dc 1.6
vlim 7 8 dc 0
vlp 91 0 dc 20
vln 0 92 dc 20
.model dx D(Is=800.0E-18)
.model jx PJF(Is=15.00E-12 Beta=485.9E-6
+ Vto=-1)
.ends
与本地模型一样,只需选择整个列表并将其粘贴到电路图上即可。QSPICE无法知道组件的性质,因此它将用一个简单的矩形显示,如图4所示。值得注意的是,软件会自动在组件的属性中插入“X”符号,证明它是一个子电路。因此,要了解组件端子的含义和功能,有必要查阅模型的第一部分。
* CONNECTIONS: NON-INVERTING INPUT
* | INVERTING INPUT
* | | POSITIVE POWER SUPPLY
* | | | NEGATIVE POWER SUPPLY
* | | | | OUTPUT
* | | | | |
* | | | | |
*.SUBCKT OPAMP 1 2 3 4 5
该文件的开头很简单地解释了运算放大器五个端子的作用,如下:
您可以通过使用鼠标将端子的红点移动到相应的一侧,从而略微改善组件的外观。但绝对不能更改端子的名称,否则该模型将无法正常工作。该图显示了一个小型电压放大器的电路图,其增益约为五倍,由电阻器R3和R1之间的比率决定。
图4:导入运放TL081及相关反相放大电路
前面的电路工作得很好,但运算放大器用矩形来表示还是不能接受。现在让我们看看如何用三角形(适合表示运算放大器的几何形状)来替换矩形符号。首先要执行的操作是使用鼠标或键盘访问"文件"(File)、“新建符号”(New Symbol)菜单。此时将打开一个图形编辑器,您只需在其中复制并粘贴电路图中的OPAMP组件(X1)。图5清楚地显示了要遵循的不同步骤。因此,使用“Delete”键删除黄色矩形,并使用鼠标右键创建一个三角形。新三角形的尺寸必须能够正确定位OPAMP端子。所以接着,移动设计中的各种元素,直到创建出一个正确而优雅的形状。此时,用[CTRL][C]键复制已完成的工作,然后按[CTRL][V]键将其粘贴到主图上。还需要删除旧的运算放大器符号。最后,必须恢复电路连接。仿真可以顺利进行,得到相同的结果,但使用的是正确的电气符号。该步骤可用于任何其他外部电子元件。
图5:修正导入元件图形符号的步骤
与市场上其他仿真器相比,QSPICE导入程序是最好、最简单的导入程序之一。其易用性和基于型号描述的自动元件识别效率,使其成为电子设计爱好者的首选。不过,谨慎行事是明智之举,因为互联网上的SPICE模型偶尔会存在缺陷,这可能会影响仿真的准确性甚至成功与否。因此,建议仔细检查模型,并在必要时进行修正,以确保仿真的一致性和有效性。优化设计体验的另一个宝贵建议是创建自己的文本库。该自定义库应编译并填充常用模板和元件,以确保快速访问和更高效地管理电路元件。创建和维护一个条理清晰的库可以大大简化设计过程,让用户更专注于工作的准确性。
(原文刊登于EDN姊妹网站Power Electronics News,参考链接:QSPICE: Importing External Models of Electronic Components (Part 7),由Ricardo Xie编译。)