日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

turbo码java实现_Turbo码的迭代译码算法的设计与软件实现

發(fā)布時(shí)間:2023/12/31 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 turbo码java实现_Turbo码的迭代译码算法的设计与软件实现 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Turbo碼的迭代譯碼算法的設(shè)計(jì)與軟件實(shí)現(xiàn)

摘要:本文介紹了一種先進(jìn)的移動(dòng)通信系統(tǒng)WCDMA中的差錯(cuò)控制編碼——Turbo碼,在對(duì)其原理分析的基礎(chǔ)上,簡單介紹它迭代譯碼算法的實(shí)現(xiàn)及其性能仿真分析。

關(guān)鍵詞:差錯(cuò)編碼;Turbo碼;迭代譯碼;仿真。

1 引言

1948年,現(xiàn)代數(shù)字通信的奠基人Shannon在信道編碼定理中指出如果采用足夠長的隨機(jī)編碼,就能逼近Shannon

信道容量。但是傳統(tǒng)的編碼都有規(guī)則的代數(shù)結(jié)構(gòu),遠(yuǎn)遠(yuǎn)談不上“隨機(jī)”;同時(shí),出于譯碼復(fù)雜度的考慮,碼長也不可能太長。所以傳統(tǒng)的信道編碼性能與信道容量之間都有較大的差距。事實(shí)上,長期以來信道容量僅作為一個(gè)理論極限存在,實(shí)際的編碼方案設(shè)計(jì)和評(píng)估都沒有以Shannon限為依據(jù)。

1993 年兩位法國教授Berrou、Glavieux

和他們的緬甸籍博士生Thitimajshima 在ICC 會(huì)議上發(fā)表的“Near Shannon

limit error-correcting coding and decoding: Turbo

codes”,提出了一種全新的編碼方式——Turbo

碼。它巧妙地將兩個(gè)簡單分量碼通過偽隨機(jī)交織器并行級(jí)聯(lián)來構(gòu)造具有偽隨機(jī)特性的長碼,并通過在兩個(gè)軟入/軟出(SISO)譯碼器之間進(jìn)行多次迭代實(shí)現(xiàn)了偽隨機(jī)譯碼。而南澳大利亞大學(xué)Small

World通信研究組最先開始開發(fā)Turbo碼產(chǎn)品。Chass、Garrett

和Koora等人也分別在不同的數(shù)字芯片上設(shè)計(jì)實(shí)現(xiàn)了Max-Log-MAP算法和SOVA算法。目前已有的DSP和ASIC芯片及其不斷發(fā)展為提高Turbo編譯碼的處理提供了條件。

經(jīng)過多年的努力,Turbo

碼得到了廣泛的關(guān)注和發(fā)展,并對(duì)當(dāng)今的編碼理論和研究方法產(chǎn)生了深遠(yuǎn)的影響,信道編碼學(xué)也隨之進(jìn)入了一個(gè)新的階段,本文給出了Turbo碼基本原理的介紹及迭代譯碼算法的實(shí)現(xiàn)與其性能仿真。

2 編譯碼原理

圖1中給出了Turbo碼編碼器的一般性結(jié)構(gòu)。圖中dk是輸入進(jìn)行編碼的數(shù)據(jù)塊,加入尾隨比特的作用是使在一個(gè)數(shù)據(jù)塊編碼結(jié)束之后,保證成員編碼器的寄存器回到全零狀態(tài),這樣的Turbo碼就等同于線性分組碼,從而通過分析這類分組碼的特性來計(jì)算Turbo碼的譯碼性能上界,對(duì)其性能進(jìn)行估計(jì)與分析。編碼器中的第一個(gè)輸出xk是輸入信息比特和加入的尾隨比特。輸入信息比特和尾隨比特經(jīng)過交織器交織后分別送入第1,2,……,M個(gè)成員編碼器進(jìn)行編碼,得到M個(gè)校驗(yàn)輸出序列y1,y2……yM,這M個(gè)校驗(yàn)序列經(jīng)過刪除器的壓縮(以得到不同的編碼速率)后,與信息序列xk一起經(jīng)并/串變換并調(diào)制后發(fā)送出去。在發(fā)送端,其編碼的隨機(jī)性是通過編碼器中的交織器以及并行級(jí)聯(lián)方式來實(shí)現(xiàn)的;其中交織器設(shè)計(jì)的好壞和成員編碼器的選擇是決定碼字性能關(guān)鍵因素之一。

