国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于全相位FFT的頻率估計及其FPGA實現

2017-12-13 06:01:40蘇俊亞張霞
關鍵詞:校正頻譜幅值

蘇俊亞,張霞

(中國傳媒大學 理工學部,北京 100024)

基于全相位FFT的頻率估計及其FPGA實現

蘇俊亞,張霞

(中國傳媒大學 理工學部,北京 100024)

信號截斷會引起頻譜的泄露,導致頻率測量出現偏差。相對于傳統(tǒng)FFT,全相位FFT能夠抑制頻譜泄露。本文針對一種諧振式紅外傳感器,首先對檢測信號進行全相位FFT,然后利用傳統(tǒng)FFT的頻譜對全相位FFT的頻譜進行校正,實現對頻率的精確估計。將此測頻方法在FPGA上進行硬件綜合,利用Verilog HDL 語言,設計了頻率測量電路。然后對所設計的頻率測量電路進行仿真,仿真結果顯示該方法在使用單精度浮點數進行運算時在MHz量級上可分辨1Hz的信號頻率。

全相位FFT;相位差;FPGA;Modelsim仿真

1 引言

頻率測量是眾多電子技術中的一種基本技術[1],在通信、導航系統(tǒng)、空間科學計算等領域有著廣泛的應用。對于頻率的測量,可以將時域信號進行FFT,然后在頻域對信號頻率進行估計,原始的信號序列較長,信號處理設備處理的長度有限,在進行FFT變換之前需對信號進行截斷,導致了信號的頻譜泄露。為了抑制信號頻譜泄露,通常情況下可以對信號進行加窗,如漢寧窗、凱澤窗、布萊克曼窗等,這些窗函數的傅里葉頻譜的第一旁瓣衰減大于矩形窗[2],但是主瓣寬度也大于矩形窗,加窗處理在抑制旁瓣泄露的同時會出現主瓣模糊的問題,因此加窗處理不能較好地解決頻譜泄露的問題,導致頻率測量的精度不高。

針對以上問題,文獻[3]提出了一種數字信號處理的新方法,即全相位快速傅里葉變換(all phase Fast Fourier Transformation,apFFT),這種信號處理的方法在抑制頻譜泄露的同時,不會導致主瓣模糊的問題。文獻[4]提出了利用傳統(tǒng)FFT的頻譜對apFFT的頻譜進行校正的方法,即FFT/apFFT綜合相位差校正法,該校正法提高了頻率測量精度。本文針對一種諧振式紅外傳感器[5],將FFT/apFFT綜合相位差校正法在FPGA上進行硬件綜合,采用Verilog HDL 語言,利用開發(fā)軟件提供的IP核,設計了頻率測量電路。然后對所設計的頻率測量電路使用Modelsim進行仿真,實現了對諧振式紅外傳感器頻率的估計。

2 綜合相位差校正法

FFT/apFFT綜合相位差校正法[3]是對信號分別進行全相位FFT和傳統(tǒng)FFT變換。全相位FFT是將采樣的2N-1點數據經過預處理后得到N個數據,然后再進行傳統(tǒng)的FFT。由于全相位FFT和傳統(tǒng)FFT在齊次、疊加、時不變、頻移等性質存在相似性,因此,可以采用傳統(tǒng)FFT對全相位FFT的頻譜進行校正。

在實際應用中,信號常為正弦或余弦信號,根據歐拉公式可知正弦和余弦信號由復指數信號經過線性疊加而得,因此只需研究復指數信號。一個幅值為A,初相位為θ的單頻復指數信號可表示為

x(n)=Aej[w*(n-n0)+θ]n∈[0,N-1]

(1)

對其進行傅里葉變換,并對變換結果在wk=kΔw=2kπ/N上進行采樣,可得其FFT頻譜為

X(k)=Aej(θ-w*n0)2πδ(kΔw-w*)

(2)

窗函數序列為w(n),n∈[0,N-1],通常窗函數具有對稱性,滿足w(n)=w(N-1-n),其FFT譜為

W(k)=Wg(kΔw)e-jτkΔw

(3)

其中τ=(N-1)/2,對信號加窗后的FFT譜為

=Aej(θ-w*n0)δ(kΔw-w*)*Wg(kΔw)e-jτkΔw

=Aej(θ-w*n0)Wg[kΔw-w*]e-jτ(kΔw-w*),k∈[0,N-1]

(4)

對(1)式中的x(n)進行前、后窗函數序列均為w(n)的雙窗全相位FFT,變換后的頻譜為[5]

(5)

假設最大譜線所對應k值為k*,經過傳統(tǒng)FFT的(4)式與經過全相位FFT的(5)式的相位譜差值為

Δφ=φx(k*)-φy(k*)

