CN103001605B - 一种基于da-rns算法的fir滤波器的实现方法 - Google Patents

一种基于da-rns算法的fir滤波器的实现方法 Download PDF

Info

Publication number
CN103001605B
CN103001605B CN201210435024.0A CN201210435024A CN103001605B CN 103001605 B CN103001605 B CN 103001605B CN 201210435024 A CN201210435024 A CN 201210435024A CN 103001605 B CN103001605 B CN 103001605B
Authority
CN
China
Prior art keywords
remainder
base
filter
rns
under
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.)
Active
Application number
CN201210435024.0A
Other languages
English (en)
Other versions
CN103001605A (zh
Inventor
吴俊�
万林
张子君
陆欣璐
仇路
苏立峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tongji University
Original Assignee
Tongji University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tongji University filed Critical Tongji University
Priority to CN201210435024.0A priority Critical patent/CN103001605B/zh
Publication of CN103001605A publication Critical patent/CN103001605A/zh
Application granted granted Critical
Publication of CN103001605B publication Critical patent/CN103001605B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Complex Calculations (AREA)

Abstract

本发明涉及一种基于DA-RNS算法的FIR滤波器的实现方法,该方法包括以下步骤:1)利用按位查表方法对滤波输入和滤波系数进行十进制有权系统向余数无权系统的转化;2)将滤波输入分解为单比特形式;3)对滤波输入和滤波系数进行单比特卷积运算;4)通过滤波输入在余数无权系统下的余数对卷积运算后的滤波输入进行缩放运算;5)利用中国剩余定理进行余数向十进制的恢复。与现有技术相比,本发明具有资源消耗小、吞吐量大等优点。

Description

