【伯德图与运放稳定性】01 从直流到频域

【伯德图与运放稳定性】01 从直流到频域

本章目标:这个系列文我最开始是在电源网开始编写的,当时的初衷是给从事模拟电路设计工作的朋友写一套入门文章,在论坛查资料的时候看到很多人不会分析系统的稳定性,而且很多人没有建立起一套体系认知,导致出现问题时,大家处以一个迷茫的状态,解决问题是靠猜,这样,在实际的工作中会花费大量时间,就算解决了,也会担心会不会有新的问题产生。而且,论坛上的资料对于初学者不太友好,因为大家没有建立起前置知识的话,想看懂有点困难。不过当初在电源网编辑的内容我自己存在内容安排不当,当时写的也比较急,存在一些笔误,我的同事们都表示看起来有点乱,只能算能看懂,但是还是有点迷糊,所以这次我就将整个文章进行重构,让大家尽可能的看懂和理解。


1 可能遇见过的现象

大家在实际的电路调试中,如果是从事模拟电路,电源方向的,可能会遇见过下面这些情况

第一种,大家如果使用过TI的buck降压芯片,会发现有些buck降压芯片上面会有一个引脚,叫做COMP,诸如TPS5430,TPS54331这些芯片都有这个引脚。在数据手册中,其引脚说明中为“该引脚是误差放大器输出和 PWM 比较器的输入。将频率补偿元件与该引脚相连。”

image

image-1

在实际的电路中,这个引脚一般会连接一个RC串联网络,或者在并联一个电容。计算工作在数据手册中往往比较复杂,所以很多人就直接用手册中的某个案例的取值。但是在调试的时候,发现电源空载或轻载正常,一带载输出电压就开始低频摆动,示波器 AC 耦合能看到近似正弦的波动,电感还可能啸叫,只要调一下这个引脚的电阻电容值,很多时候可以解决这些问题。

此外,如果大家还会用TI的 WEBENCH® Power Designer 来辅助设计的话,就看到有部分设计的图表中还会存在名字“Loop Response”的图表,这个图表在我们后面的文章也会经常看见

amCharts

第二种,某些LDO芯片,他会特别表明输出需要接一个钽电容,比如Advanced Monolithic Systems的AMS1117系列,在数据手册中就写到了“The circuit design used in the AMS1117 series requires the use of an output capacitor as part of the device frequency compensation.
The addition of 22µF solid tantalum on the output will ensure stability for all operating conditions“。AMS1117 系列所用的电路设计需要使用输出电容作为器件频率补偿的一部分。在输出端添加 22µF 固体钽电容将确保在所有工作条件下保持稳定。同样有明确标识的还有UMW公司的AMS1117。

image-2

不过,相信大家也干过不想加钽电容,就直接加MLCC,然后发现好像也没有太大的问题,能观测到的无非是“纹波”好像大了一点,然后就是负载有点振铃的感觉。在多叠几个电容就解决了,当然,也可能出现电容多了,反而“纹波”怎么更大。

备注:LDO没有纹波这个东西,LDO只有纹波抑制比,但是很多就习惯把LDO输出上叠加的交流波形叫纹波了,所以这里就先这么叫了。

第三种,一个原本工作正常的电路,换了一个运放之后开始不稳定。原先用的运放没问题,但是带宽低,换了一个更高带宽、或者更便宜的运放,输出开始出现振荡或者振铃。你检查偏置、检查电源、检查负载,都没问题,但电路就是不正常。

第四种,运放做缓冲器时,空载正常,接上容性负载、长电缆或后级输入电容后,输出持续高频振荡、芯片发热;阶跃响应振铃不衰减,甚至完全失控。然后有经验的工程师会给你说大部分通用运放的容性驱动能力很弱,需要更换能够驱动大容性负载的运放,比如常见的TI的TLV2333,在 Figure 14:小信号过冲与负载电容间的关系中,直接驱动 ≤100 pF 比较稳妥,过冲约 10% 左右。

image-3

这些现象,表面上看各不相同,开关电源,LDO,运放,驱动,有的跟器件替换有关,有的跟负载有关。但它们有一个共同点:他们本质上都是负反馈系统,不论是TPS5430构成buck降压电路,还是AM1117的LDO电源电路,亦或者TLV2333的缓冲器电路。