=[θ-w*n0-τ(k*Δw-w*)]-(θ-w*n0)

=-τ(k*Δw-w*)

(6)

由上式可得

w*=Δφ/τ+k*Δw,τ=(N-1)/2

(7)

從(7)式可看出只要求出兩種譜線在主譜線上的相位差值Δφ,就可以得出信號頻率的估計值。通過上述對FFT/apFFT綜合相位差校正法的介紹,可得頻率估計的流程如圖1所示[6]。

圖1 基于FFT/apFFT綜合相位差校正法的頻率估計流程圖

此頻率估計方法包括傳統(tǒng)加窗FFT和雙窗全相位FFT,分別求出兩者主譜線的相位值,其差值除以(N-1)/2可得頻偏值,頻偏值與主譜線的頻率值相加后可得輸入信號頻率的估計值。FFT/apFFT綜合相位差法與其他頻譜校正方法相比,其綜合了FFT和apFFT兩者的優(yōu)點,不但具有傳統(tǒng)相位差法的所有性能,而且兼?zhèn)淞薬pFFT的頻譜泄露小,可檢測微弱信號的優(yōu)點,其效率較高,性能較好[7]。

3 FPGA實現

選用Cyclone IV E系列的FPGA芯片不僅具有低成本、低功耗的優(yōu)點,而且具有豐富的邏輯單元、I/O、存儲器等資源,足以實現基于FFT/apFFT綜合相位差校正法的頻率測量方案;設計所用開發(fā)軟件為QuartusⅡ14.1,該版本的軟件設計了較多兼容Cyclone IV E 系列的IP核,利用這些已有的IP核進行設計縮短了開發(fā)時間;對于電路的仿真采用Modelsim SE 10.4,利用該版本可以更加快速實現系統(tǒng)的功能仿真;數據運算全部采用IEEE-754標準規(guī)定的單精度浮點數,與定點數運算相比,浮點數可以表示的數據范圍更寬,計算的精度更高。FPGA開發(fā)過程中依據自頂而下、模塊化的設計理念,圖2是整體設計框圖,進一步將分析每一模塊電路,并使用Modelsim對其進行仿真,驗證是否實現電路功能。

圖2 FPGA設計整體框圖

在全相位FFT數據預處理中,根據不同卷積窗函數可分為無窗全相位數據預處理、單窗全相位數據預處理和雙窗全相位數據預處理,由圖1可知此校正算法采用雙窗全相位數據預處理。從主瓣寬度和旁瓣衰減幅度兩方面考慮,雙窗全相位數據預處理中的前窗函數和后窗函數均采用漢寧窗。在數據預處理中,使用MATLAB生成歸一化的卷積窗序列,作為rom的初始化文件,加載到單端口rom中。整個數據預處理模塊包括rom模塊、乘法模塊、fifo模塊、reg_x0模塊、加法模塊、控制模塊以及數據選擇模塊。其中控制模塊為rom模塊提供地址信號,為fifo模塊和reg_x0模塊提供讀寫使能信號,為數據選擇模塊提供選擇使能信號,是數據預處理電路的核心模塊,協(xié)調整個電路工作。圖3是數據預處理模塊的原理圖。

傳統(tǒng)FFT數據處理只需要將采樣后的N點數據與N點窗函數序列相乘,相乘后的數據進行FFT變換即可。與全相位數據預處理相同,窗函數也選擇漢寧窗,在MATLAB中生成漢寧窗序列,并經過編碼變?yōu)閱尉雀↑c數的數據形式,將其存儲為MIF格式的文件,作為FPGA中rom的初始化文件,加載到單端口rom中,與輸入未知信號進行運算。傳統(tǒng)FFT數據處理模塊包含三個模塊,control模塊、rom模塊和mult模塊。control模塊控制rom模塊的地址,地址每變換一次,rom會輸出一個窗函數數據,rom的輸出會延遲一個時鐘,在testbench中控制未知信號的輸入時間,與rom的輸出保持一致,同步送入mult模塊中,實現對未知信號的“加窗”處理。圖4是傳統(tǒng)FFT數據處理的原理圖。

FFT變換模塊采用Altera公司研發(fā)的FFT IP核,FFT v14.1可實現定點、單浮點、塊浮點的FFT和IFFT運算[8],變換的長度為2m(3≤m≤18),數據流有流、變量流、緩存突發(fā)、突發(fā)四種結構。本次設計采用IEEE-754標準規(guī)定的單精度浮點數,此格式的數據位數為32位,FFT變換的長度選擇1024點,數據流結構選擇變量流。在對FFT核中各參數分析的基礎上,將其進行配置,保存配置后即可自動生成Verilog VDL文件,將生成的文件加載到創(chuàng)建的工程中,即可在電路設計的過程中使用元件例化語句對生成的模塊進行調用實現其功能。具體配置FFT核的參數如圖5所示。