一种基于DA-RNS算法的FIR滤波器的实现方法
技术领域
本发明涉及一种数字信号处理器件的实现方法,尤其是涉及一种基于DA-RNS算法的FIR滤波器的实现方法。
背景技术
在数字信号处理中,经常使用FIR滤波器对输入信号进行滤波以获取高质量的信号。FIR(Finite Impulse Response)滤波器是数字信号处理系统中最基本的元件,可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。例如在中国数字电视地面传输国家标准中,对成型滤波的平方根升余弦滚降FIR滤波器滚降系数要求为0.05,其过渡带很窄,频谱利用率很高,但对于硬件实现而言滤波器阶数很高,硬件实现复杂度很高。因此,FIR滤波器实现是一个十分现实的问题。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种资源消耗小、吞吐量大的基于DA-RNS算法的FIR滤波器的实现方法。
本发明的目的可以通过以下技术方案来实现:
一种基于DA-RNS算法的FIR滤波器的实现方法,该方法包括以下步骤:
1)利用按位查表方法对滤波输入和滤波系数进行十进制有权系统向余数无权系统的转化;
2)将滤波输入分解为单比特形式;
3)对滤波输入和滤波系数进行单比特卷积运算;
4)通过滤波输入在余数无权系统下的余数对卷积运算后的滤波输入进行缩放运算;
5)利用中国剩余定理进行余数向十进制的恢复。
所述的步骤1)具体为:
11)将二进制数每一位为1时在基下的余数存入ROM中,作为查询表;
12)对输入的有符号二进制数X依次判断每一位是否为1,且根据查询表查询相对应的余数进行累加;
13)获得X在所有基下对应的余数,存入ROM中。
所述的步骤3)具体为:
31)在某个基下,根据滤波输入的余数对滤波输入进行分组处理,将余数相同的滤波输入分为一组;
32)根据分组结果通过以下公式和查询表进行单比特卷积计算:
S j = | Σ i = 0 N - 1 [ α i + Σ g = 1 ( M - 1 ) / 2 g ( ζ i ( g ) x i , j + x i , j ‾ ζ i ( M - g ) ) ] | M
其中,xi,j为第i个数的第j个比特位,为xi,j取反,αi为第i个滤波系数对应的常数,ζi(g)为构造函数,第i个数的滤波系数Ci在基M下的模等于g时,ζi(g)为1,否则为0,N为滤波系数的个数。
所述的步骤4)中缩放运算的公式为:
yi=<(xi-<Xi>k)*(k-1)>mi
其中,mi为基,Xi为要在基mi下要缩放的数,k为缩放系数,yi则为缩放之后在基mi下的数,xi为Xi在基mi下的余数。
所述的步骤5)具体为:
51)对缩放运算后得到的基进行分组;
52)根据以下公式计算获得余数向十进制转化后的结果:
Y = r b + ( r a - r b ) + θm a m b - m a * m b
式中,ra、rb分别为对应基ma、mb下的余数,θ为常数。
与现有技术相比,本发明具有以下优点:
(1)本发明将滤波输入和滤波系数转换成余数数制(RNS,Residue NumberSystem)来完成滤波计算,减小FIR滤波器在FPGA上实现的面积和功耗,减少资源的消耗;
(2)本发明DA(Distributed Arithmetic)算法,将中间的滤波部分转换成多路并行的单比特卷积来增大整个滤波器的吞吐量。
附图说明
图1为本发明方法的流程示意图。
图中,下标i表示第i个滤波系数,下标j表示第j条余数支路,上标b表示第b个比特位。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。
实施例
本实施例以二十四阶的成形滤波器实现为例,研究余数数制(RNS)下滤波,进而利用DA(Distributed Arithmetic)算法在余数系统设计FIR滤波器的实现方法。本方法首先因为在RNS下,可以更少的使用资源,所以将滤波输入和滤波系数转换成余数来完成滤波计算。又利用DA算法,将中间的滤波部分转换成多路并行的单比特卷积来增大整个系统的吞吐量。最后又利用中国剩余定理(CRT)将余数系统的数转换成有权十进制数。
如图1所示,本实施基于DA RNS算法的FIR滤波器的实现方法,包括以下步骤:
步骤一,利用按位查表方法进行十进制有权系统向余数无权系统的转化(B2R)。本实施例使用6个基(29,31,33,35,59,61),完全覆盖实现滤波过程中所有模乘和模加所达到的位宽范围,因此在计算的过程中不会发生溢出。R2B具体包括以下步骤:
11)为了节省资源,用按位查表的方法取代求模运算。首先,将16位二进制数每一位为1时在基(29,31,33,35,59,61)下的余数存入ROM中,作为查询表,如111代表十进制下的15,则最低位的1对29取模为1,则将1存入ROM中相应的位置,最低第二位的1为2对29取模为2,则将2存入ROM中相应的位置,第三位为4对29取模为4,则将4存入ROM中相应的位置;
12)输入为十六位有符号数X(Signed16bit),然后依次判断输入X每一位是否为1,如果为1则查表进行累加;
13)分别对基29、31、33、35、59、61做同样的运算,最后得到滤波输入X分别在基(29,31,33,35,59,61)下的余数。
步骤二,将数据分解为单比特形式(Bit Shift)。FPGA在实现FIR滤波器的时候,对于处理数据X,它的每一位都是分开存放的,故无须过多操作进行拆分。
滤波器公式为 Y = | Σ i = 0 N - 1 C i X i | M - - - ( 1 )
单比特分解后的公式为 Y = | Σ g = 1 M - 1 g Σ i = 0 N - 1 Σ j = 0 L - 1 2 j ζ i ( g ) x i , j | M - - - ( 2 )
其中,xi,j为第i个数的第j个比特位,ζi(g)为构造函数,g为设定值,第i个数的滤波系数Ci在基M下的模等于g时,ζi(g)为1,否则为0,N为滤波系数的个数,L为滤波输入的长度。
步骤三,对数据进行单比特卷积运算(Single Bit Convolution),将乘法转化为加法和查表操作,减小了资源的消耗,以基29为例,在其他基下步骤一致:
31)输入基29下的余数,共5bit,每一个比特都进行滤波运算,结果为d0,d1,d2,d3,d4
32)根据滤波输入的余数对滤波输入进行分组处理,将余数相同的滤波输入分为一组,以减少计算量;输入的24个需要滤波的数在每组内,根据下述公式,进行相同比特位加法,乘以系数后累加,再加上常数:
S j = | Σ i = 0 N - 1 [ α i + Σ g = 1 ( M - 1 ) / 2 g ( ζ i ( g ) x i , j + x i , j ‾ ζ i ( M - g ) ) ] | M - - - ( 3 )
其中,为xi,j取反,αi为第i个滤波系数对应的常数;
33)根据公式(3),先计算余数相同项的比特相加和,比如系数相同项有4项,那么比特相加的和最大也就是为4,可以事先算好0,1,2,3,4乘以系数后对应的值,即可查表;
34)公式前面的常数项,也是事先按照系数相同项,算出对应的值,查表即可。这样,就算出基29下,第一个比特的卷积和,其他方法相同。
步骤四,通过滤波输入在余数无权系统下的余数对卷积运算后的滤波输入进行缩放运算(Scaling),缩放运算的公式为:
yi=<(xi-<Xi>k)*(k-1)>mi(4)
其中,mi为基,Xi为要在基mi下要缩放的数,k为缩放系数,yi则为缩放之后在基mi下的数,xi为Xi在基mi下的余数。
本实施例中缩放运算分为两步进行,第一步用k=61作为缩放常数,第二步用k=59做为缩放常数:
41)将61和59的乘法逆元即1/61和1/59,然后将次数左移7位,将所得到的数保存在相应的ROM中;
42)取第6个基k=61作为缩放的常数,根据公式(4),将滤波输入的数X减去k后,然后乘以k的乘法逆元,因为k的乘法逆元是左移7位存入ROM中的,所以将计算得到的数右移7位,最后查表得到对应基下的模,舍弃最后一个基的余数,作为第二步缩放的输入;
43)取第5个基k=59作为缩放常数,步骤42)的输出,作为这步的输入,然后重复上一步的操作,进行缩放,即为缩放的最终结果。
步骤五,利用中国剩余定理进行余数向十进制的恢复(R2B)。
51)对缩放运算后得到的基进行分组,分为(29,33)和(31,35)两组;
52)其中一组根据公式(5)计算:
Y = r b + ( r a - r b ) + θm a m b - m a * m b - - - ( 5 )
式中,ra、rb分别为对应基ma、mb下的余数,θ为常数;
53)将两组的计算结果再进行步骤52)的操作即可得到最后R2B的结果。
以上所述,仅是本发明的较佳实例,本发明所主张的权利范围并不局限于此。本发明还有其他多种实施例,在不背离本发明精神及其实质的情况下,本领域技术人员可根据本发明作出各种相应的改变和变形,但这些改变和变形都应属于本发明所附的权利要求的保护范围。

Claims (4)

1.一种基于DA-RNS算法的FIR滤波器的实现方法,其特征在于,该方法包括以下步骤:
1)利用按位查表方法对滤波输入和滤波系数进行十进制有权系统向余数无权系统的转化;
2)将滤波输入分解为单比特形式;
3)对滤波输入和滤波系数进行单比特卷积运算;
4)通过滤波输入在余数无权系统下的余数对卷积运算后的滤波输入进行缩放运算;
5)利用中国剩余定理进行余数向十进制的恢复;
所述的步骤1)具体为:
11)将二进制数每一位为1时在基下的余数存入ROM中,作为查询表;
12)对输入的有符号二进制数X依次判断每一位是否为1,且根据查询表查询相对应的余数进行累加;
13)获得X在所有基下对应的余数,存入ROM中。
2.根据权利要求1所述的一种基于DA-RNS算法的FIR滤波器的实现方法,其特征在于,所述的步骤3)具体为:
31)在某个基下,根据滤波输入的余数对滤波输入进行分组处理,将余数相同的滤波输入分为一组;
32)根据分组结果通过以下公式和查询表进行单比特卷积计算:
其中,xi,j为第i个数的第j个比特位,为xi,j取反,αi为第i个滤波系数对应的常数,为构造函数,第i个数的滤波系数Ci在基M下的模等于g时,为1,否则为0,N为滤波系数的个数。
3.根据权利要求1所述的一种基于DA-RNS算法的FIR滤波器的实现方法,其特征在于,所述的步骤4)中缩放运算的公式为:
yi=<(xi-<Xi>k)*(k-1)>mi
其中,mi为基,Xi为要在基mi下要缩放的数,k为缩放系数,yi则为缩放之后在基mi下的数,xi为Xi在基mi下的余数。
4.根据权利要求1所述的一种基于DA-RNS算法的FIR滤波器的实现方法,其特征在于,所述的步骤5)具体为:
51)对缩放运算后得到的基进行分组;
52)根据以下公式计算获得余数向十进制转化后的结果:
式中,ra、rb分别为对应基ma、mb下的余数,为常数。
CN201210435024.0A 2012-11-02 2012-11-02 一种基于da-rns算法的fir滤波器的实现方法 Active CN103001605B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210435024.0A CN103001605B (zh) 2012-11-02 2012-11-02 一种基于da-rns算法的fir滤波器的实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210435024.0A CN103001605B (zh) 2012-11-02 2012-11-02 一种基于da-rns算法的fir滤波器的实现方法

Publications (2)

Publication Number Publication Date
CN103001605A CN103001605A (zh) 2013-03-27
CN103001605B true CN103001605B (zh) 2015-04-15

Family

ID=47929820

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210435024.0A Active CN103001605B (zh) 2012-11-02 2012-11-02 一种基于da-rns算法的fir滤波器的实现方法

Country Status (1)

Country Link
CN (1) CN103001605B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9431987B2 (en) * 2013-06-04 2016-08-30 Sony Interactive Entertainment America Llc Sound synthesis with fixed partition size convolution of audio signals
CN107612523B (zh) * 2017-08-25 2020-05-19 西安交通大学 一种基于软件查表法的fir滤波器实现方法
CN107911099B (zh) * 2017-12-27 2024-05-10 南京天际易达通信技术有限公司 一种数字成形滤波方法及滤波装置
CN110620566B (zh) * 2019-09-25 2021-07-02 电子科技大学 基于随机计算与余数系统相结合的fir滤波系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102184159A (zh) * 2011-05-26 2011-09-14 电子科技大学 基为{2n-1,2n+1,2n}和{2n-1,2n+1,22n+1}的余数系统后向转换装置和方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102184159A (zh) * 2011-05-26 2011-09-14 电子科技大学 基为{2n-1,2n+1,2n}和{2n-1,2n+1,22n+1}的余数系统后向转换装置和方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
High Speed Residue Number System(RNS) Based FIR Filter Using Distributed Arithmetic(DA);Malay Das等;《Computer architecture news》;20111231;第1-4页,附图1 *
基于RNS的FFT和矩阵求逆的VLSI实现;叶燕龙;《中国优秀硕士学位论文全文数据库 信息科技缉》;20110715(第07期);I135-169第8,11,14页 *

Also Published As

Publication number Publication date
CN103001605A (zh) 2013-03-27

Similar Documents

Publication Publication Date Title
CN108765296B (zh) 一种基于递归残差注意力网络的图像超分辨率重建方法
CN103001605B (zh) 一种基于da-rns算法的fir滤波器的实现方法
CN110688088B (zh) 一种面向神经网络的通用非线性激活函数计算装置和方法
CN107094064B (zh) 针对八进制连续相位频移键控的维特比解调系统及方法
Vinod et al. FIR filter implementation by efficient sharing of horizontal and vertical common sub-expressions
CN103430500B (zh) 信道脉冲响应/直流偏移联合估测装置、方法及相关接收器
CN103957009A (zh) 一种对压缩采样系统低通滤波器进行补偿的方法
CN111510110A (zh) 一种并行处理的插值匹配滤波方法及滤波器
CN1788413A (zh) 功率放大器预失真
CN110766141A (zh) 一种基于cordic的激活函数混合计算方法及系统
CN101848319B (zh) 高精度计算的数字图像的分数阶微积分滤波器
CN101242168B (zh) 一种fir数字滤波器直接型实现方法及实现装置
CN106134514B (zh) 基于Farrow结构滤波器的采样率转换方法及装置
CN105302520B (zh) 一种倒数运算的求解方法及系统
CN109756291B (zh) 一种基于查表法的混沌扩频码生成方法及系统
CN109951173A (zh) 一种多路并行输入并行处理的fir滤波方法及滤波器
CN113162877B (zh) 一种通信系统的级联数字预失真校正方法及系统
CN101815165B (zh) 实时高效的数字图像分数阶积分滤波器
CN110737869B (zh) Dct/idct乘法器电路优化方法及应用
CN110555519B (zh) 一种基于符号随机计算的低复杂度卷积神经网络架构
CN106934123A (zh) 一种基于递归卷积的电路瞬态响应计算方法
CN107301621B (zh) 一种提高数字图像分辨率的方法
CN110708039A (zh) 一种farrow滤波器的系数拟合方法
CN103346822B (zh) 用于解调器的可转换均衡器
CN109741270A (zh) 基于因式分解和均方差优化的双边滤波加速方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent for invention or patent application
CB03 Change of inventor or designer information

Inventor after: Wu Jun

Inventor after: Wan Lin

Inventor after: Zhang Zijun

Inventor after: Lu Xinlu

Inventor after: Chou Lu

Inventor after: Su Lifeng

Inventor before: Wu Jun

Inventor before: Wan Lin

Inventor before: Zhang Zijun

Inventor before: Lu Xinlu

Inventor before: Chou Lu

Inventor before: Chen Wei

COR Change of bibliographic data

Free format text: CORRECT: INVENTOR; FROM: WU JUN WAN LIN ZHANG ZIJUN LU XINLU CHOU LU CHEN WEI TO: WU JUN WAN LIN ZHANG ZIJUN LU XINLU CHOU LU SU LIFENG

C14 Grant of patent or utility model
GR01 Patent grant