音频系统应用中的“POP”噪声以其常用解决方法
“POP”噪声是指音频器件在上电、断电瞬间以及上电稳定后,各种操作带来的瞬态冲击所产生的爆破声。本文将讨论几种常用的解决方法及其工作原理,这些方法针对具体的集成电路具有各自特点,应用时需要根据实际情况综合考虑。
图1:单端模式与桥式模式输出电路示意图。
本文提到的音频系统是指音频半导体器件,包括音频数模转换器、模数转换器、音频放大器等的应用系统。产生“POP”噪声的瞬态冲击通常是一种很窄的尖脉冲,用傅立叶分析展开后,其频谱分量很丰富,且在频域内的能量分布相对平均。本文下面讨论的几种“POP”噪声解决方法的目的,就是要降低20Hz~20kHz范围内的谐波分量。对绝大多数人而言,如果信号的峰峰值电压小于10mV,就已经听不见了。
桥式(BTL)输出与单端(SE)输出
图2:桥式模式与单端模式输出的“POP”噪声。
桥式结构输出相对单端模式输出而言有很多优点,比如桥式模式可在相同的电源电压Vdd条件下,输出较高的电压VOBTL=2*VOSE,在相同的负载条件下输出更大的功率。图1为这两种输出电路的示意图。
需要指出的是,桥式模式能有效抑制共模噪声。输出功率相同时,桥式模式的噪声明显小于单端模式的噪声(如图2所示,蓝色通道接负载两端,绿色通道接电源Vdd)。这是因为相同的冲击会同时出现在桥式输出结构的“+”、“-”两端,并通过负载后相互抵消,不对扬声器做功,因而不会发出“POP”声。这种结构对于上电、掉电噪声以及操作噪声都有很好的抑制作用。
图3:桥式结构的两种电路形式。
常见的桥式结构有两种,它们对抑制“POP”声的能力有细微差别。图3左边的电路是两个放大单元并联连接,同一个输入信号分别进入两个放大单元AMP1、AMP2的“+”、“-”输入端,而且使它们的放大倍数保持相同、相位保持相反(相差180度)。在这里,AMP1单元网络的增益GAINUP=-R9/R8=-2,AMP2单元网络的增益GAINDOWN=1+R11/R12=2。单个电阻的精度误差通常为±30%,但在同一个芯片内,这种偏差朝同一个方向,如果设计恰当,电阻比值的精度可以保证在±1%以内。AMP1、AMP2的DC参数也同样朝同一个方向偏差,所以在“+”、“-”输出端可以很好地抵消共模信号。
图4:OCL输出结构。
图3右边的电路则采用级联形式,前一级的输出信号进入下一级的“-”输入端,AMP4单元网络的增益GAINBACK=-R14/R13=-1。事实上,AMP3的输出经过AMP4反向后会有一定的延时,在“+”、“-”输出端并不能完全抵消。AMP3的失调电压等支流误差信号会在AMP4中复制,并与AMP4的失调电压一起送到“+”端,而无法与“-”端完全抵消。因此这种结构抑制“POP”声的效果略差一些,通常用在小功率器件中。
除此之外,还有一种结构也能有效抑制共模噪声,那就是无输出耦合电容(OCL)结构(见图4)。该结构与桥式结构非常类似,在输出端将直流共模电压抵消掉,只有交流信号对负载作功。与桥式结构一样,OCL结构由于省去了耦合电容,可给音频系统带来另外一个好处,即系统的频率响应可以延伸到很低的范围,后面将对此作详细介绍。
增大VBIAS的滤波电容
图5:单端模式电路的“POP”噪声与Vbias电压的仿真波形。
音频集成电路通常都有一个管脚叫做Vbias,或者Vref、Vmid、Vsvr、bypass等,它是内部直流基准电压,若要内部电路能工作,这个偏置电压必须建立起来。实际应用时,该管脚通常外接一个旁路电解电容到地,该电容起滤除噪声的作用。对于使用正电压的单电源系统来说,当系统工作稳定时,基准电压值约等于Vdd/2。增大这个电容的容值能抑制“POP”噪声。当芯片上电或从待机状态切换到工作状态时,直流偏置电压开始建立,从0逐渐升高,并对Vbias滤波电容充电。经过一定时间后,电压上升到Vdd/2,此时芯片就可以工作了,输出的音频信号基于这个直流电压上下摆动。同样,当芯片掉电或进入待机状态时,滤波电容放电,偏置电压开始下降,从Vdd/2下降到0。实验证明,芯片上电、掉电时的“POP”声就是由偏置电压的瞬间跳变引起的。
图5是仿真结果,红线代表Vbias电压,蓝线代表单端模式的负载端输出(在耦合电容之后,如图1的左边电路,Co=220uF,RL=16Ω)。如果Vbias跳变得缓慢,“POP”冲击就会减小(如图6所示),此时的冲击脉冲变宽,幅度有所下降,“POP”声也变小了。使Vbias的上升、下降过程变缓,就可增加基准电压的跳变延时。假定滤波电容的充放电电流是个常数,可把这个过程简化成一阶RC模型,根据公式(1),可计算出电压从0上升到Vbias/2,或者从Vbias/2下降到0所需的时间。
tdalay=0.69*R*C (1)
图6:Vbias跳变变缓后,“POP”噪声的仿真波形。
因此,增大Vbias的滤波电容可以减缓直流基准电压的上升、下降速度,起到减少“POP”噪声的作用。图7是增大电容后,基准电压跳变变缓的效果,其中红线代表电源电压Vdd,蓝线代表Vbias电压(假设Vdd=5.0V,Vbias=2.5V)。
有些音频芯片集成了一个固定的延时电路单元,上电后需要经过一段固定延时,Vbias才开始缓慢上升到稳定状态,此时从低电压到高电压的上升延时时间为tpLH。当芯片掉电时,集成电路的实现方式使其很难再延时一段时间才开始下降,但是仍可以增大从高电压到低电压的下降延时时间tpHL,以达到更好的抑制效果,此时只需使放电时的等效电阻大于充电时的等效电阻即可。图8显示了MAX9890 的Vbias变化时序。
图7:耦合电容不同时的“POP”冲击波形。
tpLH=0.69*Rcharge*CBIAS (2)
tpHL=0.69*Rdischarge*CBIAS (3)
需要注意的是,滤波电容过大会使芯片的建立时间变长,使人感觉声音“久久”没有输出。另外,电容过大还会使音频系统的重要指标——总谐波失真+噪声(THD+N)变差。这里不解释详细原因,取值时请参考相应的数据手册并进行折衷选择。
减小输出端的耦合电容
对于单端的输出结构,在单电源系统中通常需要接一个电容(如图1所示)。这个电容的作用是:(1)隔断直流基准电压Vbias。如果没有隔直,直流电压会直接流过后面的扬声器线圈,使纸盆平衡位置偏向一端,若Vbias过大还可能损坏线圈。(2)耦合交流音频信号。它与扬声器负载构成了一阶高通滤波器(HPF),根据公式(4),电容的大小与低频处的截止频率fc有关。
fc=1/(2π*RL*Co) (4)
图8:MAX9890的Vbias变化时序。
电容Co越大,截止频率fc则越低,这意味着更低的频率也可耦合到负载上去(见图9)。
减小Co的容值可使“POP”冲击的幅度变小、脉冲宽度变窄。由于“POP”冲击的频谱能量大都在高频,减小Co的容值同样可以减少可闻噪声。图10显示了电容Co分别为10uF、47uF、100uF、220uF时的“POP”冲击情况。可以看出,当Co减小到一定值后,再减小该值,噪声抑制效果提高得很少。但根据公式(4),减少电容值可明显提高截止频率fc(如图9所示),因此设计工程师必须权衡,作出一个折衷选择。
当然,有的芯片具有低音增强特性,可在外部反馈回路中通过增加一个零点的方法,来使低频部分的增益大于通带内的增益。比如对于LM4838器件来说,调整电容Cbs的大小就可以调整增益拐点在频率上的位置(见图11)。
用恰当的操作来抑制“POP”噪声
图9:不同耦合电容下的频率响应特性(RL=16Ω)。
在音频功率放大器芯片上常常有MUTE、STB(Standby)管脚。当MUTE信号有效时,芯片内部将输入端短接到地,其它电路保持正常工作;而当STB信号有效时,则关断音频电路静态时最耗电的Vbias偏置电路。对采用CMOS工艺的音频电路而言,关断Vbias偏置电路后的静态电流主要是MOS管的亚阈值电流,即MOS管的漏电流(微安级),管子的阈值电压越小,此电流值越大。由以上讨论可知,若单独使用STB,由于Vbias的瞬变,难免会引起“POP”噪声。如果将这两个管脚按一定顺序正确使用,则可有效地抑制开关机噪声(见图12)。芯片上电时,先使MUTE、STB有效,待电源稳定后,先释放STB,再释放MUTE。掉电操作时,在准备掉电之前先使MUTE有效,然后再使STB有效,直到Vdd变为0。这是因为通常由MUTE操作引起的“POP” 噪声要小于STB操作引起的“POP” 噪声。
图10:耦合电容不同时的“POP”冲击波形。
图12容易使人产生这样一个误解:STB的操作全被MUTE的作用所覆盖,是否不需要STB也可以抑制噪声呢?答案是肯定的,无论STB是什么状态,若只使用MUTE且按照图12的顺序执行,的确可以抑制“POP”声。但需要注意的是,芯片在上电过程中(从0到Vdd),电源只需要达到某个小于Vdd的电压值,Vbias就会从0跳变到Vdd/2。此时电源还未稳定,Vdd会通过输出驱动管对负载产生一个无法预测的随机冲击噪声。如果此时Vbias还未建立(仍为0V),则该随机冲击噪声的影响很小,至少采用图12的操作可以抑制电源瞬变冲击引起的“POP”噪声。等电源稳定后,Vbias带来的冲击也只是由从0到Vdd/2(而不是从0到Vdd)的电源跳变引起的。但实际的情况比较复杂,有些芯片的输入端的直流基准与输出端的直流基准是两个独立的电压,当STB有效时,输出端的Vbias并不跳变;还有些芯片在MUTE有效时是将输出端短接到地。即使MUTE为有效状态,也只是将输入端接地,输出端的Vbias冲击仍然会通过耦合电容Co传递到负载。无论情况怎样,从抑制噪声的角度考虑,设计工程师总是希望输出端的Vbias变化缓慢,最好是保持不变且始终为0V。
使用外部的静音(MUTE)电路
图11:LM4838 低音增强特性,(a)典型的应用原理图;(b)不同Cbs值的频率响应。
从以上讨论可知,芯片上电、掉电时出现的“POP”噪声是比较难解决的。事实上也的确如此,没有Vdd可能意味着整个系统同时失去电源,MCU不能工作,I/O状态失去控制,也无法完成图12所示的操作。但是,仍有一些方法可以解决这个难题,例如使用外部的静音电路,此时上面提到的“减小‘POP’声,就是要避免直流瞬变”的思路仍然可用。因此这个静音电路应该具有如下功能:(1)上电时,在Vdd开始上升之前,输出一个稳定的有效信号(假设为高电平)来驱动MUTE和STB管脚;(2)掉电时,在Vdd开始下降之前,输出一个稳定的有效信号(假设为高电平)来驱动MUTE和STB管脚。
图13所示的电路基本可以满足以上两个要求。当+12V上电时,电荷通过D1到达Q1的e极,也通过R1、R2到达Q1的b极。由于电荷需要对C2充电,所以Q1的b极在上电刚开始的一段时间trise内比e极低一个阈值电压,此时Q1导通,在c极输出一段时间的高电平信号MUTE_OUT1。图14为外部静音电路的仿真结果。
图12:上电、掉电时MUTE与STB的正确时序。
当+12V突然掉电时,C2通过D2迅速放电,此时D2正向导通,将R1短路并形成放电回路。因为C2容值小,储存电荷少,所以放电时间常数ttailrise。C1储存的电荷不能通过D1释放,所以Q1的e、b极又出现了压差,使Q1导通并再次输出高电平。一旦电源稳定后,Q1的b极电压略高于e极,则Q1截止,MUTE_OUT1处于高阻状态。
实际的应用系统一般会有多组电源同时存在,由于电压不同、负载的轻重不同以及所并联的去耦电容不同,每组电源的上升、下降时间会有差异。这种现实的差异正是图13电路的工作前提:将上电、掉电时间短的电源放到+12V处,将上升相对较慢的电源作为音频Vdd。这一点需要特别强调。
下面介绍图13电路的参数优化方法。图15显示了外部静音电路中A、B、C三点的电压变化情况。在上电、掉电回路有一个公用的器件C2,C2的取值要合适,目的是实现ttailrise。可以通过加大充电回路中的电阻R1并减小放电回路中二极管D2的正向电阻,来加大这两个时间的大小差别。二极管是半导体器件,其正向电阻是非线性的,阻值与流过的正向电流有关。
图13:外部的静音电路。
RFOR=Φr/(IFOR+IS) (5)
其中,Φr=kT/q=26mV@T=300K,它是一个与温度有关的电压常数;IS为饱和电流,是一个与结面积有关的常数。从公式(5)可看出,正向电阻随正向电流的增大而减小。这里使用系统中较高的电压+12V作为静音电路的电源,是为了增加二极管D1的放电电流。在C2充电的过程中,有两个电流对其充电,其中一个电流来自+12V并经过R1,其上升时间(从10%到90%)为:
trise=2.2*Rcharge*C (6)
将R1、C2带入公式(6)计算出上升时间为10.34秒。但实际上的上升时间并没有这么长,其原因是还有另一个来自Q1的b极的充电电流。Q1导通时,B点的电压等于A点电压减去发射结压降,大约为10.6V,集电结也正偏,管子处于饱和状态,因此Q1的b极流出的电流通过R2对C2充电,加速了C点电压的上升。
图14:外部静音电路的仿真波形。
+12V电压稳定后,Q1的e、b电压差减小,管子逐渐截止,MUTE_OUT1输出为高阻状态,集电极开路。当系统突然掉电时,C点电压突然下降到0.7V(D2的压降),e、b端又出现了压差,导致Q1导通,c极输出有用的高电平信号。这时C1中储存的电荷只能通过Q1、R2、D2释放,为了延长这个放电过程,可以适当增加R2的阻值,但阻值过大会使b极电流减小,使管子的驱动能力变差。
在系统正常工作时,MUTE信号的开关可以使用MCU I/O端口作为普通的逻辑信号。为增强驱动能力,该端口的信号常常经过PNP晶体管反相后输出MUTE_OUT2(见图16),这样当MUTE0为低时,反相后的高电平MUTE_OUT2来自两个电阻的分压,即R5与Q2的e、c极饱和电阻Rbe,由于Rbe<
图15:静音电路中A,B,C各点的电压变化。
另外,来自MCU的MUTE0为低电平有效,在MCU上电、掉电的过程中,I/O的电平是未知的。如果用工具进行仿真,该端口在复位完成之前是一个不确定状态(逻辑值为“X”)。事实上,在实际的电路里并没有“X”值,而只有“1”和“0”。幸运的是,在笔者使用过的一些51系列MCU中,在这一段所谓的‘失控’时间里,I/O端口始终输出一个稳定的“L”电平。
MUTE_OUT2与上述的MUTE_OUT1形成“或”的逻辑关系,共同作用于MUTE管脚。对于输出功率不大的音频放大器,还常常用一个NPN晶体管在输出端与地之间形成一个开关,当估计可能出现“POP”噪声时,将此开关闭合,而当需要输出时,将此开关断开(如图17所示)。
图16:使用MCU I/O端口作为第二个MUTE信号。
这里只强调一点:要减小Q3闭合时的c、e间的电阻,就要从b极输入更多的电流,使其饱和深度加大,而且还要选择合适的R7阻值。由于Q3的c极是接在耦合电容之后,左右通道输出(OUT_L/OUT_R)可以为负值,所以为在正常工作时保证Q3可靠地截止,R6的另一端可以考虑接到更低的负电平上,同时使用较大的阻值以免影响Q3的饱和效果。如果输出功率很大,可考虑用物理隔离的继电器代替Q3。
虽然以上提到了5种解决“POP”噪声的方法,但它们并不是孤立的。对于实际应用中碰到的问题,要找到产生”POP”声的主要原因,另外还要综合考虑,选择最有针对性的、最经济的解决方法。
图17:两个MUTE形成“与”的逻辑关系。