《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計應(yīng)用 > 采用窗函數(shù)法進(jìn)行數(shù)字信號截短的優(yōu)化算法
采用窗函數(shù)法進(jìn)行數(shù)字信號截短的優(yōu)化算法
2015年電子技術(shù)應(yīng)用第12期
周冬躍1,林海全2,張洪林3,李學(xué)識4,黃繼才1
1.廣東工業(yè)大學(xué) 物理與光電工程學(xué)院,廣東 廣州510006;2.廣州致遠(yuǎn)電子股份有限公司,廣東 廣州510660; 3.華南理工大學(xué) 電子與信息學(xué)院,廣東 廣州510641;4.廣東工業(yè)大學(xué) 自動化學(xué)院,廣東 廣州510006
摘要: 對數(shù)字信號進(jìn)行有限點(diǎn)數(shù)的截短采樣時,通常會發(fā)生頻譜泄露。提出一種基于FPGA的矩形窗、海明窗、漢寧窗和布萊克曼窗四個窗函數(shù)的改進(jìn)型信號截短算法方案,并對其資源消耗和運(yùn)行速度進(jìn)行優(yōu)化,從而提高頻譜泄露的性能。為了減少系統(tǒng)資源消耗和提高精度,采用了資源共享技術(shù)、選擇合理的數(shù)據(jù)位寬以及為CORDIC模塊選擇合適的迭代次數(shù);為了優(yōu)化速度,采用了恰當(dāng)?shù)牧魉€技術(shù),從而較大提高了處理速度。仿真表明,優(yōu)化后的系統(tǒng)邏輯資源減少20%~51%,時序約束達(dá)到360 MHz,其中的布萊克曼窗對第一級旁瓣衰減達(dá)到59.3 dB。
中圖分類號: TP212
文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.2015.12.007

中文引用格式: 周冬躍,林海全,張洪林,等. 采用窗函數(shù)法進(jìn)行數(shù)字信號截短的優(yōu)化算法[J].電子技術(shù)應(yīng)用,2015,41(12):32-35.
英文引用格式: Zhou Dongyue,Lin Haiquan,Zhang Honglin,et al. Optimization algorithm for digital signals intercept with window function method[J].Application of Electronic Technique,2015,41(12):32-35.
Optimization algorithm for digital signals intercept with window function method
Zhou Dongyue1,Lin Haiquan2,Zhang Honglin3,Li Xueshi4,Huang Jicai1
1.School of Physics and Optoelectronic Engineering,Guangdong University of Technology,Guangzhou 510006,China; 2.Guangzhou Zhiyuan Electronic Limited by Share Ltd,Guangzhou 510660,China; 3.School of Electronic and Information Engineering, South China University of Technology,Guangzhou 510641,China; 4.School of Automation, Guangdong University of Technology, Guangzhou 510006,China
Abstract: Spectrum leakage usually occurs when signal-cutting digital signals. Window function can improve the spectral leakage characteristics of the signal-cutting signals. The improved scheme of window function is proposed about rectangular Window, Hamming Window, Hanning Window and Blackman Window based on FPGA. The four window functions are designed to optimize their resources comsume and running speed, thereby improving the performance of spectrum leakage. This method use a resource sharing technology, a reasonable choice of data widths and choose a suitable number of iterations for CORDIC module. In order to optimize the speed use the appropriate pipeline technology, which greatly improve the process speed performance. The simulation shows that the proposed optimization system works properly,and 20%~51% of logic resources of system decreases. Timing constraint in systems reached 360 MHz. The signal attenuation the first stage of Blackman window reached 59.3 dB.
Key words : window function;signals intercept;spectrum leakage;optimization algorithm

  

0 引言

    對一個時域信號進(jìn)行有限時間片段的分析時,如果對數(shù)字信號進(jìn)行直接截短,就會導(dǎo)致頻譜泄露,從而導(dǎo)致信號分析出現(xiàn)差錯,影響信號分析的精度,以至難以滿足應(yīng)用要求[1-3]。對此,國內(nèi)外學(xué)者提出了一系列改進(jìn)數(shù)字信號截短的方法。文獻(xiàn)[4-5]研究了頻譜泄露的原因以及加窗函數(shù)后頻譜泄露的特性。文獻(xiàn)[6]對海明窗(Hamming Window)、漢寧窗(Hanning Window)在信號截短中的時譜特性進(jìn)行比較分析。文獻(xiàn)[7]分析矩形窗(Rectangular Window)、海明窗、漢寧窗和布萊克曼窗(Blackman Window)對截短時域和空域信號產(chǎn)生的影響。然而,這些研究都局限在理論和仿真分析,其對應(yīng)的方案尚未結(jié)合FPGA硬件應(yīng)用需要。

    為了解決工業(yè)產(chǎn)品設(shè)計中的頻譜泄露問題,文中基于FPGA硬件系統(tǒng),對集成矩形窗、海明窗、漢寧窗和布萊克曼窗四個窗函數(shù)的系統(tǒng)進(jìn)行優(yōu)化設(shè)計,在頻譜泄露特性、速度和硬件資源等方面對現(xiàn)有的設(shè)計方案進(jìn)行了較大的優(yōu)化,從而提高了系統(tǒng)的綜合性能。

1 窗函數(shù)的設(shè)計

    該方法的基本思路是:首先利用坐標(biāo)旋轉(zhuǎn)數(shù)字計算(CORDIC)迭代方法產(chǎn)生余弦函數(shù),然后利用式(1)~式(4)分別所表示矩形窗、海明窗、漢寧窗和布萊克曼窗函數(shù)實現(xiàn)基于FPGA的矩形窗、海明窗、漢寧窗和布萊克曼窗的信號截短方案。

    qrs5-gs1-4.gif

    由式(1)~式(4)可見,為了實現(xiàn)這些窗函數(shù),首先要解決余弦函數(shù)中相位的求解,其次計算余弦函數(shù),最后完成加減運(yùn)算。其中,CORDIC迭代算法提供一種逼近的方法求得余弦值。 

    限制該算法中的旋轉(zhuǎn)相位θi,使得tanθi=2-i,即θi=tan-12-i。CORDIC迭代可用如式(5)所示的方程組表示:

    qrs5-gs5.gif

其中,di=+1,zi≥0;di=-1,zi<0,用于確定旋轉(zhuǎn)方向。依據(jù)迭代公式,設(shè)計硬件結(jié)構(gòu),框圖如圖1所示。

qrs5-t1.gif

    在圓周旋轉(zhuǎn)模式中,i取值越大輸出精度越高,令i=n時能滿足設(shè)計要求,那么經(jīng)過n次迭代后:

    qrs5-gs6.gif

    通過設(shè)置x0=K和y0=0就可以計算xn=cosz0和yn=sinz0了,其中,z0為輸入相位, K總=cosθ0×cosθ1×…×cosθn。

2 窗函數(shù)的優(yōu)化

2.1 CORDIC迭代參數(shù)優(yōu)化

    CORDIC是系統(tǒng)的核心模塊,由式(6)可知這是一個迭代的過程,為了使CORDIC算法模塊能夠辨認(rèn)并計算本設(shè)計的最小刻度相位,同時考慮節(jié)省迭代對應(yīng)的資源開銷,最后一次迭代所對應(yīng)的旋轉(zhuǎn)相位只要滿足小于該最小刻度相位即可。約定文中設(shè)計的系統(tǒng)采樣點(diǎn)數(shù)是256點(diǎn)至16 M點(diǎn)之間任意可選,當(dāng)信號長度N為16 M點(diǎn)時,可獲得本設(shè)計的最小刻度相位0.000 021 458°。經(jīng)過式(6)的計算可得,在i=22時,即第22次迭代所對應(yīng)的旋轉(zhuǎn)相位0.000 013 660°小于最小刻度相位,故將文中方案迭代次數(shù)確定為23。

    為了將最小刻度相位能夠用二進(jìn)制進(jìn)行較精確地表示,由相位因子qrs5-2.1-x1.gif可知二進(jìn)制位寬應(yīng)至少為25位。而CORDIC算法模塊的相位輸入范圍為0~π/2,且輸入相位是有符號數(shù)。在保證精度的情況下從節(jié)省資源的角度出發(fā),CORDIC算法模塊將相位位寬確定為24位,輸出余弦值的位寬也定為24位。

2.2 窗函數(shù)的結(jié)構(gòu)優(yōu)化

    進(jìn)一步分析式(1)~式(4)四個窗函數(shù)的表達(dá)式,發(fā)現(xiàn)這些表達(dá)式具有相同的結(jié)構(gòu),因此可以將它們合并為一條通用的表達(dá)式,如式(7)所示:

    qrs5-gs7.gif

    不同窗函數(shù)對應(yīng)不同的窗系數(shù)A、B、C,各窗函數(shù)對應(yīng)的具體系數(shù)由式(1)~式(4)可以得出,在設(shè)計時,這些窗系數(shù)可由一個兩位二進(jìn)制變量的值來確定。

    由于在任一時刻只有一個窗函數(shù)在工作。此特點(diǎn)滿足了資源共享的條件,因此可以對方案所需的資源進(jìn)行共享優(yōu)化,4種窗函數(shù)使用相同的CORDIC和乘法器,圖2(a)和圖2(b)分別為優(yōu)化前和優(yōu)化后的電路結(jié)構(gòu)。

qrs5-t2.gif

    從圖中可以看出,優(yōu)化后的結(jié)構(gòu)可以大大減少FPGA內(nèi)部的硬件消耗。

    表1為設(shè)計優(yōu)化前后在FPGA器件中布局布線所消耗的資源情況,可見優(yōu)化后設(shè)計所消耗的各類資源比優(yōu)化前減少了20%~51%。

qrs5-b1.gif

2.3 速度的優(yōu)化設(shè)計

    整個設(shè)計采取了恰當(dāng)?shù)牧魉€技術(shù)對速度進(jìn)行優(yōu)化,其基本思路是:在組合邏輯較長的路徑上插入幾級寄存器,從而大大提高了數(shù)據(jù)的吞吐量。經(jīng)過增加流水線級數(shù)的方法,時鐘周期比流水線設(shè)計前小,從而提高運(yùn)行速度。圖3為迭代過程流水線設(shè)計之前和之后的模塊圖。

qrs5-t3.gif

    對于圖3(a)所示的優(yōu)化前的方案,僅能通過30 MHz的時序約束。假設(shè)系統(tǒng)運(yùn)行于30 MHz的頻率下,數(shù)據(jù)從進(jìn)入系統(tǒng)到輸出結(jié)果需要19個時鐘周期,即633 ns。而對于圖3(b)所示優(yōu)化后方案,進(jìn)行流水線設(shè)計之后可以通過360 MHz的時序約束,數(shù)據(jù)從進(jìn)入系統(tǒng)到輸出結(jié)果需要42個時鐘周期,即117 ns。很明顯,經(jīng)過流水線設(shè)計后,系統(tǒng)的運(yùn)行速度大大提高。此外,流水線設(shè)計使系統(tǒng)每個時鐘處理一個數(shù)據(jù),不用等到一個數(shù)據(jù)完全輸出才進(jìn)行下一個數(shù)據(jù)的處理。

3 窗函數(shù)對抑制頻譜泄漏方案的實現(xiàn)和分析

3.1 系統(tǒng)整體實現(xiàn)

    文中窗函數(shù)采用點(diǎn)數(shù)可調(diào),令信號是長度256點(diǎn)到16 M點(diǎn)動態(tài)可調(diào)的窗函數(shù)控制器,即需要根據(jù)不同的信號長度為系統(tǒng)提供相應(yīng)的相位因子。圖4所示為窗函數(shù)計算過程的流程圖,相位生成器根據(jù)FPGA中的主控器MicroBlase傳來的相位因子和信號長度兩個參數(shù)產(chǎn)生相應(yīng)時刻的相位,然后CORDIC模塊根據(jù)該相位計算相應(yīng)的余弦值,接著根據(jù)當(dāng)前窗函數(shù)類型選擇相應(yīng)的窗系數(shù)并完成窗函數(shù)計算,最后利用窗函數(shù)結(jié)果對輸入信號進(jìn)行加窗處理。

qrs5-t4.gif

3.2 整體仿真效果和分析

    為了分析文中方案對頻譜泄露的特性,對文中的窗函數(shù)法采樣數(shù)據(jù)的頻譜特性進(jìn)行實驗和分析。首先對實驗信號y(t)=40×[sin(40πt)+sin(120πt)]進(jìn)行采樣,采樣頻率為1 000 Hz,采用點(diǎn)數(shù)共1 571點(diǎn),modelsim仿真軟件通過讀取該文件數(shù)據(jù)對文中所設(shè)計的系統(tǒng)進(jìn)行仿真并將仿真結(jié)果保存在文本文件中,采用仿真進(jìn)行頻譜分析,結(jié)果如圖5所示。

qrs5-t5.gif

    分析矩形窗、海明窗、漢寧窗和布萊克曼窗的4種情況中旁瓣衰減,它們的第一旁瓣相對于主瓣衰減和主瓣寬度如表2所示。

qrs5-b2.gif

    由頻譜圖可以看出,對信號加矩形窗(圖5(a))處理,有明顯的頻譜泄露;而對信號加海明窗(圖5(b))、漢寧窗(圖5(c))或布萊克曼窗(圖5(d))處理后,則頻譜泄露明顯減小。海明窗、漢寧窗和布萊克曼窗主瓣加寬,旁瓣則顯著減小。從減小泄漏觀點(diǎn)出發(fā),漢寧窗優(yōu)于矩形窗,布萊克曼窗最好,但主瓣加寬,相當(dāng)于頻率分辨力有所下降。相對而言海明窗加權(quán)的系數(shù)能使主瓣寬度更小。布萊克曼窗主瓣較寬,旁瓣衰減達(dá)到-59.3,頻譜泄露最小,幅值識別精度最高,但頻率識別精度最低??梢姡贔PGA的窗函數(shù)截短,相對于直接截短的方式,采用文中窗函數(shù)處理方案,信號的頻譜泄露特性得到較好改善。

4 結(jié)論

    文中所提出的方案對矩形窗、海明窗、漢寧窗和布萊克曼窗進(jìn)行了算法設(shè)計和方案優(yōu)化。為了優(yōu)化方案中的資源消耗和提高精度,采用了資源共享技術(shù)、選擇合理的數(shù)據(jù)位寬以及為CORDIC模塊選擇合適的迭代次數(shù);為了優(yōu)化設(shè)計的速度,采用了流水線技術(shù),從而較大提高處理的速度。最后,利用工具軟件modelsim對系統(tǒng)進(jìn)行了仿真,驗證了算法對應(yīng)的系統(tǒng)功能的正確性以及分析了系統(tǒng)的優(yōu)化性能。

參考文獻(xiàn)

[1] 張斌,孔敏,吳從兵.基于窗函數(shù)下頻譜泄露的研究[J].信息化縱橫,2009(11):10-12.

[2] 田園,周勖.窗函數(shù)在數(shù)字濾波器設(shè)計中的應(yīng)用[J].國外電子測量技術(shù),2013,32(4):25-27.

[3] 郭建濤,劉友安,玉林.基于窗函數(shù)設(shè)計的跳頻信號時域分析[J].計算機(jī)應(yīng)用,2011,31(9):2333-2335.

[4] XUE H,YANG R.Optimal interpolating windowed discrete Fourier transform algorithms for harmonic analysis in power systems[J].IEE Proceedings of Generation,Transmission and Distribution,2003,150(5):583-587.

[5] RELJIN I S,RELJIN B D.Extremely flat-top windows for harmonic analysis[J].IEEE Trans.on Instrumentation and Measurement.2007,56(3):1025-1041.

[6] DAVID C.Swanson.Precision spectral peak frequency measurement using a window leakage ratio function.Mechanical Systems and Signal Processing Volumes 54-55,March 2015:1-15.

[7] RAPUANO S,HARRIS F J.An introduction to FFT and time domain windows[J].IEEE instrumentation  & Measurcmcnt Magazine,2007,10(6):32-44.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。