你的位置:首页 > RF/微波 > 正文

放大器建模为模拟滤波器可提高SPICE仿真速度

发布时间:2020-04-07 来源:David Karpaty 责任编辑:wenwei

【导读】放大器的仿真模型通常是利用电阻、电容、晶体管、二极管、独立和非独立的信号源以及其它模拟元件来实现的。一种替代方法是使用放大器行为的二阶近似(拉普拉斯转换),这可加快仿真速度并将仿真代码减少到三行。
 
然而,对于高带宽放大器,采用s域传递函数的时域仿真可能非常慢,因为仿真器必须首先计算逆变换,然后利用输入信号对其进行卷积。带宽越高,则确定时域函数所需的采样频率也越高,这将导致卷积计算更加困难,进而减慢时域仿真速度。
 
本文进一步完善了上述方法,将二阶近似合成为模拟滤波器,而不是 s域传递函数,从而大大提高时域仿真速度,特别是对于高带宽放大器。
 
二阶传递函数
 
放大器仿真模型的二阶传递函数可以利用Sallen-Key滤波器拓扑实现,它需要两个电阻、两个电容和一个压控电流源;或者利用多反馈(MFB)滤波器拓扑实现,它需要三个电阻、两个电容和一个压控电流源。这两种拓扑给出的结果应相同,但Sallen-Key拓扑更易于设计,而MFB拓扑则具有更好的高频响应性能,可能更适合可编程增益放大器,因为它更容易切换到不同的电阻值。
 
首先,利用二阶近似的标准形式为放大器的频率和瞬态响应建模:
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
图1显示了如何转换到Sallen-Key和多反馈拓扑。
 
放大器建模为模拟滤波器可提高SPICE仿真速度
图1. 滤波器拓扑结构
 
放大器的自然无阻尼频率ωn等于滤波器的转折频率 ωc,放大器的阻尼比ζ 则等于 ½乘以滤波器品质因素Q 的倒数。对于双极点滤波器, Q 表示极点到jω轴的径向距离;Q 值越大,则说明极点离 jω轴越近。对于放大器,阻尼比越大,则峰化越低。这些关系为 s域 (s = jω) 传递函数与模拟滤波器电路提供了有用的等效转换途径。
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
设计示例:5倍增益放大器
 
该设计主要包括三步:首先,测量放大器的过冲(Mp) 和建立时间 (ts)。其次,利用这些测量结果计算放大器传递函数的二阶近似。最后,将该传递函数转换为模拟滤波器拓扑以产生放大器的SPICE模型。
 
放大器建模为模拟滤波器可提高SPICE仿真速度
图2. 5倍增益放大器
 
例如,利用Sallen-Key和MFB两种拓扑仿真一款5倍增益放大器。从图2可知,过冲(Mp) 约为22%,2%建立时间则约为2.18 μs。阻尼比ζ计算如下:
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
重排各项以求解ζ:
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
接下来,利用建立时间计算自然无阻尼频率(单位为弧度/秒)。
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
对于阶跃输入,传递函数分母中的 s2 和 s 项(弧度/秒)通过下式计算:
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
单位增益传递函数即变为:
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
将阶跃函数乘以5便得到5倍增益放大器的最终传递函数:
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
下面的网络列表模拟5倍增益放大器传递函数的拉普拉斯变换。转换为滤波器拓扑之前,最好运行仿真以验证拉普拉斯变换,并根据需要延长或缩短建立时间以调整带宽。
 
***GAIN_OF_5 TRANSFER FUNCTION***
 
.SUBCKT SECOND_ORDER +IN –IN OUT
 
E1 OUT 0 LAPLACE {V(+IN) – V(–IN)} = {89.371E12 / (S^2 + 3.670E6*S + 17.874E12)}
 
.END
 
图3所示为时域的仿真结果。图4所示为频域的仿真结果。
 
放大器建模为模拟滤波器可提高SPICE仿真速度
图3. 5倍增益放大器:时域仿真结果
 
放大器建模为模拟滤波器可提高SPICE仿真速度
图4. 5倍增益放大器:频域仿真结果
 
脉冲响应的峰化使得我们可以轻松保持恒定的阻尼比,同时可改变建立时间以调整带宽。这将改变复数共轭极点对相对于实轴的角度,改变量等于阻尼比的反余弦值,如图5所示。缩短建立时间会增加带宽,延长建立时间则会减少带宽。只要阻尼比保持不变且仅调整建立时间,则峰化和增益不受影响,如图6所示。
 
