成亞勇
(中國電子科技集團公司第五十四研究所,河北 石家莊 050081)
?
4D-8PSK-TCM高效譯碼算法研究
成亞勇
(中國電子科技集團公司第五十四研究所,河北 石家莊 050081)
摘要:4D-8PSK-TCM是空間數據咨詢委員會(CCSDS)針對SFCG在EESS 8 025~8 400MHz頻帶調制的空間條件下,給出的高效率編碼調制標準。針對CCSDS提出的4D-8PSK TCM標準,研究了低復雜度的譯碼算法和實現方法。根據設計的譯碼算法,用C++實現了對4個譜效率(2.00bits/symbol,2.25bits/symbol,2.50bits/symbol,2.75bits/symbol)的軟件仿真,并用FPGA進行了硬件實現。通過軟件仿真結果,對其進行了性能的分析,發現在不損失編碼增益的前提下,采用“輔助網格”這種低復雜度的譯碼算法可實現快速高效譯碼。通過硬件實現可以知道本方案也具有較大的資源開銷。
關鍵詞:多維星座網格編碼調制;TCM;輔助網格;維特比;FPGA
0引言
80年代初,Ungerboeck根據調制解調與糾錯編碼的特點,提出了一種新的思想,稱作網格編碼調制,記為TCM[1](Trellis Coded Modulation),它是將調制解調與糾錯碼組合成一個整體。這樣的調制方法可以顯著提高系統的性能。它的中心思想是:采用編碼方法對信號空間做最佳分割,使得已調信號矢量端點有最大的距離,同時采用足夠多的信號矢量以保證信息傳輸速率,這樣就可以在保證信息傳輸速率的同時降低接收端的誤碼率。之后,G.D.Forney首次引入了多維編碼調制理論[2]。1990年,Pietrobon又提出了另一種基于MPSK調制的多維TCM(簡稱LD-MPSK-TCM)的集分割方法,它比通常的TCM具有許多優點:碼率靈活、容易獲得相位旋轉不變性、高調制效率等。
本文重點對譯碼算法中的輔助網格法和維特比算法進行了研究。根據CCSDS提出的4D-8PSK TCM標準,給出了軟硬件實現方法,并給出了主要的硬件設計和硬件平臺實測結果,穩定工作的吞吐量可以達到100 Mbps以上。
1TCM原理
TCM將普通的碼率R=k/(k+1)的二進制卷積碼和M進制信號星座圖(M=2k+1>2)相結合,使得編碼增益可以不通過增加符號發送的速率獲得。設計TCM系統的3個重要的概念:信號星座圖的擴展、調制信號點的集分割和調制信號點集的映射規則。信號點的集分割是TCM方案構造的核心。集分割是將信號集劃分為包含信號點數相同的較小子集,并使分割得到的子集內的信號點之間的最小歐式距離得到最大限度的增加。每次分割都是將一個較大的信號集分割成較小的2個子集的過程[3],每經過一次分割,子集內的信號點之間的距離也相應的增加[4]。
2譯碼器設計實現
譯碼器將從信道接收到的信號送到輔助網格模塊,計算出它的平行分支度量,再將度量值傳入Viterbi模塊進行譯碼,而后將譯出的信號點經過星座逆映射得到原始發送碼字,最后再做一步差分譯碼,即可完成整個TCM碼字的譯碼[5]。
2.1輔助網格法
輔助網格法[6]的命名主要是為了和卷積碼的主網格加以區分,它是從映射方程構造出來的[7],是基于直接法的一種簡化計算[8]。對CCSDS標準下的4D-8PSK TCM星座映射器進行觀察,可以發現對于未編碼的比特,在不同的路徑總會形成一個網格,這個網格即為輔助網格。
對8PSK每個星座點進行編號,分別為000、001、010、011、100、101、110、111,而后進行分類{C0,C1,C2,C3},其中每個子集各包含2個星座點,分類如下:C0={000,100},C1={001,101},C2={010,110},C3={011,111}。
這樣的子集劃分有兩點優勢:一是簡化計算歐式距離,二是構造輔助路徑。
2.1.1子集劃分對歐式距離的簡化

令(x,y)為接收的信號點,令(x1,y1)、(x2,y2)為2個需要比較的星座點。df(1)與df(2)分別表示接收信號點與(x1,y1)和(x2,y2)的歐式距離。由于都有根號,對于比較距離大小時可以同時去掉,不予計算。





這樣只要知道參與計算的星座點坐標就可直接計算,省去了平方運算,而且每一個歐式距離只使用了一次乘法器,在硬件實現中大大減少資源開銷。
2.1.2對輔助網格的作用
由于4D網格很大,僅以2D為例,星座映射關系如下:

