【伯德图与运放稳定性】07 被忽略的零极点:非理想因素如何让计算失真
【伯德图与运放稳定性】07 被忽略的零极点:非理想因素如何让计算失真
1、 从简化假设说起
第5章建立小信号模型时,用了不少简化假设。运放的输出电阻取了一个固定值 \(R_o = 200\Omega\),MOS管的栅源电容取了一个固定值 \(C_{gs} = 1.2\text{nF}\),忽略了密勒效应、PCB走线的寄生电容、补偿网络中MLCC的直流偏置效应。MOS管的跨导 \(g_m\),在100mA电流下取了一个固定值0.25。
第6章讨论补偿方案时,也基本沿用了这些假设。最后得出的结论是:用加缓冲器或反馈网络补偿,可以把电路做得比较稳定。
这些假设在教科书里很常见,因为它能让分析变得简单。但在实际电路中,这些参数都不是常数。它们会随频率变化,随工作点变化,随温度变化,随封装变化。当这些参数偏离假设值的时候,零极点的位置会移动,原来的稳定性判断可能就不成立了。
很多工程师遇到过一个矛盾现象:按照理论计算,相位裕度明明有50°以上,电路应该是稳定的,但实际测试却出现振荡。或者反过来,理论计算显示很危险,实际测试却一切正常。这种矛盾不一定是因为计算错了,往往是因为模型里漏掉了一些重要的零极点。
本章就来分析几个最容易被忽略、但对稳定性影响比较大的因素:运放的输出电阻不是常数,运放的杂散电容会在反馈网络中引入零点,运放的带宽不是越宽越好,电容的容值会随直流偏置变化。这些因素单独看都不复杂,但它们的共同特点是:会悄悄改变环路的零极点位置,让理论计算和实际电路产生偏差。
2、 运放的输出电阻不是常数
2.1 闭环输出阻抗和开环输出阻抗
第5章里把运放的输出电阻 \(R_o\) 当作200Ω的固定值。这个值其实是运放的闭环输出阻抗,而不是开环输出阻抗。
闭环输出阻抗,指的是运放在闭环工作状态下,从输出端看进去的阻抗。因为负反馈的作用,闭环输出阻抗通常很低,可能只有几Ω甚至几毫欧。但闭环输出阻抗随频率变化,在高频段会上升。
开环输出阻抗,指的是运放内部输出级的实际输出阻抗。这个阻抗通常比较大,可能几百Ω甚至几千Ω。它由运放内部电路决定,和外部反馈无关。
稳定性分析需要用到的,是开环输出阻抗,不是闭环输出阻抗。但很多运放的数据手册只给出闭环输出阻抗曲线,不给开环输出阻抗曲线。这时需要换算。换算关系是:
当环路增益很大时,开环输出阻抗约等于闭环输出阻抗乘以环路增益。如果已知闭环输出阻抗曲线和开环增益曲线,就可以反推开环输出阻抗曲线。
2.2 两个运放的输出阻抗曲线对比
不同运放的输出阻抗曲线差别很大。这里看两个例子。
第一个例子是ADI的AD8542。它的闭环输出阻抗曲线比较平滑,低频段接近0Ω,在100kHz之后开始上升,在5MHz到7MHz附近达到峰值,约750Ω,然后高频段又下降。

第二个例子是TI的LMV844。它的闭环输出阻抗曲线和AD8542不同。LMV844没有AD8542那种高频段的剧烈下降,但曲线不够平滑,存在多个斜率变化段。

