Turbo碼特點及應用分析
3. Max-Log-MAP算法本文引用地址:http://2s4d.com/article/155109.htm
是在上述對數(shù)域的算法中,將似然值加法表示式中的對數(shù)分量忽略,是似然加法完全變成求最大值運算,這樣除了省去大部分的加法運算外,最大的好處是省去了對信噪比的估計,使得算法更穩(wěn)健。
4. 軟輸出維特比譯碼(SOVA)
其運算量為標準維特比算法的兩倍。維特比算法是最大似然序列估計算法,但由于在它的每一步都要刪除
Turbo碼一些低似然路徑,為每一狀態(tài)只保留一條最優(yōu)路徑,它無法提供軟輸出。為了給他輸出的每個比特賦予一個可信度,需要在刪除低似然路徑是做一些修正,以保留必要的信息。其基本思想是利用最優(yōu)留存路徑和被刪路徑的度量差,這個差越小意味著這次算去的可靠性越好。然后用這個差去修正這條路徑上各個比特的可信度。
性能仿真比較
目前Turbo 碼的大部分研究致力于在獲得次優(yōu)性能的情況下減小譯碼復雜度和時延,從而得到可實現(xiàn)的Turbo碼系統(tǒng)。
1. 幾種主要譯碼算法的性能比較
Turbo碼 譯碼算法對Turbo碼的影晌
對MAP算法、Log-MAP算法、Max-Log-MAP算法和SOVA算法在加性高斯白噪聲信道(AWGN)環(huán)境下進行仿真比較,系統(tǒng)采用的是BPSK調(diào)制方式,Turbo 碼的交織長度是1024 , RSC子碼的生成多項式為(37,21) ,系統(tǒng)編碼率為R=1/2,譯碼時迭代5次,結果以曲線圖給出如圖。 仿真結果表明,四種算法中,MAP算法性能最好,Log-MAP 算法的性能跟MAP 算法在較低的SNRq時比較接近, 高信噪比時差別則較大。Max-Log-MAP算法和SOVA算法的性能十分接近,一般情況下,Max-Log-MAP算法的性能,總是稍優(yōu)于SOVA算法。它們跟MAP和Log-MAP相比,性能下降十分明顯。從算法復雜度而言,MAP算法最為復雜,Log-MAP 其次,之后是Max- Log-MAP ,SOYA算法最簡單。由此可以看出,性能優(yōu)異的Turbo碼譯碼算法十分復雜,如果要使得譯碼容易實現(xiàn)而對算法進行簡化或者是采用簡單的算法,往往需以性能的降低為代價。
2. 不同迭代次數(shù)對Turbo 碼性能的影響
迭代次數(shù)對Turbo碼的影響
Turbo碼 左圖給出了在不同解碼迭代次數(shù)下,碼率為1/ 2的Turbo碼的BER與Eb/N0的關系曲線。Turbo 碼的交織長度是1024 ,RSC 子碼的生成多項式為(37,21) ,系統(tǒng)編碼率為R=1/2。如Turbo碼譯碼原理中所述,兩個譯碼器之間互相交外部信息進行迭代。
Turbo碼可以得到,迭代譯碼次數(shù)增大,譯碼性能增加。在第一次迭代的誤比特性能都比較差,這是因為兩個分量譯碼器之間的信息還沒有被很好的相互利用。隨著迭代次數(shù)的增加,兩個分量譯碼器之間的外信息被更好的利用,對信息比特的估計更接近最大似然比,判決輸出的正確性就越高。迭代次數(shù)達到一定數(shù)值時,譯碼性能趨于穩(wěn)定,再增加新的迭代對性能的改善非常小。迭代增加了譯碼時延,在大幀編碼時尤其如此。仿真中迭代次數(shù)增大時運行時間顯著增加。
由于達到一定迭代次數(shù)后,新增加的迭代對性能改善不大,而法代又極大地增加譯碼時延,所以在實際設計Turbo碼系統(tǒng)時,需要選擇適當?shù)牡螖?shù),在允許的譯碼時延內(nèi),達到最佳的譯碼性能。這種預先規(guī)定迭代次數(shù)的方式是終止譯碼迭代次數(shù)的方法之一.當要求的信噪比比較大,誤碼率要求不太高的情況,往往經(jīng)過很少的幾次迭代就能達到譯碼要求正確譯碼。此時,如果預設迭代次數(shù)比較大,那么譯碼器會繼續(xù)譯碼,一直進行到預設次數(shù)的迭代為止.后邊的幾次送代并沒有明顯地提高性能,是完全不必要的,而且多余的法代食給譯碼帶來了額外的時延。
3. 不同編碼約束度K 對Turbo 碼性能的影響
不同的約束度對Turbo 碼性能的影響
采用不同子碼的Turbo碼的性能也有很大差別。Turbo 碼的設計中首先就是選擇好的RSC子碼。這里只對幾種常用的、較好的采用不同約束長度的RSC 做子碼的Turbo 碼進行仿真,以分析約束長度對Turbo 碼性能的影響??梢钥闯?,隨著約束長度K增大,編碼后的碼元與更多個信息比特相關,因此譯碼糾錯能力越強誤比特率HER就越小.當BER10-2e 時,增加卷積碼的約束度將會改善Turbo 碼HER性能。在交織器長度和碼率一定時,約束度越大,Turbo 碼的HER 性能越好。
在3G中的應用
信道編碼技術可改善數(shù)字信息在傳輸過程中噪聲和干擾造成的誤差,提高系統(tǒng)可靠性。因而挺供高效的信道編譯碼技術成為3G移動通信系統(tǒng)中的關鍵技術之一。3G移動通信系統(tǒng)所提供的業(yè)務種類的多樣性、靈活性,對差錯控制編譯碼提出了更高的要求。WCDMA 和cdma2000方案都建議采用除與IS-95 CDMA系統(tǒng)類似的卷積編碼技術和交織技術之外,采用Turbo編碼技術。
1. RSC 編碼器的設計
cdma2000 方案中,Turbo 碼被用在CDMA系統(tǒng)前向、反向鏈路信道中。反向鏈路信道中,子編碼器(3,1,3)RSC 的生成矩陣為:
Turbo碼
RSC編碼器基于8狀態(tài)的并行級聯(lián)卷積碼(8PCCC)。交織采用了比特翻轉技術。通過刪余處理,碼率為1/4,1/2,1/3的Turbo碼被采用。分別對兩個子編碼器的輸出奇偶位V2和V2‘交替刪余,可得到碼率為1/4的Turbo碼;對V1,V1' 刪余,可得碼率為1/3;對V2、V2’間隔幾V1,V1‘刪余,可得碼率1/2。
WCDMA中,對于收務服務質量需求BER介于10-3e和10-6e之間。并且允許時延較長的數(shù)據(jù)業(yè)務,RSC子編碼器使用8態(tài)并行級聯(lián)卷積碼8-PCCι 。生成矩陣為:
WCDMA中的turbo編碼器
2. 交織長度的選擇
在3G移動通信中,業(yè)務速率由32kbit/s到2Mbit/s。10ms一幀,幀長由20 到20000 。為了提高譯碼器性能,在一些低速業(yè)務中,可采用多幀組成一個數(shù)據(jù)塊,加大交織深度。
在WCDMA中,Turbo 碼交織器是可截短型塊交織器。交織行數(shù)為5、10或20行,在行數(shù)確定的基礎上選擇列數(shù)。數(shù)據(jù)按行讀入交織器,按固定模式進行行間轉換,不同輸入序列長度對應不同的行數(shù)和行間轉換模式。行轉換完成后,近行列轉換。不同行對應不同列間轉換參數(shù),采取的是接近隨機化的素數(shù)取模算法。數(shù)據(jù)在完成行列轉換后,按列讀出。
cdma2000 也是基于塊交織。交織行數(shù)為25=32行,列數(shù)N=2n,n為滿足使32N大于或等于幀長度的最小值。數(shù)據(jù)按行讀人。行間轉換的依據(jù)是比特翻轉原則。列問轉換的置換公式是:x( i+1) = [x(i) + c] mod N,即為同模取余法,為了更接近隨機化,使每列的偏置取不同值。數(shù)據(jù)經(jīng)過行列轉換后,按列輸出。
3. 譯碼器的設計
由于Turbo碼譯碼算法復雜,譯碼延時長,所以對于時延要求高的數(shù)據(jù)業(yè)務應用受限。因而低復雜度譯碼器的設計成為Turbo碼譯碼算法設計的焦點。為了換取復雜度的簡化,允許次優(yōu)性能譯碼的存在。例如3GPP中允許Turbo碼的譯間比標準MAP算法有1dB的增益損失。結合CRC校驗來減少迭代次數(shù),在SNR 較大時可以減少譯碼復雜度和譯碼延時。
發(fā)展前景
日前Turbo碼的研究尚缺少理論基礎支持,但是在各種惡劣條件下( 即低SNR情況下),提供接近Shannon 極限的通信能力已經(jīng)通過模擬證明。但Turbo碼也存在著一些急待解決的問題,例如譯碼算法的改進、復雜性的降低、譯碼延時的減小。作為商用3G 移動通信系統(tǒng)的關鍵技術之一,Turbo 碼也將逐漸獲得較好的理論支持并且得到進一步開發(fā)和完善。
評論