《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 基于NI技術(shù)的OFDM發(fā)射接收系統(tǒng)
基于NI技術(shù)的OFDM發(fā)射接收系統(tǒng)
邸娜
國家廣播電影電視總局 廣播科學(xué)研究院 無線技術(shù)研究所
摘要: 本系統(tǒng)用LabWindows/CVI8.5軟件完成OFDM的數(shù)字基帶處理,在PXI硬件平臺上完成射頻信號的處理,有效地對OFDM系統(tǒng)進(jìn)行驗(yàn)證。而搭建FPGA  PCB平臺完成OFDM Demo樣機(jī),首先在芯片的選型、制板上就需要大量的時(shí)間和人員,且具有一定的風(fēng)險(xiǎn)性;其次在軟件代碼開發(fā)方面,需要花大量的時(shí)間對FPGA代碼進(jìn)行仿真測試和集成,而且改動(dòng)起來靈活性差。然而基于NI技術(shù)的OFDM系統(tǒng)的開發(fā),由于在軟件上仿真代碼的可移植性,和上變頻等硬件平臺的實(shí)用性,減少了OFDM系統(tǒng)的開發(fā)周期,節(jié)約了開發(fā)成本和人員。
關(guān)鍵詞: RF|微波 OFDM 多線程 PXI5671 NI
Abstract:
Key words :

  挑戰(zhàn):OFDM是一種多載波的數(shù)字傳輸體制,以其特有的優(yōu)勢被廣泛地應(yīng)用到數(shù)字音頻廣播,數(shù)字電視廣播和無線寬帶等領(lǐng)域,并將進(jìn)入到更多的領(lǐng)域中。對OFDM系統(tǒng)的仿真可以用軟件完成,但是對于硬件平臺的搭建往往需要大量的開銷和時(shí)間。針對這種情況,如果具備一套軟件仿真代碼移植方便且硬件平臺搭建便捷的系統(tǒng),可以極大地縮短OFDM系統(tǒng)的開發(fā)周期,才能在標(biāo)準(zhǔn)層出不窮的今天具有較強(qiáng)的競爭優(yōu)勢。

  應(yīng)用方案:基于NI虛擬儀器之PXI5671上變頻卡、PXI5661下變頻卡和Labwindows/CVI8.5正版軟件實(shí)現(xiàn)OFDM發(fā)射機(jī)與接收機(jī)的樣機(jī)。

  使用產(chǎn)品:

  LabWindows/CVI8.5 軟件開發(fā)平臺;PXI5671(PXI5441+PXI561);PXI5441 中頻輸出卡;PXI5610 射頻輸出卡;PXI5661(PXI5600+PXI5142);PXI5600 射頻接收卡;PXI5142 下變頻卡。

  介紹:

  OFDM是一種多載波的數(shù)字傳輸體制,由于具有頻譜利用率高和良好的抗多徑干擾等優(yōu)點(diǎn),已經(jīng)被廣泛應(yīng)用到數(shù)字音頻廣播,數(shù)字地面電視和無線局域網(wǎng)等領(lǐng)域,并且被看作第四代移動(dòng)通信的核心技術(shù)之一。但是對OFDM樣機(jī)的研制和開發(fā)無論在軟件算法的編寫,還是硬件電路平臺的搭建,都需要大量的人員和開銷,且存在較高的風(fēng)險(xiǎn)。本文提出一種基于NI平臺的OFDM實(shí)時(shí)收發(fā)系統(tǒng)的設(shè)計(jì)方法,即在CVI軟件仿真平臺上實(shí)現(xiàn)OFDM符號的數(shù)字基帶處理算法的編寫,用NI PXI5671和NI PXI5661實(shí)現(xiàn)OFDM射頻模擬信號的發(fā)射與接收。對OFDM系統(tǒng)進(jìn)行有效的驗(yàn)證,為今后大規(guī)模芯片生產(chǎn)提供了可靠的解決方案和理論指導(dǎo)。

 

  OFDM系統(tǒng)簡介

  正交頻分復(fù)用(OFDM,OrthogonalFrequency Division Multiplexing)是把高速串行數(shù)據(jù)分成多條并行的低速數(shù)據(jù),分別對多個(gè)正交子載波進(jìn)行調(diào)制,從而達(dá)到更高的頻譜效率、更大的系統(tǒng)容量,并且符號持續(xù)時(shí)間大大加長,在移動(dòng)、多徑、衰落環(huán)境下有很大的優(yōu)勢。

  本系統(tǒng)的主要功能是用前端的USB設(shè)備對聲音信號進(jìn)行采集、處理,調(diào)制到OFDM符號中,并上變頻到射頻信號發(fā)射。收端將接收到的射頻信號進(jìn)行下變頻處理得到數(shù)字信號,并解出音頻幀由USB設(shè)備播放。發(fā)端系統(tǒng)的基帶數(shù)據(jù)處理部分主要包括信源編碼、FEC、映射、OFDM成幀,硬件平臺的處理部分包括數(shù)字上變頻和射頻調(diào)制等。接收系統(tǒng)的基帶處理部分要主要包括同步、均衡、解映射、解FEC、音頻譯碼等,硬件平臺的處理部分包括射頻解調(diào)和數(shù)字下變頻。

  OFDM系統(tǒng)硬件平臺架構(gòu)

  整個(gè)系統(tǒng)由兩臺NI主機(jī),兩個(gè)USB聲卡設(shè)備,兩臺顯示器,一臺安杰倫頻譜儀4440A組成,如圖1所示:

基于NI技術(shù)的OFDM發(fā)射接收系統(tǒng)

  圖1系統(tǒng)結(jié)構(gòu)圖

  首先由發(fā)端的USB設(shè)備對輸入的聲音信號進(jìn)行采樣,樣點(diǎn)送入NI主機(jī),然后在發(fā)端的上層軟件中編寫OFDM基帶處理等算法,生成的OFDM基帶數(shù)據(jù)輸出到PXI5671上變頻到中心頻率為10MHz的射頻信號。PXI5671由兩塊可分離的板卡PXI5441和PXI5610組成,其中PXI5441分為板卡RAM模塊和OSP(onboard signal process,板卡數(shù)字信號處理)模塊,板卡RAM模塊負(fù)責(zé)主機(jī)和PXI板卡間的數(shù)據(jù)傳遞,OSP模塊可對信號進(jìn)行重采樣濾波,數(shù)字上變頻和DA轉(zhuǎn)換等。PXI5610為射頻板卡,經(jīng)過兩級混頻放大濾波可將PXI5441輸出的模擬IF信號調(diào)制到范圍為250KHz-2.7GHz的射頻信號。收端由PXI5661對輸入的射頻信號進(jìn)行解調(diào),下變頻到數(shù)字基帶信號,并輸出到NI主機(jī)上。PXI5661同樣由兩塊分離的板卡PXI5600和PXI5142組成。PXI5661完成射頻信號到中頻信號的轉(zhuǎn)換,PXI5142的兩個(gè)模塊OSP模塊和板卡RAM模塊,分別完成AD采樣、數(shù)字下變頻、重采樣濾波和主機(jī)與PXI板卡數(shù)據(jù)傳遞等功能,最后由收端的軟件上層算法解出音頻信號輸出給USB聲卡播放。

  無論收端還是發(fā)端系統(tǒng),上層軟件算法產(chǎn)生的數(shù)據(jù)和PXI板卡的數(shù)據(jù)交互需要由主機(jī)內(nèi)存和板卡RAM來完成,其中DMA控制主機(jī)內(nèi)存和板卡RAM間的數(shù)據(jù)傳遞,最大可達(dá)到1Gbytes/s的數(shù)據(jù)吞吐量。板卡RAM采用的是一種SMC(Synchronization and Memory Core)技術(shù),該技術(shù)無須將指令和數(shù)據(jù)分開存儲,RAM中的FPGA模塊不但能處理上層軟件產(chǎn)生的所有指令,對OSP各模塊進(jìn)行配置,而且能對數(shù)據(jù)流進(jìn)行緩存,最后由OSP的讀取引擎,并以上層軟件中所設(shè)的IQ速率讀取數(shù)據(jù),送入OSP中進(jìn)行重采樣、濾波、變頻等處理。

  基帶處理算法的設(shè)計(jì)與實(shí)現(xiàn)

  基帶處理算法的實(shí)現(xiàn)

  是基于LabWndows/CVI8.5的軟件平臺,它是一個(gè)交互式開發(fā)平臺,集成了標(biāo)準(zhǔn)C的編譯、鏈接、調(diào)試等,并且采用簡單直觀的用戶界面設(shè)計(jì),用戶只需在函數(shù)面板上直接輸入?yún)?shù),就會以事件驅(qū)動(dòng)回調(diào)函數(shù)的方式運(yùn)行整個(gè)程序,并可以將數(shù)據(jù)以圖形的形式在界面上顯示,提高了整個(gè)工程的運(yùn)行效率。圖2為本系統(tǒng)發(fā)端和收端的應(yīng)用界面。