放大器建模为模拟滤波器可提高SPICE仿真速度
图5. 5倍增益传递函数的复数共轭极点对
 
放大器建模为模拟滤波器可提高SPICE仿真速度
图6. 建立时间调整与带宽的关系
 
一旦传递函数与实际放大器的特性一致,就可以将其转换为滤波器拓扑。本例将使用Sallen-Key和MFB两种拓扑。
 
首先,利用单位增益Sallen-Key拓扑的正则形式将传递函数转换为电阻和电容值。
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
根据 s项可以计算 C1
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
选择易于获得的电阻值,例如R1和R2均为10 kΩ,然后计算C1
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
利用转折频率的关系式求解C2
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
相应的网络列表如下文所示,Sallen-Key电路则如图7所示。E1乘以阶跃函数以获得5倍增益。Ro提供2 Ω输出阻抗。 G1 是增益为 120 dB的VCCS。 E2为差分输入模块。频率与增益的仿真与采用拉普拉斯变换的仿真完全相同。
 
.SUBCKT SALLEN_KEY +IN –IN OUT
 
R1 1 4 10E3
 
R2 5 1 10E3
 
C2 5 0 10.27E–12
 
C1 2 1 54.5E–12
 
G1 0 2 5 2 1E6
 
E2 4 0 +IN –IN 1
 
E1 3 0 2 0 5
 
RO OUT 3 2
 
.END
 
放大器建模为模拟滤波器可提高SPICE仿真速度
图7. 采用Sallen-Key滤波器的5倍增益放大器仿真电路
 
接下来,利用MFB拓扑的标准形式将传递函数转换为电阻和电容值。
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
从计算R2开始转换。为此,可以将传递函数改写为以下更为通用的形式:
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
设置 C1 = 10 nF,然后选择C2 ,使得根号下的量为正数。为方便起见,选择C2 为 10 pF。代入已知值 C2 = 10 pF、 a1 = 3.67E6、K = 5、 a0 = 17.86E12 ,计算R2值:
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
R1 的值很容易计算,等于 R2/K = R2/5 = 33。根据标准多项式系数可求解 R3。代入a0、R2和 C2 的已知值可得:
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
最后,验证元件比是否正确,即代入a0、R2、 R3、增益K和 C2 (从s 项求得)的已知值时,C1 应等于10 nF。
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
得出元件值后,再代入方程式中,验证多项式系数在数学上是否正确。利用电子表格计算器就能轻松完成这项工作。所示的元件值是可以用于最终SPICE模型的实际值。实际应用中,应确保最小电容值不低于10 pF。
 
5倍增益放大器的网络列表如下文所示,模型则如图8所示。G1是开环增益为120 dB的VCCS(压控电流源)。注意,如果使用电阻、电容、二极管和非独立源,所需的元件数将多得多
 
.SUBCKT MFB +IN –IN OUT
 
***VCCS – 120 dB OPEN_LOOP_GAIN***
 
G1 0 7 0 6 1E6
 
R1 4 3 330
 
R3 6 4 34K
 
C2 7 6 1P
 
C1 0 4 1N
 
R2 7 4 1.65K
 
E2 3 0 +IN –IN 1
 
E1 9 0 7 0 –1
 
***OUTPUT_IMPEDANCE RO = 2 Ω***
 
RO OUT 9 2
 
.END
 
 
放大器建模为模拟滤波器可提高SPICE仿真速度
图8. 采用MFB滤波器的5倍增益放大器仿真电路
 
设计示例:10倍增益放大器
 
在第二个示例中,考虑一个无过冲10倍增益放大器的脉冲响应,如图9所示。建立时间约为7 μs。由于无过冲,脉冲响应可以近似为具有临界阻尼, ζ ≈ 0.935 (Mp = 0.025%)。
 
放大器建模为模拟滤波器可提高SPICE仿真速度
图9. 无过冲10倍增益放大器
 
在无过冲的情况下,很容易保持恒定的建立时间,并调整阻尼比以模拟正确的带宽和峰化。图10显示了极点如何随阻尼比而变化,与此同时建立时间保持不变。图11显示了频率响应的变化情况。
 
放大器建模为模拟滤波器可提高SPICE仿真速度
图10. 不同阻尼比对应的极点位置,建立时间保持不变
 
放大器建模为模拟滤波器可提高SPICE仿真速度
图11. 不同阻尼比对应的频率响应,建立时间保持不变
 