我們注意到,當輸入連續信息序列的時候,維特比譯碼模塊的主網格可能是無限長的,但是這里僅討論具有有限長度的輔助網格。輔助網格的長度也等于每個時間間隔產生的輸出調制信號個數。如圖1(a)所示的例子中,輔助網格(每個時間間隔產生的調制信號)的長度L= 2,它以卷積碼的輸出作為輔助網格的狀態值,對于每個狀態x2x1x0的可能組合,都有8組平行路徑,而每組平行路徑中又包含8條單個的路徑。


圖1 2D-TCM輔助網格圖
如圖1所示,輔助網格算法按如下步驟進行:
① 接收第1個信號符號,進行第一步的硬判決。在子集C0集內,有信號符號0、4。計算第1個接收信號和接收符號的歐式距離。選擇0、4中的歐式距離最小的點,并記錄度量值。對子集C2進行同樣的操作。
② 接收第2個信號符號,重復步驟①。但是這時用于比較的度量是累積度量值。
③ 經過以上2個步驟后,2條平行路徑都匯聚到相同的狀態000。然后,進行一次選擇比較。
具體地,以z=[x2x1x0] =[0 0 0]為例,說明輔助網格的計算方法:
步驟1:接收第1個信號r0。在C0中的0、4信號點中選擇一個與接收信號r0歐式距離最小的信號點。記錄該信號點Z0,0和其度量值m0,0。在信號集C2中,用同樣的方法選擇信號點2、6中歐式距離最小的信號點Z1,0,記錄其歐式距離的度量值m1,0。
步驟2:接收第2個信號r1。重復步驟1。在C0中的0、4信號點中選擇一個與接收信號r1歐式距離最小的信號點。記錄該信號點Z0,1和其度量值m0,1。在信號集C2中,用同樣的方法選擇信號點2、6中歐式距離最小的信號點Z1,1,記錄其歐式距離的度量值m1,1。
步驟3:到此為止,2條路徑匯聚到同一個狀態000,計算累積度量并比較,選出一條最優的路徑。第1條輔助路徑C0C0的路徑累計值為M0=m0,0+m0,1,第2條輔助路徑的路徑累積量度值為M1=m1,0+m1,1。如果M0
以上3個步驟重復對8個狀態執行,對于每個狀態,選定平行路徑中的唯一一條路徑。這樣,網格圖由于平行路徑刪減為一條而變成傳統維特比譯碼算法時的網格圖。接下來,只要按照傳統的維特比譯碼算法進行譯碼即可。
表1給出了輔助網格法和直接計算法計算平行路徑的算法復雜度對比情況。
從表1可知,輔助網格的譯碼可以節省很多的計算,在硬件實現中可以大量節約硬件資源,使得4種譜效率都能得以實現;如果采用直接法,譜效率為2.75的情況是不可硬件實現的。

表1 輔助網格和直接法的復雜度比較
2.2Viterbi譯碼算法
TCM中的卷積編碼器[9]用網格(Trellis)圖來表示狀態和時間的關系[10],其譯碼算法是基于維特比譯碼算法[11]的,維特比譯碼算法是一個最大似然譯碼算法[12],它將接收序列與各個路徑進行比較,通過網格圖搜索以找到最有可能產生這個接收序列的路徑。
Viterbi的核心模塊為加比選模塊。4D-8PSK-TCM中的卷積碼有64個狀態,每個狀態都有一個記錄自己距離的度量值PMi,每一個狀態有8個輸入有8個路徑度量值,對應的加比選公式:


3仿真驗證
為了驗證輔助網格法和維特比相結合的譯碼算法,對譜效率分別為2.0、2.25、2.5、2.75的誤碼性能與2.5、2.75的量化性能進行仿真,4個譜效率的仿真性能曲線以及量化性能對比如圖2所示。
圖2(a)為4種譜效率采用viterbi算法浮點計算的性能曲線;圖2(b)為viterbi算法浮點計算與6bit(3位小數)均勻量化計算的性能對比。通過仿真可以得到如下結論:在BER為10-5時,譜效率2.0~2.75bits/symbol的4D-8PSK-TCM采取viterbi算法譯碼分別可以獲得6.9dB、6.3dB、5.6dB、4.9dB左右的性能增益;譜效率2.5bits/symbol和2.75bits/symbol兩種情況下采用6bit(3bit小數)量化方案實際會有0.5~0.3dB左右的性能損失。


