CN110113029B - 一种fir抽取滤波器的数据处理方法 - Google Patents
一种fir抽取滤波器的数据处理方法 Download PDFInfo
- Publication number
- CN110113029B CN110113029B CN201910374927.4A CN201910374927A CN110113029B CN 110113029 B CN110113029 B CN 110113029B CN 201910374927 A CN201910374927 A CN 201910374927A CN 110113029 B CN110113029 B CN 110113029B
- Authority
- CN
- China
- Prior art keywords
- filter
- data
- sub
- filtered
- register
- 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
Links
Images
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
- H03H17/02—Frequency selective networks
- H03H17/0223—Computation saving measures; Accelerating measures
- H03H17/0238—Measures concerning the arithmetic used
-
- 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/04—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
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Complex Calculations (AREA)
Abstract
一种FIR抽取滤波器的数据处理方法,包括:S1,将滤波器分解为个子滤波器,其中,N为滤波器中系数的个数,D为子滤波器中系数的个数;S2,为每一子滤波器定义一初始值为0的数据寄存器;S3,接收到待滤波数据后,每一子滤波器分别根据其系数和相应的数据寄存器的值对待滤波数据进行乘加处理;S4,判断已滤波数据的个数是否为D的整数倍,若不是,每一子滤波器将其乘加结果保存至相应的数据寄存器,否则,每一子滤波器将其乘加结果保存至其前一个子滤波器相应的数据寄存器,清零最后一个子滤波器相应的数据寄存器,并输出第一个子滤波器的乘加结果。该方法占用的硬件资源与存储资源都较少,且可以实时输出抽取滤波后的结果,计算效率高。
Description
技术领域
本公开涉及信号处理技术领域,具体地,涉及一种FIR抽取滤波器的数据处理方法。
背景技术
低频射电频谱仪是安装在嫦娥四号着陆器平台上的空间低频射电信号观测仪器,其通过探测来自太阳、太阳行星际空间及银河系空间等的低频电场,分析电场的频谱信息,实现对太阳低频射电特征和月表低频辐射环境的探测。根据低频射电频谱仪的技术要求,探测仪的工作频率为0.1-40MHz,为了保证接收信号的灵敏度和频率分辨率,分为两个频段进行接收,其中低频段频率范围为0.1-2MHz,频率分辨率优于10kHz,高频段频率范围为1-40MHz,频率分辨率优于200kHz。
低频射电频谱仪采用有限脉冲响应(Finite impulse response,FIR)抽取滤波器对高速模数转换器(Analog-to-Digital Converter,ADC)量化数据进行低通滤波,得到低频段时域数据,然后进行频谱分析。为了降低低频射电频谱仪系统的实现难度和硬件成本,在实现FIR抽取滤波器的功能时,对FIR抽取滤波器的算法提出占用资源少、计算速度快等要求。
发明内容
(一)要解决的技术问题
本公开提供了一种FIR抽取滤波器的数据处理方法,以至少解决以上技术问题。
(二)技术方案
本公开提供了一种FIR抽取滤波器的数据处理方法,包括:S1,将滤波器分解为个子滤波器,其中,N为所述滤波器中系数的个数,D为所述子滤波器中系数的个数;S2,为每一所述子滤波器定义一数据寄存器;S3,接收到待滤波数据后,每一所述子滤波器分别根据其系数和相应的数据寄存器的值对所述待滤波数据进行乘加处理;S4,判断已滤波数据的个数是否为D的整数倍,若不是,每一所述子滤波器将其乘加结果保存至相应的数据寄存器,否则,每一所述子滤波器将其乘加结果保存至其前一个子滤波器相应的数据寄存器,清零最后一个所述子滤波器相应的数据寄存器,并输出第一个所述子滤波器的乘加结果。
可选地,所述步骤S2还包括:为每一所述子滤波器设置一相应的长度为D的循环移位寄存器,所述循环移位寄存器用于存放相应的所述子滤波器的系数。
可选地,所述步骤S4之后还包括:S5,每一所述循环移位寄存器中存放的系数循环移动1位;S6,重复执行步骤S3-S5,直至无所述待滤波数据。
可选地,所述循环移动1位为向左循环移动1位或向右循环移动1位。
可选地,所述步骤S3中对所述待滤波数据进行乘加处理包括:将所述待滤波数据与所述子滤波器的第一系数相乘,并与该子滤波器相应的数据寄存器中的值相加。
可选地,当所述已滤波数据的个数不是D的整数倍时:Tn=Tn′+x·Vn′(0),其中,x为待滤波数据,Tn为待滤波数据处理后第n个数据寄存器的值,Tn′为待滤波数据处理前该第n个数据寄存器的值,Vn′(0)为第n个子滤波器的第一系数。
可选地,当所述已滤波数据的个数是D的整数倍时:Tn=Tn+1′+x·Vn+1′(0),Tout=T1′+x·V1′(0),其中,x为待滤波数据,Tn为待滤波数据处理后第n个数据寄存器的值,Tn+1′为待滤波数据处理前第n+1个数据寄存器的值,为待滤波数据处理后第个数据寄存器的值,Vn+1′(0)为待滤波数据处理前第n+1个子滤波器的第一系数,V1′(0)为待滤波数据处理前第一个子滤波器的第一系数。
可选地,所述数据寄存器的长度为1,所述数据寄存器的初始值为0。
(三)有益效果
本公开提供的FIR抽取滤波器的数据处理方法具有以下有益效果:
(3)可实时输出抽取滤波后的结果,其计算效率高;
(4)实现步骤简单,可应用于其它软件无线电系统,适用性广。
附图说明
图1示意性示出了本公开实施例提供的FIR抽取滤波器的数据处理方法的流程图。
图2示意性示出了本公开实施例提供的FIR抽取滤波器的数据处理方法的工作流程图。
图3A示意性示出了待抽取滤波的波形数据。
图3B示意性示出了传统方法滤波后的数据。
图3C示意性示出了本公开实施例提供的FIR抽取滤波器的数据处理方法抽取滤波后的数据。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
本实施例提供了一种FIR抽取滤波器的数据处理方法,参阅图1,结合图2、图3A、图3B和图3C对该方法进行详细说明,该方法包括以下操作。
首先,在操作S1之前,判断滤波器中系数的个数N是否为子滤波器中系数的个数D的整数倍,当N不等于D的整数倍时,在滤波器中系数的末端添加个系数0。其中,表示对N/D进行向上取整,例如N=58,D=20时,此时需要在滤波器系数的末端添加两个系数0;N=60,D=20时,此时无需在滤波器系数的末端添加系数0。
然后,从左至右,在滤波器的个系数中依次选取D个系数以形成第一个子滤波器W1,重复该操作,依次形成第二个子滤波器W2、第三个子滤波器W3、……第个子滤波器滤波器中系数为h(n),每个子滤波器中系数如下:
第一个子滤波器W1:h(0)、h(1)、h(2)、……、h(D-1);
第二个子滤波器W2:h(D)、h(D+1)、h(D+2)、……、h(2D-1);
第三个子滤波器W3:h(2D)、h(2D+1)、h(2D+2)、……、h(3D-1);
以滤波器中系数的个数N=60、子滤波器中系数的个数D=20、滤波器中系数为h(n)为例,其中0≤n≤N-1,可将滤波器分解为3个子滤波器W1、W2、W3,每个子滤波器中系数如下:
第一个子滤波器W1:h(0)、h(1)、h(2)、……、h(19);
第二个子滤波器W2:h(20)、h(21)、h(22)、……、h(39);
第三个子滤波器W3:h(40)、h(41)、h(42)、……、h(59)。
S2,为每一子滤波器定义一数据寄存器。
以上述N=60、D=20示例为例,需定义三个数据寄存器T1、T2、T3,分别对应子滤波器W1、W2、W3。T1存放W1的中间乘加结果,T2存放W2的中间乘加结果,T3存放W3的中间乘加结果。
为每一个子滤波器设置一个长度为D的循环移位寄存器,每个子滤波器对应一循环移位寄存器,共设置有个循环移位寄存器;并将每一个子滤波器的系数输入其相应的循环移位寄存器,循环移位寄存器对存入其中的子滤波器系数进行保存。
以上述N=60、D=20示例为例,需定义三个循环移位寄存器V1、V2、V3,分别对应子滤波器W1、W2、W3。V1存放W1的20个系数,V2存放W2的20个系数,V3存放W3的20个系数。
S3,接收到待滤波数据后,每一子滤波器分别根据其系数和相应的数据寄存器的值对待滤波数据进行乘加处理。
接收到待滤波数据后,将该待滤波数据分别与每一子滤波器的第一系数相乘,并与该子滤波器相应的数据寄存器中的值相加,其中,第一系数为子滤波器相应的循环移位寄存器中的第一个系数。
以上述N=60、D=20示例为例,待滤波数据为x,V1(0)、V2(0)、V3(0)分别为V1、V2、V3中的第一个系数,T1’、T2’、T3’分别为x处理前T1、T2、T3的值,三个子滤波器分别对待滤波数据x进行以下计算:T1′+x·V1′(0)、T2′+x·V2′(0)、T3′+x·V3′(0)。
S4,判断已滤波数据的个数是否为D的整数倍,若不是,每一子滤波器将其乘加结果保存至相应的数据寄存器,否则,每一子滤波器将其乘加结果保存至其前一个子滤波器相应的数据寄存器,清零最后一个子滤波器相应的数据寄存器,并输出第一个子滤波器的乘加结果。
操作S4包括以下子操作:
S41,判断已滤波数据的个数是否为D的整数倍,若不是,执行子操作S42,若是,执行子操作S43。
S42,每一子滤波器将其在操作S3中得到的乘加结果保存至其相应的数据寄存器中,具体地:
Tn=Tn′+x·Vn′(0)
以上述N=60、D=20示例为例,该待滤波数据x处理后,数据寄存器T1中保存的数据为T1′+x·V1′(0),数据寄存器T2中保存的数据为T2′+x·V2′(0),数据寄存器T3中保存的数据为T3′+x·V3′(0)。
S43,每一子滤波器将其在操作S3中得到的乘加结果保存至其前一个子滤波器相应的数据寄存器,清零最后一个子滤波器相应的数据寄存器,并输出第一个子滤波器的乘加结果,具体地:
Tn=Tn+1′+x·Vn+1′(0)
Tout=T1′+x·V1′(0)
其中,x为待滤波数据,Tn为x处理后第n个数据寄存器的值,Tn+1′为x处理前第n+1个数据寄存器的值,为x处理后第个(即最后一个)数据寄存器的值,Vn+1′(0)为x处理前第n+1个循环移位寄存器的第一个系数,V1′(0)为x处理前第一个循环移位寄存器的第一个系数。
以上述N=60、D=20示例为例,该待滤波数据X处理后,数据寄存器T1中保存的数据为T2′+x·V2′(0),数据寄存器T2中保存的数据为T3′+x·V3′(0),数据寄存器T3中保存的数据为0,输出结果为T1′+x·V1′(0)。
此外,对于某一待滤波信号而言,对该信号进行抽取滤波时,其待滤波数据的个数应为多个,因此,操作S4之后还包括以下操作:
S5,将每一个子滤波器相应的循环移位寄存器中存放的系数循环移动1位,以得到下一个待滤波数据所需的滤波系数。具体地,例如循环移位寄存器中存放的系数向左循环移动1位或向右循环移动1位。
S6,重复执行操作S3-S5,直至无待滤波数据为止,此时所有的数据均已完成滤波。
以图3A中所示波形为例,分别利用传统方法和本公开处理方法对其进行滤波,对比验证说明本公开处理方法的正确性。
图3A中所示波形的信号为x(n)=sin(2πf1nδt)+sin(2πf2nδt),其中,f1为0.7MHz,f2为9MHz,δt为10ns。利用传统方法对该信号进行滤波后的数据如图3B所示,其中,星号标注的点为抽取后保留的点。
本公开处理方法对采样频率为100MSPS的信号进行FIR抽取滤波,滤波器的长度N=60,抽取倍数D=20,滤波器系数为:
其中,0≤n≤N-1,I0(.)为第1类变形零阶贝塞尔函数。利用该FIR抽取滤波器进行FIR抽取滤波后的数据如图3C所示。
对比图3B和3C,可以看出,本公开中的FIR抽取滤波器的数据处理方法的处理结果与传统方法一致,说明本公开中的数据处理方法能够有效地进行抽取滤波。
至此,已对本公开实施例中的FIR抽取滤波器的数据处理方法进行完整说明,该数据处理方法对滤波器分解得到子滤波器,并为子滤波器设置相应的循环移位寄存器和数据寄存器,在每个时钟的触发沿对数据寄存器进行更新,并对循环移位寄存器进行循环移位,当已滤波数据为抽取倍数的整数倍时,输出第一个子滤波器相应的数据寄存器中的数值,从而得到抽取滤波后的结果。
以上所述的具体实施例,对本公开的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本公开的具体实施例而已,并不用于限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (8)
1.一种FIR抽取滤波器的数据处理方法,包括:
S2,为每一所述子滤波器定义一数据寄存器;
S3,接收到待滤波数据后,每一所述子滤波器分别根据其系数和相应的数据寄存器的值对所述待滤波数据进行乘加处理;
S4,判断已滤波数据的个数是否为D的整数倍,若不是,每一所述子滤波器将其乘加结果保存至相应的数据寄存器,否则,每一所述子滤波器将其乘加结果保存至其前一个子滤波器相应的数据寄存器,清零最后一个所述子滤波器相应的数据寄存器,并输出第一个所述子滤波器的乘加结果。
2.根据权利要求1所述的FIR抽取滤波器的数据处理方法,其中,所述步骤S2还包括:
为每一所述子滤波器设置一相应的长度为D的循环移位寄存器,所述循环移位寄存器用于存放相应的所述子滤波器的系数。
3.根据权利要求2所述的FIR抽取滤波器的数据处理方法,其中,所述步骤S4之后还包括:
S5,每一所述循环移位寄存器中存放的系数循环移动1位;
S6,重复执行步骤S3-S5,直至无所述待滤波数据。
4.根据权利要求3所述的FIR抽取滤波器的数据处理方法,其中,所述循环移动1位为向左循环移动1位或向右循环移动1位。
5.根据权利要求1所述的FIR抽取滤波器的数据处理方法,其中,所述步骤S3中对所述待滤波数据进行乘加处理包括:
将所述待滤波数据与所述子滤波器的第一系数相乘,并与该子滤波器相应的数据寄存器中的值相加。
8.根据权利要求1所述的FIR抽取滤波器的数据处理方法,其中,所述数据寄存器的长度为1,所述数据寄存器的初始值为0。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910374927.4A CN110113029B (zh) | 2019-05-07 | 2019-05-07 | 一种fir抽取滤波器的数据处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910374927.4A CN110113029B (zh) | 2019-05-07 | 2019-05-07 | 一种fir抽取滤波器的数据处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110113029A CN110113029A (zh) | 2019-08-09 |
CN110113029B true CN110113029B (zh) | 2021-02-23 |
Family
ID=67488629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910374927.4A Active CN110113029B (zh) | 2019-05-07 | 2019-05-07 | 一种fir抽取滤波器的数据处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110113029B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1494335A (zh) * | 2002-10-30 | 2004-05-05 | Lg电子株式会社 | 移动通信系统的数字滤波器及其操作方法 |
CN104348446A (zh) * | 2013-07-26 | 2015-02-11 | 中国移动通信集团广东有限公司 | 一种实现fir滤波的方法和滤波装置 |
CN107769755A (zh) * | 2017-10-24 | 2018-03-06 | 中国科学院电子学研究所 | 一种并行fir抽取滤波器的设计方法和并行fir抽取滤波器 |
US20180254785A1 (en) * | 2016-10-25 | 2018-09-06 | Samsung Electronics Co., Ltd. | Efficient polyphase architecture for interpolator and decimator |
CN108768343A (zh) * | 2018-05-23 | 2018-11-06 | 成都玖锦科技有限公司 | 基于多相滤波器的高精度延时方法 |
-
2019
- 2019-05-07 CN CN201910374927.4A patent/CN110113029B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1494335A (zh) * | 2002-10-30 | 2004-05-05 | Lg电子株式会社 | 移动通信系统的数字滤波器及其操作方法 |
CN104348446A (zh) * | 2013-07-26 | 2015-02-11 | 中国移动通信集团广东有限公司 | 一种实现fir滤波的方法和滤波装置 |
US20180254785A1 (en) * | 2016-10-25 | 2018-09-06 | Samsung Electronics Co., Ltd. | Efficient polyphase architecture for interpolator and decimator |
CN107769755A (zh) * | 2017-10-24 | 2018-03-06 | 中国科学院电子学研究所 | 一种并行fir抽取滤波器的设计方法和并行fir抽取滤波器 |
CN108768343A (zh) * | 2018-05-23 | 2018-11-06 | 成都玖锦科技有限公司 | 基于多相滤波器的高精度延时方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110113029A (zh) | 2019-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200011911A1 (en) | High-precision frequency measuring system and method | |
JP5908472B2 (ja) | 信号を解析し、瞬時周波数および短時間フーリエ変換を提供するための方法、ならびに信号を解析するためのデバイス | |
CN109873622B (zh) | 核信号数字处理方法、装置及数字化核仪器 | |
US11263293B2 (en) | Digital sample rate conversion | |
JP2005295556A (ja) | 量子化装置用ディザ回路 | |
Roy et al. | Raised cosine filter-based empirical mode decomposition | |
US7321913B2 (en) | Digital multirate filtering | |
JP2004528742A (ja) | 高速フイルタ | |
CN110113029B (zh) | 一种fir抽取滤波器的数据处理方法 | |
George et al. | Extension of two-signal spurious-free dynamic range of wideband digital receivers using Kaiser window and compensation method | |
Tymchenko et al. | Methods of Converting Weight Sequences in Digital Subtraction Filtration | |
Onizawa et al. | Scaled IIR filter based on stochastic computation | |
Madisetti et al. | Digital signal processing handbook on CD-ROM | |
US8615538B1 (en) | Sub-filtering finite impulse response (FIR) filter for frequency search capability | |
WO2011128881A2 (en) | Implementation of complex sampling and time delays calculation | |
Zheng et al. | Case teaching of parallel FIR digital filter design combined Matlab with FPGAs | |
Samoilov et al. | Appraisal of the Effective Number of Bits of the ADC for Sensors with Account for Dynamic Errors | |
US8339160B2 (en) | Clock generating device and jitter reducing method in the clock generating device | |
Shehu et al. | Performance Analysis of FIR Low Pass Filter Design using Blackman and Flat Top Window Methods | |
Ashim et al. | FPGA based realization of a High-Speed 8-Tap FIR Filter for Signal Processing Applications | |
Abd El-Azeem et al. | High performance interpolation filter using direct computation | |
Jayarama et al. | Enhanced Wideband Frequency Estimation via FFT: Leveraging Polynomial Interpolation and Array Indexing | |
US8938483B1 (en) | Filter parallelization for high data throughput | |
Menon et al. | A speed efficient FIR filter for reconfigurable applications | |
Kovalev et al. | Hardware solution for Haar wavelet transform in real time |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |