《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > 軟件無線電虛擬頻譜儀的設(shè)計與實現(xiàn)
軟件無線電虛擬頻譜儀的設(shè)計與實現(xiàn)
2014年電子技術(shù)應(yīng)用第7期
劉陸華, 田增山, 胡 宏, 周 牧
重慶郵電大學(xué) 移動通信技術(shù)重慶市重點實驗室 無線定位與空間測量研究所,重慶400065
摘要: 針對移動通信信號的不同特征,基于軟件無線電架構(gòu)和虛擬儀表技術(shù),提出一套適合測試WCDMA、TD_SCDMA、GSM、LTE等系統(tǒng)特征的虛擬頻譜儀設(shè)計方案,并在Visual C++6.0平臺上進(jìn)行編程實現(xiàn)。通過配置模塊,可根據(jù)不同移動通信系統(tǒng)對RF前端工作參數(shù)進(jìn)行配置,利用PCIe接口實時接收基帶數(shù)據(jù)并在PC上進(jìn)行信號處理,實現(xiàn)對基帶原始信號的數(shù)據(jù)存儲和時域、頻域的波形顯示。經(jīng)真實的數(shù)據(jù)處理和顯示,結(jié)果表明,本設(shè)計具有與真實頻譜儀一致的性能,并且使用簡單,可移植性強(qiáng),靈活度高。
中圖分類號: TP319
文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2014)07-0119-03
Design and implementation of virtual spectrum instrument based on software radio
Liu Luhua, Tian Zengshan, Hu Hong, Zhou Mu
Institute of Wireless Location and Space Measurement, Chongqing Key Lab of Mobile Communications Technology, Chongqing University of Posts and Telecommunications, Chongqing 400065, China
Abstract: Based on software radio framework and virtual instrument technology, this paper proposes a design of software radio-aided virtual spectrum instrument for different mobile communication systems with variable characteristic and uses the Visual C++6.0 platform for the programming. The front-end of RF parameters are configured by different mobile communication system and the PCIe interface software is used to receive the real-time data. Then, the baseband data is considered for the FFT processing and spectral analysis. The design realizes data storage and the waveform display of the baseband signal in time and frequency domain. It has a consistent performance with real spectrometer, and is easy to handle and has good portability and flexibility.
Key words : software radio; virtual spectrum instrument; graphic display; Visual C++6.0

       軟件無線電和虛擬儀表技術(shù)的出現(xiàn)使得多種儀器平臺虛擬化成為現(xiàn)實,利用計算機(jī)技術(shù),結(jié)合軟件的強(qiáng)大功能為軟件無線電和虛擬儀表提供了廣闊前景[1]。在軟件無線電系統(tǒng)開發(fā)中,對基帶數(shù)據(jù)進(jìn)行實時信號分析和處理都采用了虛擬儀表技術(shù)。在發(fā)達(dá)國家虛擬儀表技術(shù)非常先進(jìn),虛擬儀表產(chǎn)品廣泛地應(yīng)用在工業(yè)控制、通信、自動化等各種領(lǐng)域,擁有成熟的商業(yè)軟件產(chǎn)品,其中最著名的是NI公司的LabVIEW平臺[2];但是在國內(nèi),還處于傳統(tǒng)測試儀器與計算機(jī)脫離的狀態(tài),投入研究和使用的虛擬儀表主要分布在高校并且都依托專用平臺LabVIEW。參考文獻(xiàn)[1-5]也都采用LabVIEW來實現(xiàn)各自的設(shè)計。但是它只能在特定的使用環(huán)境中運行,可移植性很差,無法與其他設(shè)備相嵌[3-4]。

        本文針對軟件無線電的基帶信號處理部分,結(jié)合虛擬儀表技術(shù),在通用平臺VC++6.0上實現(xiàn)了專門針對無線通信信號的虛擬頻譜儀,為軟件無線電的測量提供了強(qiáng)大的軟件平臺支持。與真實頻譜儀相比,本設(shè)計的虛擬頻譜儀操作簡單易學(xué),且功能可以根據(jù)用戶需求進(jìn)行擴(kuò)展,靈活性很強(qiáng)。

1 虛擬頻譜儀設(shè)計

