一种自动增益控制电路及信号处理系统的制作方法

文档序号:14490443阅读:264来源:国知局
一种自动增益控制电路及信号处理系统的制作方法

本申请涉及自动控制技术领域,更具体地说,涉及一种自动增益控制电路及信号处理系统。



背景技术:

自动增益控制(automaticgaincontrol,agc)是一种被广泛应用于信号处理领域的技术手段,特别的,在音频功放中,为了提升音乐播放的效果,增大音乐播放的响度,目前的音频功率放大器大多带有复杂的自动增益控制电路,自动增益控制电路的功能类似于音效处理中的压缩功能或限幅功能。随着输入信号的增大,输出功率随之增大,该功能在输出功率超过设定的启动阈值后,主动降低功放内部的增益,将输出功率限制在设定的阈值之下;当输入信号减小,输出功率降低到设定的释放阈值后,该功能主动恢复功放内部的增益,使得功放的输出处于预先设定的功率范围之内。

增益衰减的速率称为自动增益控制电路的压缩速率,增益恢复的速率称为自动增益控制电路的释放速率。现有技术中的自动增益控制电路如图1所示,主要包括时钟选择电路20、压缩/释放比较电路30、速率配置电路10和具有n位计数器单元的可逆计数器40;在配置过程中,通过速率配置电路向时钟选择电路发送速率配置信号,以配置压缩速率对应的压缩时钟信号以及释放速率对应的释放时钟信号;在使用过程中,压缩/释放比较电路30通过可逆计数器40输出信号与预先设定的释放阈值和压缩阈值的比较,来确定所需输出的计数方向指令向时钟选择电路20和可逆计数器40输出,时钟选择电路20根据计数方向指令,确定向可逆计数器40输出的压缩时钟信号或释放时钟信号,可逆计数器40根据计数方向指令确定工作状态(累加、累减和保持),并通过接收到的时钟信号的不停翻转,实现可逆计数器的累加或累加,从而实现可逆计数器的输出信号的递增或递减。

但是,现有技术中的自动增益电路的时钟选择电路20在进行压缩时钟信号向释放时钟信号的切换或释放时钟信号向压缩时钟信号的切换时,可能会在向可逆计数器40输出的时钟信号中额外增加伪上升沿,这种伪上升沿会导致可逆计数器的误计数,特别是在当压缩速率或释放速率较小时,这种伪上升沿会导致实际压缩速率或实际释放速率随所处理信号频率的增加而迅速增加,造成可逆计数器40输出信号的偏差,难以满足精度要求较高的应用场景的要求。

另外,现有技术中的自动增益电路的时钟选择电路20的输出的时钟信号的频率是需要和设定的压缩速率或释放速率相对应的,当设定的压缩速率或释放速率较小时,时钟选择电路20输出的时钟信号的频率也会较小,而较小频率是时钟信号会在自动增益控制电路的待处理信号较接近设定的释放阈值或压缩阈值时,造成比较严重的计时误差,同样难以满足精度要求较高的应用场景的要求。



技术实现要素:

为解决上述技术问题,本发明提供了一种自动增益控制电路及信号处理系统,以解决由于时钟信号的切换而导致的实际压缩速率或实际释放速率与预先设定的压缩速率或释放速率误差较大,而导致的输出信号产生偏差的问题,以及在自动增益控制电路的待处理信号较接近设定的释放阈值或压缩阈值时,会造成较严重的计数误差的问题。

为解决上述技术问题,本发明实施例提供了如下技术方案:

一种自动增益控制电路,包括:时钟模块、具有n位计数器单元的可逆计数器和比较控制模块;其中,

所述时钟模块的输出端与所述可逆计数器的时钟输入端连接,用于向所述可逆计数器提供工作时钟;

所述比较控制模块的输出端与所述可逆计数器的控制输入端连接,用于向所述可逆计数器输出计数方向指令;

