l 引 言
由于GMSK調制方式具有很好的功率頻譜特性,較優的誤碼性能,能夠滿足移動通信環境下對鄰道干擾的嚴格要求,因此成為GSM、ETS HiperLANl以及GPRS等系統的標準調制方式。
目前GMSK調制技術主要有兩種實現方法,一種是利用GMSK ASIC專用芯片來完成,典型的產品如FX589或CMX909配合MC2833或FX019來實現GMSK調制。這種實現方法的特點是實現簡單、基帶信號速率可控,但調制載波頻率固定,沒有可擴展性。另外一種方法是利用軟件無線電思想采用正交調制的方法在FPGA和DSP平臺上實現。其中又包括兩種實現手段,一種是采用直接分解將單個脈沖的高斯濾波器響應積分分成暫態部分和穩態部分,通過累加相位信息來實現;另一種采用頻率軌跡合成,通過采樣把高斯濾波器矩形脈沖響應基本軌跡存入ROM作為查找表,然后通過FM調制實現。這種利用軟件無線電思想實現GMSK調制的方法具有調制參數可變的優點,但由于軟件設計中涉及到高斯低通濾波、相位積分和三角函數運算,所以調制器參數更改困難、實現復雜。綜上所述,本文提出一種基于CMX589A和FPGA的GMSK調制器設計方案。與傳統實現方法比較具有實現簡單、調制參數方便可控和軟件剪裁容易等特點,適合于CDPD、無中心站等多種通信系統,具有重要現實意義。
2 系統硬件設計
系統的硬件主要包括三部分:單片機控制器及其外圍擴展鍵盤和液晶顯示模塊、高斯濾波器模塊,以及FPGA調制器模塊,系統硬件結構圖如圖1所示。
系統工作過程如下:系統加電后,FPGA完成初始化,LCD界面提示用戶輸入控制信息,同時系統輸出固定頻率的正弦載波,表明系統正常工作;用戶通過控制菜單的提示,從鍵盤輸入控制信息(例如基帶信號的碼元速率,高斯濾波器的系統參數,BT值以及調制器的載波頻率等);控制信息通過主控制器發送給高斯濾波模塊及調制器模塊;FPGA調制器模塊根據接收到A/D轉換器的輸入信號的幅度值控制頻率字從而完成對于基帶信號的調制。
2.1 高斯濾波器模塊設計
高斯濾波器模塊采用CML公司生產的CMX589A專用集成芯片,具有較寬的基帶信號接收速率。在本設計中,為CMX589A提供兩種頻率的外部晶振,分別為25.576 MHz和8.192 MHz,通過跳線控制。CMX589A的控制引腳與單片機的P2口相連來控制濾波器的參數,其中ClkDivA、ClkDivB與外部時鐘配合共同決定高斯濾波器的基帶碼元速率,設置如表1所示。BT引腳控制高斯濾波器的系統帶寬,當設置為“l”時,系統BT值為O.5;當設置為“O”時,BT值為O.3。高斯濾波器的工作過程為:首先根據不同系統的需要來設置濾波器的基帶碼元速率和帶寬BT值,然后在Tx Data引腳接入需要調制的基帶碼元信號,同時給Tx Enable置高電平,通過TxOut就可以接收到高斯濾波基帶信號。
2.2 調制指數為O.5的FM發射機設計
調頻發射機由FPGA配合A/D、D/A來實現。FPGA選用Cyclone系列EPlC6Q240C8,它是采用SRAM工藝制造的混合低電壓FPGA芯片。A/D采用TI公司生產的8位模數轉換器TLC5510,D/A則采用10位數模轉換器THS5651A,用以完成高速率數據轉換。調頻發射機的系統時鐘為20 MHz,同時提供給D/A THS565lA作為轉換時鐘。A/D轉換時鐘由FPGA提供,系統時鐘經過分頻提供給A/D轉換器1 MHz的工作時鐘。同時單片機的P3口通過2 b的頻率控制位與1 b的“使能”控制位與FPGA相連來控制調制器的4種中心頻率,分別為20 kHz,200 kHz,2 MHz和20 MHz,中心頻率設置如表2所示。當載波的中心頻率設置為20 MHz的時候,系統工作時鐘需要通過FPGA內部的PLL倍頻實現。
2.3 單片機控制器設計
控制器采用AT89C51單片機,外擴LCD,4*4矩陣鍵盤,并通過接口與單片機的P0和P1相連,單片機的P2口與高斯濾波器的控制線相連,P3口與FPGA相連控制發射機的中心頻率。
鍵盤處理及LCD顯示模塊:利用鍵盤實現人機接口,該模塊包括鍵盤的掃描、去抖、連擊以及功能鍵的信號處理。用戶根據需要來調整系統參數,并通過與LCD顯示器的結合來顯示當前調制信號的各種參數,從而使系統更具可操作性。
功能參數設置模塊:此模塊負責處理鍵盤的輸入數據,根據用戶指令選擇相應的系統參數(例如基帶信號的碼元速率、FM調制器的中心頻率等)。表3表示在高斯濾波器模塊工作時鐘為8.192 MHz時,單片機控制濾波器系統參數設置。
3 系統軟件設計
系統的軟件編程主要包括兩部分:單片機控制模塊和FPGA實現調制指數為O.5的FM調制器模塊。系統的軟件流程圖如圖2所示。
3.1 單片機軟件設計
控制模塊主要包括擴展矩陣鍵盤、LCD液晶顯示、調制器參數控制。
單片機控制器的系統工作過程如下:
單片機初始化,LCD顯示開始菜單,包括“高斯濾波器參數設置”和“FM調制器參數設置”兩個選項;
進入“高斯濾波器參數設置”子菜單,包括“系統帶寬設置”和“基帶碼元速率設置”,分別可以設置2種不同的濾波器帶寬和8種基帶碼元速率,單片機根據系統設置在P2端口輸出控制信息;
進入“調制器參數設置”的子菜單以設置“調制載波的中心頻率”,可以設定四種不同的載波中心頻率,并通過單片機P3口控制FPGA的調制載波的中心頻率。
3.2 調制器的系統實現
FM調制器采用DDS思想在FPGA平臺上實現。DDS(Direct Digital Frequency Synthesizer,直接數字頻率合成)是一種新型的頻率合成技術,具有較高的頻率分辨率,可以實現快速的頻率切換。DDS系統主要由系統時鐘源、相位累加器、正弦波查找表、D/A轉換器和低通補償濾波器組成,系統結構如圖3所示。其中相位累加器是DDS系統的核心,它由N位加法器和N位相位寄存器組成。每來一位參考時鐘脈沖,N位加法器將頻率控制字和累積器的相位輸出相加,把相加的結果送到相位寄存器的輸入端。相位寄存器一方面將輸出的相位數據反饋到加法器的輸入端,以使加法器繼續在時鐘脈沖的作用下繼續與頻率控制字相加,另一方面又將輸出的相位數據又作為波形存儲表的地址輸入。波形存儲表把輸入的地址相位信息映射成波形數據,最后經過DAC和低通濾波器得到模擬信號。
本設計采用20 MHz外部晶振作為時鐘源,系統采用40位相位累加器,故頻率字也取40位,所以系統的頻率分辨率如下式所示:
FM調制器完成幅度到頻率的轉換是系統設計的關鍵。例如設定基帶信號的速率為8 kHz,載波的中心頻率為200 kHz(fword=“10995116277”),為了實現調制指數為0.5的FM調制器,FM調制器的頻率差為4 kHz。FPGA根據8位A/D轉換器輸入的信號幅度值選擇相應的頻率字,從而控制輸出信號的頻率完成調頻功能。載波的中心頻率對應的A/D轉換器中心幅值a in=“10000 0000”;當A/D轉換器輸入為O V(即a in=“0000 0000”)時,對應的調制信號的輸出頻率為198 kHz(fword=“10885165114”);當A/D轉換器的輸入為滿刻度2 V(ain=“1111 1111”)時,調制輸出頻率為202 kHz(fword=“11105067440”)。把頻率從198 kHz到202 kHz等分成255份,把相應的頻率轉換成40位頻率字,則A/D轉換器的256個幅值與256個頻率字一一對應。在每一個系統時鐘周期,頻率控制字與40位的相位累加器的值相加結果存入相位累加器。由于選用的ROM查找表的地址線為10位,所以取相位累加器的高10位作為正弦查找表的地址。正弦查找表利用Cyclone內部的ROM模塊完成查找表的設計,字長為10位,與所選用的DAC的數據位數相匹配。
系統輸入信號的幅度與頻率字轉換的核心代碼如下:
其中,f_mid為調制信號的中心頻率,fm_frerom為A/D輸入的信號幅度值與頻偏之間的映射關系,系統根據接收到信號的幅度值相應改變調制信號的頻偏從而完成調制功能。
4 系統軟件仿真及測試
4.1 軟件仿真
本設計利用EDA工具QuartusⅡ6.O完成調制器軟件編程,通過編譯環境進行軟件仿真如圖4所示,其中clk為系統晶振時鐘,addr40為相位累加器,a_in為A/D的轉換器的8位輸出信號,fword為系統頻率字,fout為波表輸出的調制信號幅度值。
4.2 系統測試與分析
系統測試通過IFR2399A頻譜儀來完成系統的硬件測試。圖5表示在相同的硬件平臺上實現MSK調制的頻譜圖,圖6表示GMSK調制的頻譜圖。對比兩個圖可以發現,由于加入了高斯濾波器,GMSK的頻譜更加緊湊,帶外衰減也要快于MSK。同時由測試結果可以看出,中頻載波為200 kHz,主瓣寬度以及衰減狀況等與理論分析結果相符。
5 結 語
本文實現了一種基于CMX589A和FPGA的GMSK調制器。系統采用了主從式的結構,主控機由單片機實現對于GMSK調制器系統參數的控制,CMX589A模塊完成基帶信號高斯濾波,FM調制器采用直接數字頻率合成技術(DDS)在FPGA硬件平臺上實現、系統最高輸出頻率為25 MHz。同時系統具有很寬的基帶信號數據和調制參數靈活可控等特點,并且克服了正交調制方案中嚴格正交載波產生困難的缺陷。測試結果表明,已調信號包絡恒定,頻譜滿足設計要求,適用于CDPD,無中心站等多種通信系統。