本发明专利技术提供一种Biquad数字滤波器装置及实现方法,该Biquad数字滤波器装置包括数据输入存储模块、数据选择模块、Biquad运算模块和控制模块,数据输入存储模块用于接收和存储信号数据和滤波器系数;数据选择模块用于选择参与运算的信号数据和滤波器系数;Biquad运算模块用于进行滤波运算并将最终的滤波结果进行输出;Biquad运算模块包括一个乘法器和一个加法器;控制模块用于控制数据输入存储模块、数据选择模块和Biquad运算模块。本发明专利技术中的Biquad数字滤波器装置通过时分复用同一个乘法器减少了乘法器资源,且其控制逻辑简单,可以用于形成多级、多通道Biquad数字滤波器,该Biqaud数字滤波器装置更接近于DSP的应用特性,可以实现灵活的调用。可以实现灵活的调用。可以实现灵活的调用。
【技术实现步骤摘要】
一种Biquad数字滤波器装置及实现方法
[0001]本专利技术涉及数字信号处理领域,尤其涉及一种Biquad数字滤波器装置及实现方法。
技术介绍
[0002]双二阶滤波器(即Biquad滤波器)是一种常见的滤波器,被广泛地应用于数字音频信号处理,以及其他工程控制领域,如飞行控制技术中的陀螺仪滤波,以及手机光学防抖等。
[0003]Biquad数字滤波器是一种特殊的二阶IIR滤波器(具有两个极点和两个零点),Biquad数字滤波器有多种形式,其中最为常用的是二阶差分方程的方式:,也被称之为直接I型。在上述二阶差分方程中,b0、b1、b2、a1和a2为IIR滤波器的系数,这些系数是提前由算法仿真确定;、和为输入信号,其中,为当前时刻的输入信号,为前一个时刻的输入信号,为前两个时刻的输入信号;、和为输出信号,为当前时刻的输出信号,为前一个时刻的输出信号,为前两个时刻的输出信号。
[0004]如图1中所示,为一个典型的Biquad数字滤波器示意图,其表示直接I型的逻辑运算结构,该结构包含五个乘法器、四个延迟单元和一个加法器,该结构具有单个求和点的特性,因此,可易于实现在定点计算时的中间过程值的溢出控制。
[0005]此外,若需要设计一个截止频率更高的滤波器,可以采用两个或者多个Biquad滤波器级联的方式,相比于单个多阶的IIR滤波器,采用了级联方式的Biquad滤波器结构将可以显著地降低滤波器对抽头系数的敏感性。例如,一个双二阶低通滤波器有12dB/octave斜度的截止频点,可以用于音调控制;如果需要设计一个24dB/octave的斜度,可以级联两个双二阶滤波器,这个结构比一个单4阶滤波器对参数更不敏感。因此,Biquad滤波器还常被用作为更复杂滤波器的基本构建单元,如图2中所示,为一个四级Biquad滤波器级联的滤波器结构。从图2中的四级Biquad滤波器级联的滤波器结构可以看出,这样的结构中将存在大量的乘法器、延时单元和加法器,不利于硬件结构的小型化和集成化。目前,也有多级Biquad滤波器复用一个Biquad单元块的结构,如图3中所示,为两级单通道Biquad运算结构,采用时分复用的方式,增加多路选择控制逻辑,选择当前通路的信号源、中间运算缓存以及滤波器的系数,图3中同时给出了相对于系统时钟CLOCK,多路选择器输入信号Q的状态信号时序图,多路选择器输入信号Q的状态在系统时钟的每个周期之间在0和1之间交替。在图3中所示的结构中,包含有多个多路选择器及其控制逻辑,占用了较多的运算资源,且这样的结构中,其时序是固定的,仅适用于两级Biquad滤波器的情况,并不适用于其他多级结构。
[0006]在很多应用场景中,通常需要多通道的并行滤波处理,例如,音频滤波时需要处理
左右声道(L/R
‑
channel),陀螺仪(Gyroscope)需要处理X、Y以及Z轴的信号。各通道的输入信号各不相同,各通道的滤波器系数也可能存在差异。以双通道滤波为例:通常的实现方式有两种,一种是采用并行的方式,即单独使用两个传统结构的Biquad滤波器,如图4中所示,为典型的并行Biquad双通道结构,这样并行的滤波器结构中,每增加一个通道,将需要相应地增加一个Biquad滤波器,因此,这样的结构会随着通道数的增加,其硬件元件数量急剧增加,不利于硬件结构的小型化和集成化。另一种方式是采用时分复用的方式,增加多路选择控制逻辑,选择当前通路的信号源、中间运算缓存以及滤波器的滤波系数,如图5中所示,为一种常见的双通道复用Biquad结构,多路选择器根据时钟顺序向乘法器提供两个不同系数中的其中之一,多路选择器具有两种功能,一是输入信号的数据选择,二是输出信号的数据保持。图5中同时给出了相对于系统时钟CLOCK,多路选择器输入信号Q的状态信号时序图,多路选择器输入信号Q的状态在系统时钟的每个周期之间在0和1之间交替。在图5中所示的结构中,包含有多个多路选择器及其控制逻辑,占用了较多的运算资源,且这样的结构中,其时序是固定的,图5中所示的结构仅适用于x0通道和x1通道执行交替运算的形式,对于其他的顺序并不适用。
[0007]通过上述介绍可知,目前的多级Biquad滤波器以及多通道Biquad滤波器存在以下问题:(1)采用多个Biquad单元进行级联或者并行工作,这样的结构中,每增加一级或者每增加一个通道将会增加相应的硬件和软件资源,所消耗的资源较多,不利于硬件结构的小型化和集成化;(2)采用分时复用结构的多级Biquad滤波器或者多通道Biquad滤波器,其中包含多个多路选择器以及多路选择器的控制逻辑,占用了较多的运算资源;此外,这样的结构只适用于特定级数的滤波器以及特定通道数量的滤波器,灵活性较差。
[0008]因此,亟需要设计一种Biquad滤波器,其能减小对硬件资源的消耗,且具有较好的灵活性,能适用于不同级数以及不同通道数量的滤波器。
技术实现思路
[0009]为了解决上述技术问题,本专利技术提供一种Biquad数字滤波器装置,其特征在于,所述Biquad数字滤波器装置包括数据输入存储模块、数据选择模块、Biquad运算模块和控制模块,其中:所述数据输入存储模块用于接收和存储信号数据和滤波器系数,所述信号数据包括当前的输入信号数据、之前的输入信号数据以及之前Biquad数字滤波器装置的输出信号数据;所述数据选择模块用于从数据输入存储模块中选择参与运算的信号数据和滤波器系数,并将该信号数据和滤波器系数传输到Biquad运算模块;所述Biquad运算模块用于进行滤波运算并将最终的滤波结果进行输出;所述Biquad运算模块包括一个乘法器和一个加法器,滤波器系数与信号数据的乘法运算时分复用同一个乘法器,并通过加法器将乘法计算结果进行累加;所述控制模块用于控制所述数据输入存储模块、所述数据选择模块和所述Biquad运算模块;所述控制模块控制所述数据输入存储模块进行信号数据和滤波器系数的读取与存储;所述控制模块控制所述数据选择模块选择每次参与运算的信号数据和滤波器系数;所述控制模块控制Biquad运算模块进行乘累加运算,并将滤波结果输出。
[0010]采用本专利技术中提供的Biquad数字滤波器装置,具有如下优势:(1)该Biquad数字滤波器装置结构较为简单,其中的Biquad运算模块只包括一个乘法器和一个加法器,通过时分复用同一个乘法器,即可实现Biquad滤波运算的功能,减少了乘法器的资源;(2)可以通
过该Biqaud数字滤波器装置实现多级Biquad级联滤波器结构、实现多通道Biquad滤波器结构甚至实现多通道多级级联的Biquad数字滤波器结构,在实现多级Biquad级联滤波器结构、实现多通道Biquad滤波器结构甚至实现多通道多级级联的Biquad数字滤波器结构时,只需要增加数据输入存储模块中的滤波器系数存储通路和信号数据的配置通路,不再需要增加额外的计算单元,硬件成本较低;(3)控制逻辑简单,实现多级Biquad级联滤波器结构时,其控制逻辑与单级Biquad滤波器基本相同;当实现多通道Bi本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种Biquad数字滤波器装置,其特征在于,所述Biquad数字滤波器装置包括数据输入存储模块、数据选择模块、Biquad运算模块和控制模块,其中:所述数据输入存储模块用于接收和存储信号数据和滤波器系数,所述信号数据包括当前的输入信号数据、之前的输入信号数据以及之前Biquad数字滤波器装置的输出信号数据;所述数据选择模块用于从数据输入存储模块中选择参与运算的信号数据和滤波器系数,并将该信号数据和滤波器系数传输到Biquad运算模块;所述Biquad运算模块用于进行滤波运算并将最终的滤波结果进行输出;所述Biquad运算模块包括一个乘法器和一个加法器,滤波器系数与信号数据的乘法运算时分复用同一个乘法器,并通过加法器将乘法计算结果进行累加;所述控制模块用于控制所述数据输入存储模块、所述数据选择模块和所述Biquad运算模块;所述控制模块控制所述数据输入存储模块进行信号数据和滤波器系数的读取与存储;所述控制模块控制所述数据选择模块选择每次参与运算的信号数据和滤波器系数;所述控制模块控制Biquad运算模块进行乘累加运算,并将滤波结果输出。2.根据权利要求1中所述的Biquad数字滤波器装置,其特征在于,所述控制模块在控制所述数据输入存储模块时,在每次滤波之前,控制所述数据输入存储模块获取信号数据和滤波器系数,在单次的Biquad滤波运算完成时,所述控制模块控制所述数据输入存储模块更新信号数据。3.根据权利要求1中所述的Biquad数字滤波器装置,其特征在于,所述数据选择模块包括若干个多路选择器,用于分别对信号数据和滤波器系数进行选择。4.根据权利要求1中所述的Biquad数字滤波器装置,其特征在于,所述数据输入存储模块从外部存储器获取滤波器系数和缓存的信号数据,所述缓存的信号数据包括之前的输入信号数据和之前Biquad数字滤波器装置的输出信号数据,所述数据输入存储模块通过输入接口获取当前的输入信号数据。5.根据权利要求4中所述的Biquad数字滤波器装置,其特征在于,当滤波计算完成时,所述数据输入存储模块将滤波器的计算结果存储至外部存储器。6.根据权利要求4中所述的Biquad数字滤波器装置,其特征在于,所述数据输入存储模块与外...
【专利技术属性】
技术研发人员:李思佳,蔡锦恩,俞峰,朱海刚,方伟,
申请(专利权)人:浙江芯昇电子技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。