用NI技術(shù)設(shè)計的OFDM發(fā)射接收系統(tǒng)
OFDM是一種多載波的數(shù)字傳輸體制,以其特有的優(yōu)勢被廣泛地應用到數(shù)字音頻廣播,數(shù)字電視廣播和無線寬帶等領(lǐng)域,并將進入到更多的領(lǐng)域中。對OFDM系統(tǒng)的仿真可以用軟件完成,但是對于硬件平臺的搭建往往需要大量的開銷和時間。針對這種情況,如果具備一套軟件仿真代碼移植方便且硬件平臺搭建便捷的系統(tǒng),可以極大地縮短OFDM系統(tǒng)的開發(fā)周期,才能在標準層出不窮的今天具有較強的競爭優(yōu)勢。
應用方案:基于NI虛擬儀器之PXI5671上變頻卡、PXI5661下變頻卡和Labwindows/CVI8.5正版軟件實現(xiàn)OFDM發(fā)射機與接收機的樣機。
使用產(chǎn)品:
LabWindows/CVI8.5 軟件開發(fā)平臺;PXI5671(PXI5441+PXI561);PXI5441 中頻輸出卡;PXI5610 射頻輸出卡;PXI5661(PXI5600+PXI5142);PXI5600 射頻接收卡;PXI5142 下變頻卡。
介紹:
OFDM是一種多載波的數(shù)字傳輸體制,由于具有頻譜利用率高和良好的抗多徑干擾等優(yōu)點,已經(jīng)被廣泛應用到數(shù)字音頻廣播,數(shù)字地面電視和無線局域網(wǎng)等領(lǐng)域,并且被看作第四代移動通信的核心技術(shù)之一。但是對OFDM樣機的研制和開發(fā)無論在軟件算法的編寫,還是硬件電路平臺的搭建,都需要大量的人員和開銷,且存在較高的風險。本文提出一種基于NI平臺的OFDM實時收發(fā)系統(tǒng)的設(shè)計方法,即在CVI軟件仿真平臺上實現(xiàn)OFDM符號的數(shù)字基帶處理算法的編寫,用NI PXI5671和NI PXI5661實現(xiàn)OFDM射頻模擬信號的發(fā)射與接收。對OFDM系統(tǒng)進行有效的驗證,為今后大規(guī)模芯片生產(chǎn)提供了可靠的解決方案和理論指導。
OFDM系統(tǒng)簡介
正交頻分復用(OFDM,OrthogonalFrequency Division Multiplexing)是把高速串行數(shù)據(jù)分成多條并行的低速數(shù)據(jù),分別對多個正交子載波進行調(diào)制,從而達到更高的頻譜效率、更大的系統(tǒng)容量,并且符號持續(xù)時間大大加長,在移動、多徑、衰落環(huán)境下有很大的優(yōu)勢。
本系統(tǒng)的主要功能是用前端的USB設(shè)備對聲音信號進行采集、處理,調(diào)制到OFDM符號中,并上變頻到射頻信號發(fā)射。收端將接收到的射頻信號進行下變頻處理得到數(shù)字信號,并解出音頻幀由USB設(shè)備播放。發(fā)端系統(tǒng)的基帶數(shù)據(jù)處理部分主要包括信源編碼、FEC、映射、OFDM成幀,硬件平臺的處理部分包括數(shù)字上變頻和射頻調(diào)制等。接收系統(tǒng)的基帶處理部分要主要包括同步、均衡、解映射、解FEC、音頻譯碼等,硬件平臺的處理部分包括射頻解調(diào)和數(shù)字下變頻。
OFDM系統(tǒng)硬件平臺架構(gòu)
整個系統(tǒng)由兩臺NI主機,兩個USB聲卡設(shè)備,兩臺顯示器,一臺安杰倫頻譜儀4440A組成,如圖1所示:
圖1系統(tǒng)結(jié)構(gòu)圖
首先由發(fā)端的USB設(shè)備對輸入的聲音信號進行采樣,樣點送入NI主機,然后在發(fā)端的上層軟件中編寫OFDM基帶處理等算法,生成的OFDM基帶數(shù)據(jù)輸出到PXI5671上變頻到中心頻率為10MHz的射頻信號。PXI5671由兩塊可分離的板卡PXI5441和PXI5610組成,其中PXI5441分為板卡RAM模塊和OSP(onboard signal process,板卡數(shù)字信號處理)模塊,板卡RAM模塊負責主機和PXI板卡間的數(shù)據(jù)傳遞,OSP模塊可對信號進行重采樣濾波,數(shù)字上變頻和DA轉(zhuǎn)換等。PXI5610為射頻板卡,經(jīng)過兩級混頻放大濾波可將PXI5441輸出的模擬IF信號調(diào)制到范圍為250KHz-2.7GHz的射頻信號。收端由PXI5661對輸入的射頻信號進行解調(diào),下變頻到數(shù)字基帶信號,并輸出到NI主機上。PXI5661同樣由兩塊分離的板卡PXI5600和PXI5142組成。PXI5661完成射頻信號到中頻信號的轉(zhuǎn)換,PXI5142的兩個模塊OSP模塊和板卡RAM模塊,分別完成AD采樣、數(shù)字下變頻、重采樣濾波和主機與PXI板卡數(shù)據(jù)傳遞等功能,最后由收端的軟件上層算法解出音頻信號輸出給USB聲卡播放。無論收端還是發(fā)端系統(tǒng),上層軟件算法產(chǎn)生的數(shù)據(jù)和PXI板卡的數(shù)據(jù)交互需要由主機內(nèi)存和板卡RAM來完成,其中DMA控制主機內(nèi)存和板卡RAM間的數(shù)據(jù)傳遞,最大可達到1Gbytes/s的數(shù)據(jù)吞吐量。板卡RAM采用的是一種SMC(Synchronization and Memory Core)技術(shù),該技術(shù)無須將指令和數(shù)據(jù)分開存儲,RAM中的FPGA模塊不但能處理上層軟件產(chǎn)生的所有指令,對OSP各模塊進行配置,而且能對數(shù)據(jù)流進行緩存,最后由OSP的讀取引擎,并以上層軟件中所設(shè)的IQ速率讀取數(shù)據(jù),送入OSP中進行重采樣、濾波、變頻等處理。
基帶處理算法的設(shè)計與實現(xiàn)
基帶處理算法的實現(xiàn)是基于LabWndows/CVI8.5的軟件平臺,它是一個交互式開發(fā)平臺,集成了標準C的編譯、鏈接、調(diào)試等,并且采用簡單直觀的用戶界面設(shè)計,用戶只需在函數(shù)面板上直接輸入?yún)?shù),就會以事件驅(qū)動回調(diào)函數(shù)的方式運行整個程序,并可以將數(shù)據(jù)以圖形的形式在界面上顯示,提高了整個工程的運行效率。圖2為本系統(tǒng)發(fā)端和收端的應用界面。
圖2 OFDM發(fā)、收系統(tǒng)界面
對于單線程系統(tǒng),一般分為數(shù)據(jù)的采集模塊、分析處理模塊、顯示存儲模塊。這三個模塊在時間上是順序執(zhí)行的,即后一個模塊需等待前一個模塊數(shù)據(jù)的到來時才開始工作。然而本系統(tǒng)對實時性要求比較高,比如在收端,USB聲卡的播放需要收端的音頻譯碼模塊在400ms內(nèi)處理完一幀,才能及時提供給USB聲卡樣點連續(xù)地播放聲音,這就需要音頻譯碼模塊前的所有基帶處理部分需要在400ms內(nèi)完成一個物理幀到音頻幀的解調(diào)。同樣在發(fā)端,USB聲卡每秒采集19200個樣點給音頻編碼模塊進行編碼,每400ms輸出一音頻編碼幀,F(xiàn)EC、映射及OFDM成幀等模塊也必須在400ms內(nèi)處理完成,否則會出現(xiàn)丟幀和覆蓋的現(xiàn)象。可以肯定,用單線程這種順序化的執(zhí)行方式效率很低,每個模塊都要等待前一個模塊的數(shù)據(jù),對于實時性要求較高和復雜性較高的系統(tǒng)不適用。
本系統(tǒng)使用的是多線程技術(shù),可以將處理模塊拆分成多個線程,使多個線程并行運行,只要保證每個線程的運行時間小于音頻處理模塊,系統(tǒng)就會正常工作。其中發(fā)端算法用3個線程完成音頻編碼,F(xiàn)EC、映射、OFDM成幀等處理,并將OFDM數(shù)據(jù)寫到板卡RAM中。收端算法用6個線程完成從板卡RAM中讀取OFDM基帶數(shù)據(jù)、同步、均衡、FFT、解映射、解FEC等處理,最后由音頻譯碼模塊將音頻幀送給USB聲卡進行播放。為了保證線程間數(shù)據(jù)傳遞有序進行,CVI還提供了事件通知、安全隊列、線程優(yōu)先級等函數(shù),保證線程間的同步和數(shù)據(jù)的傳遞。本系統(tǒng)使用的是全局BUFFER和安全隊列回調(diào)函數(shù)方式使兩個線程間獲得同步。即兩個線程間共享一個BUFFER和安全隊列,前一個線程將每次計算得到的數(shù)據(jù)寫到BUFFER中,并產(chǎn)生一標志位FLAG,寫入安全隊列,后一線程捕捉到安全隊列中的FLAG,判斷是否滿足回調(diào)函數(shù)的條件,滿足則啟動該線程,并將BUFFER中的數(shù)據(jù)讀出,不滿足則繼續(xù)捕捉FLAG。通過對安全隊列中FLAG的讀寫,控制線程啟動的時間,使得兩線程對數(shù)據(jù)的讀寫達到平衡。程序中控制流程如圖3所示。圖4為由PXI5671輸出到頻譜儀E4440A的OFDM頻譜。
圖3 線程控制流程圖
圖4 PXI5671輸出的OFDM頻譜
結(jié)論
本系統(tǒng)用LabWindows/CVI8.5軟件完成OFDM的數(shù)字基帶處理,在PXI硬件平臺上完成射頻信號的處理,有效地對OFDM系統(tǒng)進行驗證。而搭建FPGA PCB平臺完成OFDM Demo樣機,首先在芯片的選型、制板上就需要大量的時間和人員,且具有一定的風險性;其次在軟件代碼開發(fā)方面,需要花大量的時間對FPGA代碼進行仿真測試和集成,而且改動起來靈活性差。然而基于NI技術(shù)的OFDM系統(tǒng)的開發(fā),由于在軟件上仿真代碼的可移植性,和上變頻等硬件平臺的實用性,減少了OFDM系統(tǒng)的開發(fā)周期,節(jié)約了開發(fā)成本和人員。
評論