求幅值和相位模塊的目的是求出FFT變換后輸出復數的幅值和相位,運算的過程均采用單精度浮點數。在此模塊中調用Quartus Ⅱ14.1中參數化模塊庫(LPM,Library of Parameterized Modules)里面的乘法、加法、除法和反正切模塊,這些模塊對Altera器件進行了優(yōu)化,不耗用器件的邏輯單元,加快了設計的開發(fā)。求復數幅值采用乘法和加法模塊實現運算,求復數的相位采用除法和反正切模塊實現運算,反正切模塊中角度的范圍為-π/2~π/2,但是相位差校正算法中使用的角度范圍為-π~π,因此必須采用校正方法對反正切模塊輸出結果進行校正,在代碼中增加判斷依據,具體的描述如下。

圖3 全相位FFT數據預處理原理圖

圖4 傳統(tǒng)FFT數據處理的原理圖

圖5 FFT核的配置

(8)

在求幅值和相位模塊中實現編號、幅值、相位三者同步后才能將結果輸入到下一模塊中進行運算,設計中采用觸發(fā)器作為結果延遲單元,保證了結果同步輸出。使用Modelsim對此模塊進行仿真,仿真結果如圖6所示,從圖中可看出result_num、result_mod、result_phase同步,達到設計要求。

圖6 求幅值和相位模塊的仿真結果

求最大譜線模塊中,只對輸入的幅值信號進行比較,幅值信號是大于等于零的,因此可以設置一個初始值為零的臨時變量與輸入的第一個數據進行比較,每一個CLK輸入一個數據,經過比較后將較大的數據放入臨時變量中用于下一個時鐘的比較。通過對全部幅值進行比較,求出最大幅值,并保存最大幅值所對應的相位值和編號值。求最大幅值的流程圖見圖7。使用Modelsim對此模塊進行仿真,仿真結果如圖8所示,從圖中可以看出,經過幅值的不斷比較后得到主譜線的編號值、幅度值和相位值。

圖7 求最大幅值的流程圖

上述各個模塊連接在一起可組成全相位FFT和傳統(tǒng)FFT求主譜線相位值的電路設計。圖9是全相位FFT求主譜線相位值電路設計的頂層原理

圖8 求最大譜線模塊的仿真結果

圖,將未知信號的2N-1點采樣數據送入到如圖所示的電路中,經過數據的預處理,N點FFT變換,求出幅值和相位,然后求出主譜線所對應的幅度值、相位值和編號值。圖10是傳統(tǒng)FFT求主譜線相位值電路設計的頂層原理圖,將未知信號中包含全相位FFT所需數據的第N點到第2N-1點采樣數據送入圖中所示電路中,經過“加窗”處理,N點FFT變換,求幅值和相位,然后求出經過普通FFT運算后主譜線的幅度值、相位值和編號值。

在計算頻率模塊中,全相位FFT和傳統(tǒng)FFT的主譜線相位值和編號值作為此模塊的輸入數據,在此模塊中首先計算傳統(tǒng)FFT和全相位FFT主譜線的相位差值,然后除以(N-1)/2,最后與序列k值和fs/N的乘積進行加法運算,運算的結果是對未知信號頻率的估計值。假設傳統(tǒng)FFT主譜線對應的相位角度值為p1,全相位FFT主譜線對應相位角度值為p2,主譜線對應的編號為k,采樣頻率為fs,變換點數為N,則對未知信號頻率的估計值為式9[9]。

圖9 全相位FFT求主譜線相位值電路設計的頂層原理圖

圖10 傳統(tǒng)FFT求主譜線相位值電路設計的頂層原理圖

圖11 計算頻率模塊的RTL視圖

(9)

計算頻率模塊的RTL視圖見圖11。圖12是當輸入信號為4.5MHz時,使用Modelsim對此模塊仿真的結果。從圖中可以看出,設計的電路輸出結果為未知信號的頻率,實現了頻率測量電路的功能。

圖12 計算頻率模塊的仿真結果

4 仿真結果分析

本文所測量的諧振式紅外傳感器的固有頻率約為4.5MHz,因此頻率測試在4.5MHz左右展開。測試使用信號為正弦信號,初相位為零,采樣頻率為45MHz,進行1024點FFT變換;測試信號由MATLAB產生,并在MATLAB中轉化成IEEE-754標準的單精度浮點數,寫入文本文件作為電路設計輸入。使用Modelsim對不同頻率的輸入信號進行仿真,仿真的結果如表1所示。

表1 頻率測量電路仿真結果

從表中數據看出,仿真結果與實際信號頻率相一致。本論文的頻率測量是針對參考資料[5]的諧振式紅外傳感器固有頻率進行檢測,能夠在MHz量級分辨1Hz即可滿足要求。顯然,仿真結果達到此要求。