进一步说,它们都可以抽象成同一个负反馈模型。负反馈系统并不是简单地把输出接回输入端,而是不断把输出采样回来,与目标值比较,再用比较得到的误差去修正输出。其基本结构可以写成:

image-4

其中,\(X_{in}(s)\) 是目标值,\(X_{out}(s)\) 是输出,\(E(s)\) 是误差,\(A(s)\) 是前向通路,\(β(s)\) 是反馈通路。比较点处的负号表示反馈量被减去,这就是“负反馈”的来源。环路增益定义为:

\[T(s)=A(s)\beta(s) \]

闭环传递函数为:

\[H(s)=\frac{X_{out}(s)}{X_{in}(s)} =\frac{A(s)}{1+A(s)\beta(s)} =\frac{A(s)}{1+T(s)}\]

关于负反馈系统,这里就不再细讲了,大家记不太清楚的回去看《模拟电路》里面的关于运放虚短虚断的那一章节,只要能理解为什么虚短和虚断,那就可以了,还有就是,大家看到上面的流程图,应该能想到这是《信号与系统》里面的知识,其实这本书对设计一个复杂电路来说还是挺重要的。不过这里我用到的知识点很浅,也不需要再去额外看。

上面的几个例子中,他们的故障现象虽然各有不同,但是,他们的故障原因是一致的,就是:
整个反馈系统在某些频率上失去了稳定性,
这里要特别强调“整个系统”四个字。很多初学者遇到这类问题,第一反应是“哪里自激了”,然后把注意力全放在运放上——换运放、加补偿、调偏置。但实际情况往往是:运放本身没有问题,问题出在整个环路。运放的开环增益、反馈电阻、反馈电容、负载电容、MOS管的寄生电容、PCB走线的寄生参数,它们共同决定了环路在不同频率下的增益和相位。某个频率上,环路的总相移接近了180°,同时环路增益还大于1,系统就会在那个频率上振荡。换一个运放,运放内部的开环增益曲线变了,整个环路的频率响应也就变了,原来稳定的电路可能变得不稳定,原来不稳定的电路也可能变得稳定。这正是“换运放导致不稳定”的根本原因。

所以,稳定性分析的对象不是运放,也不是某个单独的电容电阻,而是整个反馈环路。我们要回答的问题是:这个环路在不同频率下的增益是多少,相位是多少,两者有没有可能在某个频率上同时满足危险条件。

那么,环路为什么会在某些频率上失去稳定性?换句话说,一个本来用于稳定电路的负反馈,为什么会在某些频率上反过来破坏稳定性?要回答这个问题,我们需要先看清楚负反馈最基本的工作方式,以及它在什么条件下会变成正反馈。这就是下一节的内容。


2、负反馈为什么会变成正反馈

2.1 先看一个最简单的负反馈模型

先不考虑运放的内部结构,把运放当作一个增益为 \(A_{ol}\) 的黑盒子。信号从同相端输入,经过运放放大,输出经过反馈网络回到反相端。

用一个方框图表示:输入信号 \(V_{in}\)进入求和节点,求和节点的输出进入运放,运放增益为 \(A_{ol}\),运放输出为 \(V_{o}\),\(V_{o}\) 经过反馈网络 \(F\) 回到求和节点,在求和节点,反馈信号被减去。

image-5

闭环增益,也就是传递函数为:

\[A_{cl}(s) = \frac{V_{out}}{V_{in}} = \frac{A_{ol}(s)}{1 + A_{ol}(s)F(s)} \]

这里定义环路增益:

\[ T(s) = A_{ol}(s)F(s) \]

闭环增益也可以写成:

\[ A_{cl}(s) = \frac{A_{ol}(s)}{1 + T(s)} \]

低频时,\(A_{ol}\) 非常大,\(T(s)\)也很大,所以:

\[ A_{cl} \approx \frac{1}{F} \]

这就是我们熟悉的“闭环增益由反馈网络决定”。运放的开环增益越大,这个近似越准。到这里,一切都很正常。问题出现在高频。

2.2 当环路增益等于-1

我们来看一个特殊情况:

\[T(s) = -1 \]