圖2 軟件仿真結果
工程實現采用Xilinx Virtex 6系列產品xc6vlx240t芯片的硬件平臺,使用Xilinx ISE Design Suite 14.6為開發工具,利用Verilog HDL語言進行設計實現。表2說明了在上述實驗環境中不同譜效率的資源占用情況。

表2 不同譜效率的資源消耗 單位:(°)
從資源占用情況可以看出碼率越大消耗的資源越多。穩定的時鐘頻率定為200MHz,低倍頻為50MHz,每一時刻可以接收到8、9、10、11bits的輸出,回溯又會花去一半的時間,所以最后速率為:

這意味著碼率越高速率越快,也就是說碼率11/12的譯碼器雖然資源消耗多但速率最快,相對而言碼率11/12的更能滿足CCSDS的高速率的標準。
4結束語
4D-8PSK-TCM在提高頻帶利用率的情況下,有著良好的誤碼性能,并且本身還具有克服45°相位模糊的特性,有效地簡化了接收端的復雜度,同時輔助網格的引入大大簡化了維特比譯碼過程中的路徑度量計算,而且這種譯碼算法的復雜度優化,并不影響系統的誤碼性能,但它對資源的大量消耗是一個需要解決的問題。
參考文獻
[1]Ungerboeck G.Trellis-coded Modulation with Redundant Signal Sets Part I:Introduction[J].IEEE Communications Magazine,1987,25(2):5-11.
[2]Forney G D,Wei L F.Multidimensional Constellations)PartI:Introduction,Figures of Merit,and Generalized Cross Constellations[J].IEEE Journal in Selected Areas Communication,1989,7(6):877-892.
[3]徐珂穎.多維TCM及其在空時編碼中的應用[D].西安:西安電子科技大學,2008:7-20.
[4]WEI L F.Trellis-Coded Modulation with Multidimensional Constellations[J].IEEE Transactions on Information Theory,1987,IT-33(4):483-501.
[5]Bandwidth-efficient Modulations[R],CCSDS 413.0-G-1,GREEN BOOK,2003:36-47.
[6]黃元達,熊蔚名,孫輝先.采用輔助網格的4D-8PSK-TCM維特比譯碼[J].空間科學學報,2008,28(6):578-583.
[7]He Jinjin,Wang Zhong,Liu Huaping.An Efficient 4-D 8PSK TCM Decoder Architecture[J].IEEE Transactions on Very Large Scale Integration Systems,2010,18(3):55-58.
[8]Servant D.Design and Analysis of a Multidimensional Trellis Coded Demodulator[D].Sweden:KTH,Stockholm,2004:23-35.
[9]王育民,李暉,梁傳甲.信息論與編碼理論[M].北京:高等教育出版社,2013.
[10]He Jinjin,Liu Huaping,Wang Zhongfeng.A Fast ACSU Architecture for Viterbi Decoder Using T-Algorithm[J].IEEE Signals,Systems and Computers,2009,4(12):86-89.
[11]丁文銳,劉添君,熊小軍.改進型全并行Viterbi譯碼器設計與實現[J].無線電工程,2009,39(11):49-51.
[12]元鋒剛,許海濤.802.11b中卷積碼和Viterbi譯碼的FPGA設計實現[J].無線電工程,2012,42(1):51-53.
Research on Efficient Decoding Algorithm of 4D-8PSK-TCM
CHENG Ya-yong
(The 54 th Research Institute of CETC,Shijiazhuang Hebei 050081,China)
Abstract:4D-8PSKTCM is the standard of highly efficiencient modulation scheme recommended by CCSDS for the applications within 8 025~8 400MHz.And a low-complexity decoding method is proposed for the recommended coding scheme above.According to the decoding algorithm designed,the software and hardware simulationshave been implementedwithC++ and FPGA separately for the four spectral efficiency(2.00,2.25,2.50 and 2.75bits/symbol).Then an analysis on the BER performance is given.From the simulation results,we can see that this low-complexity decoding method,known as “auxiliary trellis”,can greatly reduce the number of comparing units,thus leading to efficient decoding,while this algorithm has high resource consumption.
Key words:Multi-dimensional trellis modulation;TCM;auxiliary trellis;Viterbi;FPGA
中圖分類號:TN911.22
文獻標志碼:A
文章編號:1003-3114(2016)03-14-4
作者簡介:成亞勇(1976—),男,高級工程師,主要研究方向:航天測控、數字信號處理。
收稿日期:2016-01-23
doi:10.3969/j.issn.1003-3114.2016.03.04
引用格式:成亞勇.4D-8PSK-TCM高效譯碼算法研究[J].無線電通信技術,2016,42(3):14-17.