沙 潔,劉在英
( 上海杉達學(xué)院信息科學(xué)與技術(shù)學(xué)院,上海 201209)
一個通信系統(tǒng)通常包括3個要素:發(fā)射器、信道和接收器[1]。
發(fā)射器的功能是把信息源產(chǎn)生的信號注入載波,然后通過改變載波的幅值、頻率或相位,調(diào)制成適合在信道中傳輸?shù)男盘枴U{(diào)制過程可以把源信號的頻譜搬移到任意位置,從而有利于信號的傳送,并且可以借助多路復(fù)用的方法使得頻譜資源得到充分利用。采用正交載波實現(xiàn)多路信號復(fù)用的調(diào)制信號稱為矢量信號。對于正弦載波來說,如果相位相差90°則會產(chǎn)生兩路載波信號:同相(in-phase)載波和正交(quadrature)載波[2]。
信道是信號傳輸?shù)拿浇?,在傳輸?shù)倪^程中信號會有不同程度的衰減,其主要來源是可加性噪聲。因此,接收器需要用相應(yīng)解調(diào)算法從載波中提取出原始的信號信息。實際解調(diào)的準確性取決于解調(diào)算法的選擇、信噪比等因素。
矢量信號發(fā)生器(VSG)和矢量信號分析儀(VSA)是數(shù)字通信系統(tǒng)的測量和調(diào)試儀器,但是價格動輒上千美金且市場長期被國外公司壟斷。在科研工作中,VSG 和VSA是分析不同通信技術(shù)性能的有用工具;在高校通訊專業(yè)的日常教學(xué)中,很多概念的解釋也離不開VSG 和VSA。
LabVIEW是美國國家儀器公司開發(fā)的一種創(chuàng)新的圖形化編程環(huán)境,相比基于文本的編程語言,提出了基于框圖(Block Diagram)的系統(tǒng)設(shè)計方法。使用LabVIEW 編制的程序稱為虛擬儀器程序(VI)。VI主要包括兩個部分:程序前面板和框圖程序。前面板供開發(fā)者使用LabVIEW 提供的各種圖形組件建立圖形用戶界面(GUI);每一個程序前面板都對應(yīng)著一段框圖程序,相當于傳統(tǒng)程序的源代碼??驁D程序由端口、節(jié)點、框圖和連線構(gòu)成。其中端口被用來同程序前面板的控制和顯示傳遞數(shù)據(jù),節(jié)點被用來實現(xiàn)函數(shù)和功能調(diào)用,框圖被用來實現(xiàn)結(jié)構(gòu)化程序控制命令,而連線代表程序執(zhí)行過程中的數(shù)據(jù)流,定義了框圖內(nèi)的數(shù)據(jù)流動方向。LabVIEW的核心思想是結(jié)構(gòu)化的數(shù)據(jù)流,每一個VI 運行都必須遵循數(shù)據(jù)流的規(guī)范,即一個節(jié)點只有當所有的輸入都具備時才可運行,運行完成后的結(jié)果作為下一個節(jié)點的輸入。LabVIEW 提供了一些基本功能VI,開發(fā)者可以利用這些VI 構(gòu)建功能更加強大復(fù)雜的虛擬儀器程序。一個VI 可以由多個子VI 組成,也可以被當做子VI 被其他VI 調(diào)用。
本文使用LabVIEW 設(shè)計一組VSG 和VSA 虛擬儀器程序。VSG 虛擬儀器程序運行在安裝了數(shù)據(jù)采集卡的PC 上,能夠基于不同的調(diào)制算法產(chǎn)生射頻信號,包括二進制相移鍵控(BPSK)、正交相移鍵控(QPSK)、8 相移鍵控(8PSK)和16 正交幅度調(diào)制(16QAM)。調(diào)制信號通過數(shù)據(jù)采集卡終端的模擬信道傳輸給運行VSA 虛擬儀器程序的另外一臺PC,由虛擬VSA 程序?qū)崟r接收到的信號進行分析。VSA可按照不同算法解調(diào)信號,顯示信號波形圖、星座圖,計算比特誤碼率(BER)等。模擬信號的輸出及采集采用了兩塊NI 公司的PCI-6024E DAQmx 數(shù)據(jù)采集卡及BNC2120的信號終端。
VSG 相當于通信系統(tǒng)中的發(fā)射器,用于生成調(diào)制信號并把數(shù)字信號轉(zhuǎn)換成能夠在數(shù)據(jù)采集卡中傳輸?shù)母袷?。VSG 虛擬儀器程序由基帶數(shù)字信號發(fā)生器、脈沖成形濾波器、I/Q 調(diào)制器和數(shù)據(jù)采集單元組成,每個模塊通過一個自定義子VI 實現(xiàn),上一個子VI的功能輸出作為下一個子VI的輸入。圖1為整個VSG的設(shè)計框圖。
圖1 VSG 設(shè)計框圖
數(shù)字信號發(fā)生器負責(zé)生成隨機的二進制數(shù)據(jù),映射二進制比特為符號并把符號分離成in-phase 和quadrature分量。星座圖(Constellation Diagram)在二維的復(fù)平面上顯示了不同調(diào)制方法的所有可能的符號值,映射的方法根據(jù)不同的調(diào)制方法而有所不同。基帶的二進制數(shù)通過信號的星座圖映射成in-phase和quadrature 通道的符號值SI和SQ。符號值的映射采用格雷編碼(Gray Code)方式以最小化傳輸過程中的突發(fā)錯誤。
在實現(xiàn)過程中,考慮到調(diào)制后符號的能量控制,輸出符號的幅值需要乘以一個控制常量Δ。這一個常量可以由不同調(diào)制算法的星座圖中推導(dǎo)出來。對于PSK 來說,平均符號能量Δ 和ES的關(guān)系經(jīng)推導(dǎo)后得到[3]:
其中Δ是為復(fù)平面的符號幅值,θ為符號的相位。
對于QAM 來說,平均符號能量Δ 和ES的關(guān)系經(jīng)推導(dǎo)后為[3]:
其中,M為QAM 級數(shù),Δ為相鄰兩個字符距離的一半(水平和垂直方向),Ek為第k個符號的能量。
脈沖成形濾波器作用于先前生成的基帶調(diào)制符號來限制信號的帶寬。它必須滿足奈奎斯特準則以避免符號間干擾(ISI)[4]。
Sinc 脈沖是一種非因果脈沖,在頻域表現(xiàn)為一個矩形頻譜,能夠很好地控制傳輸信號的帶寬;在時域里每個符號周期都有零交叉點,能夠滿足奈奎斯特準則且不會產(chǎn)生ISI。但是,實際LabVIEW中只能使用因果脈沖,而且Sinc的無限時域長度在軟件里是無法實現(xiàn)的。解決這一問題的方法是采用升余弦(RC)濾波器。RC 濾波器在時域每個符號周期都有零交叉點,滿足內(nèi)奎斯特條件;在頻域,低頻段為單位增益,中頻段為升余弦頻譜,高頻段為零增益,可以有效控制信號的帶寬。本文使用了兩個根升余弦(RRC)濾波器:一個作為VSG 端成形濾波器,一個在VSA 端形成匹配濾波,兩者的總效果相當于單個RC 濾波器,這樣做不僅能夠使得抽樣時信噪比達到最高,又能夠在一定的帶限平坦信道中不引入碼間干擾[5]。
RRC 濾波器的脈沖響應(yīng)的定義如下[6]:
其中α是滾降因子,Ts是符號周期。
借助于LabVIEW的移位寄存器[7],發(fā)送端把RRC 脈沖響應(yīng)在每個符號周期作用于調(diào)制過的基帶信號,相當于在頻域作用了一個根升余弦濾波器,LabVIEW 程序結(jié)構(gòu)圖如圖2所示。
圖2 模擬基帶脈沖流
I/Q 調(diào)制模塊的目的:一是整合分離的in-phase和quadrature 數(shù)據(jù)流以便提高頻譜利用率;二是提升基帶信號的頻率到適合遠距離傳輸?shù)姆秶?。兩個通道的基帶信號被兩個正交的同頻率fc載波調(diào)制,與I/Q 通道的信號經(jīng)乘積調(diào)制后的和作為最后的輸出信號,LabVIEW 程序流程圖如圖3所示。
圖3 頻率提升和I/Q 復(fù)用
VSG 端的DAQ 設(shè)計是為了實現(xiàn)D/A 轉(zhuǎn)換,把LabVIEW 生成的I/Q 調(diào)制信號轉(zhuǎn)變成物理信號通過模擬信道傳輸出去。此模塊通過LabVIEW框圖程序控制數(shù)據(jù)采集卡把由I/Q 調(diào)制模塊輸出的信號通過指定的物理信道傳輸出去。物理信號的傳送需要精準的時序控制和收發(fā)同步,因此本文使用兩個函數(shù)發(fā)生器:一個作為外部時鐘源,另一個作為兩個信號采集卡的起動觸發(fā)器。DAQ 板的參數(shù)如表1所示[8]。
表1 DAQ 板主要參數(shù)
在VSG的用戶設(shè)計中,用戶可以像使用VSG 設(shè)備一樣設(shè)置虛擬儀器的相關(guān)參數(shù),例如調(diào)制方法的選擇、每槽的符號數(shù)、采樣頻率、載波頻率等。每個階段的信號波形也將顯示在前面板上,整個界面如圖4所示。
圖4 VSG 用戶界面
VSA是數(shù)字解調(diào)和測量的有用工具。本文的VSA 虛擬儀器程序由5個模塊組成:DAQ 測量、I/Q解調(diào)、接收端濾波器、采樣映射和比特誤碼率(BER)測量。整個結(jié)構(gòu)圖如圖5所示。
圖5 VSA 設(shè)計結(jié)構(gòu)圖
VSA的DAQ 部分主要完成接收模擬信號的數(shù)字化采樣以便于后續(xù)在LabVIEW中進行分析。采樣前需要先通過編寫程序設(shè)置采集的參數(shù),如采樣頻率、使用的物理信道等。然后通過外部兩個函數(shù)發(fā)生器,即采樣時鐘和開始觸發(fā)器,分別連接兩塊采集卡的BNC-2120 終端可編程接口PFI0 和PFI6 口以實現(xiàn)同步[9]。整個框圖程序流程如圖6所示。
圖6 VSA 端DAQ 設(shè)計流圖
I/Q 解調(diào)器作用與I/Q 調(diào)制器相反。它將接收信號降頻,把信號分離為in-phase 和quadrature 部分。接收到的調(diào)制信號需經(jīng)過兩個相干的檢波器:inphase 檢波器A'ccos(2πfct)和quadrature 檢波 器A'csin(2πfct)。需要指出的是,檢波器的頻率和相位必須和發(fā)射器端的載波保持一致。因此檢波器的輸出可用數(shù)學(xué)方法推導(dǎo)為:
從結(jié)果可以看出,經(jīng)過兩個檢波器后輸出的信號包含高頻部分和低頻部分,通過低通濾波器可以得到含有數(shù)據(jù)信息的低頻部分信號SI(t)和SQ(t)。Lab-VIEW 設(shè)計框圖如圖7所示。
接收濾波器模塊是為了配合VSG中的RRC 濾波器成對使用,從而使得總共的頻率響應(yīng)滿足奈奎斯特準則[10]。由數(shù)學(xué)定律知,在時域進行卷積相當于在頻域進行乘法運算。因此,在LabVIEW中,解調(diào)后的基帶信號和截取特定長度的RRC 脈沖響應(yīng)執(zhí)行卷積操作[11],結(jié)構(gòu)圖如圖8所示。
圖7 降頻解調(diào)框圖
圖8 接收端濾波器結(jié)構(gòu)圖
采樣的目的是把符號從濾波后的基帶信號抽取出來,采樣頻率和符號速率保持一致,都是1/TS。其關(guān)鍵點是如何找準采樣點,第k個采樣距離應(yīng)該滿足(6+i)Ts,i=0,1,2,…(過密采樣不在本文的考慮范圍內(nèi))。因為LabVIEW 不能表示連續(xù)時間信號,所有時序信號是以離散的采樣點表示,時間分辨率Tres應(yīng)遠遠小于Ts或者時間解析速率Rres應(yīng)遠遠大于采樣速率Rs。因此在LabVIEW中進行采樣操作的時候需要計算離散樣本的索引值。一個符號周期內(nèi)的離散點的數(shù)目由Rres和Rs決定。第n個符號的位置ln可以寫成:
其中i是符號索引。
開標必須得有招標人進行主持,然后邀請全部的投標人來參與。除了開標工作人員、投標人、監(jiān)督人員和公證人員以外,其他不相關(guān)的人員應(yīng)該予以回避。如果進行某一標段項目進行劃分且對其唱標時,沒有參與投唱標段的人員必須得回避。
除此之外,為了最后繪出標準化星座圖,每個采樣的符號還要除以平均的符號能量。最后,符號根據(jù)不同調(diào)制算法映射到星座圖上繪制圖像。圖9是整個采樣及映射的設(shè)計流圖。
圖9 采樣及映射設(shè)計流圖
在通訊系統(tǒng)中,比特錯誤率(BER)定義為傳輸過程中錯誤比特的數(shù)目與總共傳輸?shù)谋忍氐谋戎?,而EVM 作為數(shù)字射頻發(fā)射器和接收器性能的度量。本文為了模擬實際信道的環(huán)境,發(fā)射端傳輸兩種不同的信號:一種是加入可加性高斯白噪聲的信號,另一種是未加入噪聲的信號。接收端通過比較兩種不同信號來計算BER 和EVM。圖10是測試器的LabVIEW流圖。
圖10 BERT 和EVMT 流圖
在VSA中,用戶可以設(shè)置A/D 轉(zhuǎn)換的采樣速率、載波頻率、選擇物理接收頻道等,如圖11所示。
圖11 VSA 用戶界面
儀器的測試是儀器設(shè)計中不可缺少的一個重要環(huán)節(jié)。本模擬測試中,VSG 和VSA分別安裝在兩臺電腦上,每臺電腦分別與一個數(shù)據(jù)采集卡相連,同步和采樣時鐘由外部的函數(shù)發(fā)生器產(chǎn)生。VSG的參數(shù)如下:每槽的符號數(shù)=100,符號速率=10sym/s,采樣頻率=5kHz,載波頻率=100Hz。通過調(diào)整信號中白噪聲的強度觀察VSA 上接收信號星座圖的變化,統(tǒng)計得到不同調(diào)制方法下VSA 性能衰減點如表2所示。
表2 星座圖變化起始點
理論上,添加高斯可加性白噪聲的BPSK 調(diào)制的誤碼率可以通過下式計算[12]:
其中Eb/N0是信號噪聲比率,Q(x)是高斯Q 函數(shù):
QPSK 可以看成是正交載波的BPSK,誤碼率和BPSK 一樣。
對于高階的MPSK,不能用簡單的表達式表示誤碼率,可以通過積分推導(dǎo)得到[12]:
矩形QAM的BER 表達式可以推導(dǎo)但是會牽涉到復(fù)雜的表達式,其值取決于實際的符號與比特分配;使用格雷編碼的MQAM的誤碼率為[13]:
BER 測試的過程針對相同的噪聲變量使用不同的符號能量,為了得到更加準確的結(jié)果,每次測試生成一百萬個符號。經(jīng)過系統(tǒng)測試后,LabVIEW 程序?qū)嶋H測量值和理論值通過Matlab 繪制如圖12所示[14]。
圖12 BER versus SNR 曲線
從繪制的分析圖看,實際實驗的誤碼率與理論值基本一致。16QAM的BER 值與理論值存在些許偏差是因為接收平均符號能量的推導(dǎo)式在高噪聲時存有誤差。
本文利用美國國家儀器公司的LabVIEW 語言設(shè)計完成虛擬的VSG 和VSA。實驗表明該虛擬設(shè)備具備對硬件支持頻域內(nèi)矢量信號的發(fā)生和分析功能,界面直觀,易于擴展;為學(xué)校教學(xué)和科研工作的提供了有用工具,節(jié)約了成本。
[1][美]Proakis J G,[美]Manolakis D G.數(shù)字信號處理(第4 版)[M].方艷梅,劉永清譯.北京:電子工業(yè)出版社,2007.
[2]陳向民.矢量信號分析中數(shù)字解調(diào)設(shè)計[J].電子測量與儀器學(xué)報,2006,20(5):98-102.
[3][美]奧本海姆,[美]威爾斯基,[美]納瓦布.信號與系統(tǒng):精編版(第2 版)[M].劉樹棠譯.西安:西安交通大學(xué)出版社,2010.
[4]Stüber G L.Principles of Mobile Communication(3rd ed)[M].Springer,2012.
[5][美]庫奇.數(shù)字與模擬通訊系統(tǒng)[M].北京:電子工業(yè)出版社,2010.
[6][美]Sklar B.數(shù)字通訊基礎(chǔ)與應(yīng)用[M].徐平平譯.北京:電子工業(yè)出版社,2010.
[7]雷振山,肖成勇.LabVIEW 高級編程與虛擬儀器工程應(yīng)用(第2 版)[M].北京:中國鐵道出版社,2012.
[8]National Instrument.User Manual of PCI-6024E DAQmx Board[DB/OL].http://www.ni.com/pdf/manuals/370503k.pdf,2007-02-18.
[9]白云,高育鵬,胡小江.基于LabVIEW的數(shù)據(jù)采集與處理技術(shù)[M].西安:西安電子科技大學(xué)出版社,2009.
[10]陳泳恩,宋志豪.FIR 結(jié)構(gòu)IQ 串行處理RRC 濾波器[J].電子技術(shù),2011,38(4):26-27.
[11]鄭大鐘.線性系統(tǒng)理論(第2 版)[M].北京:清華大學(xué)出版社,2005.
[12]Ziemer R E,Tranter W H.Principles of Communications:Systems,Modulation and Noise[M].袁東風(fēng),江銘炎譯.北京:高等教育出版社,2004.
[13]莊寧,于宏毅,楊珂.十字形QAM 信號的符號錯誤率計算方法[J].計算機工程,2011,27(13):279-281,284.
[14]張德豐.詳解MATLAB 數(shù)字信號處理[M].北京:電子工業(yè)出版社,2010.