代入闭环增益公式:

\[ A\_{cl}(s) = \frac{A_{ol}(s)}{1 + T(s)} = \frac{A_{ol}(s)}{1 + (-1)} = \frac{A\_{ol}(s)}{0} \]

数学上,分母为零,这个式子不成立。但在现实中,发生的事情是这样的:环路上,某个频率的信号绕着整个回路走了一圈,回到起点时,它的幅度和原来一样大,但相位反了过来。

想象一个1kHz的正弦波。它从求和节点出发,经过运放放大,经过反馈网络,回到求和节点。如果这一路上,它的幅度没有衰减,同时相位恰好偏移了180°,那么它回到求和节点时的波形,和出发时正好反相。原本求和节点做的是减法:输入减去反馈。但现在反馈信号本身已经反了180°,再做减法,就变成了加上一个和原来同相的信号。也就是说,负反馈变成了正反馈。信号不但没有被抑制,反而被加强了。然后这个被加强的信号又绕着环路走一圈,又被加强一次。幅度越来越大,越来越大,直到电路的某个非线性环节把它限制住——比如运放的输出摆幅限制、供电电源限制、或者压摆率限制。最终,电路稳定在某一个频率上,持续输出一个幅度有限的振荡波形。

这就是系统失去稳定性的过程。注意,这里的关键不是运放“自己”想振荡,而是整个环路在那个频率上,把负反馈变成了正反馈。

2.3 幅度条件和相位条件

更一般地说,系统发生持续振荡需要同时满足两个条件。

幅度条件是:

\[|T(j\omega)| \geq 1 \]

也就是环路增益至少等于1,信号绕一圈回来后,幅度没有衰减到1以下,例如,一个幅度100mV的1kHz正弦波经过了环路增益后,如果幅度变为了20mV,那么就算这个正弦波相位翻转了180°,那么从系统上来看,他还是一个负反馈效果。

相位条件是:

\[ \angle T(j\omega) = -180^\circ \]

也就是信号绕一圈回来后,相位反了过来。

当这两个条件在某个频率上同时成立,系统就会在这个频率上振荡。如果幅度条件满足,相位条件也满足,那么振荡一旦被任何扰动触发,就会持续下去。如果幅度条件不满足,也就是环路增益小于1,那么信号绕一圈回来后幅度会衰减,振荡会逐渐消失。如果相位条件不满足,也就是相位没有反相,那么反馈仍然是负反馈,信号会被抑制,不会振荡。

所以,稳定性分析的核心问题就是:在环路增益下降到1之前,环路的相位有没有达到-180°?

为了回答这个问题,我们需要知道两个量随频率如何变化:环路增益的幅度,以及环路增益的相位。而这两个量,都是频率的函数。


3.3 那如果我的输入是直流呢?

到这里,很多人的第一反应是:我的电路输入是直流信号,或者是一个非常缓慢变化的信号。我又没有给电路加交流信号,那这个振荡跟我有什么关系?

这是一个非常合理的问题。而且,如果你只从“输入信号”本身来看,确实看不到交流成分。一个理想的直流信号,频率为0,既没有幅度变化,也没有相位变化。从直觉上讲,直流信号在环路上走一圈,幅度被运放放大,反馈回来被减去,好像确实不会出问题。但现实中的直流信号,从来都不是理想的直流。

3.1 直流信号上叠加了什么

我们来看一个实际的直流输入信号。它可能是:一个基准电压芯片的输出,一个传感器的静态输出,一个分压电阻网络产生的电压,一个DAC的固定码值输出,或者一个电源的输出电压。这些信号,看起来是恒定的直流。但如果你用示波器把纵轴放大到mV级别,或者用频谱仪看,会发现上面叠加了很多东西:电源纹波、热噪声、1/f噪声、外部电磁干扰、数字电路开关噪声、负载变化引起的瞬态扰动、上电瞬间的冲击、开关电源的开关频率及其谐波。

这些东西的幅度可能很小,可能只有几十μV,也可能有几十mV。但它们的频率成分非常丰富,从几十Hz到几十MHz都有。对于电路来说,这些就是交流信号。

3.2 电路不需要你给它加交流信号,它自己会产生交流信号