***AD8208 PREAMPLIFIER_TRANSFER_FUNCTION (GAIN = 20 dB)***
 
.SUBCKT PREAMPLIFIER_GAIN_10 +IN –IN OUT
 
E1 OUT 0 LAPLACE {V(+IN)–V(–IN)} = {3.734E12 / (S^2 + 1.143E6*S + 373.379E9)}
 
.END
 
为求得单位增益拓扑的电阻和电容值,请像前面一样选择R1 = R2 = 10 kΩ 。利用与5倍增益放大器示例相同的方法计算电容值:
 
放大器建模为模拟滤波器可提高SPICE仿真速度
 
网络列表如下文所示,Sallen-Key仿真电路模型则如图12所示。E2是一个10倍增益模块,与一个2 Ω输出阻抗一起置于输出级。E2将单位增益传递函数放大10倍。拉普拉斯变换和Sallen-Key网络列表产生的仿真相同,如图13所示。
 
***AD8208 PREAMPLIFIER_TRANSFER_FUNCTION (GAIN = 20 dB)***
 
.SUBCKT AMPLIFIER_GAIN_10_SALLEN_KEY +IN –IN OUT
 
R1 1 4 10E3
 
R2 5 1 10E3
 
C2 5 0 153E–12
 
C1 2 1 175E–12
 
G1 0 2 5 2 1E6
 
E2 4 0 +IN –IN 10
 
E1 3 0 2 0 1
 
RO OUT 3 2
 
.END
 
放大器建模为模拟滤波器可提高SPICE仿真速度
图12. 采用Sallen-Key滤波器的10倍增益放大器仿真电路
 
 
放大器建模为模拟滤波器可提高SPICE仿真速度
图13. 采用Sallen-Key滤波器的10倍增益放大器的频域仿真
 
利用MFB拓扑可以进行相似的推导。网络列表如下文所示,仿真模型则如图14所示。
 
***AD8208 PREAMPLIFIER_TRANSFER_FUNCTION (GAIN = 20 dB)***
 
.SUBCKT 8208_MFB +IN –IN OUT
 
***G1 = VCCS WITH 120 dB OPEN_LOOP_GAIN***
 
G1 0 7 0 6 1E6
 
R1 4 3 994.7
 
R2 7 4 9.95K
 
R3 6 4 26.93K
 
C1 0 4 1N
 
C2 7 6 10P
 
EIN_STAGE 3 0 +IN –IN 1
 
***E2 = OUTPUT BUFFER***
 
E2 9 0 7 0 1
 
***OUTPUT RESISTANCE = 2 Ω***
 
RO OUT 9 2
 
.END
 
放大器建模为模拟滤波器可提高SPICE仿真速度
图14. 采用MFB滤波器的10倍增益放大器仿真电路
 
结束语
 
对于高带宽放大器,与利用s域(拉普拉斯变换)传递函数相比,利用模拟元件构建SPICE模型能够提供快得多的时域仿真。Sallen-Key和MFB低通滤波器拓扑提供了一种将s域传递函数转换为电阻、电容和压控电流源的方法。
 
MFB拓扑的非理想操作来源于 C1 和 C2 在高频时表现为相对于电阻R1、 R2和R3的阻抗短路。同样,Sallen-Key拓扑的非理想操作来源于C1 和 C2 在高频时表现为相对于电阻 R1 和 R2的阻抗短路。这两种拓扑的对比如图15所示。
 
现有常用于CMRR、PSRR、失调电压、电源电流、频谱噪声、输入/输出限幅及其它参数的电路可以与该模型合并,如图16所示。
 
放大器建模为模拟滤波器可提高SPICE仿真速度
图15. Sallen-Key和MFB拓扑的波特图
 
放大器建模为模拟滤波器可提高SPICE仿真速度
图16. 包括误差项的完整SPICE放大器模型
 
参考电路
 
Karpaty, David. “Create Spice Amplifier Models Using Second-Order Approximations.” Electronic Design, September 22, 2010.
 
 
推荐阅读:
 
看懂MOSFET数据表,第5部分——开关参数
使用高压放大器简化您的BOM
LTspice音频WAV文件:使用立体声和加密语音消息
看懂MOSFET产品说明书,第4部分 —— 脉冲电流额定值
PCB面积总是不够用?教你一个好办法
特别推荐
技术文章更多>>
技术白皮书下载更多>>
热门搜索
 

关闭

 

关闭