摘 要: 提出了一類新的串行級聯(lián)卷積碼解碼算法中外信息交換方法,并通過計算機仿真的方法比較了它與傳統(tǒng)外信息交換方法的性能表現(xiàn),顯示了它的優(yōu)越性。
關鍵詞: 串行級聯(lián)卷積碼(SCCC) MAP算法 外信息交換
1993年,C.Berrou提出了Turbo Code(并行級聯(lián)卷積碼)這一全新的編碼方式,得到了逼近香濃極限的誤碼性能表現(xiàn)。之后,許多學者對這種新型的碼作了大量的研究,對它進行了多方面不斷的改進,最大可能的挖掘它的糾錯潛力。在分量碼解碼上分別出現(xiàn)了MAP、SOVA、Log-MAP、Max-Log-MAP等算法;分量碼的選擇上有卷積碼、RS碼、線性分組碼等;解碼結構有C.Berrou結構和P.Robertison結構。1996年,S.Benedetto把“Turbo”的解碼概念引入傳統(tǒng)的級聯(lián)碼中得到了一類SCCC(串行級聯(lián)卷積碼),在文獻[1][2]中分別給出了理論分析和計算機仿真結果,認為SCCC有著比Turbo Code更優(yōu)越的性能表現(xiàn)。本文的重點不在于這兩者之間的比較,而是通過改變SCCC解碼算法過程中的外信息交換方式使其性能有更進一步的提高。
1 SCCC的編解碼結構
類似于Turbo Code,SCCC碼編碼器也是由分量碼編碼器和交織器組合而成,只是結構上有區(qū)別。圖1是它們的示意圖。
圖1中SCCC碼的速率為1/3。一般的,編碼器1是普通的非系統(tǒng)非遞歸卷積碼,稱為外碼;編碼器2是系統(tǒng)遞歸卷積碼,稱為內(nèi)碼。編碼器1以1/2速率進行編碼,輸出碼字經(jīng)過交織器作為信息碼字輸入編碼器2進行2/3編碼。有時,為了得到高速率的碼,在兩個編碼器之間會加入一個穿孔器。
S.Benedetto在文獻[2]中給出了基于SISO的SCCC解碼器結構,如圖2所示。
圖2中SISO是分量碼的解碼器,具體的解碼算法可以是MAP、Log-MAP、Max-Log-MAP、SOVA等。本文中使用的是MAP算法。P(U;I)是輸入信息字似然值,P(C;I)是輸入碼字似然值,P(U;O)是輸出信息字似然值,P(C;O)是輸出碼字似然值。從圖中可以看出,SCCC碼的解碼結構是一種非對稱的結構。所以在解碼的過程中分量碼解碼器的功能會有所不同。SISO1是內(nèi)碼解碼器,它接收解調(diào)器輸出作為碼字似然值的輸入,結合外信息進行解碼;輸出信息字似然值通過解交織器作為外信息量輸入給SISO2——外碼解碼器的輸入碼字似然值端口,輸出碼字似然值再回環(huán)給SISO1作為外信息量。下面給出SISO內(nèi)的解碼算法和兩種不同的外信息量計算方式。
2 兩種不同的外信息量計算方式
P.Robertson在文獻[3]中詳細地論述了MAP算法,我們這里就不再重復,只是給出了在推導過程中要用到的一些公式:
定義
其中Rk是接收碼字,不妨設Rk=(xk,yk),αk(m)是前向迭代系數(shù),βk(m)是后向迭代系數(shù)。這里要特別一提的是對SISO1來講Rk是接收的解調(diào)器輸出;對SISO2來講Rk是SISO1的解碼輸出,是Uk的重新組合。為了論述方便,這里不加以區(qū)分,由前所述,兩個分量碼解碼器的功能不一樣。對SISO1,我們關心的是它的輸出信息字似然值:
當輸入外信息Z1(k)作為先驗概率代入計算公式時(4)式中的L(uk)可表示為:
(5)式中的第一項作為本次解碼產(chǎn)生的外信息量傳給SISO2。實際上,對SISO2來講,接收的是碼字序列,它在計算輸出信息字似然值的同時,要進行碼字似然值的刷新。即要計算輸出碼字似然值:
其中wt是本次解碼增加的信息量,σ12是所估計的方差,mt是所估計的均值。從分析可以看出,wt完全是由內(nèi)碼的編碼約束產(chǎn)生的。在迭代的初期,隨著迭代次數(shù)的增加wt應該是遞增的。但如果迭代是收斂的,wt應該趨于一個穩(wěn)定的值。我們認為,怎樣從L(tk)中抽取一個合適的量作為本次迭代產(chǎn)生的外信息量決定了解碼算法的性能。文獻[2]中把wt作為外信息量傳給SISO1,而SISO1直接把wt作為先驗信息代入本次迭代,我們稱之為簡單交換法。文獻[2]中仿真的結果都是在長幀和低信噪比的情況下得到的,性能要比PCCC好,很重要的一點是消除了(或者說是降低了)PCCC的錯誤平臺效應。但在我們要尋找一種更適合實際應用、幀長較短的SCCC碼的時候,發(fā)現(xiàn)短幀SCCC碼在信噪比較高的時候,迭代算法有不收斂的現(xiàn)象。即在迭代次數(shù)增加的時候,誤碼率反而會增加。分析認為,解碼算法中把SISO2的輸入認為是高斯分布的,解碼中要進行均值估計和方差估計。由于幀長較短,估計中造成一定的偏差,幾次迭代以后,分布會發(fā)生變化,導致估計的進一步偏差,導致wt收斂過程中的波動現(xiàn)象。這要求外信息的交換方法能夠抑制單次外信息對迭代過程的影響。我們提出一種平均交換法,即SISO2把wt傳給SISO1,而SISO1把歷次的wt進行平均后作為本次迭代的先驗信息。
3 計算機仿真
計算機仿真主要是比較兩種方法下wt的收斂過程。其實就是在不同SNR的情況下BER隨迭代次數(shù)的增加而變化的情況。包括收斂速度的快慢、收斂的穩(wěn)定性、是否有正反饋等。同時,比較兩種方法能達到的糾錯性能下限,以確定那種方法更有糾錯潛力可挖。
仿真在AWGN信道進行,SCCC碼的編碼速率是1/4。外碼采用1/2的非系統(tǒng)非遞歸卷積碼,約束長度為3,編碼多項式為(5,7);內(nèi)碼為1/2的系統(tǒng)遞歸卷積碼,約束長度為4,反饋多項式為015,前饋多項式為017;交織器采用比特翻轉交織器;一幀的信息比特長度是690,外碼加2個尾比特,則交織器的長度為1384,內(nèi)碼編碼不加尾比特,則編碼后的長度是2768。因為是在AWGN信道,仿真中沒有用到信道交織。它的編碼示意圖如圖3所示。
下面圖4、圖5分別是信噪比為1.5dB和2.0dB交換方式的誤碼率隨迭代次數(shù)的變化曲線。
從圖中可以看到,當?shù)螖?shù)達到一定的門限時(1.5dB時為5次;2.0dB時為4次),迭代次數(shù)的增加對誤碼率的降低已無明顯的效果。但總的來說,沒有正反饋的現(xiàn)象。同時我們看到,在相同的信噪比下,平均交換方式的糾錯能力要比簡單交換方式好。
圖6、圖7分別是信噪比為2.5dB和3.0dB交換方式的誤碼率隨迭代次數(shù)的變化曲線。
從圖中可以看出,在大信噪比的時候,通過很少的迭代次數(shù)(3次)就能達到很好的誤碼率。在實際應用中有利于實時的解碼處理。但簡單交換方法存在嚴重的正反饋現(xiàn)象。相比而言,平均交換方法要好多了,特別是在2.5dB的時候,已無正反饋現(xiàn)象。但在更大信噪比的時候,還是有一定的正反饋存在。同樣,平均交換方式的糾錯性能下限要比簡單交換方式好一個數(shù)量級左右。
從前面的分析可以看出,平均交換在誤碼性能上要比簡單交換好。在小信噪比的時候,兩者都無正反饋現(xiàn)象。在大信噪比的時候,兩種方法都經(jīng)過較少次數(shù)的迭代就能得到較好的誤碼率,有利于實際應用;缺點是兩者都存在正反饋現(xiàn)象(特別是在3.0dB時)。很重要的一點是,外信息平均交換方法提供了一個比簡單交換方法優(yōu)越的誤碼率性能下限,更有糾錯潛力可挖。當結合采用動態(tài)迭代方法,及時檢測到正反饋的發(fā)生而終止迭代過程時,平均交換方式是一種非常好的方法。
參考文獻
1 S.Benedetto,D.Divsalar,G.Montorsi, F.Pollara.A Soft-Input Soft-Output Maximum A Posteriori(MAP) Module to Decode Parallel and Serial concatenated Codes.TDA Progress Report,1996;(15):42~127
2 S.Benedetto,D.Divsalar,G.Montorsi,and F.Pollara.Serial concatenation of Interleaved Codes: Performance Analysis, Design, and Iterative Decoding.TDA Progress Report, 1996;(15):42~126
3 J.Hagenauer,P.Robertson.Iterative (″TURBO″) Decoding of Systematic Concolutional Codes with the MAP and SOVA Algorithms.