CN106817106A - 一种并行fir滤波方法及fir滤波器 - Google Patents
一种并行fir滤波方法及fir滤波器 Download PDFInfo
- Publication number
- CN106817106A CN106817106A CN201611194920.7A CN201611194920A CN106817106A CN 106817106 A CN106817106 A CN 106817106A CN 201611194920 A CN201611194920 A CN 201611194920A CN 106817106 A CN106817106 A CN 106817106A
- Authority
- CN
- China
- Prior art keywords
- signal
- module
- pending
- adder
- pending signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H17/00—Networks using digital techniques
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H17/00—Networks using digital techniques
- H03H2017/0072—Theoretical filter design
- H03H2017/0081—Theoretical filter design of FIR filters
Abstract
本发明实施例公开了一种并行FIR滤波方法及FIR滤波器,用于有效减少硬件开销和提高计算速度。本发明实施例方法包括:对输入信号进行预加合并操作得到第一待处理信号,所述输入信号和所述第一待处理信号数量均大于一路;对所述第一待处理信号与目标滤波器系数进行预乘操作得到第二待处理信号,所述目标滤波器系数与所述第一待处理信号对应;对所述第二待处理信号进行延迟合并操作得到输出信号。
Description
技术领域
本发明实施例涉及数字信号处理领域,尤其涉及一种并行FIR滤波方法及FIR滤波器。
背景技术
有限冲激响应滤波器(英文全称:Finite Impulse Response,英文简称:FIR)是数字信号处理系统中最基本的元件,具有线性相频特性,并且其单位抽样响应是有限长的,因此FIR滤波器可以实现稳定的系统。传统FIR滤波器只能通过配置多套FIR滤波器来适配多路天线数据进行处理,才能达到数据实时处理的需求,但是随着天线规模的不断增大,使用多套FIR滤波器的方案会使得对应的硬件开销明显增加,不能再满足低耗高速的滤波需求。
并行算法是指数据流在进入FIR滤波器之前先进行串并转化,然后FIR滤波器内部对多路数据进行并行处理,对将要输出的多路运算后再进行并串转化后输出。
现有技术中,基于卷积结构,通过并行算法原理设计并行度高的FIR滤波器,从而有效地提高了FIR滤波器的滤波速度。
在现有技术中,FIR滤波器的硬件面积随着FIR滤波器并行度的提高而线性增加,因此在通过设计并行度高的硬件来提升处理速度的同时,对应的硬件开销会不断增多导致高并行度FIR滤波器需要的硬件面积才能实现其功能,但是由于芯片面积等条件的约束,难以满足高并行度FIR滤波器的硬件面积需求。
发明内容
本发明实施例提供了一种并行FIR滤波方法和FIR滤波器,用于有效减少硬件开销和提高计算速度。
本发明实施例第一方面提供了一种并行FIR滤波方法,包括:
通过对FIR滤波器算法进行相应的简化设计,得到简化后的FIR滤波器算法,在根据简化后的FIR滤波器算法得到相对应的FIR滤波器结构,当然,上述FIR滤波器结构能有效的减少硬件的复杂度,简化后的FIR滤波器算法对应的实现方法包括:对输入信号进行预加合并操作得到第一待处理信号,所述输入信号和所述第一待处理信号数量均大于一路;对所述第一待处理信号与目标滤波器系数进行预乘操作得到第二待处理信号,所述目标滤波器系数与所述第一待处理信号对应;对所述第二待处理信号进行延迟合并操作得到输出信号。
从以上技术方案可以看出,本发明实施例具有以下优点:
先对输入信号进行预加合并操作得到第一待处理信号,再将第一待处理信号进行预乘操作得到第二待处理信号,最后将第二待处理信号进行延迟合并操作得到输出信号;可以理解的是,预加合并操作由加法器执行,预乘操作由乘法器执行,乘法器的硬件开销远大于加法器的硬件开销,与现有技术直接对输入信号进行预乘操作相比,由于先对输入信号进行预加合并操作将输入信号进行相应的合并得到第一待处理信号之后再进行预乘操作,所以本发明实施例中预乘操作对应使用的乘法器数量会相应的减少导致乘法器的硬件开销降低,从而有效地减少了FIR滤波器的硬件面积。因此,当FIR滤波器的并行度一定时,本发明实施例可以有效地减少FIR滤波器芯片对应的硬件开销。
结合本发明实施例第一方面,在本发明实施例第一方面的第一种可能的实现方式中,所述对输入信号进行预加合并操作得到第一待处理信号包括:
当输入信号输入加法器时,加法器对所述输入信号进行加法运算合并为第一待处理信号,所述输入信号和所述第一待处理信号数量均大于一路,所述加法器数量至少一个。
对输入信号进行加法运算合并,可以有效的减少进入FIR滤波器进行处理的信号数量。
结合本发明实施例第一方面,在本发明实施例第一方面的第二种可能的实现方式中,所述对所述第一待处理信号与目标滤波器系数进行预乘操作得到第二待处理信号包括:
通过上述处理得到第一待处理信号之后,将所述第一待处理信号中每一路信号输入对应的乘法器中,并与预置的目标滤波器系数进行乘法运算得到第二待处理信号,当然,所述目标滤波器系数与所述第一待处理信号对应,所述乘法器的数量为至少两个。
由于第一待处理信号是经过预加合并操作之后的,因此需要的乘法器数量会相对减少,从而减少FIR滤波器总体的硬件数量。
结合本发明实施例第一方面,在本发明实施例第一方面的第三种可能的实现方式中,所述对所述第二待处理信号进行延迟合并操作得到输出信号包括:
通过上述处理得到第二待处理信号之后,对所述第二待处理信号利用延迟器进行延迟运算,和利用加法器进行加法运算合并之后得到输出信号,所述加法器的数量至少两个。
通过延迟器和加法器分别对上述第二待处理信号进行相应的处理得到输出信号,使得输入信号和输出信号的数量相等,实现并行功能。
结合本发明实施例第一方面的第一种可能的实现方式至本发明实施例第一方面的第三种可能的实现方式中任一种,在本发明实施例第一方面的第四种可能的实现方式中,所述加法器包括基于位串架构设计的加法计算单元,和所述乘法器包括基于位串架构设计的乘法计算单元。
由于位串架构具有提高时钟频率的特点,因此使用位串架构的乘法器和加法器可以有效的提高滤波系统的吞吐量。
结合本发明实施例第一方面的第一种可能的实现方式至本发明实施例第一方面的第三种可能的实现方式中任一种,在本发明实施例第一方面的第五种可能的实现方式中,所述加法器包括基于概率计算原理设计的加法计算单元,和所述乘法器包括基于概率计算原理设计的乘法计算单元。
由于概率计算原理将传统的定点数转化为概率流进行表示,这样,使用有效的基于概率计算原理设计计算单元的硬件开销低,可以进一步地减少滤波系统的总体硬件开销。
本发明实施例第二方面提供了一种FIR滤波器,包括:
信号输入模块、预加模块、预乘模块、延迟合并模块和信号输出模块;
所述信号输入模块与所述预加模块连接,所述预加模块与所述预乘模块连接,所述预乘模块与所述延迟合并模块连接,所述延迟合并模块与所述信号输出模块连接;
所述信号输入模块,用于将输入信号输入;
所述预加模块,用于对所述输入信号进行预加合并操作得到第一待处理信号,所述输入信号和所述第一待处理信号数量均大于一路;
所述预乘模块,用于对所述第一待处理信号与目标滤波器系数进行预乘操作得到第二待处理信号,所述目标滤波器系数与所述第一待处理信号对应;
所述延迟合并模块,用于对所述第二待处理信号进行延迟合并操作得到输出信号;
所述信号输出模块,用于将所述输出信号输出。
从以上技术方案可以看出,本发明实施例具有以下优点:
先对输入信号进行预加合并操作得到第一待处理信号,再将第一待处理信号进行预乘操作得到第二待处理信号,最后将第二待处理信号进行延迟合并操作得到输出信号;可以理解的是,预加合并操作由加法器执行,预乘操作由乘法器执行,乘法器的硬件开销远大于加法器的硬件开销,与现有技术直接对输入信号进行预乘操作相比,由于先对输入信号进行预加合并操作得到第一待处理信号之后再进行预乘操作,所以本发明实施例中预乘操作对应使用的乘法器数量会相应的减少导致乘法器的硬件开销降低,从而有效地减少了FIR滤波器的硬件面积。因此,当FIR滤波器的并行度一定时,本发明实施例可以有效地减少FIR滤波器芯片对应的硬件开销。
结合本发明实施例第二方面,在本发明实施例第二方面的第一种可能的实现方式中,所述预加模块包括:至少一个加法器,所述加法器之间按照第一对应关系连接。
通过预加模块对输入信号进行加法运算合并,可以有效的减少进入FIR滤波器进行处理的信号数量。
结合本发明实施例第二方面,在本发明实施例第二方面的第二种可能的实现方式中,所述预乘模块包括至少两个乘法器,所述乘法器之间按照第二对应关系连接。
由于第一待处理信号是经过预加模块之后产生的,因此需要的乘法器数量会相对减少,从而减少FIR滤波器总体的硬件数量。
结合本发明实施例第二方面,在本发明实施例第二方面的第三种可能的实现方式中,所述延迟合并模块包括至少一个延迟器,所述延迟器之间按照第三对应关系连接。
通过延迟器对上述第二待处理信号进行相应的处理得到输出信号,使得输入信号和输出信号的数量相等,实现并行功能。
结合本发明实施例第二方面的第一种可能的实现方式至本发明实施例第二方面的第三种可能的实现方式中任一种,在本发明实施例第二方面的第四种可能的实现方式中,所述加法器包括基于位串架构设计的加法计算单元,和所述乘法器包括基于位串架构设计的乘法计算单元。
由于位串架构具有提高时钟频率的特点,因此使用位串架构的乘法器和加法器可以有效的提高滤波系统的吞吐量。
结合本发明实施例第二方面的第一种可能的实现方式至本发明实施例第二方面的第三种可能的实现方式中任一种,在本发明实施例第二方面的第五种可能的实现方式中,所述加法器包括基于概率计算原理设计的加法计算单元,和所述乘法器包括基于概率计算原理设计的乘法计算单元。
由于概率计算原理将传统的定点数转化为概率流进行表示,这样,使用有效的基于概率计算原理设计计算单元的硬件开销低,可以进一步地减少滤波系统的总体硬件开销。
附图说明
图1为基于卷积结构的FIR滤波器信号流图;
图2为本发明实施例中2路并行的FIR滤波方案信号流图;
图3为本发明实施例中16路并行的FIR滤波方案信号流图;
图4为本发明实施例中并行FIR滤波方法的一个实施例示意图;
图5为本发明实施例中基于位串架构设计的单比特全加器示意图;
图6为本发明实施例中基于位串架构设计16比特乘法器示意图;
图7为本发明实施例中基于概率计算原理设计的加法器示意图;
图8为本发明实施例中基于概率计算原理设计的乘法器示意图;
图9为本发明实施例中定点数转化为概率序列的转换器示意图;
图10为本发明实施例中概率序列转化为定点数的转换器示意图;
图11为本发明实施例中FIR滤波器的一个实施例示意图;
图12为本发明实施例中FIR滤波器的另一个实施例示意图。
具体实施方式
本发明实施例提供了一种并行FIR滤波方法和FIR滤波器,用于有效减少硬件开销和提高计算速度。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
FIR滤波器一般基于卷积结构实现,假设FIR滤波器的输入为长度为M的序列x[n],FIR滤波器可以表示为长度为N的序列h[n],FIR滤波器得到长度为N的输出y[n]的处理流程公式为根据卷积结构实现的FIR滤波器的信号流图如图1所示。基于卷积结构实现的FIR滤波器结构简单,容易实现,但问题在于计算延迟太大,例如长度为M的输入序列,每拍依次输入一个值到FIR滤波器中,一共需要M拍得到长度为M点的输出,但是随着数字同行系统的数据吞吐量越来越大,FIR滤波器的处理速度也逐渐成为瓶颈。
为了便于理解本发明实施例中并行FIR滤波方法,下面将结合一个具体的实施例对本发明实施例中并行FIR滤波方法进行描述。
并行化FIR滤波器可以有效解决上述FIR滤波器处理速度的瓶颈限制问题,但是随着FIR滤波器并行度的提高,FIR滤波器的硬件面积也会增加,因此,本发明实施例提出来一种新的并行FIR滤波方案来解决并行化过程中的硬件开销问题。
并行FIR滤波方案的原理如下:
以2路并行为例对上述原理进行说明,卷积运算在离散时间序列Z变换域上可以表示为多项式乘法,且输入长度为M点的序x[n]可以按照如下公式:
X(z)=x[0]+x[1]z-1+x[2]z-2+x[3]z-3+…+x[n]z-n
=(x[0]+x[2]z-2+…+x[2k]z-2k)+z-1(x[1]+x[3]z-2+…x[2k+1]z-2k)
=X0(z2)+z-1X1(z2)
所示的分解方法分成奇数序列部分和偶数序列部分;同理可以将FIR滤波器的滤波系数h[n]按照上述分解方法分成奇数序列部分和偶数序列部分,即:
H(z)=H0(z2)+z-1H1(z2)
将奇数序列部分和偶数序列部分表示得到的输入序列和FIR滤波器序列相乘得到输出序列y[n]的Z变换,并按照上述分解方法将输出序列y[n]的Z变换分成如公式:
Y(z)=Y0(z2)+z-1Y1(z2)
=(X0(z2)+z-1X1(z2))(H0(z2)+z-1H1(z2))
=X0(z2)H0(z2)+z-1(X0(z2)H1(z2)+X1(z2)H0(z2))+z-2X1(z2)H1(z2)
所示,再进一步按照矩阵形式将Y(z)拆分为Y0(z2)和Y1(z2)来表示,具体表示方法如下面的公式:
Y0(z2)=X0(z2)H0(z2)+z-2X1(z2)H1(z2)
Y1(z2)=X0(z2)H1(z2)+X1(z2)H0(z2)
所示,将上述Y0(z2)和Y1(z2)分别简写为Y0和Y1并进行相应的变形得到下面的公式:
Y0=X0H0+z-2X1H1
Y1=(H0+H1)(X0+X1)-H0X0-H1X1
按照矩阵的形式可以将Y0和Y1写成矩阵形式,如下面的公式:
所示,其中如公式中最右侧的矩阵乘法所示,对输入抽取后的信号X0和X1完成一次预加合并操作合成三路信号;如公式中中间的对角矩阵所示,将FIR滤波器系数进行同样预加合并操作生成的三个子滤波器;如公式中最左侧的矩阵乘法所示,对上述三路信号进行对应的延迟合并成2路信号输出,完成滤波操作。
其中,2路并行的FIR滤波方案对应的信号流图如图2所示。
从上述2路并行的FIR滤波方案中,可以得出,2路并行的FIR滤波器的子滤波器系数个数为N/2,一共有三个子滤波器,且加上滤波前的预处理操作和滤波后的合并延迟操作中的运算单元,需要的乘法器的个数为3N/2,加法器的个数为4+3(N/2-1),延迟器的个数为1+3(N/2-1),由于并行滤波,使得计算速度提高了两倍。
将上述2路并行推广到16路并行的FIR滤波方案,经过推导可以得到16路并行的FIR滤波方案对应的滤波矩阵形式为下面的公式:
Y16p=QH16pPX16p
其中,X16p和Y16p分别表示将输入信号序列和输出信号序列按照模16抽取方法重新排序得到的,模16抽取方法的具体操作类似上述2路并行方案中的分解思路,X16p由16路输入信号序列组成,具体可表示为下面的公式:
X16p=[X0,X8,X4,X12,X2,X10,X6,X14,X1,X9,X5,X13,X3,X11,X7,X15]
同理,Y16p由16路输出信号序列组成,具体可表示为下面的公式:
Y16p=[Y0,Y8,Y4,Y12,Y2,Y10,Y6,Y14,Y1,Y9,Y5,Y13,Y3,Y11,Y7,Y15]
右侧矩阵P表示对16路输出信号序列即Y16p进行预加合并操作,为矩阵P2张成的系数矩阵,具体可将右侧矩阵P用下面的公式表示为:
其中,为Kronecker乘积,矩阵P2可以用下面的公式表示为:
另外,中间矩阵H16p表示对上述16路输入序列相对应的FIR滤波器系数,由原始的FIR滤波器系数按照上述模16抽取方法抽取,并排序后经过相同的预加合并操作得到,具体中间矩阵H16p可表示为:
其中,为Kronecker乘积,矩阵h16表示为下面的公式:
h16=[H0,H8,H4,H12,H2,H10,H6,H14,H1,H9,H5,H13,H3,H11,H7,H15]。
最后,左侧矩阵Q表示延迟合并操作,按照如下几个公式生成:
上述几个公式中,IX×X表示x行,x列的单位矩阵,QX×X表示x行,x列的零矩阵。
综上所述,16路并行的FIR滤波方案对应的信号流图如图3所示,可以推导出,16路并行的FIR滤波方案中需要的乘法器数量为(81N/16)个,需要的加法器数量为{784+81(N/16-1)}个,需要的延迟器数量为{272+81(N/16-1)}个,其中N为FIR滤波器的滤波器系数对应的数量。另外,通过推导可以得到在L路并行的FIR滤波方案中需要的需要的乘法器数量为个;需要的加法器数量为个,其中K为用于预加合并操作的加法器数量;需要的延迟器数量为个,其中F为用于延迟合并操作的延迟器数量。
需要说明的是,以下实施例均是建立上述并行FIR滤波方案的原理之上的。
请参阅图4对本发明实施例中并行FIR滤波方法进行详细说明,本实施例中以16路并行进行说明包括:
401、对输入信号进行预加合并操作得到第一待处理信号。
本实施例中,将输入信号通过上述模16提取方法抽取为16路输入信号序列即X16p,其中X16p按照一定的排列关系排列如下公式:
X16p=[X0,X8,X4,X12,X2,X10,X6,X14,X1,X9,X5,X13,X3,X11,X7,X15]
所示,再使用按照第一对应关系连接的加法器,将抽取到的16路输入信号序列即X16p进行加法运算得到第一待处理信号,表示第一待处理信号的关系式可表示为(PX16P),第一对应关系为矩阵P所表示的行列式关系,矩阵P的具体表示式如上述16路并行FIR滤波方案的原理介绍;此外,对16路输入信号序列进行加法运算的加法器的数量为至少784个。
另外,对预置的FIR滤波器系数按照类似输入信号的抽取方法和排序方式进行抽取并排序,并将完成排序的FIR滤波器系数序列经过相同的加法运算得到目标滤波器系数即中间矩阵H16p,具体操作流程如上述16路并行FIR滤波方案的原理介绍,此外,对FIR滤波器系数序列进行加法运算的加法器的数量为至少{81(N/16-1)}个。
本实施例中,需要说明的是,上述加法器可以为基于位串架构设计的加法计算单元,也可以是基于概率计算原理设计的加法计算单元,也可以是其他能达到同样技术效果的加法计算单元,对此此处不做限定。
402、对第一待处理信号与目标滤波器系数进行预乘操作得到第二待处理信号。
本实施例中,在上述预加合并操作得到第一待处理信号已经目标滤波器系数之后,对第一处理信号与目标滤波器系数进行预乘操作包括如下两种乘法处理方式:一方面,第一待处理信号直接与对应的目标滤波器系数,利用乘法器进行相应的乘法运算;另一方面,第一待处理信号先经过延迟器的延时处理之后,再将延时后的第一处理信号与对应的目标滤波器系数使用乘法器进行乘法运算;通过上述两种乘法处理方式最终得到第二处理信号。从上述16路并行FIR滤波方案的原理介绍中可以知道上述两种乘法处理方式均同时存在,并且第一待处理信号会进过最高达(N-1)次的延时。
其中,在本步骤中,用于预乘操作的乘法器数量为至少(81N/16)个,用于预乘操作中延时的延迟器数量也为至少(81N/16)个,最终得到的第二待处理信号的可表示为(H16PPX16P)。
本实施例中,需要说明的是,上述乘法器可以为基于位串架构设计的乘法计算单元,也可以是基于概率计算原理设计的乘法计算单元,也可以是其他能达到同样技术效果的乘法计算单元,对此此处不做限定。
403、对第二待处理信号进行延迟合并操作得到输出信号。
本实施例中,当得到上述第二待处理信号即H16PPX16P之后,使用延迟器对上述第二待处理信号进行延时合并处理得到16路输出信号序列,最终将16路输出信号序列转化成输入信号,其延迟合并操作可表示为左侧矩阵Q,左侧矩阵Q的生成方式如上述16路并行FIR滤波方案的原理介绍中所述,此处不再赘述,此外16路输出信号序列的可表示为Y16p=QH16pPX16p,其中排序的16路输出信号序列可表示为:
Y16p=[Y0,Y8,Y4,Y12,Y2,Y10,Y6,Y14,Y1,Y9,Y5,Y13,Y3,Y11,Y7,Y15],
本步骤中使用的延迟器数量至少为272个。
本实施例中,乘法器和加法器只能同时使用基于位串架构设计的计算单元,或是基于概率计算原理设计的计算单元,即要么同时使用基于位串架构设计的加法计算单元和基于位串架构设计的乘法计算单元,要么同时使用基于概率计算原理设计的加法计算单元和基于概率计算原理设计的乘法计算单元。
位串架构是指乘法器和加法器每次仅读入两个比特进行计算,这样虽然完成以前的两个K比特的数的运算需要的时间增加了K倍,但关键是单比特乘法器和加法器的关键路径短,可以显著提高时钟频率。基于位串架构设计的单比特全加器如图5所示,其中,端口1和端口2为两个输入端,端口3为进为延迟输入端,端口4为本位输出端,端口5为进位输出端,另外16比特加法器可以通过调用上述单比特全加器16次实现;基于位串架构设计16比特乘法器如图6所示,其中包括16个延迟器、16个级联结构的单比特全加器、16个与门和1个非门。
基于位串架构的乘法器和加法器实现简单,相对于传统的基于综合工具得到的乘法器和加法器硬件开销降低5倍以上,由于其结构简单,与并行算法更能有效地结合,且基于位串架构的计算单元关键路径短,可通过提高时钟频率成倍地提高并行滤波系统吞吐量。
概率计算原理为通过将传统的定点数转为概率流进行表示,一个K比特的定点数可以在保持精度的情况下用2K比特长度的概率序列表示,概率序列中1出现的概率即表示该定点数归一化到0到1的定点值。基于概率计算原理设计的加法器仅需要一个多路选通器即可实现,如图7所示,选通端SL为长度为L的序列,输入端XL和YL分别为长度为L的序列,输出端ZL为长度为L的序列,当选通端SL的当前比特位为0时,选同输入端XL,当选通端SL的当前比特位为1时,选同输入端YL。因此,当选通端SL为1011,输入端XL和YL分别为1010和0110时,输出端的输出结果为0010。
基于概率计算原理设计的乘法器仅需要一个与门即可实现,如图8所示,其工作原理为S1用8比特长度的概率序列来表示4/8这个定点数,其中概率序列中存在4个1,同理S2也用8个比特的概率序列来表示6/8这个定点数,其中概率序列中存在个6个1,在进行逐比特相与以后,得到的结果也为8比特长度的概率序列,其中有3个1,表示两个定点数乘法的结果为3/8;由于概率计算原理是将定点数转换为概率序列进行计算,因此,在使用基于概率计算原理设计的加法器和乘法器时,还应有适当的转换器,通常的定点数转化为概率序列的方法是通过和一个门限值进行比较,如图9所示,完成加法或乘法运算后采用一个计数器便能有效的将概率序列转换为定点数,如图10所示。
基于概率计算原理设计乘法器和加法器具有结构简单的特点,因此本发明实施例中并行FIR滤波方法能进一步有效地减少FIR滤波器的硬件开销。
本实施例中仅仅是以16路并行FIR滤波对本发明实施例中并行FIR滤波方法为了进行说明,另外本发明实施例中并行FIR滤波方法还可以用于32路并行FIR滤波等其他FIR滤波器的滤波,对于FIR滤波器的并行滤波路数在此不做限定。
本实施例中,可以推导得到了16路并行FIR滤波器中需要的乘法器个数为(81N/16)个,需要的加法器数量为{784+81(N/16-1)}个,需要的延迟器数量为{272+81(N/16-1)}个,其中N为FIR滤波器的滤波器系数对应的数量,减少了硬件数量,从而降低了FIR滤波器的硬件开销,使用基于概率计算原理设计的计算单元,或是基于概率计算原理设计的计算单元可以进一步地减小FIR滤波器的硬件开销。因此,本发明实施例中并行FIR滤波方法可以有效的减少FIR滤波器的硬件开销,同时由于硬件数量的减少使得运算时间相应的缩短,也一定程度上提高了FIR滤波器的处理速度。
上面对本发明实施例中并行FIR滤波方法进行了详细地介绍,下面从以下几个方面来对本发明实施例中FIR滤波器进行介绍。
请参阅图11对本发明实施例中FIR滤波器进行详细描述,包括:
信号输入模块1101,用于将输入信号输入预加模块1102。
预加模块1102,用于对输入信号进行预加合并操作得到第一待处理信号,输入信号和第一待处理信号数量均大于一路
预乘模块1103,用于对第一待处理信号与目标滤波器系数进行预乘操作得到第二待处理信号,目标滤波器系数与第一待处理信号对应;
延迟合并模块1104,用于对第二待处理信号进行延迟合并操作得到输出信号;
信号输出模块1105,用于将输出信号从信号输出模块1105输出。
本实施例中,信号输入模块1101可具体为串并转换器,将串行信号转换为16路并行信号,当然也可以装换为M路并行信号,M为大于2的正整数,对此此处不再限定。
本实施例中,预加模块1102包括由基于位串架构设计的加法器,并且按照第一对应关系连接而成,其中,加法器的数量为至少一个,第一对应关系详见上述并行FIR滤波方案的原理,当并行路数为16时,预加模块1102中加法器的数量为至少{784+81(N/16-1)}个;预乘模块1103包括至少两个基于位串架构设计的乘法器和至少两个延迟器,并且乘法器按照第二对应关系连接,当并行路数为16时,预乘模块1103中乘法器的数量至少为81(N/16-1)个,延迟器的数量也至少为81(N/16-1)个,其中第二对应关系详见上述并行FIR滤波方案的原理;延迟合并模块1104包括延迟器,并且延迟器的数量至少为272个。
本实施例中,信号输出模块1105可具体为并串转化器,将延迟合并后的16路并行信号转化为串行信号,同理,此处对并行信号的路数也不做限定。
本实施例中,基于位串架构的乘法器和加法器实现简单,相对于传统的基于综合工具得到的乘法器和加法器硬件开销降低5倍以上,由于其结构简单,与并行算法更能有效地结合,且基于位串架构的计算单元关键路径短,可通过提高时钟频率成倍地提高并行滤波系统吞吐量。
另外,如图12所示,本发明实施例中FIR滤波器的另一种基于概率计算原理设计的FIR滤波器包括:
序列生成器1201,用于将定点数形式的输入信号转化为概率序列形式的输入信号,并输入至信号输入模块1202;
信号输入模块1202,用于将概率序列形式的输入信号输入预加模块1203;
预加模块1203,用于执行与上述预加模块1102类似的功能,此处不再赘述。
预乘模块1204,用于执行与上述预乘模块1103类似的功能,此处不再赘述。
延迟合并模块1205,用于执行与上述延迟合并模块1104类似的功能,此处不再赘述。
信号输出模块1206,用于将概率序列形式的输出信号输出至后向转换器1207。
后向转换器1207,用于将概率序列形式的输出信号转换为定点数形式的输出信号,并从后向转换器1207输出。
本实施例中,序列生成器1201可具体为图9所示的转换器,通过和一个门限值进行比较,将定点数转换为概率序列进行计算,其工作原理详见方法实施例部分;后向转换器1207可具体为图10所示的方式:采用一个计数器便能有效的将概率序列转换为定点数,其工作原理详见方法实施例部分。
本实施例中,预加模块1203中的加法器和预乘模块1204中的乘法器,均为基于概率计算原理设计而成,由于基于概率计算原理设计乘法器和加法器具有结构简单的特点,因此本发明实施例中并行FIR滤波方法能进一步有效地减少FIR滤波器的硬件开销。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (12)
1.一种并行FIR滤波方法,其特征在于,包括:
对输入信号进行预加合并操作得到第一待处理信号,所述输入信号和所述第一待处理信号数量均大于一路;
对所述第一待处理信号与目标滤波器系数进行预乘操作得到第二待处理信号,所述目标滤波器系数与所述第一待处理信号对应;
对所述第二待处理信号进行延迟合并操作得到输出信号。
2.根据权利要求1所述的并行FIR滤波方法,其特征在于,所述对输入信号进行预加合并操作得到第一待处理信号包括:
利用加法器对所述输入信号进行加法运算得到所述第一待处理信号,所述加法器的数量为至少一个。
3.根据权利要求1所述的并行FIR滤波方法,其特征在于,所述对所述第一待处理信号与目标滤波器系数进行预乘操作得到第二待处理信号包括:
利用乘法器对所述第一待处理信号进行乘法运算得到所述第二待处理信号,所述乘法器的数量为至少两个。
4.根据权利要求1所述的并行FIR滤波方法,其特征在于,所述对所述第二待处理信号进行延迟合并操作得到输出信号包括:
利用延迟器对所述第二待处理信号进行延迟运算得到所述输出信号,所述延迟器的数量为至少一个。
5.根据权利要求2至4中任一项所述的并行FIR滤波方法,其特征在于,所述加法器包括基于位串架构设计的加法计算单元;
和,
所述乘法器包括基于位串架构设计的乘法计算单元。
6.根据权利要求2至4中任一项所述的的并行FIR滤波方法,其特征在于,所述加法器包括基于概率计算原理设计的加法计算单元;
和,
所述乘法器包括基于概率计算原理设计的乘法计算单元。
7.一种FIR滤波器,其特征在于,包括:
信号输入模块、预加模块、预乘模块、延迟合并模块和信号输出模块;
所述信号输入模块与所述预加模块连接,所述预加模块与所述预乘模块连接,所述预乘模块与所述延迟合并模块连接,所述延迟合并模块与所述信号输出模块连接;
所述信号输入模块,用于将输入信号输入所述预加模块;
所述预加模块,用于对所述输入信号进行预加合并操作得到第一待处理信号,所述输入信号和所述第一待处理信号数量均大于一路;
所述预乘模块,用于对所述第一待处理信号与目标滤波器系数进行预乘操作得到第二待处理信号,所述目标滤波器系数与所述第一待处理信号对应;
所述延迟合并模块,用于对所述第二待处理信号进行延迟合并操作得到输出信号;
所述信号输出模块,用于将所述输出信号从所述信号输出模块输出。
8.根据权利要求7所述的FIR滤波器,其特征在于,所述预加模块包括至少一个加法器,所述加法器之间按照第一对应关系连接。
9.根据权利要求7所述的FIR滤波器,其特征在于,所述预乘模块包括至少两个乘法器,所述乘法器之间按照第二对应关系连接。
10.根据权利要求7所述的FIR滤波器,其特征在于,所述延迟合并模块包括至少一个延迟器,所述延迟器之间按照第三对应关系连接。
11.根据权利要求6至10中任一项所述的FIR滤波器,其特征在于,所述加法器包括基于位串架构设计的加法计算单元;
和,
所述乘法器包括基于位串架构设计的乘法计算单元。
12.根据权利要求6至10中任一项所述的FIR滤波器,其特征在于,所述加法器包括基于概率计算原理设计的加法计算单元;
和,
所述乘法器包括基于概率计算原理设计的乘法计算单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611194920.7A CN106817106A (zh) | 2016-12-21 | 2016-12-21 | 一种并行fir滤波方法及fir滤波器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611194920.7A CN106817106A (zh) | 2016-12-21 | 2016-12-21 | 一种并行fir滤波方法及fir滤波器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106817106A true CN106817106A (zh) | 2017-06-09 |
Family
ID=59109259
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611194920.7A Pending CN106817106A (zh) | 2016-12-21 | 2016-12-21 | 一种并行fir滤波方法及fir滤波器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106817106A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108429546A (zh) * | 2018-03-06 | 2018-08-21 | 深圳大学 | 一种混合型fir滤波器设计方法 |
CN109525214A (zh) * | 2018-10-11 | 2019-03-26 | 上海辛格林纳新时达电机有限公司 | Fir滤波器的滤波方法、fir滤波器及伺服驱动器 |
CN109951173A (zh) * | 2019-03-06 | 2019-06-28 | 西安迪菲电子科技有限公司 | 一种多路并行输入并行处理的fir滤波方法及滤波器 |
CN110518894A (zh) * | 2019-08-23 | 2019-11-29 | 北京无极芯动科技有限公司 | 高速低复杂度的二阶全通滤波器 |
CN110677138A (zh) * | 2019-09-25 | 2020-01-10 | 电子科技大学 | 基于无误差概率计算的fir滤波器 |
CN114513193A (zh) * | 2022-02-15 | 2022-05-17 | 电子科技大学 | 基于概率计算和近似处理的fir滤波方法及滤波器 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8725785B1 (en) * | 2004-08-09 | 2014-05-13 | L-3 Communications Corp. | Parallel infinite impulse response filter |
CN105281708A (zh) * | 2015-11-05 | 2016-01-27 | 中国船舶重工集团公司第七二四研究所 | 一种基于分段并行处理的高速fir滤波实现方法 |
CN105608055A (zh) * | 2016-01-27 | 2016-05-25 | 南京阿尔法莱瑞通信技术有限公司 | 一种基于位串架构的蝶形运算单元、fft处理器及方法 |
-
2016
- 2016-12-21 CN CN201611194920.7A patent/CN106817106A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8725785B1 (en) * | 2004-08-09 | 2014-05-13 | L-3 Communications Corp. | Parallel infinite impulse response filter |
CN105281708A (zh) * | 2015-11-05 | 2016-01-27 | 中国船舶重工集团公司第七二四研究所 | 一种基于分段并行处理的高速fir滤波实现方法 |
CN105608055A (zh) * | 2016-01-27 | 2016-05-25 | 南京阿尔法莱瑞通信技术有限公司 | 一种基于位串架构的蝶形运算单元、fft处理器及方法 |
Non-Patent Citations (2)
Title |
---|
YU-CHI TSAO等: "Area-Efficient VLSI Implementation for Parallel Linear-Phase FIR Digital Filters of Odd Length Based on Fast FIR Algorithm", 《IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS II: EXPRESS BRIEFS》 * |
陈杰男: "基于概率计算的无线通信DSP系统高效VLSI实现技术研究", 《中国博士学位论文全文数据库》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108429546A (zh) * | 2018-03-06 | 2018-08-21 | 深圳大学 | 一种混合型fir滤波器设计方法 |
CN108429546B (zh) * | 2018-03-06 | 2021-11-05 | 深圳大学 | 一种混合型fir滤波器设计方法 |
CN109525214A (zh) * | 2018-10-11 | 2019-03-26 | 上海辛格林纳新时达电机有限公司 | Fir滤波器的滤波方法、fir滤波器及伺服驱动器 |
CN109525214B (zh) * | 2018-10-11 | 2022-10-14 | 上海辛格林纳新时达电机有限公司 | Fir滤波器的滤波方法、fir滤波器及伺服驱动器 |
CN109951173A (zh) * | 2019-03-06 | 2019-06-28 | 西安迪菲电子科技有限公司 | 一种多路并行输入并行处理的fir滤波方法及滤波器 |
CN109951173B (zh) * | 2019-03-06 | 2023-03-21 | 西安迪菲电子科技有限公司 | 一种多路并行输入并行处理的fir滤波方法及滤波器 |
CN110518894A (zh) * | 2019-08-23 | 2019-11-29 | 北京无极芯动科技有限公司 | 高速低复杂度的二阶全通滤波器 |
CN110518894B (zh) * | 2019-08-23 | 2023-01-03 | 极芯通讯技术(南京)有限公司 | 高速低复杂度的二阶全通滤波器 |
CN110677138A (zh) * | 2019-09-25 | 2020-01-10 | 电子科技大学 | 基于无误差概率计算的fir滤波器 |
CN110677138B (zh) * | 2019-09-25 | 2021-06-15 | 电子科技大学 | 基于无误差概率计算的fir滤波器 |
CN114513193A (zh) * | 2022-02-15 | 2022-05-17 | 电子科技大学 | 基于概率计算和近似处理的fir滤波方法及滤波器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106817106A (zh) | 一种并行fir滤波方法及fir滤波器 | |
Wang et al. | An improved residue-to-binary converter | |
CN103793199A (zh) | 一种支持双域的快速rsa密码协处理器 | |
US5161119A (en) | Weighted-delay column adder and method of organizing same | |
Choo et al. | Complexity reduction of digital filters using shift inclusive differential coefficients | |
US8543634B1 (en) | Specialized processing block for programmable integrated circuit device | |
CN104579240A (zh) | 一种基于fpga的可配置系数的滤波器、电子设备及滤波方法 | |
Xie et al. | Novel bit-parallel and digit-serial systolic finite field multipliers over $ GF (2^ m) $ based on reordered normal basis | |
Kakde et al. | Design of area and power aware reduced Complexity Wallace Tree multiplier | |
Vinod et al. | An efficient coefficient-partitioning algorithm for realizing low-complexity digital filters | |
Simson et al. | Design and implementation of high speed hybrid carry select adder | |
Kumar et al. | Analysis of high speed radix-4 serial multiplier | |
CN106505971A (zh) | 一种基于结构加法器顺序重编排的低复杂度fir滤波器结构 | |
GB2503263A (en) | Truncated multiplier | |
Samundiswary et al. | Design and Analysis of CMOS Based DADDA Multiplier | |
CN109684761B (zh) | 一种宽同或电路优化方法 | |
CN106020768B (zh) | 用于高基数乘法器电路的组合的加法器和预加法器 | |
KR20030009682A (ko) | 가산기 기반 분산 연산의 가산 공유 정보 추출을 위한신경망 알고리즘 구현 방법 | |
Vijayakumari et al. | Genetic algorithm based design of combinational logic circuits using Reed Muller blocks | |
Adamidis et al. | RNS multiplication/sum-of-squares units | |
CN112051983B (zh) | 一种基于流水线的有限域高斯约当消元装置 | |
Hagglund et al. | A polynomial-based division algorithm | |
CN117149131A (zh) | 一种快速右移移位累加器、分布式算法处理器和滤波器 | |
CN106775575A (zh) | 基于二次剩余的低成本rfid认证协议的乘法器 | |
Kumar et al. | Area efficient FIR filter using graph based algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170609 |
|
RJ01 | Rejection of invention patent application after publication |