李婉,李建平
(中國傳媒大學信息工程學院,北京 100024)
?
LTE系統咬尾卷積碼的概率-代數聯合譯碼算法
李婉,李建平
(中國傳媒大學信息工程學院,北京 100024)
摘要:充分利用咬尾卷積碼編碼器的線性信息,將WAVA這種概率譯碼同代數譯碼算法進行級聯,得出一種新的復雜度較低的概率-代數聯合譯碼算法,經仿真得出,該算法使得咬尾卷積碼的糾錯性能較單一概率譯碼獲得進一步提升。
關鍵詞:咬尾卷積碼;環繞維特比算法;概率代數聯合譯碼
1引言
隨著移動通信技術的不斷發展及其用戶需求的逐年增加,移動通信系統必須滿足更大的系統容量,更低的成本以及更廣泛的覆蓋,支持多天線的系統要求。為此,3GPP提出了3GPP空中技術的長期演進(LTE)。在信道編碼技術上,LTE系統采用了咬尾卷積碼和Turbo碼[1]。
咬尾卷積碼是一種特殊的卷積碼。咬尾編碼就是用信息序列的最后幾個比特來初始化編碼器的寄存器。這樣在編碼結束的時候,編碼器的寄存器狀態和初始編碼時的狀態一樣,這就是所謂的咬尾[2]。咬尾編碼所能提供的優勢主要是能夠消除用已知比特來初始編碼器所導致的碼率損失。由于其編碼器和譯碼器結構相對簡單,處理延時小,主要應用于小碼塊控制信息和對時延敏感的數據傳輸,如LTE系統中的廣播信道和控制信道等低數據率信道[3]。
卷積碼的譯碼技術可以大致分為兩類:代數譯碼和概率譯碼。代數譯碼是利用編碼本身的代數結構進行譯碼,不考慮信道的特性。概率譯碼主要是基于信道統計特性進行譯碼,沒有充分考慮到卷積碼作為線性碼的代數結構關系。從信息論的角度分析,條件信息的不充分利用必然導致結論出現偏差。上述兩類譯碼算法對于卷積碼線性性質和信道特性信息的不充分利用也必然導致譯碼算法性能的降低[4]。
由于咬尾卷積碼的最優譯碼——最大似然(ML)譯碼的復雜度較高,實際應用中,通常采用一些次優譯碼算法。本文基于一種次優譯碼環繞維特比算法(WAVA)和代數譯碼中的反饋譯碼,參考文獻[4]中的概率-代數聯合譯碼方案,得出一種針對LTE系統的咬尾卷積碼的優化譯碼算法。該算法將傳統的分組碼的代數譯碼算法同WAVA這種概率譯碼算法結合起來,充分利用咬尾卷積碼的線性性質和信道統計信息,使其糾錯能力得到進一步提升,并通過仿真驗證了這一點。
2咬尾卷積碼的譯碼算法
咬尾卷積碼的譯碼算法有很多,比如較早的Bar-David算法和最大似然算法,以及后續的循環維特比算法(CVA)。本文采用的是基于CVA算法的低復雜度改進算法環繞維特比算法[5](WAVA)。其譯碼流程圖如圖1所示:

圖1 WAVA算法流程圖
循環維特比算法(CVA)輸出的總是具有最大度量路徑的碼字,但是當碼字的首尾比特受到噪聲的破壞比較嚴重時,具有最大度量的路徑首尾狀態將不再相等[6]-[8]。WAVA 方法有效地克服了這一情況。WAVA的譯碼過程如下:
1.設所有初始狀態SI的分支度量si=0(si∈SI);
2.對碼塊進行Viterbi譯碼,找出具有最大度量的路徑并檢測它的首尾狀態是否相等,即SI=SF是否成立;

4.在第i(i>1)次迭代開始時,用上次迭代結束時的狀態度量信息初始化第i-1次迭代的初始狀態度量,并對碼塊Viterbi譯碼,如果具有最大度量路徑的首尾狀態相同,則停止譯碼,否則,繼續步驟 5;
5.重復步驟4 直到找到具有相同首尾狀態的最優路徑,或是達到了最大迭代次數I;
6.如果最優路徑的首尾狀態不相等,則判斷其他路徑是否首尾狀態相等,如果找到這一路徑,則輸出對應的碼字,否則輸出具有最大度量的路徑。
代數譯碼是一類利用編碼本身的代數結構進行譯碼的算法。它利用卷積碼的線性特征,通過伴隨式指明接收碼組中的錯碼位置,從而糾正錯碼。這里首先介紹伴隨式的概念。(n0,k0,m)卷積碼的伴隨式S定義為
S=R*HT=(C+E)*HT=E*HT
(1)
其中C為發送的碼序列,E為信道的錯誤圖樣,R為接收到的碼序列,HT為卷積碼的校驗矩陣H的轉置。
當S全為0,說明此時間單位收到的子組(第0子組)前的第m子組內無錯,但不能說明第m-1子組至第0子組內無錯誤,因為第m-1至第0子組還與以后各子組間存在約束關系。因此,在to時刻求得的S,只能用于糾正其前m個時間單位的第m子組個錯誤。因而,卷積碼的伴隨式計算和譯碼是以子組為單位進行的,每一個時間單位,僅完成一個子組的譯碼。
卷積碼的代數譯碼就是從收到的序列R=C+E中,確定發送的序列C或是相應的信息序列M。這就要求譯碼器首先計算出伴隨式S,并由S計算出錯誤圖樣E。最后有C=R-E,對于二進制碼而言,即相當于C=R+E。
圖2中顯示了代數譯碼的一般工作原理[9]。

