基于FPGA的高階QAM調(diào)制器的分析與設(shè)計
多電平正交幅度調(diào)制MQAM(Multilevel QuadratureAmplitude Modulation)是一種振幅和相位相結(jié)合的高階調(diào)制方式,具有較高的頻帶利用率和較好的功率利用率。
因為單獨使甩振幅和相位攜帶信息時,不能最充分利用信號平面,這可由調(diào)制信號星座圖中信號矢量端點的分布直觀觀察到。多進(jìn)制振幅鍵控(MASK)調(diào)制時,矢量端點在一條軸上分布;多進(jìn)制相位鍵控(MPSK)調(diào)制時,矢量點在一個圓上分布。隨著進(jìn)制數(shù)M的增大,這些矢量端點之間的最小距離也隨之減少。而MQAM采用振幅和相位聯(lián)合鍵控調(diào)制,他能充分利用整個信號平面,將矢量端點重新合理地分布,在不減小最小距離的情況下,增加信號的端點數(shù);在相同信號端點數(shù)的情況下,矢量端點之間的最小距離增加。因此,MQAM是一種高效的調(diào)制方式,被廣泛應(yīng)用于中、大容量數(shù)字微波通信系統(tǒng)、有線電視網(wǎng)絡(luò)高數(shù)據(jù)傳輸、衛(wèi)星通信等領(lǐng)域。本文首先介紹了MQAM調(diào)制解調(diào)的基本原理,然后以64QAM為例,介紹了一種全數(shù)字實現(xiàn)的調(diào)制系統(tǒng)結(jié)構(gòu)方案,并給出了解調(diào)器的具體FPGA實現(xiàn)方法及關(guān)鍵技術(shù)。
2 MQAM調(diào)制原理
所謂正交振幅調(diào)制,就是用兩個獨立的基帶波形對兩個相互正交的同頻載波進(jìn)行抑制載波的雙邊帶調(diào)制,利用這種已調(diào)信號在同一帶寬內(nèi)頻譜的正交性來實現(xiàn)兩路并行的數(shù)字信息傳輸。MQAM信號的一般表達(dá)式為:
式(1)由兩個相互正交的載波構(gòu)成,每個載波被一組離散的振幅{Am),{Bm)所調(diào)制,故稱這種調(diào)制方式為正交振幅 調(diào)制。式中T為碼元寬度,m=1,2,…,L,L為Am和Bm的電平數(shù)。MQAM中Am和Bm振幅可以表示成:
式中:A是固定的振幅,dm,em由輸入數(shù)據(jù)確定,dm,em決定了已調(diào)MQAM信號在信號空間中的坐標(biāo)點。在調(diào)制過程中,載波的振幅與相位都發(fā)生了變化,因此,已調(diào)信號矢量星座圖中每一個坐標(biāo)點代表了一種編碼組合,同時也代表了正交信號矢量合成后的不同的相位及電平,第i個信號可用數(shù)學(xué)描述為:
因此每一個坐標(biāo)點也由Ai和φ i惟一確定。
3 64QAM調(diào)制器系統(tǒng)設(shè)計
圖1給出了全數(shù)字實現(xiàn)的64QAM調(diào)制器的電路原理結(jié)構(gòu)。除D/A變換外,每個功能模塊都用FPGA實現(xiàn)。擾碼、串并轉(zhuǎn)換和差分編碼采用原理圖的方法進(jìn)行設(shè)計,電平轉(zhuǎn)換及星座圖映射采用查表法(LUT)進(jìn)行設(shè)計。本設(shè)計的難點為成形濾波器和基于DDS的正交調(diào)制器實現(xiàn),下面重點描述成形濾波器和基于DDS的正交調(diào)制器的實現(xiàn)方法。
3.1 成形濾波器的設(shè)計
為了讓信號在帶限的信道中傳輸,提高頻譜利用率,通常在發(fā)送端把信號經(jīng)過成形濾波器進(jìn)行帶限,由此就會引入碼間干擾。為有效地減少碼間干擾,按照最佳接收理論,收發(fā)基帶濾波器應(yīng)共軛匹配,設(shè)計時收發(fā)基帶濾波器采用均方根升余弦滾降濾波器即能滿足要求。
在實際電路設(shè)計中采用具有線性相位的FIR濾波器來實現(xiàn)均方根升余弦滾降特性的成形濾波器。一個N階FIR濾波器的差分方程表達(dá)式為:
線性相位的FIR濾波器的系數(shù)是偶對稱或奇對稱的,利用系數(shù)的對稱性可減少乘法器的數(shù)量,本系統(tǒng)采用N為偶數(shù)且系數(shù)偶對稱的線性相位的FIR濾波器。濾波器系數(shù)是一個固定的值,根據(jù)均方根升余弦的沖擊響應(yīng)特性,利用Matlab軟件可直接生成FIR數(shù)字濾波器系數(shù)hk(k=0,1,…,N-1)。所以濾波器的乘法都是固定系數(shù)的乘法。
本設(shè)計采用分布式算法(DA)原理,利用FPGA查找表代替乘法器來實現(xiàn)FIR濾波器,其基本思想如下:
假設(shè)輸入信號數(shù)據(jù)位為B位,則濾波器在n時刻的第k個輸入為:
從式(5)可以看出,F(xiàn)IR濾波器中乘加單元的運算是算法核心。如果建立一個查找表(Look Up Table,LUT),表中數(shù)據(jù)由所有固定系數(shù)(h0,h1,…,hN-1)的所有加的組合構(gòu)成(和用sumb表示,6∈[0,B-1]),那么,用N位輸入數(shù)據(jù)構(gòu)成的N位地址去尋址LUT,如果N位都為1,則LUT的輸出是N位系數(shù)的和,如果N位中有0,則其對應(yīng)的系數(shù)將從和中去掉。這樣乘加運算就變成了查表操作。整數(shù)乘以2b可以通過左移6位實現(xiàn)。
對于本系統(tǒng),碼元速率為25.92 Mbaud,滾降系數(shù)選取為0.5,抽頭個數(shù)取N=16,抽頭系數(shù)精度取10 b,輸入數(shù)據(jù)為4 b,輸出精度取9 b。仿真結(jié)果如圖2所示。
從圖2可以看出:碼元速率為25.92 Mbaud的基帶信號經(jīng)成形濾波后,頻譜被限制在20 MHz范圍內(nèi)。
經(jīng)成形濾波后的兩路基帶信號分別對DDS(DirectDigital Synthesizer)產(chǎn)生的兩路正交的載波進(jìn)行調(diào)制,然后進(jìn)行矢量相加形成調(diào)制信號輸出。DDS的FPGA實現(xiàn)框圖如圖3所示。
DDS的基本原理是利用采樣定理,利用查找表法產(chǎn)生波形。相位累加器是DDS系統(tǒng)的核心部分,每來一個時鐘脈沖,累加器將頻率控制字M與相位寄存器輸出的累加相位數(shù)據(jù)相加,把相加后的結(jié)果送至相位寄存器的數(shù)據(jù)輸入端;相位寄存器將累加器在上一個時鐘作用后所產(chǎn)生的新相位數(shù)據(jù)反饋到累加器的輸入端,以使累加器在下一個時鐘的作用下繼續(xù)與頻率控制數(shù)據(jù)相加。這樣,相位累加器在參考時鐘的作用下,進(jìn)行線性相位累加,當(dāng)累加器累加滿量時就會產(chǎn)生一次溢出,完成一個周期性的動作,這個周期就是DDS合成信號的一個頻率周期,累加器的溢出頻率就是DDS輸出的信號頻率。
用相位累加器輸出的數(shù)據(jù)作為波形存儲器(ROM)的相位取樣地址,這樣就可以把存儲在波形存儲器內(nèi)的波形抽樣值經(jīng)查找表查出,完成相位到幅值轉(zhuǎn)換。ROM設(shè)計的關(guān)鍵問題是進(jìn)行初始化,就是將正弦波的二進(jìn)制幅度碼按一定的格式輸入到存儲器初始化(.mif)文件,此文件可以C語言或者M(jìn)atlab語言程序生成。
DDS系統(tǒng)輸出信號的頻率為f0=fclk×M/2N,頻率分辨率為△f=fclk/2N,當(dāng)M=2N-1時,DDS最高的基波合成頻率為f0max=fclk/2。對于本系統(tǒng),時鐘頻率fclk=155.520 MHz,N取12。仿真結(jié)果如圖4所示。
由于兩個正交本振的形成是通過Madab運算得到的查找表,所以由DDS得到的載頻不存在幅度差異,理論上其正交性也完全可以得到保證,但由于存儲精度的影響,存在量化誤差。
4 系統(tǒng)設(shè)計與仿真
根據(jù)以上各模塊單元的設(shè)計,構(gòu)成64QAM調(diào)制器的頂層文件如圖5所示。運用QuartusⅡ及Matlab軟件實現(xiàn)64QAM調(diào)制器仿真,仿真結(jié)果如圖6所示。
5 結(jié) 語
本文介紹了用FPGA實現(xiàn)全數(shù)字高階QAM調(diào)制器的思想和方法,采用原理圖和Verilog語言,用可編程芯片StratixⅡ系列中的EP2S30F484C3實現(xiàn)了整個設(shè)計,結(jié)果表明符合設(shè)計要求。為進(jìn)一步的研究和設(shè)計全數(shù)字高階QAM系統(tǒng)打下了良好的基礎(chǔ)。
評論