CN114744982A - 一种乘法优化的低通fir滤波器实现方法 - Google Patents
一种乘法优化的低通fir滤波器实现方法 Download PDFInfo
- Publication number
- CN114744982A CN114744982A CN202210497553.7A CN202210497553A CN114744982A CN 114744982 A CN114744982 A CN 114744982A CN 202210497553 A CN202210497553 A CN 202210497553A CN 114744982 A CN114744982 A CN 114744982A
- Authority
- CN
- China
- Prior art keywords
- general
- multiplication
- register
- fir filter
- adder
- 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
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H17/00—Networks using digital techniques
- H03H17/02—Frequency selective networks
- H03H17/06—Non-recursive filters
-
- 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
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Complex Calculations (AREA)
Abstract
本发明公开了一种乘法优化的低通FIR滤波器实现方法,包括初始计算单元、通用计算单元和求和电路。以流水线形式级联而成的N‑1个电路结构相似的通用计算单元(N‑1为滤波器阶数)对输入信号进行延时和加法运算,该计算单元的HDL代码由脚本语言自动生成;初始计算单元计算当前输入信号与第一项滤波器系数的乘积;求和电路对各级流水线的乘加结果进行求和运算。本发明以传统直接I型FIR滤波器作为基础,针对乘法电路进行了输入参数的位宽优化和结构优化,只需增加少量寄存器,即可大大减小乘法电路的面积。经15阶低通FIR滤波器的FPGA验证,本发明虽增加了约4.45%的DFF资源消耗,但使得LUT资源消耗量减少了13.12%,达到了通过乘法优化进行面积优化的目的。
Description
技术领域
本发明属于数字滤波器设计领域,涉及一种乘法优化的低通FIR滤波器实现方法。
背景技术
在数字信号处理领域,FIR滤波器被广泛应用于语音与图像处理、频谱分析、雷达信号处理,以及模式识别等方面。数字滤波器较模拟滤波器而言,具有精度高、稳定性好、体积小和配置灵活等优势,此外,还能有效避免温漂、噪声等问题。但是,在FIR滤波器实现过程中,随着滤波器阶数的增加,乘法器的消耗量也随之增加,而现实中为了获得过渡带窄、性能优越的FIR滤波器,往往采用高阶滤波器,从而导致乘法资源消耗较大,乘法电路面积较大。为有效解决上述问题,本发明提出了一种乘法优化的低通FIR滤波器实现方法,以传统直接I型FIR滤波器作为基础,针对乘法电路进行了输入参数的位宽优化和结构优化,只需增加少量寄存器,即可大大减小乘法电路的面积,且滤波器系数位宽越大,优化效果越明显。
发明内容
本发明针对传统直接I型FIR滤波器实现过程中乘法电路面积较大这一问题,提出了一种乘法优化的低通FIR滤波器实现方法。该方法针对乘法电路进行了输入参数的位宽优化和结构优化,只需增加少量寄存器,即可大大减小乘法电路的面积,且滤波器系数位宽越大,优化效果越明显。本发明的技术方案为一种乘法优化的低通FIR滤波器实现方法,方法实现的乘法优化的低通FIR滤波器包括以流水线形式级联而成的N-1个电路结构相同的通用计算单元、初始计算单元以及求和电路,其中,N-1为滤波器阶数;
所述初始计算单元包括寄存器组REG0、寄存器组REG1和乘法器,其中,寄存器组REG0对当前输入信号进行延时寄存,乘法器对当前输入信号和第一项滤波器系数进行乘积运算,并将运算结果寄存至寄存器组REG1;
所述通用计算单元包括寄存器组REG00、寄存器组REG11、加法器组和通用加法器,其中,寄存器组REG00对来自前级的输入信号进行延时,加法器组配合移位运算和通用加法器进行式(1)的计算:
resi=(ai-ai-1)*x(n-i)+resi-1,i∈[1,N-1]且i∈Z (1)
res0为来自初始计算单元中寄存器组REG1的输出数据,ai为预生成的第i个滤波器系数,x(n)为n时刻的输入信号,需要说明的是,res0由式(2)计算得到:
res0=a0*x(n) (2)
寄存器组REG11对resi进行数据寄存;通用加法器对本级通用计算单元中加法器组的输出结果和初始计算单元的寄存器组REG1或前级通用计算单元的寄存器组REG11的值进行求和;
所述求和电路对N个计算单元中寄存器组REG1和寄存器组REG11所寄存的值进行求和运算,N个计算单元包括一个初始计算单元和N-1个通用计算单元;
所述通用计算单元中的加法器组对相邻两项原始滤波器系数ai和ai-1进行有符号减法运算,获取低数据位宽的系数差值ai-ai-1,并利用该加法器组,配合移位运算,求得(ai-ai-1)*x(n-i)的值;
所述通用计算单元具有相同的电路结构,利用脚本语言自动生成通用计算单元硬件逻辑电路所对应的HDL代码。
优选地,所述利用脚本语言自动生成通用计算单元硬件逻辑电路所对应的HDL代码,具体包括以下步骤:
S10,利用MATLAB预先生成滤波器系数a0~aN-1,并进行量化处理;
S20,脚本语言读取S10中生成的滤波器系数序列,进行有符号数减法运算ai-ai-1,其中i∈[1,N-1]且i∈Z,并判断有符号差值序列的最大数据位宽,将其设为DW;
S30,结合S10中a0、S20中有符号数ai-ai-1以及数据位宽DW,利用脚本语言自动生成通用计算单元硬件逻辑电路所对应的HDL代码,具体功能为:以加法电路配合移位运算,进行表达式(1)的计算。
优选地,S10中滤波器为阶数为N-1,长度为N的低通FIR滤波器,其系统差分方程如下:
令S1=a(0)x(n)+[a(1)-a(0)]x(n-1)+…+[a(N-2)-a(N-3)]x(n-N+2)+[a(N-1)-a(N-2)]x(n-N+1);
令S2=a(0)x(n-N+1)+…+a(N-3)x(x-N+2)+a(N-2)x(n-N+1);
故其系统差分方程可简化为式(3):
y(n)=S1+S2 (3)。
优选地,所述表达式S1,是由N个计算单元中的寄存器组REG0、寄存器组REG00、乘法器和加法器组共同运算完成;N个计算单元包括一个初始计算单元和N-1个通用计算单元。
优选地,所述表达式S2,是由N个计算单元中寄存器组REG1和寄存器组REG11对前级计算单元的计算结果进行移位寄存,并配合通用加法器来完成运算;N个计算单元包括一个初始计算单元和N-1个通用计算单元。
本发明的有益效果如下:
本发明为一种乘法优化的低通FIR滤波器实现方法,以传统直接I型FIR滤波器作为基础,针对乘法电路进行了输入参数的位宽优化和结构优化,只需增加少量寄存器,即可大大减小乘法电路的面积,且滤波器系数位宽越大,优化效果越明显。经15阶低通FIR滤波器(滤波器系数和输入信号数据位宽均为12bits)的FPGA实施例验证,本发明虽增加了约4.45%的DFF资源消耗,但使得LUT资源消耗量减少了13.12%,达到了通过乘法优化进行面积优化的目的。
附图说明
图1为乘法优化的低通FIR滤波器实现方法的实现后结构示意图;
图2为利用脚本语言自动生成通用计算单元HDL代码的步骤流程图;
具体实施方式
下面通过具体实施例,并结合附图,对本发明的技术方案作进一步的具体说明。
实施例1
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
相反,本发明涵盖任何由权利要求定义的在本发明的精髓和范围上做的替代、修改、等效方法以及方案。进一步,为了使公众对本发明有更好的了解,在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。
首先,需要了解的是本发明所述一种乘法优化的低通FIR滤波器实现方法,在本实施例中是用于解决传统直接I型FIR滤波器实现过程中乘法电路面积较大这一问题。采用本实现方法,只需增加少量寄存器,即可大大减小乘法电路的面积,且滤波器系数位宽越大,优化效果越明显。经15阶低通FIR滤波器(滤波器系数和输入信号数据位宽均为12bits)的FPGA实施例验证,本发明虽增加了约4.45%的DFF资源消耗,但使得LUT资源消耗量减少了13.12%,达到了通过乘法优化进行面积优化的目的。
参见图1,为本发明的实施例,一种乘法优化的低通FIR滤波器实现方法示意图,考虑一个通带截止频率fpass=1MHz,阻带起始频率为fstop=1.5MHz,阶数为15,长度为16,采样频率为50MHz的低通FIR滤波器,包括以下三大部分:
以流水线形式级联而成的15个电路结构相似的通用计算单元20、初始计算单元10以及求和电路30。
初始计算单元10,其内部结构为两个寄存器组(REG0和REG1)和一个乘法器11,其中,寄存器组REG0用于对当前输入信号x(n)进行延时寄存,乘法器11用于对当前输入信号x(n)和第一项滤波器系数a0进行乘积运算,即a0*x(n),并将运算结果寄存至寄存器组REG1;
通用计算单元20,其内部结构包括两个寄存器组(REG00和REG11)、加法器组21和通用加法器22,其中,第i个通用计算单元20的寄存器组REG00用于对来自第i-1个通用计算单元20的寄存器组REG00输出信号进行延时,加法器组21配合移位运算和通用加法器22进行式(1)的计算:
resi=(ai-ai-1)*x(n-i)+resi-1,i∈[1,15]且i∈Z (1)
res0为来自初始计算单元10中寄存器组REG1的输出数据,ai为预生成的第i个滤波器系数,x(n)为n时刻的输入信号,需要说明的是,res0可由式(2)计算得到:
res0=a0*x(n) (2)
寄存器组REG11对resi进行数据寄存;通用加法器22对本级通用计算单元中加法器组21的输出结果和初始计算单元10的寄存器组REG1或前级通用计算单元20寄存器组REG11的值进行求和;
求和电路30对16个计算单元(包括一个初始计算单元10和15个通用计算单元20)中寄存器组REG1和寄存器组REG11所寄存的值进行求和运算;
通用计算单元20具有相同的电路结构,利用脚本语言自动生成通用计算单元20硬件逻辑电路所对应的HDL代码,具体包括以下步骤:
S10,利用MATLAB预先生成该低通FIR滤波器系数,并对其进行12bits量化操作,得到量化后的滤波器系数a0~a15=[79,85,91,96,99,102,104,105,105……];
S20,脚本语言读取S10中生成的滤波器系数序列,进行有符号数减法运算ai-ai-1,其中i∈[1,15]且i∈Z,并判断有符号差值序列的最大数据位宽DW=4;
S30,结合S10中a0、S20中有符号数ai-ai-1以及数据位宽DW,利用脚本语言自动生成通用计算单元20硬件逻辑电路所对应的HDL代码,代码具体功能为:以加法电路配合移位运算,进行表达式(1)的计算;
针对该实施例,其系统差分方程如下:
令S1=79*x(n)+[85-79]*x(n-1)+…+[85-91]*x(n-N+2)+[79-85]*x(n-N+1);
令S2=79*x(n-N+1)+…+91*x(x-N+2)+85*x(n-N+1);
故其系统差分方程可简化为式(3):
y(n)=S1+S2 (3)
表达式S1,是由16个计算单元(包含15个通用计算单元20和一个初始计算单元10)中寄存器组REG0、寄存器组REG00、乘法器11和加法器组21共同运算完成;表达式S2,是由16个计算单元中寄存器组REG1和寄存器组REG11对前级计算单元的计算结果进行移位寄存,并配合通用加法器22来完成运算。
经该FPGA实施例验证,本发明的方法虽增加了约4.45%的DFF资源消耗,但使得LUT资源消耗量减少了13.12%,达到了通过乘法优化进行面积优化的目的。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种乘法优化的低通FIR滤波器实现方法,其特征在于,该方法实现的乘法优化的低通FIR滤波器包括以流水线形式级联而成的N-1个电路结构相同的通用计算单元、初始计算单元以及求和电路,其中,N-1为滤波器阶数;
所述初始计算单元包括寄存器组REG0、寄存器组REG1和乘法器,其中,寄存器组REG0对当前输入信号进行延时寄存,乘法器对当前输入信号和第一项滤波器系数进行乘积运算,并将运算结果寄存至寄存器组REG1;
所述通用计算单元包括寄存器组REG00、寄存器组REG11、加法器组和通用加法器,其中,寄存器组REG00对来自前级的输入信号进行延时,加法器组配合移位运算和通用加法器进行式(1)的计算:
resi=(ai-ai-1)*x(n-i)+resi-1,i∈[1,N-1]且i∈Z (1)
res0为来自初始计算单元中寄存器组REG1的输出数据,ai为预生成的第i个滤波器系数,x(n)为n时刻的输入信号,需要说明的是,res0由式(2)计算得到:
res0=a0*x(n) (2)
寄存器组REG11对rest进行数据寄存;通用加法器对本级通用计算单元中加法器组的输出结果和初始计算单元的寄存器组REG1或前级通用计算单元的寄存器组REG11的值进行求和;
所述求和电路对N个计算单元中寄存器组REG1和寄存器组REG11所寄存的值进行求和运算,N个计算单元包括一个初始计算单元和N-1个通用计算单元;
所述通用计算单元中的加法器组对相邻两项原始滤波器系数ai和ai-1进行有符号减法运算,获取低数据位宽的系数差值ai-ai-1,并利用该加法器组,配合移位运算,求得(ai-ai-1)*x(n-i)的值;
所述通用计算单元具有相同的电路结构,利用脚本语言自动生成通用计算单元硬件逻辑电路所对应的HDL代码。
2.根据权利要求1所述的一种乘法优化的低通FIR滤波器实现方法,其特征在于,所述利用脚本语言自动生成通用计算单元硬件逻辑电路所对应的HDL代码,具体包括以下步骤:
S10,利用MATLAB预先生成滤波器系数a0~aN-1,并进行量化处理;
S20,脚本语言读取S10中生成的滤波器系数序列,进行有符号数减法运算ai-ai-1,其中i∈[1,N-1]且i∈Z,并判断有符号差值序列的最大数据位宽,将其设为DW;
S30,结合S10中a0、S20中有符号数ai-ai-1以及数据位宽DW,利用脚本语言自动生成通用计算单元硬件逻辑电路所对应的HDL代码,具体功能为:以加法电路配合移位运算,进行表达式(1)的计算。
4.根据权利要求3所述的一种乘法优化的低通FIR滤波器实现方法,其特征在于,所述表达式S1,是由N个计算单元中的寄存器组REG0、寄存器组REG00、乘法器和加法器组共同运算完成;N个计算单元包括一个初始计算单元和N-1个通用计算单元。
5.根据权利要求3所述的一种乘法优化的低通FIR滤波器实现方法,其特征在于,所述表达式S2,是由N个计算单元中寄存器组REG1和寄存器组REG11对前级计算单元的计算结果进行移位寄存,并配合通用加法器来完成运算;N个计算单元包括一个初始计算单元和N-1个通用计算单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210497553.7A CN114744982A (zh) | 2022-05-09 | 2022-05-09 | 一种乘法优化的低通fir滤波器实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210497553.7A CN114744982A (zh) | 2022-05-09 | 2022-05-09 | 一种乘法优化的低通fir滤波器实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114744982A true CN114744982A (zh) | 2022-07-12 |
Family
ID=82286387
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210497553.7A Pending CN114744982A (zh) | 2022-05-09 | 2022-05-09 | 一种乘法优化的低通fir滤波器实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114744982A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116827308A (zh) * | 2023-08-24 | 2023-09-29 | 上海力通通信有限公司 | 资源优化型fir滤波器及其实现方法 |
-
2022
- 2022-05-09 CN CN202210497553.7A patent/CN114744982A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116827308A (zh) * | 2023-08-24 | 2023-09-29 | 上海力通通信有限公司 | 资源优化型fir滤波器及其实现方法 |
CN116827308B (zh) * | 2023-08-24 | 2023-11-24 | 上海力通通信有限公司 | 资源优化型fir滤波器及其实现方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Meher et al. | Critical-path analysis and low-complexity implementation of the LMS adaptive algorithm | |
Rashidi et al. | Design and implementation of low power digital FIR filter based on low power multipliers and adders on Xilinx FPGA | |
Kaur et al. | Design and implementation of high speed IIR and FIR filter using pipelining | |
Bose et al. | Area-delay-power efficient VLSI architecture of FIR filter for processing seismic signal | |
CN114744982A (zh) | 一种乘法优化的低通fir滤波器实现方法 | |
CN114142830A (zh) | 全精度低通iir滤波器的fpga实现方法 | |
Gbolagade et al. | An Efficient FPGA Design of Residue-to-Binary Converter for the Moduli Set $\{2n+ 1, 2n, 2n-1\} $ | |
CN110957996B (zh) | 一种基于abc算法的无乘法器frm滤波器组优化设计方法 | |
CN108616265B (zh) | 一种基于五模余数基的rns dwt滤波器组的电路结构 | |
Parvin et al. | Multiplication techniques for an efficient FIR filter design for hearing aid applications | |
Liu et al. | An efficient architecture of the sign-error LMS adaptive filter | |
Baghel et al. | Low power and less complex implementation of fast block LMS adaptive filter using distributed arithmetic | |
Erdogan et al. | A coefficient segmentation algorithm for low power implementation of FIR filters | |
Dai et al. | FPGA Realization of Hardware-Flexible Parallel Structure FIR Filters Using Combined Systolic Arrays | |
Ohlsson et al. | Implementation of low complexity FIR filters using a minimum spanning tree | |
Thingom et al. | FPGA implementation of FIR filter using RADIX-2 r | |
Pathan et al. | An autocorrelation-less single-bit Weiner filter on FPGA | |
Ali | Cascaded ripple carry adder based SRCSA for efficient FIR filter | |
Narasimha et al. | Implementation of LOW Area and Power Efficient Architectures of Digital FIR filters | |
Jayashree | Design of high speed and area efficient FIR filter architecture using modified adder and multiplier | |
Bose et al. | Conditional differential coefficients method for the realization of powers-of-two FIR filter | |
Menon et al. | A speed efficient FIR filter for reconfigurable applications | |
Ambika et al. | Design of Fir Filter Using Area and Power Efficient Truncated Multiplier | |
Kumar et al. | Design and implementation of modified russian peasant multiplier using msqrtcsla based fir filter | |
Wang et al. | A high-speed realization of the delayed dual sign LMS 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 |