??? 摘? 要: 闡述了GMSK調制解調的原理與特點,介紹了其在軟件無線電系統中的硬件實現,并對其關鍵技術進行了分析,最后給出了GMSK信號調制解調的仿真圖。
??? 關鍵詞: 軟件無線電? GMSK? 高斯低通濾波器? 數字鎖相環
?
??? 隨著現代計算機技術,特別是通用可編程數字信號處理技術的飛速發展,無線通信系統從信源編碼、信道編碼到A/D轉換、抗干擾以及調制解調等,整個無線通信系統的軟硬件都有了很大的改進。軟件無線電技術就是在此基礎上發展起來的,作為未來無線通信的發展發向,引起世界各國研究人員的關注。
??? 作為軟件無線電系統中重要組成部分的調制解調技術一直是通信領域的熱點課題。目前,連續相位調制技術是未來調制解調技術的趨勢。最小高斯頻移鍵控(GMSK)就是一種典型的連續相位調制方式。GMSK調制信號具有很好的頻譜特性和恒包絡特性,這二種特性使得GMSK信號在有鄰道干擾和非線性功率放大器的系統中具有很好的性能。正因為如此,GMSK已經被全球移動通信系統(GSM)作為數字調制的標準體制,并在2001年6月被空間數據系統咨詢委員會列為未來空間研究計劃的標準數字調制體制。本文主要介紹了GMSK調制解調技術的原理以及GMSK在軟件無線電系統中的實現。
1? GMSK調制的基本原理
??? MSK是二進制連續相位調制(CPFSK)的一種改進形式。在FSK方式中,每一碼元的頻率不變或者跳變一個固定值,在2個相鄰的頻率跳變碼元信號之間,其相位通常是不連續的。而MSK就是使FSK信號的相位始終保持連續變化的調制方式,其調制指數為0.5。二進制MSK信號的表達式如下:
???
??? 式中:ωc為載波角頻率;Ts為碼元寬度;ak為第k個碼元中的信息,其取值為±1;φk為第k個碼元的相位常數,其取值為0或π,它在時間(k-1)Ts≤t≤kTs中保持不變[1]。
MSK是一種正交調制方式,因此MSK信號也可看作是由二路彼此正交的載波分別調制后合成的。故可將(1)式表示為:
??? 式中:等號后第一項為同相分量(I分量);第二項為正交分量(Q分量);為加權函數;cosφk為同相分量的等效數據,-akcosφk為正交分量的等效數據,它們都與原始輸入數據有確定的關系。令cosφk=Ik,-akcosφk=Qk,代入(2)式可得
???
??? 由(3)式可得出一種MSK的調制器,其原理圖如圖1所示。
?
??? MSK調制方式的突出優點是:信號具有恒定的振幅且信號的功率譜在主瓣外衰減較快。但在移動通信中,對信號帶外輻射功率的限制十分嚴格,MSK信號還不能滿足這種要求。于是就在MSK調制器前加一個高斯低通濾波器作為前置濾波器,即形成了GMSK調制方式,如圖2所示。其中對高斯低通濾波器有如下要求:(1)帶寬窄,且是銳截止的。(2)具有較低的過脈沖響應。(3)能保持輸出脈沖的面積不變。
2? GMSK解調基本原理
??? 對GMSK信號的解調可采用相干解調,也可采用非相干解調。這里主要介紹信號的正交相干解調方法,原理圖如圖3所示。
?
??? 該解調方法中,輸入的GMSK信號同時與2路的相應相干載波相乘,并分別進行積分判決。積分判決交替工作,每次積分時間為2Ts,即二者相差Ts時間[1]。
3? 基于軟件無線電的GMSK調制解調器的實現
??? 軟件無線電的結構主要由天線、射頻前端、模擬中頻、A/D、D/A轉換、高速數字信號處理部分和各種軟件組成,如圖4所示。天線部分要覆蓋比較寬的頻帶;RF部分在接收和發射時要完成濾波和功率放大的功能;變頻器在接收時完成信號的下變頻,降低數據流速率;A/D、D/A轉換部分完成模擬信號和數字信號的相互轉換;數字信號處理部分主要功能是對基帶信號進行處理,包括調制解調,各種抗干擾、抗衰落的實現以及糾錯加密等[2]。
?
??? 在軟件無線電系統中,一般采用“微處理器+協處理器”結構,微處理器一般使用通用DSP,主要完成系統通信和基帶處理等工作;協處理器使用FPGA實現,主要完成底層算法的運算任務。在本系統中應用軟處理器IP核代替DSP,在1片Spartan-Ⅱ20萬門的FPGA(XC2S200)內就能實現整個GMSK調制器的設計。這樣可以簡化系統的結構,提高系統的整體性能。
??? 整個系統采用模塊化的設計方案,包括1個母板和多個子板。其中母板上帶有各種數據和控制接口(RS232接口、USB接口和I2C接口)。子板中包括A/D子板、D/A子板和FPGA子板,其中最為重要的是FPGA子板。GMSK調制信號就是在FPGA子板上實現的, FPGA子板的結構框圖如圖5所示。
?
3.1 GMSK調制器的實現
??? GMSK調制器可分為以下幾個主要模塊:差分編碼、高斯低通濾波器、串并變換器和基帶信號產生器。
3.1.1 差分編碼器的設計
??? 為了方便GMSK信號的解調,需要對輸入信號進行差分預編碼。可用FPGA實現差分編碼器。將差分編碼器輸出信號di延時1個碼元后與輸入信號di-1進行“異或”,得到信號di+1;再對di+1進行不歸零處理,即可得到差分編碼后的不歸零碼。
3.1.2 高斯低通濾波器的設計
??? GMSK調制系統中的高斯低通濾波器的主要作用在于對基帶信號進行頻譜整形,以降低信號頻帶寬度,提高頻譜利用率,同時降低對相鄰信道的干擾。這里選用的高斯低通濾波器,其傳輸函數可表示為:
???
??? 其中a是可選擇的參量,選擇不同的a,濾波器的特性隨之改變。令Bb為此濾波器的3dB帶寬,即由(4)可得:
???
??? 由于g(t)的取值范圍是(-∞,+∞),在物理上是不可實現的,因此需要對g(t)進行截短。取截短長度為(2N+1)Ts,若BbTs=0.3,經計算,當N=2時,
???
??? 在實際計算φ(t)時,取g(t)的截短長度為5Ts(有足夠的精度)。濾波器的實現可通過調用Systemview軟件的FPGA Achitect功能調用現成的Xilinx LogiCores完成設計。這種方法大大簡化了設計的流程,節約設計所需花費的時間,并且提高了設計系統的性能。
3.1.3 串并變換器的實現
??? 串并變換模塊將差分編碼后的數據按奇偶位分開,變成并行的2路信號。用Verilog語言進行串并變換時,首先要進行分頻,然后按分頻后的頻率對數據進行串并變換。
??? 串并變換器的Verilog語言實現如下:
??? if (start==1)//開始信號start為1,表示開始傳輸
??? ? begin
??? ??? if(clkedge)//檢測到分頻信號上升沿信號clkedge時,進入狀態機
??? ????? casex(state)
??? ? state1://狀態1按分頻后的頻率將輸入數據InDATA送入I路
????????? ??if(sclk)
?????????? ??? begin
?????????? ????? IDATA<=InDATA;
?????????? ????? State<=state2;
?????????? ??? End
????????????Else
?????????? ??? State<=state1;
??? ? State2://狀態2按分頻后的頻率將輸入數據InDATA送入Q路
?????????? ??? If(sclk)
???????????????? Begin
???????????????? ???QDATA<=InDATA;
???????????????? ???State<=state1;
?????????? ????? End
?????????????? Else
?????????????? State<=stae2;
??? Endcase
??? end
3.1.4 基帶信號的產生
??? 在本系統的FPGA實現中,采用了ISE中的IP核DDS(Direct Digital Synthesizer)V3.0。DDS采用了查表法來產生波形,即事先根據各個NCO正弦波相位計算好相位的正弦值,并按相位角度作為地址存儲該相位的正弦值數據。查找表(look-up table)一般是等間距地存儲1個周期的正弦波或余弦波的抽樣值。這些抽樣值代表了長度量化為這樣,這些抽樣值就成了θ(n)=n
的函數[3]。
??? 而NCO的輸出頻率定義為:其中Bθ(n)表示查找表地址的比特數, Δθ為每個采樣周期增加的相位增量,fclk表示系統時鐘。這樣就可以從已知的參量中計算出所需要的Δθ,以控制輸出頻率。由于NCO可以同時輸出正弦和余弦二路波形,所以可以得到幾乎完全正交的sin2πfct和cos2πfct。具體的FPGA實現框圖如圖6所示。
?
3.2 GMSK解調器的實現
??? GMSK解調方式采用正交相干解調方式,接收機將接收到的已調信號cos(ωct+φ(t))分別與相干載波cosωct和sinωct相乘,經低通濾波器后得到基帶信號cosφ(t)和sinφ(t),然后作相位計算。
??? 載波提取是GMSK相干解調器設計的關鍵,能否有效地減小相位誤差將直接影響到解調器的性能。在實際設計中,采用了一種數字鎖相環技術來實現載波同步,可在FPGA平臺上實現,其框圖如圖7所示。環路濾波器采用理想比例積分濾波器,其傳遞函數為:
???
?
??? 由(10)式可得數字環路濾波器的傳遞函數為:
???
??? C2和C1為濾波器的參數,通過調整C2、C1可以滿足濾波器的各種要求。在FPGA上的具體實現同樣采用Systemview的FPGA Architect功能來完成。
??? 接收端將收到的已調信號進行平方變換,鑒相器對輸入的信號和數控振蕩器輸出的信號的正向過零點進行檢測。當檢測到輸入信號的正向過零點后,啟動一個計數器,待檢測到輸出信號的正向過零點后停止計數,將計數器值N送入環路濾波器。計數值N與二信號相位差有如下關系,
???
??? 其中:fin為鑒相器輸入信號頻率,fc為計數器時鐘頻率。環路濾波器對該相位差加以平滑得到控制信號去控制數控振蕩器的周期。數控振蕩器的輸出信號經過二分頻即可恢復出載波信號[4]。
4? 系統原理的仿真
?? ?受器件性能的限制,在FPGA中實現信號調制時,載波的頻率不可能太高,實用的低中頻頻率一般在幾百kHz到幾兆Hz。為設計方便,取載波頻率為符號速率的整數倍。用Systemview軟件對軟件無線電調制解調系統做了仿真,調制信號選用速率為5kHz的PN碼,正弦載波頻率選為1MHz,經GMSK調制后已調信號的頻譜圖如圖8所示。可以看出,GMSK信號有著較為理想的頻譜特性。
?
5? 結束語
??? 隨著通信技術的發展,對無線服務的要求也越來越高,而軟件無線電是第三代移動通信的必然發展趨勢。GMSK調制方式由于具有良好的頻譜特性必將在無線通信中得到更廣泛的應用。用FPGA實現調制解調器,具有開發成本低、開發周期短、體積小和易于系統功能擴展等優點。但由于目前器件水平的限制,FPGA還只局限在基帶和中頻發揮作用。隨著工藝水平的提高,以FPGA為主的可編程器件將在第三代移動通信中發揮更大的作用。
參考文獻
1?? 樊昌信,張甫,徐炳祥等.通信原理.北京:國防工業出版社,2001
2?? 楊小牛,樓義才.軟件無線電原理與應用.北京:電子工業出版社,2001
3?? 陸濤,虞忠輝,汪小寧.基于FPGA的QPSK調制器的實現.通信技術,2002;(12)
4?? 彭飛,趙繼勇.基于FPGA的全數字低中頻QPSK調制解調器的實現.電子設計應用,2003;(9)