即使你把输入短路到地,电路中依然存在扰动源。比如:运放自己的输入电压噪声,通常在nV/√Hz量级;运放自己的输入电流噪声;电阻的热噪声,阻值越大,热噪声越大;电源上的纹波和噪声;外部空间耦合进来的干扰;电路上电瞬间的阶跃冲击。

这些扰动,在频域上覆盖了很宽的频率范围。其中,总会包含一个频率,恰好满足振荡条件。如果电路在那个频率上的相位已经接近-180°,而环路增益仍然大于1,那么这个微小的扰动就会被环路不断地放大。它一开始可能只是几μV的噪声,但经过环路一圈一圈地放大,几μV变成几mV,几mV变成几百mV,最后被限制在某个幅度上。

这就是为什么:即使输入是直流,电路仍然可能振荡。

3.3 所以稳定性问题,跟输入信号是不是交流没有关系

稳定性分析的对象,不是输入信号,而是环路本身。环路增益$ T(s) = A_{ol}(s)F(s)$,是由运放和反馈网络决定的。它跟你的输入信号是什么,没有关系。输入信号只是扰动源之一。真正的扰动源,是电路内部和外部无处不在的噪声、干扰和瞬态。这些扰动在频域上覆盖了很宽的频率范围。稳定性分析要回答的问题是:在这些频率中,有没有哪个频率,环路会把它放大?如果放大了,会不会持续放大?

这个问题,只有在频域中才能回答。因为频域可以告诉我们:环路增益在哪些频率上大于1,在哪些频率上相位接近-180°,两者有没有重叠,重叠的频率上,系统会不会振荡。

所以,即使你的电路输入是直流,你依然需要看频域。对于电路来说,频域分析的意义在于:同一个电路,对不同频率的信号,响应可能完全不同。
一个RC低通滤波器,对1Hz的信号几乎不衰减,对1kHz的信号衰减一点点,对1MHz的信号衰减很多。一个运放,在直流时开环增益有100dB,在1MHz时可能只剩下0dB。一个电容,在低频时阻抗很大,在高频时阻抗很小,但频率再高一点,它又因为等效串联电感而变成感性。

如果你只知道电路在直流下的表现,你就不知道它在高频下会发生什么。而稳定性问题,恰恰发生在高频。所以,我们需要一种方法,能够描述电路在整个频率范围内的行为。伯德图就是这种描述。它告诉你,电路对不同频率的信号,分别放大或衰减了多少倍,分别相移了多少度。有了这张图,你才能判断,在哪个频率上,环路增益会降到0dB,在哪个频率上,相位会接近-180°,两者是不是会在危险的地方相遇。


4 为什么稳定性问题非要用频域看

4.1 时域能看到现象,但看不到原因

可能有人会问:我在示波器上明明能看到振荡,为什么还要折腾频域?我直接换个电容、换个电阻,把振荡调没不就行了吗?

对于简单电路,盲试确实有时候能奏效。但对于稍微复杂一点的电路,盲试的代价很高。你看到一个1MHz的振荡,你怎么知道该改哪个元件?是运放输出端的电容?是反馈电阻上的电容?是负载电容?是电源去耦?还是运放本身的选型问题?如果不知道原因,你只能一个一个换,运气好能碰上,运气不好换了一天也没解决,甚至换了一个参数,振荡频率变了,幅度小了,你以为解决了,结果量产之后又冒出来。

时域波形能告诉你“发生了什么”,但不一定能告诉你“为什么发生”。而频域分析,就是帮你找原因的工具。

4.2 一个具体的调试场景

假设你有一个运放电路,输出驱动一个MOS管。你发现输出有1MHz左右的振荡。在时域上,你只看到这个1MHz的正弦波。但在频域上,你可以把整个环路增益画出来,然后看到:运放的开环增益在某个频率开始下降,MOS管的栅极电容和运放输出电阻构成了一个极点,这个极点在某个频率上带来了额外的-20dB/dec斜率和-90°相位滞后。如果这个极点出现在环路增益0dB频率附近,相位裕度就会大幅下降。这时候你就知道,问题出在栅极电容和输出电阻上。解决办法可能是:降低运放输出电阻,加一级缓冲器;或者调整补偿网络,把这个极点的影响抵消掉。你看,频域分析不是数学游戏,它直接告诉你该动哪个元件,以及为什么动它。