通常Turbo碼的編碼器由兩個(gè)成員編碼器通過交織器并行級(jí)聯(lián)而成。即對(duì)于每一個(gè)輸入信息比特,編碼器輸出兩個(gè)校驗(yàn)比特,若不經(jīng)過壓縮,則總的編碼速率為1/3。從理論上來說,可以編成任意碼率的Turbo碼。

一般,Turbo碼的編碼部分由兩個(gè)子編碼器組成

,在其譯碼部分也就相應(yīng)有兩個(gè)子譯碼器。一般情況下

,兩個(gè)子譯碼器可采用多級(jí)級(jí)聯(lián)結(jié)構(gòu)。由于Turbo碼第二個(gè)子編碼器的信息位沒有輸出

,第二個(gè)子譯碼器只能利用第一個(gè)子譯碼器譯出的信息序列進(jìn)行譯碼。軟判決譯碼比硬判決譯碼性能提高2~3dB,因此每一個(gè)子譯碼器都用軟輸入軟輸出譯碼器。譯碼器工作原理如下:由于接收序列為串行數(shù)據(jù)

,首先要進(jìn)行數(shù)據(jù)的串/并轉(zhuǎn)換

,同時(shí)將刪除的比特位填上“虛擬比特”(不影響譯碼判決的值如0)。將經(jīng)過串/并轉(zhuǎn)換后的xk,y1k送入子譯碼器1譯碼

,并產(chǎn)生關(guān)于dk改進(jìn)的外信息Λ1e(dk)。由于譯碼器1沒有用到可能提高后驗(yàn)概率的校驗(yàn)序列y2k,所以譯碼器1的輸出僅在交織后作為譯碼器2的先驗(yàn)信息輸入,而不能作為對(duì)信息序列的判決。將xk和Λ1e(dk)交織后作為子譯碼器

2的軟輸入 ,子譯碼器 2根據(jù)譯碼算法對(duì)xk,

Λ1e(dk)和y2k用與子譯碼器1同樣的方法再次產(chǎn)生信息比特改進(jìn)的外信息Λ2e(dj),經(jīng)去交織后得到

作為下一次迭代中子譯碼器1的先驗(yàn)信息。這樣在多次迭代后,對(duì)子譯碼器2產(chǎn)生的輸出Λ2(dj)去交織后進(jìn)行硬判決,得到每個(gè)信息比特

的估值 。

Turbo碼的譯碼結(jié)構(gòu)如圖2(a)所示,由于這種將輸出反饋到前端的迭代結(jié)構(gòu)類似于汽輪機(jī)的工作機(jī)理,首先提出它的人稱之為Turbo—code(英文中前綴turbo—帶渦輪驅(qū)動(dòng)的含義)

。

盡管圖2(a)給出的是反饋的結(jié)構(gòu),由于有交織環(huán)節(jié)的存在必然引起時(shí)延,使得不可能有真正意義上的反饋,而是流水線式的迭代結(jié)構(gòu),如圖2(b)。也正是由于這種流水線結(jié)構(gòu),使得譯碼器可由若干完全相同的軟入軟出的基本單元構(gòu)成,從而以較小的復(fù)雜度實(shí)現(xiàn)了最大似然譯碼。Turbo碼譯碼器的最主要特點(diǎn)就是采用了軟判決迭代譯碼算法。

(因文章長度不能超過2萬字,余下部分只能在回復(fù)中補(bǔ)全)

總結(jié)

以上是生活随笔為你收集整理的turbo码java实现_Turbo码的迭代译码算法的设计与软件实现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。