聶夢(mèng)雅
摘? ?要:為了提高認(rèn)知無(wú)線電的感知速度,實(shí)現(xiàn)頻譜感知的及時(shí)性,文章提出利用FPGA極強(qiáng)的實(shí)時(shí)性和并行處理能力對(duì)接收到的數(shù)據(jù)在融合之前先進(jìn)行快速處理,主要包括A/D轉(zhuǎn)換器、數(shù)控振蕩器、抽取器、高速數(shù)字濾波器等,最大限度地提高了數(shù)據(jù)處理的速度。
關(guān)鍵詞:認(rèn)知無(wú)線電;現(xiàn)場(chǎng)可編程邏輯門(mén)陣列;多速率;下變頻
在移動(dòng)通信迅速發(fā)展的今天,人們對(duì)頻譜資源有越來(lái)越大的需求。由于固定的頻譜利用率一直非常低,Mitola Joseph博士[1]提出了認(rèn)知無(wú)線電這一解決問(wèn)題的有效技術(shù)手段。
認(rèn)知無(wú)線電主要是指無(wú)線終端設(shè)備具有了一定的智能或認(rèn)知能力,能夠通過(guò)檢測(cè)、分析、學(xué)習(xí)、推理和規(guī)劃周?chē)鸁o(wú)線環(huán)境的當(dāng)前狀態(tài)以及歷史情況,利用對(duì)應(yīng)的結(jié)果來(lái)調(diào)整自己的傳輸參數(shù),使用最合適的頻譜資源完成無(wú)線傳輸。這就使得在智能檢測(cè)的最初環(huán)節(jié)要盡可能地準(zhǔn)確和盡可能地快,一旦數(shù)據(jù)被采集,那么數(shù)據(jù)處理的速度就會(huì)成為決勝的關(guān)鍵。本文使用了現(xiàn)場(chǎng)可編程邏輯門(mén)陣列(Field Programmable Gate Array,F(xiàn)PGA)對(duì)采集到的數(shù)據(jù)首先進(jìn)行預(yù)處理,然后在送往融合準(zhǔn)則[2]處,減少了融合時(shí)數(shù)據(jù)量太大導(dǎo)致的延時(shí)。
1? ? 多速率接收系統(tǒng)的基本結(jié)構(gòu)
多速率[3]直接定義為對(duì)采樣后的離散序列進(jìn)行重新采樣,但是接收器接收到的信號(hào)為高頻信號(hào),所以數(shù)據(jù)處理之前,需要使用混頻的方式把高頻信號(hào)降速到中頻上來(lái)。當(dāng)轉(zhuǎn)換完成后,對(duì)其進(jìn)行抽取和濾波。
1.1? 混頻器的實(shí)現(xiàn)
據(jù)上所述,把射頻信號(hào)降到中頻上來(lái)主要使用到了混頻器,而混頻器的主要作用就是把射頻信號(hào)疊加到本振信號(hào)上,所以本振信號(hào)的產(chǎn)生就是混頻的關(guān)鍵,本文采用的是坐標(biāo)旋轉(zhuǎn)數(shù)字計(jì)算方法(Coordinate Rotation Digital Computer,CORDIC)。
本文CORDIC采用的是展開(kāi)流水結(jié)構(gòu),框架如圖1所示。它是以占用較多的硬件資源為前提,對(duì)原有的展開(kāi)結(jié)構(gòu)增加流水寄存器,有效縮短關(guān)鍵路徑,使得關(guān)鍵路徑的長(zhǎng)度由緊縮結(jié)構(gòu)[4]的N個(gè)CORDIC處理單元變?yōu)?個(gè)CORDIC處理單元,在最大程度上提高了系統(tǒng)的處理速度。
1.2? 整倍抽取濾波器
下采樣[5]的主要目的是降低信號(hào)的采樣頻率,主要步驟叫作抽取,主要方法是把原來(lái)的采樣數(shù)據(jù)每隔M-1個(gè)取出1個(gè),形成新的采樣序列。把M叫作抽取因子,要求其取值為大于1的整數(shù)。為了實(shí)現(xiàn)這一過(guò)程,采用M﹣抽取器,如圖2所示,其中,輸入采樣率為f=1/T,輸出采樣率為f=1/(MT)。
當(dāng)輸入信號(hào)x(n)為非帶限信號(hào)時(shí),被抽取后就容易發(fā)生信號(hào)頻譜混疊,使得原始序列x(n)不能從疊加信號(hào)YD(eiω)中恢復(fù)出來(lái)。所以,為避免這種情況的發(fā)生,信號(hào)x(n)的帶寬須設(shè)定在[-π/M,π/M]范圍內(nèi)。所以通常在抽取之前對(duì)其低通濾波以達(dá)到抗混疊的目的。根據(jù)抽取恒等式3:信號(hào)先通過(guò)濾波器H(zM)再經(jīng)過(guò)M抽取與先進(jìn)行M抽取再通過(guò)濾波器H(zM)是等效的。
1.2.1? CIC抽取濾波器
級(jí)聯(lián)積分梳狀(Cascade Integrator Comb,CIC)濾波器[6],首先,使用積分器;其次,使用梳狀濾波器。CIC由這兩部分串聯(lián)構(gòu)成,如圖3所示。CIC濾波器作為典型的低通濾波器,其具有以下特征:(1)濾波器系數(shù)均為1,在實(shí)際設(shè)計(jì)時(shí)不用對(duì)系數(shù)進(jìn)行存儲(chǔ),很大程度上節(jié)省了存儲(chǔ)單元,使得濾波運(yùn)算用不到乘法器,僅需要加法器和累加器。(2)從結(jié)構(gòu)規(guī)則來(lái)說(shuō),可靈活設(shè)置抽取因子而不影響整體結(jié)構(gòu)。
例如,當(dāng)級(jí)數(shù)N=1時(shí),積分器使用了反饋系數(shù)為1的單極點(diǎn)無(wú)限脈沖響應(yīng)濾波器(Infinite Impulse Response,IIR)濾波器,其傳輸函數(shù)如下:
梳狀器是一個(gè)對(duì)稱(chēng)的有限脈沖響應(yīng)濾波器(Finite Impulse Response,F(xiàn)IR)濾波器,其傳輸函數(shù)如下:
那么,單級(jí)CIC濾波器的傳輸函數(shù)如下:
其傳遞函數(shù)的幅頻響應(yīng)為:
1.2.2? FIR半帶抽取濾波器
當(dāng)FIR濾波器[7]在多速率的高速信號(hào)處理時(shí),如果實(shí)際中階數(shù)和計(jì)算量很大,就會(huì)使得設(shè)計(jì)和實(shí)現(xiàn)濾波器變得更加困難。在實(shí)際應(yīng)用中,通常先對(duì)輸入信號(hào)進(jìn)行濾波和提取,并可多次實(shí)現(xiàn),因此,每次都降低了采樣率。同時(shí),降低了各階段抗混疊濾波器的要求。半帶濾波器作為一種高速有效的濾波器,特別是對(duì)實(shí)現(xiàn)數(shù)字下變頻有著非常好的作用,其簡(jiǎn)化的頻率特性如圖4所示。
半帶濾波器阻帶與通帶是相對(duì)稱(chēng)的,這表示阻帶波動(dòng)是等于通帶波動(dòng)的;阻帶和通帶的邊頻是關(guān)于fs/4對(duì)稱(chēng)的,有Fp+Fs=fs/2。為了保證FIR濾波器的線性相位要求其系數(shù)必須具有偶對(duì)稱(chēng)性。即要求h(n)=h(N-1-n),N表示階數(shù),設(shè)為奇數(shù)。另外,除中心點(diǎn)系數(shù)n=(N-1)/2+1外,所有的h(n)的偶數(shù)系數(shù)均必須為0。根據(jù)半帶濾波器的特性:一半系數(shù)為0以及FIR濾波器的對(duì)稱(chēng)性,使得濾波器的乘法倍數(shù)為1/4,加法倍數(shù)為1/2,同時(shí),存儲(chǔ)系數(shù)的存儲(chǔ)器也變成1/2,使得數(shù)字信號(hào)的實(shí)時(shí)處理具有更高的效率。
1.3? 濾波器組
濾波器組表示的是一組濾波器,它們使用同一個(gè)輸入,然后得到一組輸出,稱(chēng)為分析濾波器。當(dāng)信號(hào)x(n)經(jīng)過(guò)分析濾波后,成為N個(gè)子帶信號(hào)。每個(gè)子帶信號(hào)的帶寬是原來(lái)的1/N,因此,信號(hào)速率降低為原來(lái)的1/N。實(shí)際應(yīng)用中,通過(guò)對(duì)分析濾波器組的研究,增加一個(gè)N倍抽取濾波器,可達(dá)到這一目的。分析濾波器的作用就是將原始信號(hào)分成若干個(gè)子帶,同時(shí),在抽取前完成抗混疊濾波。
1.4? FIR濾波器
在抽取濾波完成之后,還需要使用兩個(gè)固定系數(shù)的濾波器進(jìn)行常規(guī)的濾波。本文主要使用FIR濾波器,優(yōu)點(diǎn)是精確和嚴(yán)格的相位特性。由有限個(gè)采樣值組成,在每個(gè)采樣時(shí)刻完成有限個(gè)卷積運(yùn)算,使得其幅頻特性不固定,可以滿足各種需求。
本文FIR低通濾波器采用窗函數(shù)法設(shè)計(jì),其參數(shù)如下:階數(shù)為60,通帶帶寬為0.35,采樣率為50 KHz,帶通帶寬為10 KHz,阻帶帶寬為12.5 KHz。此濾波器主要采用并行結(jié)構(gòu),可以在一個(gè)周期內(nèi)完成一次濾波,但由于占用大量的乘累加器,使得延時(shí)較大,要求工作頻率較低,所以在完成抽取后進(jìn)行濾波比較合適。為了提高運(yùn)算速度,也可以把寄存器加進(jìn)去,形成流水線結(jié)構(gòu),并復(fù)用乘加器來(lái)節(jié)省資源。
2? ? 下變頻的實(shí)現(xiàn)結(jié)果與分析
本文主要是用Verilog語(yǔ)言編程[8],Quartus Ⅱ軟件進(jìn)行仿真,并且使用Matlab軟件對(duì)仿真結(jié)果進(jìn)行比對(duì)并顯示,使得結(jié)果看起來(lái)更加清晰。
2.1? 混頻器的實(shí)現(xiàn)
時(shí)鐘頻率用clk表示;使能分別用rst_n和ena表示;頻率控制字用data表示;初始相位用phase表示,其值設(shè)為0;輸出為sin_out和cos_out,如圖5所示。
2.2? 抽取濾波器的實(shí)現(xiàn)
根據(jù)上述方法,為了盡可能地增加數(shù)據(jù)處理的速度,并且保證保留原始信息,本文采用4倍抽取。其中,2倍抽取來(lái)自CIC濾波器,為了改善單級(jí)濾波器的性能,本文使用了三階濾波器,其結(jié)果如圖6所示。
另外,2倍抽取來(lái)自半帶抽取濾波器,其主要參數(shù)為階數(shù):8、位寬為16。要求濾波器系數(shù)b=[0,-0.109 5,0,0.319 4, 0.500 0, 0.319 4,0,-0.109 5,0],由于硬件描述語(yǔ)言不能處理小數(shù),所以本節(jié)進(jìn)行16 bit的量化,系數(shù)b=[0,-3 588,0,10 466, 16 384,10 466, 0,-3 588,0],半帶抽取濾波器的功能仿真如圖7所示。
2.3? 綜合實(shí)現(xiàn)
本文使用減幅信號(hào)作為輸入,首先,使用濾波器組中的分析濾波器中的高通和低通濾波器得到兩個(gè)子帶信號(hào);其次,對(duì)子帶信號(hào)進(jìn)行CIC抽取和半帶抽取;最后,通過(guò)一個(gè)60階FIR低通濾波器進(jìn)行綜合仿真。為了得到更加簡(jiǎn)潔的結(jié)果,把數(shù)據(jù)導(dǎo)入Matlab,得到結(jié)果如圖8所示。
3? ? 結(jié)語(yǔ)
本文主要使用FPGA和Matlab兩個(gè)軟件,對(duì)接收到的頻譜數(shù)據(jù)進(jìn)行下變頻處理,使得這些數(shù)據(jù)能夠在保持原有信號(hào)特征的基礎(chǔ)上,最大限度地減少數(shù)據(jù)量,使得計(jì)算變得更加迅速,能夠滿足實(shí)時(shí)處理的要求。
[參考文獻(xiàn)]
[1]MITOLA J.Cognitive radio:an integrated agent architecture for software defined radios[D].Stockholm:Royal Institute of Technology(KTH),2002.
[2]溫志剛.認(rèn)知無(wú)線電頻譜檢測(cè)理論與實(shí)踐[M].北京:北京郵電大學(xué)出版社,2011.
[3]高亞軍.基于FPGA的數(shù)字信號(hào)處理[M].北京:電子工業(yè)出版社,2012.
[4]田耘,徐文波,張延偉,等.無(wú)線通信FPGA設(shè)計(jì)[M].北京:電子工業(yè)出版社,2008.
[5]謝海霞,孫志雄.多速率信號(hào)處理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電子設(shè)計(jì)工程,2018(5):132-137.
[6]劉興舉.基于FPGA的軟件無(wú)線電上下變頻技術(shù)的設(shè)計(jì)研究[J].無(wú)線互聯(lián)科技,2015(5):16-17.
[7]SHEHEE,CROWDER,RUDISILL.Determination of filter pore size for use in HB line phase II production of plutonium Oxide[J].Separation Science and Technology,2015(17):2798-2802.
[8]夏宇聞.Verilog數(shù)字系統(tǒng)設(shè)計(jì)教程[M].北京:北京航天航空大學(xué)出版社,2008.