1.1 軟件無線電虛擬頻譜儀框架

        軟件無線電虛擬頻譜儀框架結(jié)構(gòu)如圖1所示。軟件無線電體系結(jié)構(gòu)主要劃分為射頻前端(含天線)、高速模數(shù)/數(shù)模轉(zhuǎn)換器以及數(shù)字信號處理單元[5]三大部分。(1)射頻(RF)是軟件無線電不可替代的硬件入口,主要功能是完成對空中信號的獲取,以及信號的放大、濾波和混頻;(2)中頻主要實現(xiàn)對模擬信號與數(shù)字信號的轉(zhuǎn)換、數(shù)字信號的預(yù)處理,以及完成中頻與基帶的數(shù)據(jù)交互;(3)數(shù)字信號處理單元主要完成對信號的接收、分析和處理。在信號分析處理中,分析儀器是不可或缺的設(shè)備,而傳統(tǒng)的儀器儀表功能固定,價格昂貴,因而在軟件無線電系統(tǒng)中,對數(shù)字處理單元部分進(jìn)行軟件編程實現(xiàn)是本文設(shè)計的核心內(nèi)容。

1.2 軟件功能模塊設(shè)計

        根據(jù)軟件無線電虛擬頻譜儀架構(gòu),本文的虛擬頻譜儀軟件功能模塊設(shè)計如圖2所示。

        數(shù)據(jù)輸入部分分為PCIe輸入和文件輸入兩種方式。數(shù)據(jù)存儲部分負(fù)責(zé)對數(shù)據(jù)進(jìn)行存儲操作,以.txt格式將數(shù)據(jù)保存到文本中。命令控制部分負(fù)責(zé)對軟件無線電系統(tǒng)前端進(jìn)行控制。數(shù)據(jù)處理及分析部分包括窗函數(shù)選擇和FFT變換。交互界面部分模仿真實儀器的工作面板,其功能包括:提供用戶直觀的圖形顯示;在顯示窗口中顯示信號的參數(shù)信息,如幅值、頻率、分辨率等;進(jìn)行參數(shù)設(shè)置以及圖形顯示變換等。

2 虛擬頻譜儀實現(xiàn)

        根據(jù)虛擬頻譜儀的軟件功能設(shè)計,具體的實現(xiàn)過程如下所述:各模塊經(jīng)過系統(tǒng)初始化后,開始根據(jù)不同數(shù)據(jù)輸入方式分別進(jìn)行處理,并顯示波形。

2.1 系統(tǒng)初始化

        虛擬頻譜儀軟件通過窗口分割界面,設(shè)計了3個視圖窗口:波形顯示窗口、頻譜顯示窗口和操作窗口。為了能方便地改變波形頻譜的顯示方式,在軟件界面中添加了一個工具條。程序中菜單頁面主要分為菜單欄上的設(shè)置按鈕加載和波形、頻譜視圖中響應(yīng)鼠標(biāo)右擊的頁面加載。

2.2 命令控制

        命令控制的主要目的是保證FPGA與上位機(jī)的實時通信。本軟件采用網(wǎng)口通信方式,以實現(xiàn)FPGA與上位機(jī)的交互和命令控制。

        通過系統(tǒng)初始化、參數(shù)設(shè)置、PCIe初始化等步驟后,點擊操作視圖上的“Connection”按鈕,在消息響應(yīng)函數(shù)中進(jìn)行套接字的初始化,連接FPGA服務(wù)器端。首先調(diào)用函數(shù)socket()創(chuàng)建TCP套接字,并設(shè)置地址結(jié)構(gòu)體SOCKADDR_IN,其中結(jié)構(gòu)體成員變量中需要設(shè)置服務(wù)器端的IP地址和交互的端口號。然后再調(diào)用connect函數(shù)請求鏈接。當(dāng)成功鏈接到FPGA后,程序中調(diào)用SetTimer函數(shù)開啟定時器,系統(tǒng)會每隔一定時間發(fā)送WM_TIMER消息,在消息響應(yīng)函數(shù)OnTimer中進(jìn)行數(shù)據(jù)的發(fā)送與接收。

2.3 數(shù)據(jù)接收

        數(shù)據(jù)接收過程主要包括參數(shù)設(shè)置、數(shù)據(jù)接收方式選擇以及數(shù)據(jù)提取。圖3為數(shù)據(jù)接收流程圖。

        由于串口、網(wǎng)口、USB等接口無法滿足移動信號的高速率傳輸要求,故本文采用PCIe接口對數(shù)據(jù)進(jìn)行接收。其中,數(shù)據(jù)接收采用PCIe總線傳送,在參數(shù)配置完成后,首先對PCIe設(shè)備進(jìn)行初始化,成功打開PCIe設(shè)備后再準(zhǔn)備數(shù)據(jù)接收。在FPGA端,信號經(jīng)過數(shù)字下變頻后分為I、Q兩路信號。此外,根據(jù)單個數(shù)據(jù)的位寬為16 bit,定義了short型變量real和image來分別提取I路和Q路數(shù)據(jù)。然后,根據(jù)上位機(jī)命令控制接收相應(yīng)的數(shù)據(jù),并對其進(jìn)行處理與分析,以最終實現(xiàn)對時域和頻域波形圖的顯示。

2.4 數(shù)據(jù)存儲

        數(shù)據(jù)存儲也是虛擬頻譜儀軟件的主要功能之一,主要用于保存用戶接收到的有用數(shù)據(jù),并為后續(xù)工作提供實時數(shù)據(jù)源,且對研究無線通信信號的基帶數(shù)據(jù)特征具有很大幫助。

2.5 數(shù)據(jù)處理與分析

        該模塊的主要功能是對軟件輸入信號進(jìn)行數(shù)據(jù)處理與相應(yīng)分析。該軟件目前采用了FFT信號處理方式,并同時使用加窗函數(shù)和重疊分段FFT優(yōu)化頻譜顯示效果。此項功能主要在頻譜視圖類中處理實現(xiàn),此方法在對實時數(shù)據(jù)進(jìn)行頻譜分析時具有比較明顯的改善效果。而窗函數(shù)的設(shè)置選擇項進(jìn)一步優(yōu)化了頻譜圖。程序中主要加入了常用的矩形窗、三角窗、海明窗3個窗函數(shù)供用戶選擇。

2.6 圖形顯示

        圖形顯示包括時域與頻域波形顯示。時域波形主要在具有示波器功能的CWaveformView類中實現(xiàn);頻域的頻譜圖則在CFreSpectrumView類中進(jìn)行處理。

        圖形顯示的位置由視圖坐標(biāo)系中的坐標(biāo)值決定。為了能夠正確地將波形繪制在視圖中的網(wǎng)格坐標(biāo)內(nèi),需要把波形數(shù)據(jù)值轉(zhuǎn)化為視圖坐標(biāo)值,如圖4所示。

        在圖4中,外方框區(qū)域為視圖區(qū)域,左上角為視圖區(qū)域的起始點(0,0),內(nèi)方框為繪制的網(wǎng)格區(qū)域,左上角的視圖坐標(biāo)起始點值為(lefttop_x,lefttop_y),右下角的視圖坐標(biāo)值為(rightbottom_x, rightbottom_y),且視圖坐標(biāo)值沿X軸、Y軸方向增大。程序中,在頻譜顯示時只顯示前N/2個點。

3 測試結(jié)果及分析

        本文數(shù)據(jù)測試過程在軟件無線電硬件測試平臺上完成。 利用SMJ100A信號發(fā)生器生成了一個頻率為100 kHz的正弦信號,并以此為虛擬儀表軟件的輸入數(shù)據(jù)。然后用DS1102E示波器、FSL頻譜分析儀進(jìn)行顯示,并與軟件產(chǎn)生的波形圖、頻譜圖進(jìn)行對比,如圖5所示。其中圖5(a)、圖5(c)分別為真實儀器的時域與頻域顯示,圖5(b)、圖5(d)為本設(shè)計實現(xiàn)軟件對應(yīng)的顯示圖。

        圖6為參與測試的WCDMA信號在真實頻譜儀上的顯示結(jié)果。通過菜單欄下的設(shè)置功能選擇文件輸入項,顯示保存的WCDMA文本數(shù)據(jù)如圖7(a)所示;通過動態(tài)設(shè)置X、Y坐標(biāo), 對信號的局部波形進(jìn)行放大,如圖7(b)所示。圖7(a)的時域參數(shù)顯示結(jié)果為min=-0.36 mV, max=21.29 mV;頻域參數(shù)顯示結(jié)果為min=-33.55 dBm, max=20.69 dBm,頻率分辨率為7 500.00 Hz。而圖8(b)的時域參數(shù)顯示結(jié)果為min=0.80 mV,max=19.78 mV;頻域顯示結(jié)果為min=-33.55 dBm,max=20.69 dBm,頻率分辨率為7 500.00 Hz。

        圖8給出了通過PCIe和網(wǎng)口配置(傳送采樣率為5.12 MHz,F(xiàn)FT點數(shù)為16 384,設(shè)置無重復(fù)點,且選擇矩形窗)的TD-SCDMA基帶數(shù)據(jù)的波形頻譜圖。

        在圖5中,圖5(a)為示波器顯示結(jié)果,其峰值約為40 mV,圖5(b)顯示結(jié)果峰值為43.20 mV;圖5(c)為示波器顯示結(jié)果,其峰值約為40 mV,圖5(d)顯示結(jié)果峰值為43.20 mV;圖5(c)顯示結(jié)果可知其信號頻率為100 kHz,在圖5(d)中顯示的結(jié)果為100 000.29 Hz。對比以上結(jié)果可知,本軟件測試精度約為±0.30 dB,完全符合頻譜儀的性能指標(biāo)。

        當(dāng)為文本輸入時,對比圖6和圖7可知,本軟件可以正確顯示W(wǎng)CDMA信號,且能觀測其局部特征;當(dāng)為PCIe輸入時,由圖8的顯示結(jié)果可知,其波形顯示結(jié)果與TD-SCDMA信號本身特征一致。綜合說明,本文設(shè)計的虛擬頻譜儀軟件能夠正確、穩(wěn)定地顯示通信信號的波形。

        與真實的頻譜儀相比,本設(shè)計的虛擬頻譜儀不僅能夠正確快速地顯示常用簡單波形,而且可以準(zhǔn)確地接收和測量通信信號,測量精度為0.01 dB。與真實儀器相比,能夠直接接收實時數(shù)據(jù),不需要中間處理過程就能顯示復(fù)雜的通信信號,大大減少了工程工作量。

        本文設(shè)計并實現(xiàn)了一種基于軟件無線電的虛擬頻譜儀軟件,實現(xiàn)了對文件的讀取與數(shù)據(jù)存儲功能并對它們進(jìn)行了頻譜分析。此外,通過對網(wǎng)口傳遞參數(shù)配置,利用PCIe接口對實時數(shù)據(jù)進(jìn)行接收,并完成對波形、頻譜的正確、穩(wěn)定顯示。測試結(jié)果表明,該軟件可以有效滿足軟件無線電在數(shù)字信號處理與分析模塊中的功能需求,并且在課題要求范圍內(nèi)符合各個不同無線通信系統(tǒng)的實時接收數(shù)據(jù)需求,能夠完成測試要求。

參考文獻(xiàn)

[1] 張勇, 董浩斌. 基于STM32和LabVIEW的地震數(shù)據(jù)采集卡的設(shè)計[J].電子技術(shù)應(yīng)用, 2012,38(10):72-74.

[2] 馬志飛, 張亞, 李波, 等. SLD 光源可靠性試驗數(shù)據(jù)采集系統(tǒng)設(shè)計[J]. 電子技術(shù)應(yīng)用, 2013, 39(9): 96-98.

[3] 陳明星, 朱靈, 張龍,等. 基于LabVIEW的光纖傅里葉變換光譜儀數(shù)據(jù)處理技術(shù)[J]. 儀器儀表學(xué)報, 2010, 31(3):488-492.

[4] 程乃平, 席有猷, 趙陽. 基于Labwindows/CVI的虛擬頻譜分析儀設(shè)計[J]. 電子測量技術(shù), 2009, 32(7):109-111.

[5] 何樂生.基于DDS算法的12導(dǎo)聯(lián)心電信號發(fā)生器設(shè)計[J].儀器儀表學(xué)報, 2010, 31(2):275-279. 

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