一種Turbo迭代譯碼方法和譯碼裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及通信領(lǐng)域,尤其涉及Turbo迭代譯碼方法及譯碼裝置。
【背景技術(shù)】
[0002] Turbo碼,又稱(chēng)并行級(jí)聯(lián)卷積碼,是由C.Berrou,A.Glavieux和P.Thitimajshiwa 于 1993 年國(guó)際通信年會(huì)(ICC〖InternationalConferenceonCommunication)提出。經(jīng) 各種研宄和仿真結(jié)果表明,Turbo碼不僅在抵御加性高斯白噪聲方面性能優(yōu)越,而且具有很 強(qiáng)的抗衰落、抗干擾能力,其糾錯(cuò)性能接近香農(nóng)極限。因此,被廣泛的應(yīng)用于各種通信系統(tǒng), 其中第三代、第四代移動(dòng)通信系統(tǒng)都將Turbo碼作為其傳輸高速數(shù)據(jù)大的信道編碼標(biāo)準(zhǔn)。
[0003] Turbo編碼器由兩個(gè)并行級(jí)聯(lián)分量卷積編碼器和一個(gè)隨機(jī)交織器構(gòu)成,可以生成 同一信息序列的不同交織版本上的兩個(gè)分量碼,如圖1所示為L(zhǎng)TE標(biāo)準(zhǔn)中采用的Turbo編 碼結(jié)構(gòu)圖。Turbo譯碼器,通常使用兩個(gè)最大后驗(yàn)概率(MAP)解碼器以迭代的方式來(lái)解碼判 決。圖2為T(mén)urbo譯碼器的基本結(jié)構(gòu)圖,由兩個(gè)子譯碼器串行級(jí)聯(lián)而成,其中兩個(gè)子譯碼器 都是軟輸入軟輸出MAP譯碼器。如圖2所示,隨著迭代次數(shù)的增加,先驗(yàn)信息的置信度逐漸 增大,因此硬判決輸出數(shù)據(jù)的正確性也越高。
[0004] 為了能夠判斷譯碼器輸出是否是正確的解碼數(shù)據(jù),循環(huán)冗余校驗(yàn)(CRC)比特被添 加到傳輸數(shù)據(jù)中。當(dāng)CRC校驗(yàn)指示接收數(shù)據(jù)被正確譯碼時(shí),Turbo譯碼器的迭代即停止。當(dāng) 接收信號(hào)質(zhì)量較高時(shí),Turbo譯碼器所需迭代次數(shù)較少;否則,為了得到正確的接收數(shù)據(jù), Turbo譯碼器的迭代次數(shù)可能很高,而此時(shí)的硬件開(kāi)銷(xiāo)和時(shí)間開(kāi)銷(xiāo)都非常大。在具體實(shí)現(xiàn) 中,常常采用限制最大迭代次數(shù)的方法來(lái)避免過(guò)高的譯碼復(fù)雜度。此外,也有其他方法引入 其他判決條件來(lái)有效降低迭代次數(shù),以降低譯碼開(kāi)銷(xiāo)。
[0005] 然而,當(dāng)信號(hào)傳輸環(huán)境非常惡劣,接收信號(hào)質(zhì)量非常差的時(shí)候,Turbo譯碼器即使 重復(fù)迭代足夠多次仍然不能將接收數(shù)據(jù)正確譯碼。如圖3示例所示,當(dāng)信噪比較低時(shí)(具 體地小于-4. 6dB),Turbo譯碼器的輸出誤塊率(BLER:BLockErrorRate)總為1,也即譯 碼輸出全部錯(cuò)誤,但是對(duì)應(yīng)的Turbo譯碼平均迭代次數(shù)幾乎都達(dá)到了設(shè)置的最大迭代次數(shù) (如圖4所示)。這里,圖3和圖4的仿真場(chǎng)景為:基于LTETurbo編碼,碼塊長(zhǎng)度為6144, 調(diào)試方式為BPSK,傳輸信道為AWGN,仿真次數(shù)為10000個(gè)碼塊。因此,此時(shí)Turbo譯碼器不 僅沒(méi)能獲得正確的譯碼結(jié)果,而且使用了大量的硬件資源、花費(fèi)了過(guò)多的時(shí)間。對(duì)于具有實(shí) 時(shí)性要求的移動(dòng)通信系統(tǒng)來(lái)說(shuō),如果能有效減少在這種情況下的Turbo譯碼迭代次數(shù)、進(jìn) 而降低譯碼復(fù)雜度和開(kāi)銷(xiāo),并進(jìn)而提高整個(gè)系統(tǒng)的性能,將是非常有意義的。
【發(fā)明內(nèi)容】
[0006] (一)要解決的技術(shù)問(wèn)題
[0007] 由此可見(jiàn),當(dāng)接收信號(hào)質(zhì)量非常差時(shí),Turbo譯碼器消耗大量硬件資源、進(jìn)行盡可 能多次的迭代譯碼,但譯碼的誤塊率仍非常高。此時(shí),硬件和時(shí)間開(kāi)銷(xiāo)非常大,功耗也非常 高,但譯碼性能很差。
[0008] (二)技術(shù)方案
[0009] 針對(duì)上述問(wèn)題,本發(fā)明提出一種Turto迭代譯碼方法和裝置,可以有效降低接收 信號(hào)質(zhì)量較差時(shí)的Turbo譯碼迭代次數(shù),降低譯碼復(fù)雜度,節(jié)省硬件和時(shí)間開(kāi)銷(xiāo),進(jìn)而提高 整個(gè)系統(tǒng)的性能。
[0010] 本發(fā)明一方面提出一種Turbo迭代譯碼方法,應(yīng)用于Turbo迭代譯碼裝置中,所述 Turbo迭代譯碼裝置包括第一子譯碼器、第一交織器、第二交織器、第二子譯碼器、第一解交 織器、第二解交織器、硬判決單元和譯碼差異判決單元,該方法包括:
[0011] 步驟1,在第i(1彡i彡N_)次中,系統(tǒng)信息xs、第一校驗(yàn)信息Xpl和先驗(yàn)信息Llp 經(jīng)第一子譯碼器后輸出外信息Lle和第一信息比特軟輸出Llall(i),其中N_為提前預(yù)置的 最大迭代次數(shù);
[0012] 步驟2,外信息Lle和系統(tǒng)信息x3經(jīng)交織后分別得到第二子譯碼器的先驗(yàn)信息L2p 和系統(tǒng)信息x' s;
[0013] 步驟3,第二校驗(yàn)信息Xp2、系統(tǒng)信息x's和先驗(yàn)信息L2p經(jīng)第二子譯碼器后輸出外 信息L2e和第二信息比特軟輸出U2all(i);
[0014] 步驟4,外信息L2e和第二信息比特軟輸出L' 2all(i)經(jīng)解交織后分別得到信息比 特軟信息2L2all(i)和第一子譯碼器的先驗(yàn)信息Llp;
[0015] 步驟5,第二信息比特軟輸出L2all⑴經(jīng)硬判決后得到本次迭代的譯碼結(jié)果兔/+);
[0016] 步驟6,第一信息比特軟輸出Llall⑴和第二信息比特軟輸出L2all⑴輸入譯碼差 異判決單元,結(jié)合前幾次迭代的信息比特軟輸出,首先計(jì)算判決度量,然后依據(jù)一定判決準(zhǔn) 則進(jìn)行是否終止譯碼迭代的判決;
[0017] 步驟7,如譯碼正確則輸出當(dāng)前譯碼結(jié)果M/+),否則則跳轉(zhuǎn)到步驟1繼續(xù)進(jìn)行迭代 譯碼。
[0018] 根據(jù)本發(fā)明的一種【具體實(shí)施方式】,步驟1和步驟3中的第一子譯碼器和第二子譯 碼器是軟輸入軟輸出譯碼器。
[0019] 根據(jù)本發(fā)明的一種【具體實(shí)施方式】,步驟6中的判決度量包括:
[0020] Mi) =f(Llall(j),L2all(j),j= 1,…,i),
[0021] A' (i) =f(A(j),j= 1,…,i),
[0022] 根據(jù)本發(fā)明的一種【具體實(shí)施方式】,,步驟6中的判決準(zhǔn)則為:當(dāng)A⑴小于等于 門(mén)限值A(chǔ)TH時(shí),表示譯碼正確,則發(fā)起停止迭代中斷;當(dāng)A(i)大于ATH且A' (i)大于 A' ^時(shí),可預(yù)測(cè)譯碼不正確且經(jīng)過(guò)迭代后信息比特的軟信息置信度也沒(méi)能提高,則發(fā)起 譯碼失敗停止迭代中斷;否則,表示仍需繼續(xù)進(jìn)行迭代提高譯碼正確率,其中ATH和A'TH 是提前預(yù)置的判斷門(mén)限值,其中,ATH表示當(dāng)前迭代的第一子譯碼器和第二子譯碼器輸出 的信息比特軟信息的差異或者多次迭代的多個(gè)子譯碼器之間的信息比特軟信息的差異, A'TH表示多次迭代輸出的信息比特軟信息差異之間的變化。
[0023] 根據(jù)本發(fā)明的一種【具體實(shí)施方式】,判決度量是基于信息比特軟信息的判決度量、 基于信息比特硬比特的判決度量、及綜合使用軟信息和硬比特的判決度量。
[0024] 本發(fā)明另一方面提出一種Turbo迭代譯碼裝置,包括:
[0025] 第一子譯碼器:其輸入為系統(tǒng)信息xs、第一校驗(yàn)信息xpl和先驗(yàn)信息Llp,使用MAP 譯碼算法得到外信息Lle和第一信息比特軟輸出Llall(i)輸出;
[0026] 第一交織器:其輸入為第一子譯碼器輸出的外信息Lle,按照一定交織規(guī)則處理后 得到第二子譯碼器的先驗(yàn)信息L2p;
[0027] 第二交織器:其輸入為系統(tǒng)信息xs,按照一定交織規(guī)則處理后得到系統(tǒng)信息 x' s;
[0028] 第二子譯碼器:其輸入為第二校驗(yàn)信息xp2、系統(tǒng)信息x's和先驗(yàn)信息L2p,使用 MAP譯碼算法得到外信息L2e和第二信息比特軟輸出L' 2all(i)輸出;
[0029] 第一解交織器:其輸入為外信息L2e,按照一定解交織規(guī)則處理后得到第一子譯碼 器的先驗(yàn)彳目息Llp;
[0030] 第二解交織器:其輸入為第二信息比特軟輸出L' 2all(i),按照一定解交織規(guī)則處 理后得到第二信息比特軟輸aL2all⑴;
[0031] 硬判決單元:其輸入為第二信息比特軟輸出L2all(i),根據(jù)輸入數(shù)據(jù)的符號(hào)位進(jìn)行 硬比特判決,其輸出為二進(jìn)制比特流灰/);
[0032] 譯碼差異判決單元:其輸入為當(dāng)前及以前的譯碼輸出信息比特軟輸出{Llall(j), L2all(j),j= 1,…,i},首先計(jì)算判決度量,然后依據(jù)一定判決準(zhǔn)則進(jìn)行是否終止譯碼迭代 的判決。
[0033] 根據(jù)本發(fā)明的一種【具體實(shí)施方式】,第一子譯碼器和第二子譯碼器是軟輸入軟輸出 譯碼器。
[0034] 根據(jù)本發(fā)明的一種【具體實(shí)施方式】,譯碼差異判決單元中的判決度量計(jì)算單元功能 為計(jì)算如下判決度量:
[0035]Mi) =f(Llall(j),L2all(j),j= 1,…,i),
[0036] A' (i) =f(A(j),j= 1,…,i) 〇
[0037] 根據(jù)本發(fā)明的一種【具體實(shí)施方式】,譯碼差異判決單元中的判決準(zhǔn)則為:當(dāng)A(i) 小于等于門(mén)限值A(chǔ)TH時(shí),表示譯碼正確,則發(fā)起停止迭代中斷;當(dāng)A⑴大于ATH且 A' (i)大于A'^寸,可預(yù)測(cè)譯碼不正確且經(jīng)過(guò)迭代后信息比特的軟信息置信度也沒(méi)能 提高,則發(fā)起譯碼失敗停止迭代中斷;否則,表示仍需繼續(xù)進(jìn)行迭代提高譯碼正確率;其中 ATH和A'TH是提前預(yù)置的判斷門(mén)限值,ATH表示當(dāng)前迭代的第一子譯碼器和第二子譯碼 器輸出的信息比特軟信息的差異或者多次迭代的多個(gè)子譯碼器之間的信息比特軟信息的 差異,A'TH表示多次迭代輸出的信息比特軟信息差異之間的變化。
[0038] 根據(jù)本發(fā)明的一種【具體實(shí)施方式】,判決度量計(jì)算單元的判決度量是基于信息比特 軟信息的判決度量、基于信息比特硬比特的判決度量、及綜合使用軟信息和硬比特的判決 度量。
[0039](三)有益效果
[0040] 采用本發(fā)明的Turbo譯碼方法和譯碼裝置可以有效降低接收信號(hào)質(zhì)量較差時(shí)的 譯碼迭代次數(shù),降低譯碼復(fù)雜度,節(jié)省硬件和時(shí)間開(kāi)銷(xiāo),進(jìn)而提高整個(gè)系統(tǒng)的性能。
【附圖說(shuō)明】
[0041] 附圖1為L(zhǎng)TE標(biāo)準(zhǔn)中的Turbo編碼結(jié)構(gòu)圖;
[0042] 附圖2為T(mén)urbo譯碼器的基本結(jié)構(gòu)圖;
[0043] 附圖3為L(zhǎng)TE中的一種誤塊率性能曲線(xiàn);
[0044] 附圖4為L(zhǎng)TE中的一種平均迭代次數(shù)性能曲線(xiàn);
[0045] 附圖5為根據(jù)本發(fā)明實(shí)施方式的Turbo譯碼流程圖;
[0046] 附圖6為根據(jù)本發(fā)明實(shí)施方式的Turbo譯碼器;
[0047] 附圖7為依據(jù)本發(fā)明實(shí)施方式的基于信息比特軟信息差異的譯碼差異判決單元;
[0048] 附圖8為依據(jù)本發(fā)明實(shí)施方式的基于信息比特硬比特差異的譯碼差異判決單元;
[0049] 附圖9為應(yīng)用本發(fā)