圖2 代數譯碼的一般工作原理
其工作過程大致如下:
1.由收到的序列R中分成兩個序列,信息序列M與校驗序列P。M序列送入信息緩存器中寄存,并送入伴隨式計算電路,通過一個與發端相同的編碼器,重新生成校驗元。將新的校驗元與收到的校驗序列進行比較,得到的結果送入伴隨式寄存器中。
2.當接收完第m+1段子組后,伴隨式寄存器中的伴隨式送入錯誤圖樣檢測器中,以確定此時刻前第m個時間單位內收到的子組(第0子組)的信息位內錯誤圖樣E。將錯誤圖樣E與之前寄存的信息序列M相減,即得到譯碼后的信息序列M’=M-E。
3.由于卷積碼的編碼過程中,第0子組的信息元會對其后m段子組的校驗元產生影響。為了消除錯誤碼元對其后譯碼產生的影響,需要將錯誤信息反饋給伴隨式進行修正。這種反饋修正的譯碼方式稱為反饋譯碼。若譯碼后不對伴隨式進行修正,則稱為定譯碼。
4.第0子組的信息元譯出后,其后的信息元也以同樣的方法依次譯碼。每接收n0個碼元,譯出k0個信息元。
5.若為非系統碼,則得到已糾過錯的碼段C后,再將其與生成矩陣的逆G-1相乘,得到信息組M。
咬尾卷積碼的概率代數聯合譯碼基本思路即是將概率譯碼——環繞維特比算法(WAVA)同代數譯碼結合起來形成新的級聯譯碼的形式。聯合譯碼算法的編碼器如圖3所示。其中m為輸入的信息序列,經過編碼器E1編碼得到d1,d2,d3三個校驗序列。同時另d3進入編碼器E2繼續編碼,輸出的碼字序列經過選擇器MUX,輸出新的校驗序列d4,此處,選擇器MUX起到了增信刪余的作用。由圖可以看出,經編碼后的碼字其碼率R=1/4。

圖3 聯合譯碼算法的編碼器結構
聯合譯碼算法的譯碼流程如圖4所示。收到的序列R首先經過環繞維特比譯碼,得到糾錯序列C’和信息序列M’,在經由代數譯碼得到最終的信息序列M。

圖4 聯合譯碼算法的譯碼器結構
這之中,WAVA算法主要利用信道統計信息,通過網格圖進行譯碼。這種譯碼方式比較充分地利用了信道統計信息,即概率信息,卻沒有對咬尾卷積碼編碼結構中的線性結構進行充分利用。為了彌補這一部分信息的不完全利用,進一步增大譯碼增益,需要在WAVA譯碼器后級聯一個代數譯碼器。代數譯碼器的譯碼原理即是通過碼字間的線性約束結構進行譯碼。由于卷積碼本身的編碼特性,當前譯碼的信息不僅對當前,還會對其后的m(m為卷積碼的約束長度)段碼字產生影響。故而在當前碼段譯出的同時,要添加一條反饋路徑,糾正后續碼組的伴隨式,來消除當前錯誤對后續譯碼的影響。
這種譯碼方式對于系統和非系統咬尾卷積碼同樣適用,且不會因為非系統碼沒有獨立信息位,而在代數譯碼的過程中增加對生成矩陣求逆的步驟。從而使代數譯碼部分較之經典的代數譯碼過程減少了時延。
值得一提的是,由于代數譯碼模塊的輸入是經環繞維特比譯碼后的糾錯序列,因而具有相對較低的誤碼率,即糾錯序列C’和信息序列M’中的錯誤比特可以認定為呈現零散分布狀態,在代數譯碼的糾錯能力之內。所以本聯合算法中采用反饋譯碼的形式,比之沒有反饋的定譯碼方式,進一步提升了糾錯性能。
3仿真實驗與結果分析
仿真在MATLAB平臺下進行,仿真所采用的咬尾卷積碼為LTE系統中所采用的咬尾卷積碼,碼率R為1/3,生成多項式g=(133,171,165)[10]其編碼器結構圖5所示。