5 結論

本文在FPGA上綜合了FFT/apFFT綜合相位差校正法,在綜合算法過程中首先進行了全相位FFT變換,然后使用傳統(tǒng)FFT對全相位FFT的頻譜進行校正,校正后的頻譜可得到頻率值的精確估計。在FPGA硬件綜合過程中使用了Quartus Ⅱ14.1提供的IP核,優(yōu)化了設計,縮短了開發(fā)時間。FPGA開發(fā)是基于自頂而下、模塊化的理念,使用Modelsim軟件對設計的模塊電路進行自下而上、層次化遞加的功能仿真,最后對整個電路進行功能仿真,對仿真的結果分析可知,這種校正方法可以實現對諧振式紅外傳感器固有頻率的測量。

[1]陳麗鋒,孟瑞,馮希.頻率測量研究綜述[J].電力電子,2011(2):50-53.

[2]周新星,王典洪.窗函數用于頻譜分析的研究[J].軟件時空,2009,25(12-3):185.

[3]王兆華,黃翔東.數字信號全相位譜分析與濾波技術[M].北京:電子工業(yè)出版社,2009,63-69.

[4]黃翔東,王兆華.基于全相位頻譜分析的相位差校正法[J].電子與信息學報,2008,30(2):293-297.

[5]Xia Zhang,Dacheng Zhang.Thermal expansion mismatch resonant infrared sensor and array [J]. Optical Engineering,2015,54(8):087102.

[6]王兆華,侯正信,蘇飛.全相位FFT頻譜分析[J].通信學報,2003,24(11A):6-19.

[7]黃翔東.全相位數字信號處理[D]. 天津:天津大學,2006.

[8]劉東華.Altera系列FPGA芯片IP核詳解[M].北京:電子工業(yè)出版社,2014.

[9]任麗棉.基于全相位FFT的高精度頻率計系統(tǒng)研究[D].天津:天津大學,2009.

(責任編輯:宋金寶)

FrequencyEstimationBasedonFullPhaseFFTandItsImplementationonFPGA

SU Jun-ya,ZHANG Xia

(Faculty of Science and Technology,Communication University of China,Beijing 100024,China)

The signal cut off will cause a leakage of spectrum,resulting in frequency measurement deviation. Compared to the traditional FFT,all-phase FFT can inhibit the leakage of the spectrum. For a resonant infrared sensor in this paper,firstly,the full-phase FFT is performed for detection signal,and then conventional FFT can be used to correct the spectrum of the all-phase FFT to achieve the accurate estimation of frequency. This frequency measurement method is synthesized on the FPGA. Using the Verilog HDL language,a frequency measurement circuit is designed. Then,the frequency measurement circuit is simulated. By analyzing the simulation results,it is found that the method can distinguish the signal frequency of 1Hz around 4.5 MHz when single-precision floating-point is used to operation.

all-phase FFT;phase difference;FPGA;Modelsim simulation

TM935

A

1673-4793(2017)05-0050-07

2017-06-28

蘇俊亞(1988-),女(漢族),河北邯鄲人,中國傳媒大學碩士研究生.E-mail:sujunya@cuc.edu.cn

猜你喜歡
校正頻譜幅值
一種用于深空探測的Chirp變換頻譜分析儀設計與實現
劉光第《南旋記》校正
國學(2020年1期)2020-06-29 15:15:30
一種基于稀疏度估計的自適應壓縮頻譜感知算法
測控技術(2018年7期)2018-12-09 08:58:22
一類具有校正隔離率隨機SIQS模型的絕滅性與分布
機內校正
基于S變換的交流電網幅值檢測系統(tǒng)計算機仿真研究
電子制作(2017年7期)2017-06-05 09:36:13
正序電壓幅值檢測及諧波抑制的改進
認知無線電頻譜感知技術綜述
低壓電力線信道脈沖噪聲的幅值與寬度特征
電源技術(2015年5期)2015-08-22 11:18:30
基于零序電壓幅值增量的消弧線圈調諧新方法
電測與儀表(2015年7期)2015-04-09 11:40:10
平果县| 卢湾区| 平山县| 五华县| 昌乐县| 崇左市| 天柱县| 上蔡县| 祁门县| 雷波县| 昌黎县| 聊城市| 黄梅县| 望谟县| 汕尾市| 丽江市| 桃园市| 灌南县| 宜春市| 津市市| 蓬溪县| 石棉县| 延庆县| 琼中| 会理县| 宁乡县| 海安县| 湘阴县| 昌乐县| 平和县| 平遥县| 镇坪县| 勐海县| 克东县| 隆林| 团风县| 贵德县| 金山区| 成武县| 沅江市| 岑溪市|