基于FPGA實(shí)現(xiàn)的FFT插值正弦波頻率估計(jì)
摘要:在分析雙線幅度法(Rife)、修正雙線幅度法(MRife)、傅里葉系數(shù)插值迭代3種算法的基礎(chǔ)上,結(jié)合FPGA的并行處理優(yōu)勢(shì),將迭代變?yōu)椴⑿羞\(yùn)算,由此得出了一種快速頻率估計(jì)算法。并將新算法進(jìn)行FPGA設(shè)計(jì),給出了算法流程圖。仿真結(jié)果表明,當(dāng)Rsn>-14 dB時(shí),新算法的頻率估計(jì)均方誤差接近卡拉美-羅限(CRB)。
關(guān)鍵詞:頻率估計(jì);迭代;卡拉美-羅限;FPGA器件
對(duì)被噪聲污染的正弦波信號(hào)進(jìn)行頻率估計(jì)是信號(hào)參數(shù)估計(jì)中的經(jīng)典問(wèn)題,目前國(guó)內(nèi)外已提出不少方法。文獻(xiàn)給出了在高斯白噪聲中對(duì)正弦波信號(hào)頻率進(jìn)行最大似然估計(jì)算法,該算法能夠達(dá)到卡拉美-羅限(CRB),但計(jì)算量大,實(shí)現(xiàn)困難。FFT頻率估計(jì)方法具有速度快、便于實(shí)時(shí)處理的特性而得到了廣泛應(yīng)用。但FFT頻率估計(jì)方法得到的是離散頻率值,當(dāng)信號(hào)頻率與FFT離散頻率不重合時(shí),由于FFT的“柵欄”效應(yīng),信號(hào)的實(shí)際頻率應(yīng)位于兩條譜線之間。顯然僅僅利用FFT幅度最大值估計(jì)信號(hào)頻率難以滿足精度要求,因此各種插值算法應(yīng)運(yùn)而生。文獻(xiàn)給出了Rife算法,在對(duì)輸入信號(hào)進(jìn)行一次FFT運(yùn)算后,利用最大譜線及其相鄰的一根次大譜線進(jìn)行插值來(lái)確定真實(shí)頻率位置。當(dāng)信號(hào)的真實(shí)頻率處于兩相鄰量化頻率之間的中心區(qū)域時(shí),Rife算法精度很高,但是在FFT量化頻率附近的誤差卻較大。文獻(xiàn)提出了一種修正Rife算法,通過(guò)對(duì)信號(hào)進(jìn)行頻移,使新信號(hào)的頻率位于兩個(gè)相鄰量化頻率點(diǎn)的中心區(qū)域,然后再利用Rife算法進(jìn)行頻率估計(jì)。文獻(xiàn)提出了基于傅里葉系數(shù)插值迭代的頻率估計(jì)方法,該方法能夠有效提高精度,但需要多次串行迭代,不利于發(fā)揮FPGA并行處理的優(yōu)勢(shì)。本文分析了以上3種算法的特點(diǎn),并以之為基礎(chǔ)結(jié)合FPGA的并行處理優(yōu)勢(shì),提出了一種利用信號(hào)FFT插值系數(shù)的幅度和相位信息來(lái)構(gòu)造頻率修正項(xiàng)的新算法。
1 基于FFT插值的正弦波頻率估計(jì)法
1.1 算法原理
單一頻率正弦信號(hào)表示為:
式中:A,f0,θ分別為正弦信號(hào)的幅度、頻率和初相;fs為采樣頻率。目前基于FFT的正弦信號(hào)頻率估計(jì)分為2個(gè)過(guò)程來(lái)實(shí)現(xiàn):粗測(cè)頻和精測(cè)頻。粗測(cè)頻通過(guò)直接觀察FFT幅譜最大值點(diǎn)m來(lái)完成,受觀測(cè)時(shí)長(zhǎng)T的限制,誤差范圍為±l/(2T)。假設(shè)為信號(hào)頻率的真實(shí)值,δ為信號(hào)頻率與其FFT幅度最大處對(duì)應(yīng)頻率的相對(duì)偏差,m,與δ的關(guān)系如式(2)所示:
評(píng)論