圖5 咬尾卷積碼編碼器結構圖
仿真信道采用加性高斯白噪聲(AWGN)信道,調制方式為LTE系統中廣播信道(BCH)規定的QPSK調制。LTE系統中咬尾卷積碼作為低數據率編碼方案,其數據塊長度在20~60bit之間,仿真選取20和60bit的兩種數據塊,在信噪比為0~9db范圍內進行仿真。將接收端譯碼后的信息序列同發送的信息序列相比較,得到誤比特率。以傳統的環繞維特比譯碼結果為參照,將聯合譯碼結果同其對比,可得到仿真結果如圖6,7.由圖可以看出,隨著信噪比逐漸升高,聯合譯碼所帶來的增益也隨之變大,但在低信噪比條件下,聯合譯碼的糾錯性能低于傳統的WAVA譯碼。這是由于卷積碼本身的糾錯性能是有限的,它只能糾正有限個獨立隨機錯誤,當信噪比過低時,差錯可能會成串出現[9],卷積碼就無法保持其編碼增益,甚至出現“越糾越錯”的情況。但當信噪比大于3dB,即WAVA譯碼的輸出序列具有足夠低的誤碼率時,聯合譯碼的增益則呈現出逐漸增大的趨勢。同時,對比圖6和圖7可以看出,當數據塊增大時,聯合譯碼算法會獲得更大的增益。

圖6 WAVA和聯合譯碼的BER性能比較,N=20

圖7 WAVA和聯合譯碼的BER性能比較,N=60
4結論
本文的LTE系統咬尾卷積碼概率-代數聯合譯碼在咬尾卷積碼的環繞維特比算法基礎上,利用了卷積碼編碼器的線性結構,級聯了反饋譯碼的代數譯碼模式,提升了譯碼性能。從仿真結果圖6,7中可以看出,在信道中信噪比增加時(誤比特率降低)或數據塊N變大時,聯合譯碼算法帶來的增益更大。本聯合譯碼算法相比于傳統的概率譯碼算法帶來了較為明顯的譯碼增益,可以適用于LTE系統的各類低數據率信道,同時本算法以卷積碼的譯碼算法為基礎,可以擴展到以卷積碼為基礎的Turbo碼等各類級聯碼譯碼算法中,實現更加廣泛的應用。
參考文獻
[1]3GPP TS 36.212 v8.8.0,multiplexing and channel coding [S]. Geneva:3GPP,2009.
[2] Shao R Y. Decoding of linear block codes based on their tailbiting trellises and efficient stopping criteria for turbo decoding[D].Univ of Hawaii at Manoa,Honolulu,HI,1999.
[3]陳發堂.LTE系統中咬尾卷積碼的編譯碼算法仿真及性能分析[J].計算機應用研究,2010,27(09):3338-3340.
[4]李建平.Turbo碼概率-代數聯合譯碼算法[J].電子學報,2003,31(12):1847-1850.
[5]Shao R Y,Shu Lin,Marc P C.Two decoding algorithms for tailbiting codes[J].IEEE Trans on Communications,2003,51(10):1658-1665.
[6]Wang Q,Bhargava V K. An efficient maximum likelihood decoding algorithm for generalized tail biting convolutional codes including quasi-cyclic [J]. IEEE Trans on Communications,1989,37(8):875-879.
[7]Ma H H,Wolf J K.On tailbiting convolutional codes[J]. IEEE Trans Commun,1986,34:104-111.
[8]Cox R V,Sundberg C E. An efficient adaptive circular Viterbi algorithm for decoding generalized tailbiting convolutional codes[J].IEEE Trans Veh Technol,1994,(43):57-68.
[9]王新梅.糾錯碼——原理和方法[M].西安:電子科技大學出版社,2001:394-398.
[10]3GPP TS 36.212-3rd-2009,Generation Partnership Project;Technical Specification Group Radio Access(E-UTRA);Multiplexing and Channel Coding(Release 8)[S]. Sophia Antipolis Valbonne:3GPP,2013:11-13.
(責任編輯:王謙)
Joint Probability-algebraic Decoding for Tail-biting Codes Uused in LTE System
LI Wan,LI Jian-ping
(Information Engineering School,Communication University of China,Beijing 100024,China)
Abstract:To fully make use of the information on the algebra structure of the tail-biting codes,we combined the WAVA algorithm with the algebraic decoding,and propose a new joint probability-algebraic decoding algorithm. Simulation results show that,compared with the single probability decoding,the new algorithm has better performance on the error correction.
Keywords:tail-biting codes;WAVA;joint probability-algebraic decoding
作者簡介:李婉(1990-),女(漢族),遼寧省葫蘆島人,中國傳媒大學碩士研究生.E-mail:liwancuc@163.com
收稿日期:2015-09-09
中圖分類號:TN911.22
文獻標識碼:A
文章編號:1673-4793(2015)05-0035-05