文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2014)09-0068-04
無(wú)線(xiàn)電頻譜管理是一個(gè)國(guó)家的頻譜主管部門(mén)根據(jù)法律法規(guī)的授權(quán),,按照國(guó)際電信聯(lián)盟(ITU)的頻譜劃分原則,,制定本國(guó)頻譜劃分、使用和分配政策,。在頻譜的劃分和使用中,,如何科學(xué)有效地利用無(wú)線(xiàn)電頻譜資源,滿(mǎn)足經(jīng)濟(jì)和社會(huì)發(fā)展的需要是一個(gè)重要課題,。
傳統(tǒng)的無(wú)線(xiàn)電頻譜監(jiān)測(cè)設(shè)備可以包括短波和超短波頻段,,有龐大的監(jiān)測(cè)、測(cè)向天線(xiàn)陣,監(jiān)測(cè)覆蓋范圍廣,,這樣的大型監(jiān)測(cè)站在傳統(tǒng)的無(wú)線(xiàn)電頻譜管理模式中發(fā)揮了重大作用,。但隨著經(jīng)濟(jì)社會(huì)的發(fā)展和無(wú)線(xiàn)電技術(shù)的進(jìn)步,頻譜的需求程度日益增加,,具體表現(xiàn)在以下幾個(gè)方面:工作頻段越來(lái)越高,,單位面積內(nèi)頻譜使用密度越來(lái)越高,單個(gè)信道占用的頻譜帶寬越來(lái)越寬[1],。這些需求對(duì)無(wú)線(xiàn)電頻譜監(jiān)測(cè)提出了新的挑戰(zhàn),,參考文獻(xiàn)[2]中針對(duì)這些問(wèn)題,提出了一種網(wǎng)絡(luò)化小型頻譜監(jiān)測(cè)系統(tǒng)的概念,。這種網(wǎng)絡(luò)化的小型站架設(shè)環(huán)境寬松,,架設(shè)方便,還可以大大節(jié)約單站的建設(shè)成本,。但監(jiān)測(cè)網(wǎng)絡(luò)化分布會(huì)增加小型監(jiān)測(cè)站的數(shù)量,,從而增加了成本。該文獻(xiàn)還指出,,小型監(jiān)測(cè)站需要采用雙信道接收,,即一個(gè)站點(diǎn)需要配置兩個(gè)以上獨(dú)立接收機(jī),一個(gè)完成常規(guī)任務(wù),,一個(gè)完成特別任務(wù),。這樣架設(shè)雖然帶來(lái)了不少方便,但無(wú)疑增加了監(jiān)測(cè)站的建設(shè)成本,。此外,,在頻譜監(jiān)測(cè)中,有的任務(wù)并不需要一直執(zhí)行,,尤其是特別任務(wù),,接收機(jī)便出現(xiàn)閑置的情況,造成資源浪費(fèi),。
本文基于這一應(yīng)用背景,,提出了一種能夠支持多客戶(hù)端同時(shí)進(jìn)行頻譜監(jiān)測(cè)的流水并行處理架構(gòu)。該架構(gòu)可以滿(mǎn)足多個(gè)頻譜監(jiān)測(cè)任務(wù)的同時(shí)執(zhí)行,,有效提高了接收機(jī)的利用效率,,增強(qiáng)了接收機(jī)的靈活性,還減少了頻譜監(jiān)測(cè)任務(wù)中接收機(jī)的使用量,,降低了頻譜監(jiān)測(cè)的成本,。
1 系統(tǒng)結(jié)構(gòu)
本文提出的頻譜監(jiān)測(cè)接收機(jī)系統(tǒng)按照?qǐng)D1所示的方式工作。該頻譜監(jiān)測(cè)系統(tǒng)允許多個(gè)客戶(hù)端同時(shí)連接到接收機(jī)并下達(dá)各自的頻譜監(jiān)測(cè)任務(wù),,接收機(jī)接收到不同客戶(hù)端的任務(wù)之后,,對(duì)任務(wù)進(jìn)行解析,,添加到系統(tǒng)任務(wù)列表中進(jìn)行合理調(diào)度,以便能夠?qū)崟r(shí)完成各個(gè)客戶(hù)端的監(jiān)測(cè)任務(wù),,最后通過(guò)網(wǎng)絡(luò)將頻譜監(jiān)測(cè)結(jié)果回傳到相應(yīng)的客戶(hù)端,。
為了實(shí)現(xiàn)這樣的功能,多客戶(hù)端頻譜監(jiān)測(cè)系統(tǒng)采用TI公司的雙核數(shù)字信號(hào)處理器OMAP-L138,。OMAP-L138為一款高性能,、低功耗雙核處理器,集成了ARM926EJ-STM處理器和TMS320C6748 DSP處理器[3],,保證了強(qiáng)大的運(yùn)算能力以及控制能力,。此外,在頻譜采集部分采用了Altera公司的EP2S180F1020I4高速FPGA[4],,通過(guò)FPGA完成了數(shù)據(jù)的高速采集與相關(guān)預(yù)處理,。系統(tǒng)實(shí)現(xiàn)框圖如圖2所示。
在該結(jié)構(gòu)中,,電磁波通過(guò)天線(xiàn)進(jìn)入射頻前端,,射頻前端將信號(hào)變頻到75 MHz中頻,通過(guò)ADC以60 MS/s的采樣率帶通采樣后送入FPGA,。在FPGA中進(jìn)行相應(yīng)預(yù)處理后便將數(shù)據(jù)回傳到OMAP-L138的DSP端處理,,處理完成后再通過(guò)ARM端將監(jiān)測(cè)結(jié)果送回至對(duì)應(yīng)客戶(hù)端。
在系統(tǒng)實(shí)現(xiàn)中,,引入了多核,、多線(xiàn)程技術(shù),在這一基礎(chǔ)上,,保證了本系統(tǒng)在工作中不僅能夠支持一個(gè)客戶(hù)端完成以上頻譜監(jiān)測(cè)流程,,在多個(gè)客戶(hù)端同時(shí)連接時(shí)也能夠保證各個(gè)客戶(hù)端任務(wù)的并行處理,。
各客戶(hù)端連接到系統(tǒng)之后,,系統(tǒng)將會(huì)為其分配相應(yīng)的任務(wù)標(biāo)識(shí),以便后續(xù)信號(hào)處理及頻譜數(shù)據(jù)回傳工作的完成,。完成用戶(hù)識(shí)別之后,,系統(tǒng)根據(jù)不同用戶(hù)信息來(lái)合理地解析其頻譜任務(wù),供后端流水并行處理使用,,處理完成后回傳到對(duì)應(yīng)客戶(hù)端,。整體流程如圖3所示。
2 系統(tǒng)設(shè)計(jì)
在本系統(tǒng)的設(shè)計(jì)中,,采用TI雙核處理器OMAP-L138,。此款處理器包含ARM與DSP,為使系統(tǒng)能夠更好地實(shí)現(xiàn)多客戶(hù)端頻譜監(jiān)測(cè)的功能,,ARM采用了Linux操作系統(tǒng)[5],,Linux操作系統(tǒng)為開(kāi)源多線(xiàn)程操作系統(tǒng),,具有強(qiáng)大的網(wǎng)絡(luò)支持,能夠很好地處理多個(gè)客戶(hù)端的網(wǎng)絡(luò)連接,,此外TI提供了相關(guān)的底層支持,,開(kāi)發(fā)效率高;DSP采用TI公司的DSP/BIOS,,DSP/BIOS是一個(gè)尺寸可伸縮的實(shí)時(shí)內(nèi)核,,方便實(shí)現(xiàn)線(xiàn)程間調(diào)度與同步工作[6]。多核,、多線(xiàn)程技術(shù)的引入為本系統(tǒng)多客戶(hù)端頻譜監(jiān)測(cè)的并行處理實(shí)現(xiàn)提供了強(qiáng)有力的保證,。
2.1 多客戶(hù)端并行處理架構(gòu)
在本系統(tǒng)中,結(jié)合多核架構(gòu)以及多線(xiàn)程技術(shù),,提出了多客戶(hù)端頻譜監(jiān)測(cè)的流水并行處理架構(gòu),,如圖4所示。在此流水并行處理架構(gòu)中,,系統(tǒng)在接收解析客戶(hù)端n的頻譜監(jiān)測(cè)任務(wù)的同時(shí),,處理部分正在處理上一客戶(hù)端n-1的頻譜監(jiān)測(cè)任務(wù),并將客戶(hù)端n-2的頻譜數(shù)據(jù)回傳,。
執(zhí)行中,,ARM端完成客戶(hù)端的連接以及為其分配標(biāo)識(shí),并將其添加到客戶(hù)隊(duì)列,,根據(jù)任務(wù)隊(duì)列中情況進(jìn)行任務(wù)解析,,將頻譜監(jiān)測(cè)任務(wù)指令及相關(guān)參數(shù)(如中心頻率、帶寬,、頻率分辨率等)回傳至DSP,。DSP端接收到頻譜監(jiān)測(cè)指令之后,進(jìn)行任務(wù)的分發(fā)以及相關(guān)的配置工作,。由于不同客戶(hù)端的頻譜監(jiān)測(cè)任務(wù)不盡相同,,在系統(tǒng)實(shí)現(xiàn)中還需要不斷更改射頻前端調(diào)諧頻率,以保證能夠正確地完成對(duì)應(yīng)客戶(hù)的頻譜監(jiān)測(cè)任務(wù),。射頻前端調(diào)諧頻率等的配置工作交由FPGA來(lái)完成,,配置完成之后利用FPGA將數(shù)據(jù)采集并進(jìn)行相應(yīng)的預(yù)處理后回傳到DSP。DSP完成相應(yīng)的處理工作之后交由ARM,,ARM端將頻譜監(jiān)測(cè)結(jié)果回傳至客戶(hù)端,,從而保證了頻譜監(jiān)測(cè)的實(shí)時(shí)進(jìn)行。利用這種架構(gòu),,ARM,、DSP、FPGA之間并行運(yùn)行,,減少了不必要的等待,,大大增強(qiáng)了各處理單元的利用率,。
2.2 ARM端程序設(shè)計(jì)
2.2.1 Linux下的多線(xiàn)程編程
線(xiàn)程就是程序中的單個(gè)順序控制流,利用多線(xiàn)程技術(shù),,可以將一個(gè)程序的任務(wù)分為多個(gè)線(xiàn)程,,每個(gè)線(xiàn)程執(zhí)行程序的一個(gè)部分,所有線(xiàn)程都是并發(fā)執(zhí)行,,這樣就可以實(shí)現(xiàn)并行計(jì)算,,高效利用處理器。此外,,通過(guò)為每種事務(wù)分配單獨(dú)的處理線(xiàn)程,,能夠有效簡(jiǎn)化程序設(shè)計(jì),使程序更加容易理解和修改[7-8],。
在本系統(tǒng)的ARM端,,分為網(wǎng)絡(luò)服務(wù)線(xiàn)程與雙核通信線(xiàn)程兩個(gè)線(xiàn)程,如圖5所示,。網(wǎng)絡(luò)服務(wù)線(xiàn)程負(fù)責(zé)接收多個(gè)客戶(hù)端的連接,,并為其分配相應(yīng)標(biāo)識(shí),添加到客戶(hù)隊(duì)列,,同時(shí)在收到頻譜監(jiān)測(cè)結(jié)果之后,,回傳結(jié)果到相應(yīng)的客戶(hù)端;雙核通信線(xiàn)程負(fù)責(zé)與DSP端的交互工作,,主要完成發(fā)送頻譜監(jiān)測(cè)任務(wù),、參數(shù)到DSP,以及接收DSP回傳的頻譜監(jiān)測(cè)結(jié)果,。
2.2.2 Linux并發(fā)服務(wù)器系統(tǒng)設(shè)計(jì)
在網(wǎng)絡(luò)服務(wù)線(xiàn)程中,,由于存在多個(gè)客戶(hù)端同時(shí)連接的情況,因此接收機(jī)必須要具備并發(fā)處理多個(gè)客戶(hù)端連接的能力,。圖6為T(mén)CP協(xié)議并發(fā)服務(wù)器模型示意圖,,ARM端主程序在建立套接字描述符socket、綁定bind之后開(kāi)始監(jiān)聽(tīng)任務(wù),,調(diào)用accept函數(shù)等待客戶(hù)端的連接請(qǐng)求,。當(dāng)接收到客戶(hù)端的請(qǐng)求時(shí),,服務(wù)器便為該客戶(hù)端分配相應(yīng)標(biāo)識(shí),,加入客戶(hù)列表,并為其創(chuàng)建一個(gè)新的線(xiàn)程,,用于處理客戶(hù)端發(fā)送的數(shù)據(jù)信息[5],。
從該模型中可以看出,在接收到客戶(hù)端連接之前并不需要預(yù)先創(chuàng)建處理客戶(hù)端請(qǐng)求的線(xiàn)程,,直到有客戶(hù)端連接時(shí)才創(chuàng)建,,且數(shù)量是可以變動(dòng)的,,比較靈活、高效,。
利用這種并發(fā)服務(wù)器模型,,可以大大提高服務(wù)器對(duì)客戶(hù)端的處理能力,降低服務(wù)器的響應(yīng)時(shí)間,。同時(shí)利用這個(gè)模型,,可以在接收多個(gè)客戶(hù)端發(fā)送來(lái)的頻譜監(jiān)測(cè)請(qǐng)求任務(wù)的同時(shí)回傳監(jiān)測(cè)的結(jié)果,提高了頻譜監(jiān)測(cè)的執(zhí)行效率,。
2.3 DSP端程序設(shè)計(jì)
DSP端調(diào)度使用輪詢(xún)調(diào)度的方式來(lái)實(shí)現(xiàn),,當(dāng)收到ARM端傳遞的頻譜監(jiān)測(cè)任務(wù)后,將任務(wù)加入到DSP端的任務(wù)隊(duì)列中,,當(dāng)一個(gè)任務(wù)調(diào)用完成后切換到下一個(gè)任務(wù),。采用這種方式,既能夠很好地調(diào)度任務(wù),,同時(shí)又能夠保證任務(wù)的實(shí)時(shí)性,。DSP端工作流程如圖7所示。
DSP端解析客戶(hù)端的任務(wù)之后,,將射頻前端的配置信息(如中心頻率,、帶寬、增益控制等信息)發(fā)送到FPGA,,交由FPGA來(lái)完成射頻前端的配置以及相關(guān)預(yù)處理工作,。在FPGA完成相應(yīng)配置的同時(shí),DSP不需要等待配置完成再進(jìn)行處理,,而是將上一任務(wù)的緩存數(shù)據(jù)取出進(jìn)行相關(guān)處理即可,。與此同時(shí),ARM端直接取出DSP上一次處理完成的頻譜監(jiān)測(cè)結(jié)果,,將其回傳到對(duì)應(yīng)的客戶(hù)端進(jìn)行并行處理,,各個(gè)客戶(hù)端的任務(wù)之間互不影響。
多個(gè)運(yùn)算單元的合理調(diào)度使頻譜監(jiān)測(cè)工作能夠高效地并發(fā)完成,。以這種方式循環(huán)執(zhí)行多個(gè)客戶(hù)端的頻譜監(jiān)測(cè)請(qǐng)求,,減少了處理過(guò)程中存在的不必要的等待時(shí)間,運(yùn)行效率更高,。
3 測(cè)試
為了測(cè)試本文提出的多客戶(hù)端頻譜監(jiān)測(cè)系統(tǒng)的可實(shí)現(xiàn)性以及優(yōu)越的頻譜監(jiān)測(cè)性能,,本文利用了兩臺(tái)PC作為客戶(hù)端,同時(shí)為了觀測(cè)方便,,輸入信號(hào)使用信號(hào)源輸入單頻信號(hào),。
輸入信號(hào):100 MHz,-56.98 dBm,,單頻,。
客戶(hù)端設(shè)置:左側(cè)PC客戶(hù)端設(shè)置的中心頻率為105 MHz,,帶寬為20 MHz;右側(cè)PC客戶(hù)端中心頻率正好為100 MHz,,帶寬為20 MHz,。
將兩個(gè)客戶(hù)端同時(shí)連接到接收機(jī),開(kāi)始執(zhí)行頻譜監(jiān)測(cè)任務(wù),,獲得如圖8所示監(jiān)測(cè)結(jié)果,。
從結(jié)果中可以看出,左側(cè)客戶(hù)端監(jiān)測(cè)到的頻譜結(jié)果在四分之一頻譜圖的位置,,右側(cè)客戶(hù)端觀測(cè)到的頻譜正好在頻譜圖的正中位置,。從配置可以知道,左側(cè)PC頻譜觀測(cè)范圍為95 MHz~115 MHz,,四分之一頻譜圖的位置即剛好為100 MHz,;而右側(cè)PC頻譜觀測(cè)范圍為90 MHz~110 MHz,正中位置正好也為100 MHz,,頻譜監(jiān)測(cè)結(jié)果是正確的,。對(duì)比可以發(fā)現(xiàn),兩者的頻譜監(jiān)測(cè)任務(wù)得到了很好的并發(fā)執(zhí)行,,且兩者之間頻譜監(jiān)測(cè)結(jié)果互不干擾,。
本文在多核處理器架構(gòu)和多線(xiàn)程的基礎(chǔ)上,提出了多客戶(hù)端頻譜監(jiān)測(cè)的流水并行處理架構(gòu),,并在此基礎(chǔ)上實(shí)現(xiàn)了一個(gè)高效的多客戶(hù)端頻譜監(jiān)測(cè)系統(tǒng),。該系統(tǒng)允許多個(gè)客戶(hù)同時(shí)進(jìn)行頻譜監(jiān)測(cè),提高了接收機(jī)的利用效率,,增強(qiáng)了接收機(jī)的靈活性,,大大提高了接收機(jī)的性能。最后通過(guò)實(shí)驗(yàn)展示了其可實(shí)現(xiàn)性以及優(yōu)越的頻譜監(jiān)測(cè)性能,。
參考文獻(xiàn)
[1] 武繼兵.R&S ESMD寬帶監(jiān)測(cè)接收機(jī)的應(yīng)用[J].中國(guó)無(wú)線(xiàn)電,,2009(2):76-77.
[2] 費(fèi)連.無(wú)線(xiàn)電監(jiān)測(cè)系統(tǒng)的革新——網(wǎng)絡(luò)化小型頻譜監(jiān)測(cè)系統(tǒng)的概念及主要技術(shù)要求[J].電子測(cè)量與儀器學(xué)報(bào),2009(增刊):175-179.
[3] Texas Instrument Inc..OMAP-L 138 technical reference manual[EB/OL].(2009)[2014].http://www.ti.com.
[4] Altera Corporation.Stratix II Device Handbook[EB/OL].(2008)[2014].http://www.altera.com.
[5] ARM嵌入式Linux系統(tǒng)開(kāi)發(fā)技術(shù)詳解[M].北京:電子工業(yè)出版社,,2008.
[6] TI DSP/BIOS用戶(hù)手冊(cè)與驅(qū)動(dòng)開(kāi)發(fā)[M].北京:清華大學(xué)出版社,,2007.
[7] 邴哲松.ARM Linux嵌入式網(wǎng)絡(luò)控制系統(tǒng)[M].北京:北京航空航天大學(xué)出版社,2012.
[8] 劉兵,,陳琛.Linux下的多線(xiàn)程編程[J].黑龍江科技信息,,2008(1):56-57.