基于NI技術(shù)的OFDM發(fā)射接收系統(tǒng)基于NI技術(shù)的OFDM發(fā)射接收系統(tǒng)

  圖2 OFDM發(fā)、收系統(tǒng)界面

  對于單線程系統(tǒng),一般分為數(shù)據(jù)的采集模塊、分析處理模塊、顯示存儲模塊。這三個(gè)模塊在時(shí)間上是順序執(zhí)行的,即后一個(gè)模塊需等待前一個(gè)模塊數(shù)據(jù)的到來時(shí)才開始工作。然而本系統(tǒng)對實(shí)時(shí)性要求比較高,比如在收端,USB聲卡的播放需要收端的音頻譯碼模塊在400ms內(nèi)處理完一幀,才能及時(shí)提供給USB聲卡樣點(diǎn)連續(xù)地播放聲音,這就需要音頻譯碼模塊前的所有基帶處理部分需要在400ms內(nèi)完成一個(gè)物理幀到音頻幀的解調(diào)。同樣在發(fā)端,USB聲卡每秒采集19200個(gè)樣點(diǎn)給音頻編碼模塊進(jìn)行編碼,每400ms輸出一音頻編碼幀,F(xiàn)EC、映射及OFDM成幀等模塊也必須在400ms內(nèi)處理完成,否則會出現(xiàn)丟幀和覆蓋的現(xiàn)象。可以肯定,用單線程這種順序化的執(zhí)行方式效率很低,每個(gè)模塊都要等待前一個(gè)模塊的數(shù)據(jù),對于實(shí)時(shí)性要求較高和復(fù)雜性較高的系統(tǒng)不適用。

  本系統(tǒng)使用的是多線程技術(shù),可以將處理模塊拆分成多個(gè)線程,使多個(gè)線程并行運(yùn)行,只要保證每個(gè)線程的運(yùn)行時(shí)間小于音頻處理模塊,系統(tǒng)就會正常工作。其中發(fā)端算法用3個(gè)線程完成音頻編碼,F(xiàn)EC、映射、OFDM成幀等處理,并將OFDM數(shù)據(jù)寫到板卡RAM中。收端算法用6個(gè)線程完成從板卡RAM中讀取OFDM基帶數(shù)據(jù)、同步、均衡、FFT、解映射、解FEC等處理,最后由音頻譯碼模塊將音頻幀送給USB聲卡進(jìn)行播放。

  為了保證線程間數(shù)據(jù)

  傳遞有序進(jìn)行,CVI還提供了事件通知、安全隊(duì)列、線程優(yōu)先級等函數(shù),保證線程間的同步和數(shù)據(jù)的傳遞。本系統(tǒng)使用的是全局BUFFER和安全隊(duì)列回調(diào)函數(shù)方式使兩個(gè)線程間獲得同步。即兩個(gè)線程間共享一個(gè)BUFFER和安全隊(duì)列,前一個(gè)線程將每次計(jì)算得到的數(shù)據(jù)寫到BUFFER中,并產(chǎn)生一標(biāo)志位FLAG,寫入安全隊(duì)列,后一線程捕捉到安全隊(duì)列中的FLAG,判斷是否滿足回調(diào)函數(shù)的條件,滿足則啟動(dòng)該線程,并將BUFFER中的數(shù)據(jù)讀出,不滿足則繼續(xù)捕捉FLAG。通過對安全隊(duì)列中FLAG的讀寫,控制線程啟動(dòng)的時(shí)間,使得兩線程對數(shù)據(jù)的讀寫達(dá)到平衡。程序中控制流程如圖3所示。圖4為由PXI5671輸出到頻譜儀E4440A的OFDM頻譜。

基于NI技術(shù)的OFDM發(fā)射接收系統(tǒng)

  圖3 線程控制流程圖

基于NI技術(shù)的OFDM發(fā)射接收系統(tǒng)

  圖4 PXI5671輸出的OFDM頻譜

  結(jié)論

  本系統(tǒng)用LabWindows/CVI8.5軟件完成OFDM的數(shù)字基帶處理,在PXI硬件平臺上完成射頻信號的處理,有效地對OFDM系統(tǒng)進(jìn)行驗(yàn)證。而搭建FPGA  PCB平臺完成OFDM Demo樣機(jī),首先在芯片的選型、制板上就需要大量的時(shí)間和人員,且具有一定的風(fēng)險(xiǎn)性;其次在軟件代碼開發(fā)方面,需要花大量的時(shí)間對FPGA代碼進(jìn)行仿真測試和集成,而且改動(dòng)起來靈活性差。然而基于NI技術(shù)的OFDM系統(tǒng)的開發(fā),由于在軟件上仿真代碼的可移植性,和上變頻等硬件平臺的實(shí)用性,減少了OFDM系統(tǒng)的開發(fā)周期,節(jié)約了開發(fā)成本和人員。

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