所述可逆计数器用于根据所述计数方向指令确定计数状态,和用于根据所述工作时钟和与所述计数状态对应的增益速率确定参与计数的n位计数器单元,参与计数的n位计数器单元根据所述计数状态和所述工作时钟输出增益信号,n≤n。

可选的,所述可逆计数器根据所述工作时钟和与所述计数状态对应的增益速率确定参与计数的n位计数器单元具体用于,根据所述工作时钟的周期和与所述计数状态对应的增益速率计算n,将所述可逆计数器的后n位计数器单元确定为参与计数的n位计数器单元。

可选的,所述可逆计数器根据所述工作时钟的周期和与所述计数状态对应的增益速率计算n具体用于,将所述工作时钟的周期和与所述计数状态对应的增益速率代入第一预设公式中,计算获得n;

所述第一预设公式为:n=-log2vt;其中,v表示与所述计数状态对应的增益速率,t表示所述工作时钟的周期。

可选的,所述计数方向指令为正向指令或逆向指令或锁定指令。

可选的,当所述计数方向指令为正向指令时,所述可逆计数器根据所述计数方向指令确定计数状态具体用于,根据所述正向指令确定累加状态;

当所述计数方向指令为逆向指令时,所述可逆计数器根据所述计数方向指令确定计数状态具体用于,根据所述逆向指令确定累减状态;

当所述计数方向指令为锁定指令时,所述可逆计数器根据所述计数方向指令确定计数状态具体用于,根据所述锁定指令确定保持状态。

可选的,所述自动增益控制电路还包括:速率配置模块;

所述速率配置模块的输出端与所述可逆计数器的速率配置端连接,用于向所述可逆计数器发送速率配置指令;

所述可逆计数器还用于根据所述速率配置指令更新各计数状态的增益速率。

可选的,所述可逆计数器根据所述速率配置指令更新各计数状态的增益速率具体用于,根据所述速率配置指令更新所述累加状态对应的释放速率以及所述累减状态对应的压缩速率。

一种信号处理系统,包括如上述任一项所述的自动增益控制电路。

从上述技术方案可以看出,本发明实施例提供了一种自动增益控制电路及信号处理系统,其中,所述自动增益控制电路的时钟模块向可逆计数器只提供了一种工作时钟,相比使用多时钟来实现增益变化速率的调节,此自动增益控制电路通过改变可逆计数器中参与计数的计数单元个数来实现自动增益控制过程中增益变化速率的调节,从而解决了在多时钟系统中由于时钟信号的切换而导致的实际压缩速率或实际释放速率与预先设定的压缩速率或释放速率误差较大的问题,避免了可逆计数器的输出信号产生偏差的问题。

进一步的,由于本申请实施例中的自动增益控制电路只需要一种工作时钟即可满足工作需求,工作时钟的周期无需根据不同计数状态对应的增益速率而变化,因此可以选取一个频率较高的时钟信号作为所述工作时钟,从而避免了在自动增益控制电路的待处理信号较接近设定的压缩阈值时出现的计时误差,以使所述自动增益控制电路的输出信号的精度增加,从而满足精度需求较高的应用场景的需求。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为现有技术中的自动增益控制电路的结构示意图;

图2为现有技术中的时钟选择电路的结构示意图;

图3为现有技术中的时钟选择电路在进行时钟信号切换时的时钟波形示意图;

图4为现有技术中当压缩速率较高时,时钟选择电路在进行时钟信号切换时的时钟波形示意图;

图5为现有技术中当压缩速率较低时,时钟选择电路在进行时钟信号切换时的时钟波形示意图;

图6为本申请的一个实施例提供的一种自动增益控制电路的结构示意图;

图7为本申请的一个优选实施例提供的一种自动增益控制电路的结构示意图。

具体实施方式

正如背景技术所述,现有技术中的自动增益控制电路主要存在两个问题:

(1)当设置较小的压缩速率或释放速率时,实际压缩速率或实际释放速率会随待处理信号频率的增加而迅速增加:

具体地,参考图2,图2为现有技术中典型的时钟选择电路的结构示意图,在图2中可以看出,时钟选择电路主要由一个非门nor和三个与非门nand构成,其中,aclk表示可逆计数器在累减状态时所使用的时钟信号,rclk表示可逆计数器在累加状态时所使用的时钟信号,s表示时钟选择信号;以可逆计数器由累加状态向累加状态改变(也就是由释放速率向压缩速率切换)时,时钟信号的切换为例对时钟选择电路输出的信号中可能出现伪上升沿的情况进行说明,在这个过程中,aclk、rclk、s和时钟选择电路的输出的时钟信号(out)的波形参考图3;从图3中可以看出,当进行时钟信号切换的时刻,aclk的取值为1,而rclk的取值为0时,就会在时钟选择电路的输出的时钟信号中出现一个伪上升沿;当压缩速率较快(aclk频率较高)时,在每一次自动增益控制电路的待处理信号超过压缩阈值的时间内,这种伪上升沿相比真实上升沿的比例很小,从而对整体的压缩速率影响不大,参考图4,在图4所示的情况中,压缩速率较快,aclk频率较高,伪上升沿与真实上升沿的比例为1:4;但是当压缩速率较慢(也就是aclk频率较低)时,每一次自动增益控制电路的待处理信号超过压缩阈值的时间内,真实上升沿的数量减少,从而导致伪上升沿占整体上升沿的比例上升。如图1所示,由于时钟选择电路向可逆计数器输出的时钟信号是上升沿有效的,可逆计数器是无法区分时钟信号的上升沿是真实的上升沿还是伪上升沿,因此,这些伪上升沿会在这种情况下导致压缩过程提前完成,参考图5,在图5所示的情况中,压缩速率较慢,aclk频率较低,伪上升沿与真实上升沿的比例为1:1。仍然以功放应用为例,过快的压缩过程会导致音频信号过快的被压缩,从而出现音质较“闷”的情况,给用户体验带来不良影响。

(2)如果把自动增益控制电路的压缩或释放的过程细分来看,可以把可逆计数器的每增加(累加状态)或每减少(累减状态)一下作为压缩过程或释放过程的一步来看待,当自动增益控制电路的待处理信号的频率增加,且较为靠近压缩阈值或释放阈值时,最后几步的压缩或释放时间很长;

仍然以压缩过程为例,假设自动增益控制电路的待处理信号为正弦波信号,当其峰值比压缩阈值高但是非常接近时,信号中超过阈值部分的持续时间(duringtime,dt),如表1所示:

表1正弦波信号峰值在压缩阈值附近时,信号中超过阈值部分的持续

时间

从表1中可以发现,对于高频(20khz)的待处理信号而言,要保证自动增益控制电路的最后一步的压缩时间在比较准确的范围内,则要求时钟控制电路输出的时钟信号(计步时钟)的周期远小于dt才行;以自动增益控制电路一步的一般(0.5db/2=0.25db)左右作为统计上自动增益控制电路最后一步触发时待处理信号峰值与压缩阈值的最大可能的差距,则计步时钟的周期t(即时钟控制电路输出的时钟信号的周期)需要远小于3.6μs,以平均误差10%为例,则:

计步时钟的周期t<3.6×2×10%μs=0.72μs;

从而选用的计步时钟的频率f>1/t=1.39mhz。

而现有技术中的自动增益控制电路需要根据不同的压缩速率选用不同频率(周期)的计步时钟,对于较慢的压缩速率会使用较低频率(较大周期)的时钟信号作为计步时钟,这就会使得当自动增益控制电路的待处理信号的在压缩阈值或释放阈值附近时,最后几步的计时误差就会非常显著,也就是说可能会出现自动增益控制电路的待处理信号一直达不到想要的信号阈值或者说需要很长的时间才能达到想要的信号阈值,这种情况很难满足精度要求较高的应用场景的要求。

有鉴于此,本申请实施例提供了一种自动增益控制电路,包括:时钟模块、具有n位计数器单元的可逆计数器和比较控制模块;其中,

所述时钟模块的输出端与所述可逆计数器的时钟输入端连接,用于向所述可逆计数器提供工作时钟;

所述比较控制模块的输出端与所述可逆计数器的控制输入端连接,用于向所述可逆计数器输出计数方向指令;

所述可逆计数器用于根据所述计数方向指令确定计数状态,和用于根据所述工作时钟和与所述计数状态对应的增益速率确定参与计数的n位计数器单元,参与计数的n位计数器单元根据所述计数状态和所述工作时钟输出增益信号,n≤n。

需要说明的是,对于可逆计数器而言,对于周期为t的时钟信号,可逆计数器的输出每增加1或减少1所需要的时间满足公式(1);

δt=t×2n(1)

其中,δt表示可逆计数器的输出每增加1或减少1所需要的时间,t表示所选用的工作时钟的周期,n表示可逆计数器中参与计数的计数器单元的位数;

根据公式(1)可得增益变化的速率满足公式(2);

其中,v表示增益变化的速率(压缩速率或释放速率)。

在现有技术中的自动增益控制电路中,n=n且固定不变,通过改变t来实现增益变化的速率的改变,也正是由于需要改变t(也就是进行时钟信号的切换),从而出现了上述两个问题。

因此,在本申请实施例提供的自动增益控制电路中,所述自动增益控制电路的时钟模块向可逆计数器只提供了一种工作时钟(即保持t不变),相比使用多时钟来实现增益变化速率的调节,此自动增益控制电路通过改变可逆计数器中参与计数的计数单元个数来实现自动增益控制过程中增益变化速率的调节,从而解决了在多时钟系统中由于时钟信号的切换而导致的实际压缩速率或实际释放速率与预先设定的压缩速率或释放速率误差较大的问题,避免了可逆计数器的输出信号产生偏差的问题。

进一步的,由于本申请实施例中的自动增益控制电路只需要一种工作时钟即可满足工作需求,工作时钟的周期无需根据不同计数状态对应的增益速率而变化,因此可以选取一个频率较高的时钟信号作为所述工作时钟,从而避免了在自动增益控制电路的待处理信号较接近设定的压缩阈值时出现的计时误差,以使所述自动增益控制电路的输出信号的精度增加,从而满足精度需求较高的应用场景的需求。

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本申请实施例提供了一种自动增益控制电路,如图6所示,包括:时钟模块100、具有n位计数器单元的可逆计数器200和比较控制模块300;其中,

所述时钟模块100的输出端与所述可逆计数器200的时钟输入端连接,用于向所述可逆计数器200提供工作时钟;

所述比较控制模块300的输出端与所述可逆计数器200的控制输入端连接,用于向所述可逆计数器200输出计数方向指令;

所述可逆计数器200用于根据所述计数方向指令确定计数状态,和用于根据所述工作时钟和与所述计数状态对应的增益速率确定参与计数的n位计数器单元,参与计数的n位计数器单元根据所述计数状态和所述工作时钟输出增益信号,n≤n。

在本申请实施例提供的自动增益控制电路中,所述自动增益控制电路的时钟模块100向可逆计数器200只提供了一种工作时钟(即保持t不变),相比使用多时钟来实现增益变化速率的调节,此自动增益控制电路通过改变可逆计数器200中参与计数的计数单元个数来实现自动增益控制过程中增益变化速率的调节,从而解决了在多时钟系统中由于时钟信号的切换而导致的实际压缩速率或实际释放速率与预先设定的压缩速率或释放速率误差较大的问题,避免了可逆计数器200的输出信号产生偏差的问题。

