CN104333348A - 一种高阶数字滤波系统及方法 - Google Patents
一种高阶数字滤波系统及方法 Download PDFInfo
- Publication number
- CN104333348A CN104333348A CN201410694085.8A CN201410694085A CN104333348A CN 104333348 A CN104333348 A CN 104333348A CN 201410694085 A CN201410694085 A CN 201410694085A CN 104333348 A CN104333348 A CN 104333348A
- Authority
- CN
- China
- Prior art keywords
- data
- frame
- filter
- parallel
- time
- 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.)
- Granted
Links
Landscapes
- Image Processing (AREA)
- Complex Calculations (AREA)
Abstract
本发明提供了一种高阶数字滤波系统及方法。通过数字信号的时频变换,将并行数据基于帧的形式,在频域上,通过与滤波器系数频域响应进行乘累加运算,完成高阶FIR滤波的数字并行实现。大大简化了传统并行数字滤波通过序列重组的繁琐实现方式。
Description
技术领域
本发明涉及一种滤波系统及方法,特别是涉及一种适用于高阶数字滤波的滤波系统及方法。
背景技术
数字滤波是很多数字信号处理系统的基本组成,它们广泛的应用于通信、信号处理、图像处理、模式识别等很多领域。目前有多种实现FIR滤波的方法,诸如使用DSP芯片、专用集成电路ASIC以及FPGA等,利用DSP来实现将会受限于运行速度以及较漫长的开发时间,ASIC将会受限于开发周期、成本以及通用性等问题,而FPGA的实现将会平衡这些因素,由于其开发周期短、实现方式容易、通用性强等特点,在很多领域都有着广泛的应用,并且发展潜力巨大。
FIR滤波主要的设计方法就是利用乘累加来实现。在一些高端应用场景中需要在FPGA内部实现采样速率达到2G—3G的FIR滤波。若采用串行处理的方式,在FPGA内部仍然无法实现超宽带高速数字滤波,因此必须改进数字滤波的实现结构,采用并行方式,降低对运算单元的速率要求,从而可以在FPGA等硬件中得以实现。
传统并行FIR数字滤波在FPGA中的实现方式十分复杂,数字信号并行N路进入FPGA,在FPGA内部通过数据的重排列组合形成N路新的并行序列,再与滤波器系数通过乘加运算,输出并行的N路数据,即滤波器的并行输出数据。这种算法在FPGA内部的信号重组逻辑十分复杂,且并行N路与滤波器系数的乘加运算需要使用大量FPGA内部的乘法单元,资源开销大,工程上不易实现。
发明内容
本发明要解决的技术问题是提供一种实现方式更简单的高阶数字滤波系统及方法。
本发明采用的技术方案如下:一种高阶数字滤波系统,包括数字信号并行输入模块和滤波器系数输入模块,其特征在于,还包括:
滤波系数时频变换模块,以向量为滤波器元素的K-1阶滑动滤波器;其中,K=1,2,3,… ;
短时滑帧处理模块,形成含2N个离散数据的时域帧信号;其中N为N路并行数据;
FFT定点运算模块,将短时滑帧处理所得的每帧数据做2N点数的FFT;
帧结构滑动滤波模块,将FFT定点运算输出的每一帧数据滑动进入滑动滤波器并输出;
IFFT定点运算模块,将滑动滤波器输出的每一帧数据通过IFFT变换转换为时域数据;
数据截取及输出模块,将IFFT定点运算输出的每帧数据只保留后半帧数据输出。
一种高阶数字滤波方法,具体方法为,数字信号并行N路进入FPGA,滤波器系数通过时频变换,形成以向量为各元素的滑动滤波器;同时,并行数据在FPGA中通过短时滑帧处理,形成含2N个离散数据的时域帧信号,实时、并行的做FFT定点运算,形成含2N个离散数据的频域帧信号;频域帧信号再经过帧结构滑动滤波,完成含2N个频域数据的滤波器帧输出,每帧数据再实时流水地通过IFFT定点运算,完成频域帧信号的时域变换,最后经数据截取及输出后半帧时域信号;其中,
滤波器系数时频变换的具体方法为:将KN-1阶滤波器系数按每N个系数后面补N个0,再通过2N点DFT,形成滤波器的K个元素,且每个元素均为2N点的向量;其中,K=1,2,3,… ;
短时滑帧处理的具体方法为:并行N路数据,在FPGA内部缓存一帧,将当前时钟周期缓存的数据与当前时钟周期到来的数据按采样先后顺序组成含2N个数据的一帧数;
FFT定点运算的具体方法为:将短时滑帧处理所得的每帧数据做2N点数的FFT;
帧结构滑动滤波的具体方法为:将FFT定点运算实时流水输出的每一帧数据,滑动进入通过由滤波器系数时频变换所得的以向量为元素的滑动滤波器;
IFFT定点运算的具体方法为:将帧结构滑动滤波输出的每帧数据,通过IFFT变换,转换为时域数据;
数据截取及输出的具体方法为:将IFFT定点运算输出的每帧数据只保留后半帧数据,这就使得并行N路输入,并行N路输出。
所述2N点数的FFT通过n次蝶形计算得到,其中,N为2的n次方。
所述IFFT变换通过蝶形计算得到。
与现有技术相比,本发明的有益效果是:对于并行N路输入高阶数字滤波的FPGA实现方法,本发明的方法较传统通过序列重组,并行经过N路高阶滤波器的实现架构,其算法架构更加简单、合理,资源开销更少,工程可实现性更高。
附图说明
图1为本发明其中一实施例的数字处理架构框图。
图2为本发明其中一实施例的FFT及IFFT蝶形算法示意图。
图3为本发明其中一实施例的帧结构滑动滤波处理结构流程框图。
图4为本发明其中一实施例的滤波器系数时频变换处理流程框图。
图5为本发明采用基于帧结构的并行高阶低通滤波方法所得的高斯白噪声频域响应效果图。
图6为采用传统并行高阶低通滤波方法所得的高斯白噪声频域响应效果图。
图7为本发明采用基于帧结构的并行高阶带通滤波方法所得的高斯白噪声频域响应效果图。
图8为采用传统并行高阶带通滤波方法所得的高斯白噪声频域响应效果图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本说明书(包括任何附加权利要求、摘要和附图)中公开的任一特征,除非特别叙述,均可被其他等效或者具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
本具体实施例以4路量化的高斯白噪声数据并行通过63阶的FIR滤波处理为例进行具体说明。
如图1所示的,高阶数字滤波系统,采用的具体滤波处理方法为,数字信号并行N路进入FPGA,滤波器系数通过时频变换,形成以向量为各元素的滑动滤波器;同时,并行数据在FPGA中通过短时滑帧处理,形成含2N个离散数据的时域帧信号,实时、并行的做FFT定点运算,形成含2N个离散数据的频域帧信号;频域帧信号再经过帧结构滑动滤波,完成含2N个频域数据的滤波器帧输出,每帧数据再实时流水地通过IFFT定点运算,完成频域帧信号的时域变换,最后经数据截取及输出后半帧时域信号,即为最终的滤波器输出结果。较传统算法,本发明算法架构更加简单、合理,资源开销更少,工程可实现性更高。
滤波器系数时频变换的具体方法为:将KN-1阶滤波器系数按每N个系数后面补N个0,再通过2N点DFT,形成滤波器的K个元素,且每个元素均为2N点的向量;这样就形成了以向量为滤波器元素的K-1阶滑动滤波器。其中,K=1,2,3,… 。在本具体实施例中,如图4所示,63阶滤波系数重组为16组,每组4个点。将每组4个点后补4个0,做8点的DFT,所得16组数据,即构成帧结构滑动滤波器的16个元素,且每个元素为8点的向量。
短时滑帧处理的具体方法为:并行N路数据,在FPGA内部缓存一帧,将当前时钟周期缓存的数据与当前时钟周期到来的数据按采样先后顺序组成含2N个数据的一帧数,这样流水形成的每一帧的前半帧数据与前一帧的后半帧数据相同。在本具体实施例中,4路并行数据在FPGA内部缓存一个时钟周期的数据,每一个时钟周期的输出为上一时钟周期缓存的4个量化数据及当前时钟周期到来的4个量化数据,按采样先后顺序组成的一帧8个数,这种变换使得前一帧数据的后半帧与后一帧数据的前半帧数据相同。这种滑半帧处理即得到该步骤的输出。
FFT定点运算的具体方法为:将短时滑帧处理所得的每帧数据做2N点数的FFT。在本具体实施例中,所述2N点数的FFT通过n次蝶形计算得到,其中,N为2的n次方。通常由ADC量化的N路数据,N为2的n次方,因此2N点的FFT可以通过n次蝶形计算得到,且FPGA的资源消耗量小,算法可实现性高。在本具体实施例中,将每帧8个量化数据经8点的FFT,得到时域信号的频域变换。图2所示为8点FFT的蝶形算法。
帧结构滑动滤波的具体方法为:将FFT定点运算实时流水输出的每一帧数据,滑动进入通过由滤波器系数时频变换所得的以向量为元素的滑动滤波器。每一帧数据各元素和滤波器各向量组元素对应相乘,再对应相加,流水输出含2N个数据的每一帧数。在本具体实施例中,经FFT处理得到的每帧8点的频域数据再经帧结构滑动滤波处理,通过如图3的向量乘累加计算,输出的每帧8点数据即为帧结构滑动滤波的输出。帧结构滑动滤波器元素均为向量,且每个向量含8个系数,滤波器阶数与原始高阶滤波器阶数相关。
IFFT定点运算的具体方法为:将帧结构滑动滤波输出的每帧数据,通过IFFT变换,转换为时域数据。在本具体实施例中,所述IFFT变换通过蝶形计算得到。同FFT定点运算类似,只是IFFT变化蝶形运算是加权系数成共轭关系。在本具体实施例中,由帧结构滑动滤波输出的数据经8点IFFT定点运算,得到时域信号。图2所示为8点的IFFT蝶形算法,与FFT的区别在于加权因子的计算略有不同。
数据截取及输出的具体方法为:将IFFT定点运算输出的每帧数据只保留后半帧数据,这就使得并行N路输入,并行N路输出。将IFFT定点运算得到的每帧8点数据,只保留后半帧的4个点,即为最终的滤波器并行输出,且并行4路输入,并行4路输出,满足数据吞吐率的一致性。
由图5—图8的实验结果可得到这样的结论:不论是实现并行低通数字滤波还是并行带通数字滤波,本发明采用基于帧结构的并行数字滤波处理架构,所得滤波器频域响应特性和传统滤波架构所得频域响应特性几乎相同。而本发明采用帧形式的滑动滤波处理方法,相比于传统通过序列重组的方法,在实现方式上更为简单,消耗的系统资源更少,工程上更易实现。
Claims (4)
1.一种高阶数字滤波系统,包括数字信号并行输入模块和滤波器系数输入模块,其特征在于,还包括:
滤波系数时频变换模块,以向量为滤波器元素的K-1阶滑动滤波器;其中,K=1,2,3,… ;
短时滑帧处理模块,形成含2N个离散数据的时域帧信号;其中N为N路并行数据;
FFT定点运算模块,将短时滑帧处理所得的每帧数据做2N点数的FFT;
帧结构滑动滤波模块,将FFT定点运算输出的每一帧数据滑动进入滑动滤波器并输出;
IFFT定点运算模块,将滑动滤波器输出的每一帧数据通过IFFT变换转换为时域数据;
数据截取及输出模块,将IFFT定点运算输出的每帧数据只保留后半帧数据输出。
2.一种高阶数字滤波方法,具体方法为,数字信号并行N路进入FPGA,滤波器系数通过时频变换,形成以向量为各元素的滑动滤波器;同时,并行数据在FPGA中通过短时滑帧处理,形成含2N个离散数据的时域帧信号,实时、并行的做FFT定点运算,形成含2N个离散数据的频域帧信号;频域帧信号再经过帧结构滑动滤波,完成含2N个频域数据的滤波器帧输出,每帧数据再实时流水地通过IFFT定点运算,完成频域帧信号的时域变换,最后经数据截取及输出后半帧时域信号;其中,
滤波器系数时频变换的具体方法为:将KN-1阶滤波器系数按每N个系数后面补N个0,再通过2N点DFT,形成滤波器的K个元素,且每个元素均为2N点的向量;其中,K=1,2,3,… ;
短时滑帧处理的具体方法为:并行N路数据,在FPGA内部缓存一帧,将当前时钟周期缓存的数据与当前时钟周期到来的数据按采样先后顺序组成含2N个数据的一帧数;
FFT定点运算的具体方法为:将短时滑帧处理所得的每帧数据做2N点数的FFT;
帧结构滑动滤波的具体方法为:将FFT定点运算实时流水输出的每一帧数据,滑动进入通过由滤波器系数时频变换所得的以向量为元素的滑动滤波器;
IFFT定点运算的具体方法为:将帧结构滑动滤波输出的每帧数据,通过IFFT变换,转换为时域数据;
数据截取及输出的具体方法为:将IFFT定点运算输出的每帧数据只保留后半帧数据,这就使得并行N路输入,并行N路输出。
3.根据权利要求2所述的滤波方法,所述2N点数的FFT通过n次蝶形计算得到,其中,N为2的n次方。
4.根据权利要求3所述的滤波方法,所述IFFT变换通过蝶形计算得到。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410694085.8A CN104333348B (zh) | 2014-11-27 | 2014-11-27 | 一种高阶数字滤波系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410694085.8A CN104333348B (zh) | 2014-11-27 | 2014-11-27 | 一种高阶数字滤波系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104333348A true CN104333348A (zh) | 2015-02-04 |
CN104333348B CN104333348B (zh) | 2017-02-22 |
Family
ID=52408015
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410694085.8A Active CN104333348B (zh) | 2014-11-27 | 2014-11-27 | 一种高阶数字滤波系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104333348B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105353216A (zh) * | 2015-11-19 | 2016-02-24 | 许继集团有限公司 | 一种高效fir滤波器级联dft算法 |
CN105656451A (zh) * | 2016-01-26 | 2016-06-08 | 北京空间飞行器总体设计部 | 一种基于频域处理的扩频信号匹配滤波系统及方法 |
CN108631753A (zh) * | 2018-05-15 | 2018-10-09 | 西安空间无线电技术研究所 | 一种一体化补偿数字滤波器设计方法 |
CN109525214A (zh) * | 2018-10-11 | 2019-03-26 | 上海辛格林纳新时达电机有限公司 | Fir滤波器的滤波方法、fir滤波器及伺服驱动器 |
CN109815546A (zh) * | 2018-12-26 | 2019-05-28 | 中国电子科技集团公司第二十研究所 | 一种高速并行数字匹配滤波器的实现方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040254969A1 (en) * | 2002-12-24 | 2004-12-16 | Stmicroelectronics N.V. | Electronic circuit for performing fractional time domain interpolation and related devices and methods |
CN101834581A (zh) * | 2009-03-13 | 2010-09-15 | 索尼公司 | 滤波装置、滤波方法、程序和环绕处理器 |
CN102355273A (zh) * | 2011-08-17 | 2012-02-15 | 清华大学 | 数字信道化方法及电路 |
CN103188192A (zh) * | 2011-12-28 | 2013-07-03 | 中国科学院上海微系统与信息技术研究所 | 应用于视频传感器的基带处理装置 |
US20140108479A1 (en) * | 2012-10-17 | 2014-04-17 | James L. Rasmussen | Computationally Efficient Finite Impulse Response Comb Filtering |
-
2014
- 2014-11-27 CN CN201410694085.8A patent/CN104333348B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040254969A1 (en) * | 2002-12-24 | 2004-12-16 | Stmicroelectronics N.V. | Electronic circuit for performing fractional time domain interpolation and related devices and methods |
CN101834581A (zh) * | 2009-03-13 | 2010-09-15 | 索尼公司 | 滤波装置、滤波方法、程序和环绕处理器 |
CN102355273A (zh) * | 2011-08-17 | 2012-02-15 | 清华大学 | 数字信道化方法及电路 |
CN103188192A (zh) * | 2011-12-28 | 2013-07-03 | 中国科学院上海微系统与信息技术研究所 | 应用于视频传感器的基带处理装置 |
US20140108479A1 (en) * | 2012-10-17 | 2014-04-17 | James L. Rasmussen | Computationally Efficient Finite Impulse Response Comb Filtering |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105353216A (zh) * | 2015-11-19 | 2016-02-24 | 许继集团有限公司 | 一种高效fir滤波器级联dft算法 |
CN105353216B (zh) * | 2015-11-19 | 2018-06-19 | 许继集团有限公司 | 一种高效fir滤波器级联dft算法 |
CN105656451A (zh) * | 2016-01-26 | 2016-06-08 | 北京空间飞行器总体设计部 | 一种基于频域处理的扩频信号匹配滤波系统及方法 |
CN105656451B (zh) * | 2016-01-26 | 2018-07-03 | 北京空间飞行器总体设计部 | 一种基于频域处理的扩频信号匹配滤波系统及方法 |
CN108631753A (zh) * | 2018-05-15 | 2018-10-09 | 西安空间无线电技术研究所 | 一种一体化补偿数字滤波器设计方法 |
CN108631753B (zh) * | 2018-05-15 | 2021-11-16 | 西安空间无线电技术研究所 | 一种一体化补偿数字滤波器设计方法 |
CN109525214A (zh) * | 2018-10-11 | 2019-03-26 | 上海辛格林纳新时达电机有限公司 | Fir滤波器的滤波方法、fir滤波器及伺服驱动器 |
CN109525214B (zh) * | 2018-10-11 | 2022-10-14 | 上海辛格林纳新时达电机有限公司 | Fir滤波器的滤波方法、fir滤波器及伺服驱动器 |
CN109815546A (zh) * | 2018-12-26 | 2019-05-28 | 中国电子科技集团公司第二十研究所 | 一种高速并行数字匹配滤波器的实现方法 |
CN109815546B (zh) * | 2018-12-26 | 2022-12-13 | 中国电子科技集团公司第二十研究所 | 一种高速并行数字匹配滤波器的实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104333348B (zh) | 2017-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104333348A (zh) | 一种高阶数字滤波系统及方法 | |
CN105634507A (zh) | 极化码置信传播译码器的流水线架构 | |
CN103269212B (zh) | 低成本低功耗可编程多级fir滤波器实现方法 | |
CN104539262A (zh) | 一种连续可变速率的数字成型滤波处理方法 | |
Nashed et al. | Convolution sampling and reconstruction of signals in a reproducing kernel subspace | |
CN103888104A (zh) | Fir数字滤波器设计方法和系统 | |
CN104459315A (zh) | 基于非基2fft变换的间谐波检测方法 | |
CN104504205A (zh) | 一种对称fir算法的并行化二维分割方法及其硬件结构 | |
CN106656213B (zh) | 基于k段分解的低复杂度极化码折叠硬件构架的实现方法 | |
CN106682732B (zh) | 一种应用于神经网络的高斯误差函数电路 | |
KR20170008837A (ko) | 오디오 신호를 처리하기 위한 방법 및 장치 | |
Haveliya | FPGA implementation of a Vedic convolution algorithm | |
CN104967428A (zh) | 用于fpga的高速高阶fir滤波器的频域实现方法 | |
CN103955585B (zh) | 一种适用于低功耗容错电路的fir滤波器结构 | |
Chen et al. | A novel FIR filter based on stochastic logic | |
CN105718240B (zh) | 一种基于总和增量调制的任意路输入信号的比特流加法器 | |
CN103713878B (zh) | 一种应用补码方法的正余弦cordic算法在fpga实现的方法 | |
CN102957401A (zh) | 一种链式滤波器实现方法 | |
CN103634027B (zh) | 超宽带信号的数字正交调制实时处理方法 | |
Chen et al. | Nonlinear boundary value problem for first order impulsive integro-differential equations of mixed type | |
CN101894095B (zh) | 快速哈达玛变换装置及方法 | |
CN105515548A (zh) | 基于fpga的多路抽取复用滤波器的方法及装置 | |
CN101807902B (zh) | 复系数线性相位无限脉冲响应数字滤波器 | |
CN203590202U (zh) | 抑制高速比较器火花码和亚稳态的电路结构 | |
WO2016119397A1 (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |