文獻標識碼: A
復(fù)合頻率信號的頻譜分析在現(xiàn)代數(shù)據(jù)分析中起著重要作用。復(fù)合頻率信號的主要特點是:由有限個單頻信號線性疊加形成,背景噪聲較小(通常小于-20 dB),各分量之間存在頻譜干擾[1],一般儀器難以對其各個分量進行精密檢測。復(fù)合信號幅頻測試儀,在兼?zhèn)漕l譜分析儀功能的前提下,解決了其對于復(fù)合信號各頻率分量不能智能識別以及對信號幅頻測量的精度普遍不高的難題。本文結(jié)合SoPC在數(shù)字信號處理領(lǐng)域并行性、靈活性的優(yōu)勢[2],通過對包含兩個單頻分量的復(fù)合信號的幅頻測試,給出了一套基于SoPC的復(fù)合信號幅頻測試的解決方案,最終在Altera DE1開發(fā)平臺上驗證。
1 系統(tǒng)工作原理
復(fù)合信號幅頻測試系統(tǒng)是閉環(huán)反饋的測試系統(tǒng),通過多次采樣運算的方法來實現(xiàn)精確測量。其原理框架圖如圖1所示。
對采樣信號進行漢明窗加載處理,信號頻譜能量泄露的問題得到有效解決[3]。但是由于FFT本身點數(shù)的限制,存在著柵欄效應(yīng),即存在最小分辨頻率ΔF:
假設(shè)輸入信號是頻率為f0的正弦信號s(t),由于加入Hamming窗后,s(t)的頻譜序列主瓣滿足漢明窗頻譜函數(shù)W(ω)[4],W(ω)函數(shù)的極值點是真實的頻率點。假設(shè)真實極值點為k,設(shè)k向下取整點為FFT所得序列的極值點設(shè)為k′,則次極值點為k點向上取整點,設(shè)為k″。由此可得,極值點k的左右兩側(cè)的頻譜序列值之比為:
2 系統(tǒng)方案實現(xiàn)
本系統(tǒng)在SoPC中嵌入一個Nios II 軟核,用來進行系統(tǒng)的整體控制和部分數(shù)字信號處理任務(wù)。Nios II軟核選用全功能型CPU核,在100 MHz系統(tǒng)時鐘下,擁有最高101 DMIPS的運算性能。SoPC內(nèi)部框架圖如圖2所示。其中ADC采樣緩存組件和DDS復(fù)合信號重建組件為自定義組件。
2.1 ADC采樣緩存組件設(shè)計
在Nios II微處理器監(jiān)控下,ADC采樣緩存組件完成指定頻率下ADC采樣、緩存和漢明窗加載的功能,有效節(jié)約了Nios II CPU時間,提高了SoPC系統(tǒng)的數(shù)據(jù)處理性能。其內(nèi)部框圖如圖3所示。每采樣滿256個點后,ADC采樣緩存組件會向Nios II發(fā)出一次中斷,這時Nios II通過DMA組件進行數(shù)據(jù)的讀取。由于將512單元16 bit的SRAM分成2個256單元SRAM塊,所以ADC采樣數(shù)據(jù)的緩存與DMA組件數(shù)據(jù)的讀取互不干擾,可以同時進行[6]。
2.2 DDS復(fù)合信號重建組件設(shè)計
在外部DAC、有源低通濾波電路的配合下,DDS復(fù)合信號重建組件可以完成用戶指定頻率及幅度下的單頻信號或者包含兩個單頻分量的復(fù)合信號的生成,生成信號的頻率范圍為1 Hz~100 kHz,頻率分辨率小于1E-6,幅度步進1 mV。DDS復(fù)合信號重建組件生成復(fù)合頻率信號,其中主信號頻率為15 kHz,幅度為1 000 mV,次信號頻率為100 kHz,幅度為250 mV。
2.3 系統(tǒng)軟件設(shè)計
復(fù)合信號幅頻測試儀的軟件系統(tǒng)由Nios II下位機部分和VB上位機部分組成。本文只對本系統(tǒng)IQMath運算庫設(shè)計、復(fù)合信號處理算法等較為關(guān)鍵部分進行闡述。
2.3.1 基于Nios II 定點數(shù)軟核的IQMath運算庫設(shè)計
TI公司IQMath函數(shù)庫運用,使得該公司定點數(shù)DSP在浮點數(shù)運算上擁有了與浮點數(shù)DSP幾乎相同的運算效率[7]。與TI公司定點數(shù)DSP一樣,Nios II軟核擁有強大的定點數(shù)運算能力,包括單指令桶型移位寄存器、單指令進行32×32 bit乘除法得到32位結(jié)果、計算64位和128位乘積專用指令等功能。因此,本文專門為Nios II定點數(shù)軟核編寫了基于Nios II軟核的IQMath庫,通過定點數(shù)運算來等效浮點數(shù)運算,使得在現(xiàn)有Nios II的軟核上進行高效率、高實時性的DSP運算得以實現(xiàn)。目前已經(jīng)完成了基于Nios II軟核的IQMath庫的部分常用函數(shù)設(shè)計,如表1所示。
在全功能Nios II軟核(系統(tǒng)時鐘100 MHz)的模式下,通過基于Nios II軟核IQMath庫的運用,8196點的FFT的運算時間由原來傳統(tǒng)浮點型運算所需要的1.02 s變?yōu)榱爽F(xiàn)在模式下的75 ms,運算速度提高了13.6倍。本方法與目前常見的在Nios II軟核中嵌入自定義浮點數(shù)運算核(用戶自定義指令)相比,雖然運算的速度較后者略有下降,但是有效節(jié)約了硬件資源,同時軟件程序的可移植性、通用性得到提高。
2.3.2 復(fù)合信號處理算法
復(fù)合信號處理算法完成對采樣數(shù)據(jù)的分析處理,并且最終獲得主、次信號的頻率、幅度信息,其算法流程如圖4所示。在一些特殊情況下,對算法進行了專門處理,以提高系統(tǒng)性能。
(1)最大、最小頻率點處理
當復(fù)合信號中較高頻率分量與較低頻率分量的頻率比值大于兩個數(shù)量級時,頻譜序列中較小頻率分量趨向于0點并受到直流量等諸多因數(shù)的影響,進而導(dǎo)致對其測量精度的惡化。本系統(tǒng)采用了欠采樣的方法處理這種情況。根據(jù)采樣定理,只要采樣頻率fs為:
其中K為非負整數(shù),可以保證較高頻率分量位于頻譜序列的高頻π處,而對于低頻信號就可以通過增加K的值獲得足夠低的最小分辨頻率,進而實現(xiàn)對較小頻率分量的精確計算。
(2)最小頻率分辨率實現(xiàn)
由于主、次信號的頻率分辨需要至少2.5個最小分辨頻率的間隔,在首次250 kHz的定頻率采樣以后,系統(tǒng)將根據(jù)目前信號的測試數(shù)據(jù)降低再進行頻率采樣,一般定為大于較大頻率點2.5倍的ΔF最小整數(shù)倍數(shù),進而減少主信號對次信號的頻譜干擾,提高系統(tǒng)測量的精度值。
3 系統(tǒng)指標測試
在系統(tǒng)評測中,本系統(tǒng)測量信號反應(yīng)時間為1.5 s,最大頻率分辨范圍為10 Hz~100 kHz;主信號測量頻率平均誤差為2.1E-6,主信號測量幅度平均誤差為0.136%;次信號測量頻率平均誤差為4.7E-6,次信號測量幅度平均誤差為0.674%;在滿足系統(tǒng)要求精度的前提下,最小頻率分辨率<0.08%;生成指定正弦信號平均頻率誤差為1.6E-7,平均幅度誤差為0.34%。本系統(tǒng)與目前常見的AT5010頻譜分析儀相比,除了具備對于復(fù)合信號分辨的功能外,在頻率測量精度上也有著明顯的優(yōu)勢。
本文根據(jù)復(fù)合頻率信號的特點設(shè)計了一種基于SoPC的復(fù)合信號幅頻測試儀,實現(xiàn)在1.5 s內(nèi)對復(fù)合頻率信號中主次信號頻率、幅度信息的精確計算,以及用戶指定信號的生成。本文給出的基于Hamming窗頻譜比例查表法,可以有效處理FFT變換中出現(xiàn)的柵欄效應(yīng)這一技術(shù)難點;基于Nios II軟核的IQMath庫函數(shù)的開發(fā)實現(xiàn),有效提高了Nios II定點數(shù)軟核進行復(fù)雜運算的能力。本系統(tǒng)在Altera 公司的DE1開發(fā)板上實現(xiàn)。
參考文獻
[1] 丁康,張曉飛.頻譜校正理論的發(fā)展[J].振動工程學(xué)報,2000,13(1).
[2] 李蘭英.Nios II嵌入式軟核SoPC設(shè)計原理及應(yīng)用[M]. 北京:北京航空航天大學(xué)出版社,2006.
[3] LYONS R G.Understanding digital signal processing[M].北京:機械工業(yè)出版社,2005.
[4] 方體蓮,洪一.利用FFT校正兩個密集信號的頻率和相位[J].雷達科學(xué)與技術(shù),2005(6).
[5] 張松.基于FFT的正弦信號頻率估算新方法[J].大理學(xué)院學(xué)報,2009(8).
[6] Uwe Meyer-Baese.Digital signal processing with field programmable gate arrays[M].北京:清華大學(xué)出版社,2008.
[7] 蘇奎峰.TMS320X281x DSP原理及C程序開發(fā)[M].北京:北京航空航天出版社,2008.