备注:零点和极点的知识会在下一章讲到

4.3 频域分析是调试工具,不是数学作业

很多人对频域分析有抵触,是因为在学校里学的时候,它被讲成了一堆数学推导。傅里叶变换、拉普拉斯变换、传递函数、零极点图,公式一大堆,但很少有人告诉你这些东西在实验室里怎么用。

但实际上,对于硬件工程师来说,频域分析最重要的不是推导,而是理解它的物理意义。你不需要会解微分方程,但你需要知道:一个极点会让增益以-20dB/dec下降,同时带来最多-90°的相位滞后。一个零点会让增益以+20dB/dec上升,同时带来最多+90°的相位超前。多个极点叠加,相位滞后会累加。当累加的相位滞后接近-180°时,如果环路增益还大于1,系统就会振荡。

这些结论,才是调试时真正用得上的东西。伯德图就是把这些结论画成图,让你一眼就能看出系统的稳定性。


5 幅度和相位

在频域分析中,我们最关心两个量:幅度和相位。而伯德图就能够直观的反应这两物理量的图形

5.1 幅度和增益

假设一个线性系统,输入正弦波幅度为 \(V_{in}\),输出正弦波幅度为 \(V_{out}\),那么该频率下的增益为:

\[ A(f) = \frac{V_{out}}{V_{in}} \]

在伯德图中,增益通常用分贝表示:

\[ A_{dB}(f) = 20 \log_{10} A(f) \]

例如:增益为1,对应0dB;增益为10,对应20dB;增益为100,对应40dB;增益为0.1,对应-20dB。分贝的好处是,把乘法变成了加法。级联系统的总增益,在对数坐标下等于各级增益之和。

5.2 相位

相位表示输出正弦波相对于输入正弦波的时间偏移。如果输出滞后于输入,相位为负;如果输出超前于输入,相位为正。例如:输出与输入完全同相,相位为0°;输出滞后四分之一个周期,相位为-90°;输出与输入反相,相位为-180°。在运放稳定性分析中,相位滞后是关键问题。因为负反馈本身已经包含了180°的反相。如果环路再额外引入180°的相移,负反馈就会变成正反馈。

6 伯德图

要分析上述问题,最常用的工具就是伯德图。伯德图由两张图组成:一张是幅频特性图,横轴为频率,纵轴为增益,单位通常为dB;另一张是相频特性图,横轴为频率,纵轴为相位,单位通常为度。两张图的横轴都采用对数坐标,例如1Hz、10Hz、100Hz、1kHz、10kHz、100kHz、1MHz。伯德图的两张图刚好就符合上面提到的需求,而且伯德图也足够直观,对于一些构成简单的系统,甚至手画都可以分析。

在稳定性分析中,我们通常绘制的是环路增益 \(T(s) = A_{ol}(s)F(s)\) 的伯德图。在环路增益伯德图上,找到 \((|T| = 1)\),即0dB的频率,查看该频率下的相位,计算该相位距离-180°的差值,这个差值就是相位裕度。例如下图,如果0dB频率处的相位是-110°,那么相位裕度为:

\[ PM = 180^\circ - 110^\circ = 70^\circ \]

通常认为,相位裕度大于45°系统比较稳定。

tinadiag4

伯德图之所以适合运放稳定性分析,有几个实际原因。第一,运放数据手册通常提供开环增益曲线,可以直接用于绘制 \(A_{ol}\)。第二,反馈网络 (F) 通常可以手工计算,其零极点比较明确。第三,对数坐标下,级联系统的乘除可以转化为加减,便于把复杂环路拆成几个简单环节。第四,仿真软件可以方便地得到伯德图,并与手工分析相互验证。第五,相位裕度与时域过冲、振铃有直接对应关系,便于工程判断。

当然,伯德图不是唯一方法。根轨迹、奈奎斯特图等也可以分析稳定性。但对于以运放为核心的模拟电路,伯德图直观、易用,且与数据手册和仿真工具衔接最好。

posted @ 2026-10-04 18:49  纠伦  阅读(5)  评论(0)    收藏  举报