进一步的,由于本申请实施例中的自动增益控制电路只需要一种工作时钟即可满足工作需求,工作时钟的周期无需根据不同计数状态对应的增益速率而变化,因此可以选取一个频率较高的时钟信号作为所述工作时钟,从而避免了在自动增益控制电路的待处理信号较接近设定的压缩阈值时出现的计时误差,以使所述自动增益控制电路的输出信号的精度增加,从而满足精度需求较高的应用场景的需求。

在上述实施例的基础上,在本申请的一个实施例中,所述可逆计数器200根据所述工作时钟和与所述计数状态对应的增益速率确定参与计数的n位计数器单元具体用于,根据所述工作时钟的周期和与所述计数状态对应的增益速率计算n,将所述可逆计数器200的后n位计数器单元确定为参与计数的n位计数器单元。

具体地,所述可逆计数器200根据所述工作时钟的周期和与所述计数状态对应的增益速率计算n具体用于,将所述工作时钟的周期和与所述计数状态对应的增益速率代入第一预设公式中,计算获得n;

所述第一预设公式为:n=-log2vt;其中,v表示与所述计数状态对应的增益速率,t表示所述工作时钟的周期。

所述第一预设公式由公式(2)推导而来。

在上述实施例的基础上,在本申请的另一个实施例中,所述计数方向指令为正向指令或逆向指令或锁定指令。

当所述计数方向指令为正向指令时,所述可逆计数器200根据所述计数方向指令确定计数状态具体用于,根据所述正向指令确定累加状态;

当所述计数方向指令为逆向指令时,所述可逆计数器200根据所述计数方向指令确定计数状态具体用于,根据所述逆向指令确定累减状态;

当所述计数方向指令为锁定指令时,所述可逆计数器200根据所述计数方向指令确定计数状态具体用于,根据所述锁定指令确定保持状态。

在上述实施例的基础上,在本申请的一个优选实施例中,如图7所示,所述自动增益控制电路还包括:速率配置模块400;

所述速率配置模块400的输出端与所述可逆计数器200的速率配置端连接,用于向所述可逆计数器200发送速率配置指令;

所述可逆计数器200还用于根据所述速率配置指令更新各计数状态的增益速率。

具体地,所述可逆计数器200根据所述速率配置指令更新各计数状态的增益速率具体用于,根据所述速率配置指令更新所述累加状态对应的释放速率以及所述累减状态对应的压缩速率。

需要说明的是,一般情况下,自动增益控制电路在使用过程中需要用到多种增益速率和释放速率,这些不同的增益速率和释放速率的配置由用户通过所述速率配置模块400输入速率配置指令来实现,以满足自动增益控制电路对于多种增益速率和释放速率的需求。

相应的,本申请实施例还提供了一种信号处理系统,包括如上述任一实施例所述的自动增益控制电路。

可选的,所述信号处理系统可以为音频信号处理系统。本申请对此并不做限定,具体视实际情况而定。

综上所述,本申请实施例提供了一种自动增益控制电路及信号处理系统,其中,所述自动增益控制电路的时钟模块100向可逆计数器200只提供了一种工作时钟,相比使用多时钟来实现增益变化速率的调节,此自动增益控制电路通过改变可逆计数器200中参与计数的计数单元个数来实现自动增益控制过程中增益变化速率的调节,从而解决了在多时钟系统中由于时钟信号的切换而导致的实际压缩速率或实际释放速率与预先设定的压缩速率或释放速率误差较大的问题,避免了可逆计数器200的输出信号产生偏差的问题。

进一步的,由于本申请实施例中的自动增益控制电路只需要一种工作时钟即可满足工作需求,工作时钟的周期无需根据不同计数状态对应的增益速率而变化,因此可以选取一个频率较高的时钟信号作为所述工作时钟,从而避免了在自动增益控制电路的待处理信号较接近设定的压缩阈值时出现的计时误差,以使所述自动增益控制电路的输出信号的精度增加,从而满足精度需求较高的应用场景的需求。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1