从这两个例子可以看出,运放的输出阻抗曲线不仅因型号而异,还和闭环增益有关。第5章里把 \(R_o\) 当成200Ω常数,只是一个粗略近似。
2.3 对稳定性的影响
为什么输出阻抗曲线这么重要?
原因在于,在上个章节的例子里,输出阻抗和MOS管栅极电容 \(C_{gs}\) 构成的低通环节 \(G_{lf}(S)\),其极点频率是:
如果 \(R_o\) 是常数,\(f_p\) 就是一个固定的频率。但如果 \(R_o\) 随频率变化,情况就复杂了。如果 \(R_o\) 的曲线有多个斜率变化段,相当于引入了额外的零极点。整个 \(G_{lf}(S)\) 的传递函数就不再是一阶低通了,可能是二阶甚至更高阶。
这解释了为什么换运放可能会导致不稳定的原因之一。虽然两个运放的开环增益曲线可能相似,但输出阻抗曲线可能完全不同。换一个运放,在上个例子中 \(G_{lf}(S)\) 的零极点位置就变了,整个环路的稳定性也可能跟着变。
3、 运放带宽:不是越宽越好
3.1 一个常见的选型误区
很多工程师选运放时,习惯性地看带宽。带宽越宽,速度越快,性能越好,价格也越贵。如果成本允许,往往倾向于选更高带宽的运放。
这个直觉在很多场合是对的,比如高速信号放大、快速瞬态响应、低失真等。但在稳定性分析中,带宽不是越高越好。有时候,带宽宽反而会引入问题;而带宽窄的运放,反而能规避掉这些问题。
为什么会这样?
3.2 带宽如何改变环路增益曲线
回顾第4章的方法。环路增益的稳定性,取决于 \(A_{ol}\) 曲线和 \(1/F\) 曲线的交点位置,以及交点处的闭合速率。
\(A_{ol}\) 曲线的形状由运放本身决定。带宽越宽,\(A_{ol}\) 曲线的0dB频率越高,整条曲线在频率轴上向右移动。带宽越窄,\(A_{ol}\) 曲线的0dB频率越低,整条曲线在频率轴上向左移动。
\(1/F\) 曲线的形状由外部反馈网络和负载决定。它的零极点位置和运放无关,是固定的。
当两条曲线相交时,交点位置会随着 \(A_{ol}\) 曲线的移动而移动。
- 如果运放带宽很宽,\(A_{ol}\) 曲线右移,交点频率升高,可能落到高频区域;
- 如果运放带宽很窄,\(A_{ol}\) 曲线左移,交点频率降低,可能落到低频区域。
关键问题是:交点落在哪个区域,恰好决定了闭合速率。
3.3 带宽太宽导致不稳定
拿第5章的恒流源电路举例。
用OP07时,\(A_{ol}\) 的0dB交越频率约1MHz,与 \(1/(G_{lf} \cdot G_{mos})\) 的交点约598kHz,在 \(C_{gs}\) 极点663kHz之前。闭合速率-20dB/dec,系统稳定。
现在换一个带宽更高的运放,比如GBW=10MHz的。\(A_{ol}\) 曲线整体右移,与 \(1/(G_{lf} \cdot G_{mos})\) 的交点会升高,可能移到1MHz以上,甚至几MHz。这时候663kHz的极点已经落在交点以下,闭合速率变成-40dB/dec,系统不稳定。
再进一步,如果换一个GBW=100MHz的运放,交点可能移到10MHz以上。这时候不仅663kHz的极点,连更高频率的寄生极点也进入了0dB线附近。相位裕度可能进一步恶化。
这个现象的本质是:带宽越宽,环路增益在高频段越高,交越频率越高,越容易碰到外部电路引入的高频极点。而这些高频极点在低带宽运放的应用中,本来是被"绕过"的——因为环路增益在那个频率已经降到0dB以下了,它们不起作用。
3.4 带宽太窄也可能出问题
那是不是带宽越窄越好呢?也不是。
如果运放带宽特别低,虽然能避开高频极点,但可能碰到低频极点。
举个假设的例子。假设电路中有一个负载电容,和输出阻抗构成一个10kHz的极点。如果你用的运放GBW只有100kHz,\(A_{ol}\) 曲线在低频就快速下降,交越频率可能落在10kHz附近。这时候闭合速率会变成-40dB/dec,同样不稳定。
或者,如果运放本身的内部极点比较低,比如主极点在几百Hz,第二极点在几十kHz。低带宽运放的第二极点可能就在交越频率附近,相位裕度反而不好。
还有一种情况:低带宽运放的压摆率(Slew Rate)也较低,如果应用需要快速响应,可能会因为压摆率不足而失真。但这属于另一个话题,和稳定性分析无关。
3.5 关键在于匹配,不在带宽本身
所以真正的关键,不是带宽高还是低,而是运放的开环增益曲线和外部电路的零极点位置是否匹配。
同一个电路,换不同的运放,稳定性的变化可能完全相反:
- 换一个带宽高的运放,可能不稳定,因为这个运放的交越频率刚好碰到了电路中的高频极点;
- 换一个带宽低的运放,可能稳定,因为它的交越频率低,避开了高频极点;
- 换另一个更低带宽的运放,可能又不稳定,因为它的交越频率恰好碰上了电路中的低频极点。
这解释了一个让很多工程师困惑的现象:有时候随便换一个更便宜的运放,电路反而稳了;有时候花大价钱换了一个高性能运放,电路反而振荡。
例如下面这两张图,第一张图的反馈曲线下,使用中带宽的运放,刚好会不稳定,而使用高带宽和低带宽的运放,都可以让系统稳定。但是第二张图里面,低带宽运放是稳定的,但是一旦更换为更高带宽的运放,则会导致不稳定。


3.6 工程上的取舍
在实际设计中,怎么处理带宽和稳定性的关系?
有几种思路。
第一种,先按需求选带宽。带宽首先要满足信号要求,比如信号频率、上升时间、建立时间等。在这条基础上,再检查稳定性。
第二种,用仿真验证。选定运放后,用SPICE模型仿真环路增益,看看相位裕度是否足够,注意仿真的话要首先测试一下仿真的模型正不正确。如果不够,调整补偿网络,或者换运放。
第三种,预留调整空间。PCB上为补偿网络预留位置,比如反馈电容、前馈电容的焊盘。如果实际测试发现不稳定,可以通过调整这些元件来改善。这样即使换运放,也还有补救的余地。
这几种思路可以结合使用。重点是不要只看带宽数字,要看整个环路的频率响应。
4、 运放引脚的杂散电容
4.1 杂散电容从哪里来
杂散电容指的是运放引脚和PCB走线对地的寄生电容。它主要来自三个地方:芯片引脚本身的电容,焊盘和走线之间的电容,走线和底层地平面之间的电容。
学习模电的时候,在运放的那一节,很多资料都写了,要注意运放的杂散电容,都要求运放底部不要覆铜,以求尽可能的降低杂散电容,理由是杂散电容会引起系统的不稳定,但是怎么影响的却没有详细的说明。
一个典型的运放引脚,对地杂散电容大约在1pF到10pF之间。如果PCB走线比较长,或者底下有大面积覆铜,杂散电容可能达到几十pF甚至100pF以上。

4.2 杂散电容如何影响反馈网络
以一个同相放大电路为例。运放反相输入端有杂散电容 \(C_F\),它对地连接,和 \(R_1\) 并联。
注意:运放引脚的杂散电容就是pF级别的,下面的例子举例到了nF级别,是为了给大家直观的展现,不要真的以为杂散电容可以达到nF级别。

加上 \(C_F\) 之后,反馈网络的分压比变成:
取倒数,整理后得到:
零点频率由括号内的项决定:
注意,零点频率不是 \(1/(2\pi R_1C_F)\),而是 \(1/(2\pi(R_1 \parallel R_2)C_F)\)。因为 \(R_1 \parallel R_2\) 小于 \(R_1\),所以实际零点频率比很多人以为的要高。这是很容易算错的地方。
举一个数值例子。\(R_1 = 1\text{k}\Omega\),\(R_2 = 9\text{k}\Omega\),闭环增益为10(20dB)。\(R_1 \parallel R_2 = 900\Omega\)。
代入不同 \(C_F\) 值,计算零点频率:
- 当 \(C_F = 150\text{nF}\) 时,\(f_z \approx 1.18\text{kHz}\);
- 当 \(C_F = 15\text{nF}\) 时,\(f_z \approx 11.8\text{kHz}\);
- 当 \(C_F = 1.5\text{nF}\) 时,\(f_z \approx 118\text{kHz}\);
- 当 \(C_F = 0.15\text{nF}\) 时,\(f_z \approx 1.18\text{MHz}\)。
把这些曲线画在 \(1/F\) 伯德图上,和OP07的 \(A_{ol}\) 曲线一起看。

从图上可以看到,\(C_F\) 越大,零点频率越低,\(1/F\) 曲线越早开始上升,与 \(A_{ol}\) 的交点频率也越高,落到 \(A_{ol}\) 下降更陡的区域,闭合速率变大,稳定性变差。
在 \(R_1 = 1\text{k}\Omega\)、\(R_2 = 9\text{k}\Omega\) 的条件下,\(C_F\) 最好小于0.15nF(150pF)。这个容值在普通PCB上算比较大了,如果布局不好,反相端走线很长,底下还有大面积覆铜,杂散电容达到150pF是可能的。这就是为什么运放底部要挖空、走线要短。
需要提醒一点:增大 \(R_1\) 并不能提高 \(C_F\) 的容许范围。因为零点频率由 \(R_1 \parallel R_2\) 决定,增大 \(R_1\) 和 \(R_2\) 会同时增大 \(R_1 \parallel R_2\),反而让零点频率更低,杂散电容的影响更严重。正确做法是减小 \(R_1\) 和 \(R_2\),或者减小 \(C_F\) 本身。
注意:大家在设计电路时,一定要从整个系统出发,底层挖不挖空是根据你的实际电路来的,不用每个运放都挖空,如果芯片多了,为了挖空,而搞得模拟端的地出现问题,就更加得不偿失了
4.3 不只是反相端
上面的分析只考虑了反相端的杂散电容。实际上,运放的正端输入引脚、输出引脚,也都有杂散电容。
正端输入的杂散电容和输入电阻构成一个低通,会影响输入信号的高频成分,但一般不参与反馈环路,对稳定性影响不大。
输出引脚的杂散电容会加到负载电容上,影响输出端的频率响应。如果输出驱动能力弱,或者负载电容大,输出端的极点可能比较低,需要额外考虑。
有些运放的同相输入端会串联一个电阻,比如几十kΩ。这个电阻的作用之一,就是和正端的杂散电容构成一个低通,抑制高频干扰。同时它也可以平衡输入偏置电流,减小失调电压。在稳定性分析中,这个电阻本身不直接参与环路,但它改变了正端的高频阻抗。
5、 电容不是理想电容
5.1 实际电容的等效模型和直流偏置效应
电容是电路里最常用的元件之一。但实际电容不是理想电容,它有等效串联电阻(ESR)、等效串联电感(ESL)和绝缘电阻。

在低频段,ESR 和 ESL 的影响很小,电容主要表现为容性。随着频率升高,ESR 开始起作用,使阻抗下降速度变缓。在自谐振频率处,ESL 和 \(C\) 发生谐振,阻抗达到最低。超过自谐振频率后,ESL 占主导,电容变成感性,阻抗开始上升。
对MLCC电容来说,还有一个容易被忽略的问题:直流偏置效应。MLCC的介质材料通常有较强的铁电性,施加直流电压后,有效容值会下降。下降的幅度和电容的封装、耐压、介质类型都有关系。
看一个具体的例子。有两个标称值相同的MLCC电容,都是10μF、25V、X5R材质,型号分别是C3216X5R1E106K085AC和C2012X5R1E106K085AC。唯一的区别是封装:前者是1206封装,后者是0805封装。


从图上可以看到,在5V直流偏置下,1206封装的有效容值还有8.4μF,而0805封装的只剩4.25μF,相差将近一倍。在25V偏置下,1206封装的还有2μF左右,0805封装的只有0.5μF到1μF。
这意味着,如果原理图上写的是一个10μF电容,实际安装在电路板上,有效容值可能只有4μF甚至更少。如果这个电容参与反馈网络或补偿网络,实际容值和设计值的差异会直接改变零点或极点的位置。
5.2 一个实际案例
说一个我遇到的案例。
之前用过一个心电采集芯片,是个很小众的牌子。和厂家技术人员交流的时候,对方明确说:这个芯片的外围电容,不能使用0402封装,一定要用0603以上。
原因就是上面说的直流偏置效应和封装差异。0402封装的电容,在同样的偏置电压下,有效容值比0603封装的小很多。芯片内部电路对这个外围电容的容值比较敏感,如果容值不足,可能影响稳定性,或者影响信号带宽。
这个案例说明,选电容的时候不能只看标称值。同样一个原理图上写100nF,实际装到板子上,由于封装、耐压、材质、直流偏置、温度的不同,有效容值可能从100nF变成50nF、30nF甚至更少。如果这个电容是补偿网络的一部分,零点或极点的位置就会偏移,稳定性也会受到影响。
所以在设计补偿网络的时候,要选择温度稳定性好、电压系数小的电容。比如C0G/NP0介质的电容,容值几乎不随电压和温度变化,虽然容值做不大,但在小容值补偿场合是首选。X7R/X5R介质容值大,但电压系数也大,用的时候要留够裕量,最好查看厂家给出的偏置曲线。
6、 其他被忽略的因素
除了上面几个主要因素,还有一些影响相对较小、但在特定情况下需要考虑的因素。
运放的输入电阻和输入电容,在低频段影响很小。但对于CMOS输入的运放,输入电容可能比较大,和反馈网络一起会在反馈路径上引入额外的极点。当反馈电阻很大时,这个极点可能比较低,影响相位裕度。
外部电阻也不是理想的。对于大阻值电阻,寄生电容的影响更明显。比如一个10MΩ的电阻,它的寄生电容可能和电阻本身构成一个低通,在高频段衰减信号。在本案例的恒流源电路中,电阻值都不大,这部分影响可以暂时忽略。
PCB上的走线和过孔也有寄生参数。走线约有每毫米1nH的寄生电感,过孔约有1nH电感和0.3pF电容。在几十MHz以上的高频段,这些寄生参数可能构成谐振,产生额外的零点或极点。如果电路的工作频率或者环路交越频率很高,这些因素需要考虑进去。
这里也要说明,虽然有很多因素都会影响电路的稳定性,但是大家也要从自己实际的电路来确定这些可能的因素会不会造成那么大的影响,有些因素是可以忽略的,比如你的带宽非常低的情况下,很多的高频零极点是不用考虑的。

浙公网安备 33010602011771号