基于FPGA实现的FFT插值正弦波频率估计

基于FPGA实现的FFT插值正弦波频率估计

ID:38158437

大小:362.52 KB

页数:6页

时间:2019-05-31

基于FPGA实现的FFT插值正弦波频率估计_第1页
基于FPGA实现的FFT插值正弦波频率估计_第2页
基于FPGA实现的FFT插值正弦波频率估计_第3页
基于FPGA实现的FFT插值正弦波频率估计_第4页
基于FPGA实现的FFT插值正弦波频率估计_第5页
资源描述:

《基于FPGA实现的FFT插值正弦波频率估计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基于FPGA实现的FFT插值正弦波频率估计2010年3月25日10:51现代电子技术作者:江舸,陶荣辉,李钒,李合生中国工程物理研究院摘要:在分析双线幅度法(Rife)、修正双线幅度法(MRife)、傅里叶系数插值迭代3种算法的基础上,结合FPGA的并行处理优势,将迭代变为并行运算,由此得出了一种快速频率估计算法。并将新算法进行FPGA设计,给出了算法流程图。仿真结果表明,当Rsn>-14dB时,新算法的频率估计均方误差接近卡拉美-罗限(CRB)。关键词:频率估计;迭代;卡拉美-罗限;FPGA器件对被噪声污染的正弦波信号进行频率估计是信号参数估计中的

2、经典问题,目前国内外已提出不少方法。文献给出了在高斯白噪声中对正弦波信号频率进行最大似然估计算法,该算法能够达到卡拉美-罗限(CRB),但计算量大,实现困难。FFT频率估计方法具有速度快、便于实时处理的特性而得到了广泛应用。但FFT频率估计方法得到的是离散频率值,当信号频率与FFT离散频率不重合时,由于FFT的“栅栏”效应,信号的实际频率应位于两条谱线之间。显然仅仅利用FFT幅度最大值估计信号频率难以满足精度要求,因此各种插值算法应运而生。文献给出了Rife算法,在对输入信号进行一次FFT运算后,利用最大谱线及其相邻的一根次大谱线进行插值来确定真实频

3、率位置。当信号的真实频率处于两相邻量化频率之间的中心区域时,Rife算法精度很高,但是在FFT量化频率附近的误差却较大。文献提出了一种修正Rife算法,通过对信号进行频移,使新信号的频率位于两个相邻量化频率点的中心区域,然后再利用Rife算法进行频率估计。文献提出了基于傅里叶系数插值迭代的频率估计方法,该方法能够有效提高精度,但需要多次串行迭代,不利于发挥FPGA并行处理的优势。本文分析了以上3种算法的特点,并以之为基础结合FPGA的并行处理优势,提出了一种利用信号FFT插值系数的幅度和相位信息来构造频率修正项的新算法。1基于FFT插值的正弦波频率估

4、计法1.1算法原理单一频率正弦信号表示为:式中:A,f0,θ分别为正弦信号的幅度、频率和初相;fs为采样频率。目前基于FFT的正弦信号频率估计分为2个过程来实现:粗测频和精测频。粗测频通过直接观察FFT幅谱最大值点m来完成,受观测时长T的限制,误差范围为±l/(2T)。假设为信号频率的真实值,δ为信号频率与其FFT幅度最大处对应频率的相对偏差,m,与δ的关系如式(2)所示:考虑到FPGA并行计算的特点,利用流水线结构同时计算多个Xm+p,Xm+p-1值,将串行迭代变为并行迭代,其运算步骤归纳如下:本文提出的算法分为粗测频(步骤1)和精测频(步骤2,3

5、),频率估计值为粗测结果与精测结果之和。1.2算法分析本文算法与文献提到的算法主要区别在于步骤3。算法将正弦波信号所在频段[m-1,m+1]细化为5个子频段,如图1所示,并根据δ1值的大小判断信号谱线位置,使信号的频率位于某子频段的中心区域再进行频率估计。该算法也可认为是对Rife算法的一种修正,通过适当增加运算量提高了估计精度。当p=O及p=1时,该算法退化为Rife算法。与MRife算法相比:MRife算法是通过对原始信号进行平移,然后对平移后的信号做FFT,重新用Rife算法计算δ。从式(3)可以发现“信号平移+FFT”与Xm+p时域运算是一致

6、的,所不同的是,由于计算单个Xm+p只需N次复数乘法和N次复数加法,运算量比“信号平移+FFT”小,因此本文算法可同时计算多个Xm+p,Xm+p-1,以提高估计精度。2算法硬件实现本文算法充分利用了FPGA并行计算的优点,在FPGA实现时采用流水线模式,经过固有时间后,每个时钟周期可以输出一个指定操作的结果,提高了算法的运算速度。从前面的分析可知,整个测频算法主要包括粗测频和精测频2个部分:首先对信号作FFT运算并进行谱峰搜索得到峰值位置;再通过插值FFT运算得到频率偏差δ1,δ2;粗测频部分可以直接调用相关FPGA的FFT库函数完成。从式(3)可知

7、精测频部分需要大量计算三角函数,本文采用查表法来实现。整个算法流程如图2所示。3仿真分析信噪比定义为:,σ为噪声均方误差。对正弦波信号,在相位、幅度和频率3个参数均是未知的情况下,频率估计的方差下限为:式中N为样本数。在仿真中设fs=167MHz,N=512,因此两条谱线间的频率差为△f=fs/N。现取fi=45.5△f+(i-1)△f/20(i=l,2,…,21)的正弦波,即对应FFT后峰值位置与信号真实峰值偏差δ为[-0.5,0.5]。对每个频率fi的取值分别作l000次MonteCarlo试验,计算δl,δ2的均方根误差(RMSE),定义比率R

8、=RMSE/CRB,仿真结果如图3、图4所示。RSN取-20dB~0dB,步长为0.5dB,分别做1000次

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。