殷志勇
(中國船舶重工集團公司第七二三研究所,江蘇 揚州 225101)
正交振幅調制(QAM)是一種高效的利用載波幅度和相位聯(lián)合調制的技術,因其極高的頻譜利用率而被廣泛應用于現代數字通信系統(tǒng)中。在高階QAM數字通信系統(tǒng)中,因發(fā)送端和接收端的本地振蕩器時鐘不一致、信道的時變特性等原因,會導致接收端出現明顯的相偏和頻偏。這也是影響解調性能的最主要原因之一。解調恢復算法最主要的目的就是解決相偏和頻偏問題。
本文主要研究了64QAM解調系統(tǒng)關鍵技術,包括載波恢復和位同步,提出適合高階QAM數字解調系統(tǒng)的載波恢復算法,介紹了各個模塊的設計方法和工作原理,完成各個算法模塊的設計,實現解調系統(tǒng)的電路編程。
正交振幅調制是利用已調信號在相同帶寬內的頻譜正交來實現2路并行的數據信息傳輸,其信道頻帶利用率與單邊帶調制一樣,主要用于高速數據傳輸系統(tǒng)中。QAM系統(tǒng)組成框圖如圖1所示。
圖1 調制解調系統(tǒng)組成框圖
x1(t)和x2(t)是經過處理的獨立帶寬受限的基帶波形,cosωct和sinωct是2個相互正交的載波。y1(t)和y2(t)是理想相干解調的結果。
在實際工程應用中,為了獲得較高的頻帶利用率,通常采用高階的QAM調制,本文具體討論64QAM的調制解調,64QAM信號的基帶波形取8種電平(±1、±3、±5、±7)。64QAM調制信號的信息傳輸方式為6 bit二進制。
多電平正交調幅信號是一組在幅度與相位上都攜帶信息的載波鍵控信號,它可以用其復包絡表示。多電平正交調幅信號的傳輸波形集相應于復平面上的矢量端點集,又叫做多電平正交調幅的星座圖(Consetllation)。
根據相關文獻[1],在4種映射邏輯(全平移對稱型、全鏡像對稱型、平移/旋轉對稱型和鏡像/旋轉對稱型)中,鏡像/旋轉對稱型誤碼增值(由于邏輯變換和差分譯碼引起的誤差擴散)最小,故采用鏡像/旋轉對稱型作為64QAM調制信號星座圖的邏輯映射方式,如圖2所示。
圖2 鏡像/旋轉對稱型邏輯映射
將復平面按格雷碼編碼進行3次切割,第2次以原點為軸進行每次π/2的旋轉對稱變換,第3次進行鏡像對稱變換,得到最后的64個符號點。圖中,橫坐標及縱坐標的取值均只有8種,且分別為±1、±3、±5、±7。每個符號點分別對應1組I、Q值,輸出的同相、正交支路信號經過成型濾波,與正余弦信號相乘,完成調制。
QAM解調的核心是載波恢復算法,載波恢復算法一般都是基于鎖相環(huán)技術,不同的是鑒相器的設計。實現載波同步有2種方法:傳統(tǒng)的插入導頻法因為發(fā)射功率的利用率下降已經被摒棄不用,應用較多的是基于鎖相環(huán)的相干解調法。
載波恢復環(huán)路主要由以下4個模塊構成:數控振蕩器、成型濾波器(實現低通濾波功能)、鑒相器及環(huán)路濾波器。其中,鑒相器模塊在程序運行一定時間會自動從極性判決算法轉化為DD算法。在Vivado軟件開發(fā)平臺上利用Verilog HDL編寫程序實現各模塊算法。圖3為FPGA實現時,載波恢復模塊實現框圖。
圖3 載波恢復模塊實現結構圖
DD算法利用星座圖上的所有點進行判決,簡單有效。缺點是:如果接收到的信號存在比較大的初始相位偏差,很容易出現參數判決錯誤點。一般只用在低階QAM調制的載波恢復階段。本文用在高階64QAM載波恢復的跟蹤模式。信號直接進行判決,與最近的星座點比較得到相位誤差[2]。
輸入信號為r(n),忽略噪聲和一些其他情況,產生的相干解調信號為q(n),q(n)用復數形式表示為:
q(n)=rej(2πf1Ts+θ)=
r{cos(2πf1Ts+θ)+jsin(2πf1Ts+θ)}
(1)
q(n)經過逐電平判決,輸出為:
(2)
(3)
這里符號的意思是判決后的輸出結果,經過已經求出的門限值,判決到理想星座圖上附近點,所以sgn[I(n)]和sgn[Q(n)]的值分別有±1、±3、±5、±7共8種情況。工程實際中,在FPGA中實現乘除法,一般通過移位實現。比如乘以7,相當于左移2位加左移1位加左移0位。左移相當于擴展,左移2位就擴展3位,最高位為符號位,中間為原數,低位補2個0 bit位。分母有2、10、18、26、34、50、58、74、98等情況,分別進行右移位計算。
極性判決算法是多模式轉換的算法,它的功率檢測門限值有多個,在不同的模式下使用不同的門限值。系統(tǒng)運行開始,門限設置比較低,允許較多的符號通過,這樣可以得到粗略的頻偏[3]。根據實際情況,在系統(tǒng)運行一段時間后,再將門限值增高,這樣可得到更精確的頻偏。極性判決算法將信號判決到相應對角線上的點,利用初始門限值0,增大系統(tǒng)收斂速度,提高門限值,從而提高判決精確度。
星座圖點用極坐標形式來表示可寫成:
(4)
在第一象限中,假設極性判決檢測器的輸出對角線上的點為p(n),它的極坐標形式為:
(5)
其中:
(6)
θ(n)=arg[a(n)]+Θ(n)
(7)
A是大于零的常值,則若用鑒相器,可得到相差為:
(8)
若a(n)屬于對角線上的符號點之一,那么:
(9)
根據時間轉換模式設計自動轉換模塊。具體過程如下:在鎖相環(huán)開始工作的時候,采用極性判決法,使用小的τ值進行相位誤差檢測,同時使用大的環(huán)路增益,這樣可以有更多的星座點被用來提取相位信息,擴展環(huán)路捕捉范圍;當環(huán)路粗鎖后,將τ值調大,環(huán)路增益變小,此時相位檢測的噪聲小,環(huán)路的相位抖動下降,實現相位誤差的精調。最后相位檢測器切換到面向判決(DD)模式,利用所有的星座點進行穩(wěn)定的相位誤差糾正。這種模式的變換由自動模式機制來實現。自動轉換機制在現場可編程門陣列(FPGA)中實際上就是一個以周期為單位的時間計數器,當計數器達到一定數值的時候,將DD算法的輸出賦值給電路最終輸出,得到結果。
輸入數字信號首先通過寄存器緩存,然后與數控振蕩器輸出的正余弦波相乘。數控振蕩器在這里是調用Vivado中的直接數字頻率合成器(DDS)知識產權(IP)核(見圖4)。
設置滾降系數為0.35,利用Matlab中的函數生成與調制信號端結構完全相同的開平方升余弦濾波器的系數,將系數寫進coe文件。調用Vivado中的有限沖激響應(FIR)IP核,將生成的coe系數文件導入。圖5為生成的濾波器IP核。
圖4 DDS輸出結果
圖5 開平方升余弦濾波器
載波恢復中,實際情況要在符號的最佳判決時刻進行判決。這就需要先完成定時恢復,提取位同步信號。位同步模塊用于生成位定時信號,以便于DD算法符號判決時能在最佳采樣點進行,圖6為各個模塊信號流程圖。同步環(huán)路由數控振蕩器模塊、插值濾波器模塊、定時誤差檢測等模塊組成。
內插器可以實現數據數率轉換,工程中常采用具有Farrow結構的立方插值器[4]。
由圖7規(guī)定3條縱向支路分別為x1、x2、x3,橫向支路為結果y(k)。則計算公式分別為:
x1= 0.5x(n)-0.5x(n-1)-
0.5x(n-2)+0.5x(n-3)
(10)
x2= -0.5x(n)+1.5x(n-1)+
0.5x(n-2)-0.5x(n-3)
(11)
x3=x(n-2)
(12)
(13)
這種插值器1個周期內需要4個采樣點。在FPGA中,用信號傳輸速率4倍的時鐘作為采樣信號,即可實現。
圖8 誤差檢測器原理圖
64QAM調制信號如果要用Gardner的算法,要對其進行稍微的改進。還是上面的例子,符號1變?yōu)?,平均值是2,相當于橫坐標上移2,即上移了a=[yI(k)+yI(k-1)]/2。所以,對于64QAM信號而言,Gardner誤差檢測算法的公式為:
(14)
NCO在適當的時候產生需要的內插點。這里的NCO是一個相位遞減器,利用算法實現。差分方程為:
η(m+1)=[η(m)-ω(m)]
(15)
式中:η(m+1)為第m+1個時鐘的NCO寄存器值;ω(m)為NCO的控制字。
若η(m)-ω(m)≥0時,值不變;當η(m)-ω(m)<0時,η(m+1)=[η(m)-ω(m)]+1。保證NCO寄存器值一直都是正小數。ω(m)為環(huán)路濾波器的輸出值。NCO寄存器隨時間的變化關系如圖9所示[4]。
圖9 NCO寄存器時間關系
圖9中,mkTs是采樣時鐘脈沖點,第k個插值時刻kTi=(mk+μk)Ts,為NCO寄存器溢出時刻。由相似三角形原理可得:
(16)
本文所討論的算法中,ω(mk)=0.5時,環(huán)路正好達到平衡。
在Matlab中進行仿真,設置符號速率為Rb=30 Mbps,成型濾波器滾降因子α=0.35,采樣頻率fs=4Rb=120 MHz。符號數50 000個,環(huán)路濾波器輸出初始寄存器值ω(mk)=0.5,NCO寄存器初始值η(mk)=0.7,NCO初始輸出定時分數間隔器μk=0.6。得到如圖10所示的結果。
圖10 位同步算法仿真結果
在Matlab中生成50 000個64進制的隨機數,轉化成6 bit的二進制數,將每組數的最高位和第2位進行差分編碼。編碼后的數按誤碼增值最小的“鏡像/旋轉對稱型邏輯映射”映射為同相正交數據,繪制星座圖。圖11為初始星座圖。設置采樣頻率Fs=210 MHz,碼速率ps=30 Mbps,Fs/ps為內插因子,分別對同相正交支路升采樣,開平方根升余弦濾波器滾降系數為0.35,載波頻率70 MHz。將同相正交支路信號相加,生成64QAM已調信號。波形如圖12所示。
圖11 初始星座圖
DD算法載波環(huán)路需要獲取到位定時信號,且只有獲取到正確的位定時信號的前提下,環(huán)路才能正常鎖定[5]。Gardner位同步環(huán)路可以在載波相位未同步的情況下完成鎖定,位同步信號sync作為DD算法鑒相模塊的輸入信號。完成模塊關聯(lián),讀取64QAM已調信號的txt文件,實現載波恢復。時鐘周期為4.7 ns(210 MHz),仿真時間單位為ns級,在400個時鐘周期后復位信號從高電平1變?yōu)榈碗娖?,系統(tǒng)開始工作。圖13為系統(tǒng)解調結果。
圖12 原始64QAM已調信號波形
圖13 系統(tǒng)解調結果
載波恢復的結果比較理想,在仿真時間14 000 ns時,環(huán)路完成鎖定,穩(wěn)態(tài)相差基本不變,沒有比較明顯的波動。位同步模塊中分數間隔很快能保持穩(wěn)定,定時誤差信號在零值附近很小波動。將最后的I、Q路信號寫入txt文件中,在Matlab中調用,繪制星座圖,得到圖14。
圖14 載波恢復星座圖
本文對64QAM載波恢復算法進行分析,并且對位同步算法實施仿真,在Vivado中設計各個模塊的FPGA可實現電路。經過系統(tǒng)測試,結果說明基本能實現載波恢復,具有很小的穩(wěn)態(tài)相差。波形結果和星座圖的恢復,表明64QAM已調信號順利實現解調,進一步證明了論文所設計的系統(tǒng)的正確性。
[1] 姚彥.多電平正交調幅的集映射與差分編碼[J].電信科學,1987(7):28-30.
[2] 胡楠.高階QAM數字快速解調及電路設計[D].成都:電子科技大學,2008.
[3] 夏文娟.基于高階QAM的載波恢復方法的研究與實現[D].合肥:合肥工業(yè)大學,2013.
[4] 杜勇.數字調制解調技術的MATLAB與FGPA實現[M].北京:電子工業(yè)出版社,2015.
[5] WANG P,FAN P Z.New carrier recovery method for 16-QAM system based on full constellation points[J].Journal of Southwest Jiaotong University(English Edition),2007(3):187-191.