Turbo碼特點及應(yīng)用分析
在設(shè)計交織器時,應(yīng)考慮具體應(yīng)用系統(tǒng)的數(shù)據(jù)的大小,使交織深度在滿足時延要求的前提下,與數(shù)據(jù)大小一致,或是數(shù)據(jù)幀長度的整數(shù)倍。本文引用地址:http://2s4d.com/article/155109.htm
交織器和分量碼的結(jié)合可以確保Turbo碼編碼輸出碼字都具有較高的漢明重量。在Turbo編碼器中交織器的作用是將信息序列中的比特順序重置。當信息序列經(jīng)過第一個分量編碼器后輸出的碼字重量較低時,交織器可以使交織后的信息序列經(jīng)過第二個分量編碼器編碼后以很大的概率輸出較高重碼字,從而提高碼字的漢明重量:同時好的交織器還可以奇效地降低校驗序列間的相關(guān)性。因此,交織器設(shè)計的好壞在很大程度上影響著Turbo碼的性能。
交織器的類型可以分為兩大類,一是規(guī)則交織器,也稱確定性交織器,其交織器的映射函數(shù)可以由一個確定的解析函數(shù)給出。二是隨機交織器,其映射函數(shù)不能由-個確定的解析表達式給出。
Turbo 碼常用的交織器包括以下幾種:分組交織器、隨機交織器、s-隨機交織器等等。
3. 刪余技術(shù)
對于數(shù)字通信領(lǐng)域日益緊張的帶寬資源,提高碼率就意味著節(jié)省帶寬和降低通信費用。刪余(Puncturing)是目前提高Turbo碼碼率的主要方法。
Turbo 碼中,刪余器通常比較簡單,因為在一般的應(yīng)用中,碼率都是在1/2 或者1/3 ,因此即使有刪余器,它一般也只是周期性的從兩個分量編碼器中選擇校驗比特輸出即可。其具體做法是:從兩個RSC編碼生成的校驗序列中周期地刪除一些校驗位,然后再與未編碼的信息序列復(fù)用重組成最后的編碼輸出序列,調(diào)制后進入信道傳輸。若信息序列為d1 =(C11) ,長度為N ,那么兩個RSC分量編碼器的輸出為:
Turbo碼 圖3. 6 所示示為采用了刪余技術(shù)的編碼結(jié)構(gòu),若取RSC1輸出的奇比特和RSC2的偶比特,即采用刪余矩陣P= [ 10,01] , 那么編碼輸出長度為2N,碼率提高為1/2的序列為Cp.
Turbo碼 兩個分量碼編碼器的輸出經(jīng)過刪余得到的序列被稱為奇偶序列,是校驗序列。一個好的刪余算法應(yīng)該符合以下幾點要求:
1) 不能刪除信息位.刪除信息位會造成較大的信息損失,從而使誤碼率有較大的損失;
2) 刪余應(yīng)該在時間域上均勻進行,刪余同一時刻所有的比特位會造成此時刻信息損失較大,影響誤碼率;
3) 刪余應(yīng)該對于各分量碼均勻進行,從而使信息的損失均勻分布在各分量碼上,避免由于信息損失不均勻?qū)е路至看a譯碼性能下降。
譯碼原理
香農(nóng)信息論告訴我們,最優(yōu)的譯碼算法是概率譯碼算法,也就是最大后驗概率算法(MAP)。但在Turbo碼出現(xiàn)之前,信道編碼使用的概率譯碼算法是最大似然算法(ML)。ML算法是MAP算法的簡化,即假設(shè)信源符號等概率出現(xiàn),因此是次優(yōu)的譯碼算法。Turbo碼的譯碼算法采用了MAP算法,在譯碼的結(jié)構(gòu)上又做了改進,再次引入反饋的概念,取得了性能和復(fù)雜度之間的折衷。同時,Turbo 碼的譯碼采用的是法代譯碼,這與經(jīng)典的代數(shù)譯碼是完全不同的。
Turbo 碼的譯碼算法是最早在BCJR 算法的基礎(chǔ)上改進的,我們稱以MAP算法,后來又形成Log-MAP算法、Max-Log-MAP以及軟輸入軟輸出(SOVA)算法。
Turbo碼 Turbo 碼的譯碼結(jié)構(gòu)圖
1.Turbo 碼的譯碼結(jié)構(gòu)如圖所示. Turbo 譯碼器有以下的特點:
1) 串行級聯(lián)
2) 迭代譯碼
3) 在迭代譯碼過程中交換的是外部信息
2. 概率譯碼譯碼原理及結(jié)構(gòu)
譯碼時首先對接收信息進行處理,兩個成員譯碼器之間外部信息的傳遞就形成了一個循環(huán)迭代的結(jié)構(gòu)。由于外部信息的作用,一定信噪比下的誤比特率將隨著循環(huán)次數(shù)的增加而降低。但同時外部信息與接受序列間的相關(guān)性也隨著譯碼次數(shù)的增加而逐漸增加,外部信息所提供的糾錯能力也隨之減弱,在一定的循環(huán)次數(shù)之后,譯碼性能將不再提高。
譯碼算法
如前所述,turbo碼需要一種軟輸入軟輸出的譯碼算法。軟輸出譯碼器的輸出不僅應(yīng)包含硬判決值,而且包括做出這種判斷的可信程度。
Turbo碼 譯碼算法應(yīng)該考慮到三方面的問題,及外信息的引入;如何在迭代譯碼中充分利用各類信息,防止簡單正反饋的形成,確保算法收斂;充分利用碼原件的相關(guān)信息。常見的算法有一下幾種:
1. 標準MAP算法
是對bahl軟輸出算法做一定修正后,通過除以先驗分布來消除正反饋的算法。對于約束長度為M 1的卷積碼,其運算量為每比特6x3^M次乘法和5x2^M次加法。由于乘法運算量大,限制了譯碼的規(guī)模和速度。
2. Log-MAP算法
實際上就是對標準MAP算法中的似然全部用對數(shù)似然度來表示,這樣,乘法運算變成了加法運算??偟倪\算量成為6x2^M次加法,5x2^M次求最大運算和5x2^M次查表。
評論