專利名稱:最大后驗(yàn)概率譯碼方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域信道編碼的譯碼技術(shù),具體涉及一種占用較低的存儲(chǔ)容量的MAP(最大后驗(yàn)概率)譯碼方法和裝置,以及使用該譯碼裝置的迭代譯碼系統(tǒng)。
背景技術(shù):
1993年,法國(guó)的C.Berrou等人提出了一種新型的糾錯(cuò)碼——Turbo碼[1]。它采用一種并行級(jí)聯(lián)的方法實(shí)現(xiàn)了長(zhǎng)碼的編碼,同時(shí)構(gòu)造了相應(yīng)的譯碼器來(lái)完成這種長(zhǎng)碼的譯碼,是一種實(shí)用的糾錯(cuò)碼,而它的性能非常逼近于仙農(nóng)的性能界。盡管缺乏完善的理論支持,但工程模擬表明Turbo碼在信道噪比很低的情況下,仍能保持很好的性能,在移動(dòng)通信中有很好的應(yīng)用前景,因此,有關(guān)Turbo碼在CDMA中系統(tǒng)中的應(yīng)用,也受到了各國(guó)學(xué)者的重視[2-7]。現(xiàn)在,ITU已將Turbo碼作為其第三代移動(dòng)通信系統(tǒng)IMT2000中侯選信道編碼方案之一。
在Turbo譯碼方法中,MAP是最優(yōu)的譯碼方法,但它存在計(jì)算復(fù)雜度大,譯碼時(shí)延長(zhǎng)的缺點(diǎn)。它的簡(jiǎn)化版本是MAX_log_MAP方法,它在對(duì)數(shù)域中進(jìn)行操作,用加法運(yùn)算代替了乘法運(yùn)算,而且用求最大值的操作代替了加法運(yùn)算,從而簡(jiǎn)化了硬件設(shè)計(jì)。
然而,對(duì)于MAP譯碼方法及其演化版本,都需要進(jìn)行前向和后向計(jì)算,分別稱為α和β更新。尤其是對(duì)于β的更新,需要占用大量的內(nèi)存,成為硬件設(shè)計(jì)高速化的瓶頸。為了描述MAP方法的方便,我們首先如下定義符號(hào)。
符號(hào)定義K時(shí)刻的編碼碼字Ck≡(uk,xkp),]]>uk是k時(shí)刻的信息比特,xkp是k時(shí)刻的校驗(yàn)比特;K時(shí)刻的接收碼字Yk≡(yks,ykp),]]>yks是k時(shí)刻接收的信息比特,ykp是k時(shí)刻接收的校驗(yàn)比特,現(xiàn)假設(shè)二相調(diào)制(BPSK modulation),平坦瑞利衰落信道(flatRayleigh fading channel)和相干解調(diào)(coherent demodulation),那么接收碼字和編碼碼字存在關(guān)系式y(tǒng)ks=akuk+nks]]>ykp=akxkp+nkp]]>其中,ak是k時(shí)刻的衰落乘性系數(shù),而nks和nkp分別是對(duì)于信息比特和校驗(yàn)比特的k時(shí)刻的加性白色高斯噪聲(AWGN),假設(shè)其均值為零,方差為σ2。
Yk≡(Y1,Y2,……,Yk)為從1時(shí)刻到k時(shí)刻的接收碼字序列。
Y‾nm≡(Yn,Yn+1,······,Ym)]]>為從n時(shí)刻到m時(shí)刻的接收碼字序列。
αk(s)≡P(Sk=S,Yk)為前向遞推概率,表示k時(shí)刻卷積編碼器狀態(tài)為S,且接收序列為Yk的概率。
βk(s)≡P(Y‾k+1N/Sk=S)]]>為后向遞推概率,表示k+1時(shí)刻卷積編碼器狀態(tài)為S,且接收序列為Yk+1N的概率。
γk(s′,s)≡P(Yk,Sk=S/Sk-1=s′)為轉(zhuǎn)移概率,表示在k-1時(shí)刻的s′條件下到k時(shí)刻的S狀態(tài)且接收碼字為Yk的轉(zhuǎn)移概率。
L(uk)≡lnP(uk=1)P(uk=-1)]]>為輸出似然比,表示譯碼后輸出的k時(shí)刻的信息比特uk為1和為-1的概率比值的對(duì)數(shù)。
L(uk/Y‾N)≡lnP(uk=1/Y‾N)P(uk=-1/Y‾N)=lnP(uk=1,Y‾N)P(uk=-1,Y‾N)]]>為后驗(yàn)概率的輸出似然比,表示已知接收序列譯碼YN的條件下譯碼輸出的k時(shí)刻的信息比特uk為1和為-1的概率比值的對(duì)數(shù)。
Lc≡2akσ2]]>為信道補(bǔ)償參數(shù)。
圖l示出了一個(gè)MAP譯碼器的輸入和輸出特性。它有兩個(gè)輸入?yún)?shù)L(U)in為輸入的信息比特的先驗(yàn)概率似然比,對(duì)于初始迭代,認(rèn)為是等概分布,因而為零,而對(duì)于以后的迭代,是前一個(gè)MAP譯碼器輸出的外信息;YN為輸入的接收序列。它有兩個(gè)輸出參數(shù)L(U/YN)為輸出的信息比特的后驗(yàn)概率似然比,也可以用于硬判決的輸出;L(U)out為輸出的信息比特的邊概率似然比,也稱為外信息(extrinsic information),用于下一次MAP譯碼器的迭代譯碼。
圖2示出了Turbo碼編碼系統(tǒng)框圖,該編碼系統(tǒng)包括第一遞歸系統(tǒng)卷積碼編碼器100、交織器200和第二遞歸系統(tǒng)卷積碼編碼器300。第一遞歸系統(tǒng)卷積碼編碼器100由異或單元1000、1003和移位寄存器1001、1002構(gòu)成,而第二遞歸系統(tǒng)卷積碼編碼器300由異或單元3000、3003和寄存器3001、3002構(gòu)成。
圖2中的標(biāo)記S是輸入的信息比特流(System Bits),即信息位。P1是信息位S經(jīng)過(guò)第一遞歸系統(tǒng)卷積碼(卷積碼1)編碼器100輸出的校驗(yàn)位比特流(Parity Bits),即第一路校驗(yàn)位。P2是信息位S經(jīng)過(guò)交織器200處理后輸入到第二遞歸系統(tǒng)卷積碼(卷積碼2)編碼器300并由其輸出的校驗(yàn)位比特流,即第二路校驗(yàn)位。這里的第一或第二路校驗(yàn)位就是上述的xkp,而信息位S就是上述的uk。
圖3示出了現(xiàn)有的Turbo碼譯碼系統(tǒng)的結(jié)構(gòu)框圖,其中的P1校驗(yàn)位、S信息位和P2校驗(yàn)位分別是加了噪聲或者被干擾的第一路校驗(yàn)位、信息位和第二路校驗(yàn)位?,F(xiàn)有技術(shù)的Turbo碼譯碼系統(tǒng)包括第一MAP譯碼器30,其對(duì)輸入的信息位S和第一路校驗(yàn)位P1進(jìn)行譯碼處理,輸出第一外信息序列;第一正交織器31,用于對(duì)來(lái)自第一MAP譯碼器30的第一外信息序列進(jìn)行交織處理,輸出交織的外信息序列;第二正交織器32,用于對(duì)輸入的信息位S進(jìn)行交織處理,輸出交織的信息位;第二MAP譯碼器35,其對(duì)來(lái)自第二正交織器32的交織的信息位、輸入的第二路校驗(yàn)位P2和第一正交織器31輸出的交織外信息進(jìn)行譯碼處理,輸出第二外信息;反交織器36,用于對(duì)第二外信息進(jìn)行反交織處理,輸出經(jīng)反交織處理的外信息,其中經(jīng)反交織處理的外信息還被反饋到第一MAP譯碼器30的輸入端,以與所述的第一路校驗(yàn)位P1和信息位S一起進(jìn)行譯碼處理。
在上述譯碼系統(tǒng)所進(jìn)行的譯碼過(guò)程中,在迭代結(jié)束時(shí),從反交織器36輸出經(jīng)過(guò)反交織處理的外信息,作為輸出。
圖4是卷積編碼器的一個(gè)狀態(tài)轉(zhuǎn)移示例圖。已知的是,卷積編碼可以用網(wǎng)格狀態(tài)轉(zhuǎn)移圖來(lái)描述,這是一個(gè)典型的馬爾可夫(Markov)隨機(jī)過(guò)程。圖4中表明了由k-1時(shí)刻的S″和S′狀態(tài)根據(jù)輸入信息比特的不同均轉(zhuǎn)移到了k時(shí)刻的S狀態(tài)。馬爾可夫性是MAP算法推導(dǎo)的理論基礎(chǔ)。
計(jì)算方法1、轉(zhuǎn)移概率令Lc≡2akσ2,]]>則γk(s′,s)∝exp(ukL(uk)/2)exp(Lc2(ukyks+xkpykp))......(1)]]>2、前向遞推概率αk(s)=Σs′αk-1(s′)γk(s′,s)]]>3、后向遞推概率βk-1(s′)=Σsβk(s)γk(s′,s)......(3)]]>4、序列概率P(uk=1,Y‾N)=Σs′,suk=1p(sk-1=s′,sk=s,Y‾N)]]>=Σs′,suk=1αk-1(s′)γk(s′,s)βk(s)......(4)]]>5、后驗(yàn)概率似然比的推導(dǎo)L(uk/Y‾N)≡lnP(uk=1/Y‾N)P(uk=-1/Y‾N)]]>=lnΣs′,suk=1αk-1(s′)γk(s′,s)βk(s)Σs′,suk=-1αk-1(s′)γk(s′,s)βk(s)......(5)]]>6、α0(s),βN(s)的初始化問(wèn)題s0=0⇒α0(0)=1α0(s)=1∀s≠0......(6)]]>
若卷積碼歸零,則sN=0⇒βN(0)=1βN(s)=1∀s≠0......(7)]]>若卷積碼不一定歸零,則 state_num表示卷積碼的狀態(tài)數(shù)7、信息的輸出軟判決輸出Lk(uk)output=Lk(uk/Y‾N)-Lcyks-Lk(uk)in.....(9)]]>軟輸出做為下一個(gè)譯碼器的先驗(yàn)概率的輸入,也稱為外信息。如果我們把MAP譯碼器看作是一個(gè)信噪比的放大器,那么Lcyks和Lk(uk)in是與輸入線性相關(guān)的輸出量,在迭代過(guò)程中必須減去,否則會(huì)引起正反饋。
硬判決輸出uk=sign(Lk(uk/YN)),其中sign表示取符號(hào)。這也是我們最終輸出的硬判決比特。
與MAP算法等效,只是將α,β,γ轉(zhuǎn)移到對(duì)數(shù)域中計(jì)算,并且將乘法運(yùn)算映射為加法運(yùn)算,加法運(yùn)算映射為E運(yùn)算,便于硬件實(shí)現(xiàn)。
相對(duì)于MAP算法,Log_MAP算法有以下改變1、引入映射fy=-ln(x)2,α,β,γ→fαL,βL,γL]]>3、×(乘法)→+(加法)4、+(加法)→E(運(yùn)算)5、E運(yùn)算的定義aEb≡-ln(e-a+e-b)=min(a,b)-ln(1+e-|a-b|) (10)E運(yùn)算與加法運(yùn)算一樣滿足交換率和結(jié)合率。上述的aEb也可以表示成E(a,b)。
Max_Log_MAP算法]Max_Log_MAP算法是Log_MAP算法的簡(jiǎn)化,原理完全相同,僅僅簡(jiǎn)化了E運(yùn)算。
aEb≡-ln(e-a+e-b)=min(a,b)-ln(1+e-|a-b|)]]>
→|a-b|>>0aEb≈min(a,b)......(11)]]>min運(yùn)算與加法運(yùn)算一樣滿足交換率和結(jié)合率,用它取代Log_MAP算法中的E運(yùn)算即改造成Max_Log_MAP算法,其計(jì)算復(fù)雜度降低了,但譯碼性能亦降低。
對(duì)于log_map算法,通常需要首先進(jìn)行后向概率β的計(jì)算,并且存儲(chǔ)其值,再進(jìn)行前向概率α的計(jì)算,并且根據(jù)已經(jīng)存儲(chǔ)的β和γ值,計(jì)算其似然比。
Yufei Wu在參考文獻(xiàn)[14]中,提出了可以用前向計(jì)算來(lái)進(jìn)行后向概率β更新的方法,其基本思想是假設(shè)k時(shí)刻的后向概率列矢量B(k)=[β1(k)β2(k)...βS(k)]T,那么后向遞推概率公式,有矩陣表達(dá)式B(k)=AS×S(k)×B(k+1)(12)其中,AS×S(k)是S×S維的方陣,S表示卷積碼的狀態(tài)數(shù)。
當(dāng)用前向計(jì)算時(shí),很明顯有逆推公式B(k+1)=AS×S-1(k)×B(k)......(13)]]>雖然理論上可以用(13)進(jìn)行整個(gè)B(k)的前向逆推計(jì)算,但是由于逆矩陣的條件數(shù)(condition number)的限制,最多只可逆推一步計(jì)算,否則會(huì)帶來(lái)turbo譯碼性能的巨大下降。也就是說(shuō),(13)的方法可以節(jié)省一半的β存儲(chǔ)空間。另外,(13)的方法不可應(yīng)用于Max_log_map算法,因?yàn)镸ax_log_map用了求最小操作,從而無(wú)法求得AS×S-1(k)。
另一方面,盡管Max_log_map算法比log_map有一定的性能的損失,但由于它的低的計(jì)算復(fù)雜度,在實(shí)際的工程應(yīng)用中往往采用Max_log_map算法。然而,Max_log_map算法比log_map的存儲(chǔ)復(fù)雜度并未降低,成為其硬件設(shè)計(jì)高速化和小型化的瓶頸。因而研究低存儲(chǔ)的Max_log_map算法的前向逆推算法是十分必要的。
發(fā)明內(nèi)容
鑒于上述問(wèn)題,本發(fā)明提出了一種占用較低的存儲(chǔ)容量的MAP(最大后驗(yàn)概率)譯碼方法和裝置,以及使用該譯碼裝置的迭代譯碼系統(tǒng)。
在本發(fā)明的一個(gè)方面,提出了一種最大后驗(yàn)概率譯碼方法,包括輸入步驟,輸入接收卷積碼的碼字序列和先驗(yàn)概率似然比,并把卷積碼的網(wǎng)格圖分成蝴蝶對(duì);轉(zhuǎn)移概率計(jì)算步驟,根據(jù)所述接收碼字序列和先驗(yàn)概率似然比計(jì)算各個(gè)時(shí)刻的轉(zhuǎn)移概率;后向遞推概率計(jì)算步驟,針對(duì)每個(gè)蝴蝶對(duì)的第一后向狀態(tài)和第二后向狀態(tài)計(jì)算并存儲(chǔ)其后向概率之間的差值,對(duì)每個(gè)蝴蝶對(duì)的第一前向狀態(tài)和第二前向狀態(tài),選擇并存儲(chǔ)其中一個(gè)前向狀態(tài)和相應(yīng)的前一時(shí)刻的后向狀態(tài),以及它們的后向概率,得到逆推計(jì)算的初始值;逆推計(jì)算步驟,利用所述初始值,對(duì)于每個(gè)蝴蝶對(duì),根據(jù)所述存儲(chǔ)的一個(gè)前向狀態(tài)和相應(yīng)的后向狀態(tài),由所述一個(gè)前向狀態(tài)的后向概率和從所述相應(yīng)的第二后向狀態(tài)轉(zhuǎn)移到所述一個(gè)前向狀態(tài)的轉(zhuǎn)移概率,計(jì)算所述相應(yīng)的后向狀態(tài)的后向概率,針對(duì)下一蝴蝶對(duì)的第一后向狀態(tài)和第二后向狀態(tài),由所述計(jì)算的后向狀態(tài)的后向概率和所述存儲(chǔ)的后向概率的差值,計(jì)算下一時(shí)刻的第一后向狀態(tài)的后向概率;針對(duì)所述存儲(chǔ)的一個(gè)前向狀態(tài)和相應(yīng)的后向狀態(tài),計(jì)算當(dāng)前時(shí)刻的前向遞推概率和轉(zhuǎn)移概率的步驟;根據(jù)所述的前向遞推概率、后向概率和轉(zhuǎn)移概率計(jì)算后驗(yàn)概率似然比。
在本發(fā)明的另一方面,提出了一種最大后驗(yàn)概率譯碼裝置,包括轉(zhuǎn)移概率計(jì)算單元,用于根據(jù)輸入的先驗(yàn)信息和接收比比特序列計(jì)算轉(zhuǎn)移概率;后向遞推概率計(jì)算單元,用于針對(duì)每個(gè)蝴蝶對(duì)的第一后向狀態(tài)和第二后向狀態(tài)計(jì)算并存儲(chǔ)其后向概率之間的差值,對(duì)每個(gè)蝴蝶對(duì)的第一前向狀態(tài)和第二前向狀態(tài),選擇并存儲(chǔ)其中一個(gè)前向狀態(tài)和相應(yīng)的前一時(shí)刻的后向狀態(tài),以及它們的后向概率,得到逆推計(jì)算的初始值;存儲(chǔ)單元,用于存儲(chǔ)所述差值,和所述一個(gè)前向狀態(tài)和相應(yīng)的前一時(shí)刻的后向狀態(tài),以及它們的后向概率;逆推計(jì)算單元,用于利用所述初始值,對(duì)于每個(gè)蝴蝶對(duì),根據(jù)所述存儲(chǔ)的一個(gè)前向狀態(tài)和相應(yīng)的后向狀態(tài),由所述一個(gè)前向狀態(tài)的后向概率和從所述相應(yīng)的第二后向狀態(tài)轉(zhuǎn)移到所述一個(gè)前向狀態(tài)的轉(zhuǎn)移概率,計(jì)算所述相應(yīng)的后向狀態(tài)的后向概率,針對(duì)下一蝴蝶對(duì)的第一后向狀態(tài)和第二后向狀態(tài),由所述計(jì)算的后向狀態(tài)的后向概率和所述存儲(chǔ)的后向概率的差值,計(jì)算下一時(shí)刻的第一后向狀態(tài)的后向概率;前向遞推概率計(jì)算單元,用于針對(duì)所述存儲(chǔ)的一個(gè)前向狀態(tài)和相應(yīng)的后向狀態(tài),計(jì)算當(dāng)前時(shí)刻的前向遞推概率;似然比計(jì)算單元,用于根據(jù)所述前向遞推概率、后向概率和所述轉(zhuǎn)移概率計(jì)算單元針對(duì)所述存儲(chǔ)的一個(gè)前向狀態(tài)和相應(yīng)的后向狀態(tài)計(jì)算的當(dāng)前時(shí)刻轉(zhuǎn)移概率,來(lái)計(jì)算后驗(yàn)概率似然比。
此外,一種包括如權(quán)利要求所述的最大后驗(yàn)譯碼裝置的迭代譯碼系統(tǒng)。
利用上述方案,具有計(jì)算穩(wěn)定,存儲(chǔ)少,有利于硬件制造工藝的小型化和高速化的優(yōu)點(diǎn)。
圖1示出了MAP譯碼器的總體方框圖;圖2示出了Turbo碼的編碼系統(tǒng)方框圖;圖3示出了現(xiàn)有的采用MAP譯碼器的Turbo譯碼系統(tǒng)的方框圖;圖4示出了狀態(tài)轉(zhuǎn)移圖;圖5示出了一個(gè)卷積碼網(wǎng)格圖的蝴蝶對(duì)(butterfly pair)分組示意;圖6示出了一個(gè)一般化的蝴蝶對(duì);圖7示出了后向概率β的計(jì)算流程圖;圖8示出了后向概率β的前向逆推計(jì)算流程圖;以及圖9表示了根據(jù)本發(fā)明實(shí)施例的譯碼器的構(gòu)成圖。
具體實(shí)施例方式
下面結(jié)合圖5-9詳細(xì)說(shuō)明本發(fā)明的具體實(shí)施方式
。
圖5示出了一個(gè)卷積碼網(wǎng)格圖的蝴蝶對(duì)(butterfly pair)分組示意。圖5中所用的卷積碼的生成多項(xiàng)式是1+D2,而反饋多項(xiàng)式是1+D+D2。
從圖5中可以看出前向狀態(tài)00,01與后向狀態(tài)00,10是一個(gè)蝴蝶對(duì);前向狀態(tài)10,11與后向狀態(tài)01,11是一個(gè)蝴蝶對(duì)。所謂蝴蝶對(duì),就是同一個(gè)蝴蝶對(duì)中的兩個(gè)前向狀態(tài)的計(jì)算只需其相應(yīng)的兩個(gè)后向狀態(tài)的信息,而與其它蝴蝶對(duì)無(wú)關(guān)。一般的,對(duì)于有m個(gè)寄存器的卷積碼,其狀態(tài)數(shù)是2m個(gè),兩個(gè)前向狀態(tài)和兩個(gè)后向狀態(tài)組成一個(gè)蝴蝶對(duì),那么共有2m-1個(gè)蝴蝶對(duì)。
圖6是一個(gè)一般化的蝴蝶對(duì)。這個(gè)蝴蝶對(duì)由k-1時(shí)刻的第一前向狀態(tài)S1′和第二前向狀態(tài)S2′以及k時(shí)刻的第一后向狀態(tài)S1和第二后向狀態(tài)S2構(gòu)成。假設(shè)已經(jīng)記錄了k時(shí)刻的第一后向狀態(tài)的后向概率βk(S1)與第二后向狀態(tài)的后向概率βk(S2)的差值Dk(S1,S2)=βk(S1)-βk(S2),同時(shí)假設(shè)由k時(shí)刻的第一后向狀態(tài)S1和第二后向狀態(tài)S2到k-1時(shí)刻的第一前向狀態(tài)S1′的幸存路徑對(duì)應(yīng)于第二后向狀態(tài)S2,因此記錄下了第一前向狀態(tài)S1′和第二后向狀態(tài)S2。此時(shí)有k-1時(shí)刻的第一前向狀態(tài)的后向概率βk-1(S1′)=βk(S2)+γk(S1′,S2)。那么,容易得到βk(S2)=βk-1(S1′)-γk(S1′,S2) (14)βk(S1)=Dk(S1,S2)+βk(S2)(15)圖7是后向概率β的計(jì)算流程圖。首先,在步驟S701,對(duì)卷積碼的網(wǎng)格圖進(jìn)行分組,共有2m-1個(gè)蝴蝶對(duì)。然后在步驟S702設(shè)置譯碼時(shí)刻k=N,并初始化B(N)。
接下來(lái),在步驟S703根據(jù)公式(3)和(11)從B(k)計(jì)算B(k-1)。然后,在步驟S704對(duì)每個(gè)B(k-1)蝴蝶對(duì)的第一后向狀態(tài)S1和第二后向狀態(tài)S2,計(jì)算并存儲(chǔ)它們的后向概率的差值Dk-1(S1,S2)。在步驟S705對(duì)每個(gè)B(k-1)蝴蝶對(duì)的第一前向狀態(tài)S1′和第二前向狀態(tài)S2′,選擇并記錄其中一個(gè)前向狀態(tài)例如S1′的后向概率βk-1(S1′)及其相對(duì)應(yīng)的k時(shí)刻的后向狀態(tài)例如第二后向狀態(tài)S2的后向概率βk(S2)。然后在步驟S706將k減1,在步驟S707判斷是否所有的時(shí)刻都處理完畢,如果沒(méi)有,則流程返回步驟S703。否則,流程結(jié)束,得到B(1),這是進(jìn)行前向逆推的初始值。
仍以圖5的卷積碼網(wǎng)格圖為例,對(duì)每個(gè)B(k-1),需要記錄00與10狀態(tài)的差值,以及01與11狀態(tài)的差值。同時(shí),在蝴蝶對(duì)1中,可以選擇并記錄B(k-1)的00狀態(tài)及其相應(yīng)幸存路徑上的k時(shí)刻的狀態(tài);而在蝴蝶對(duì)2中,可以選擇并記錄B(k-1)的10狀態(tài)及其相應(yīng)幸存路徑上的k時(shí)刻的狀態(tài)。
圖8是后向概率β的前向逆推計(jì)算流程圖。首先,在步驟S801對(duì)卷積碼的網(wǎng)格圖進(jìn)行分組,共有2m-1個(gè)蝴蝶對(duì)。然后,在步驟S802設(shè)置譯碼時(shí)刻k=1,將上述獲得的B(1)作為初始值。
接下來(lái),在步驟S803,對(duì)每個(gè)B(k)蝴蝶針對(duì)已經(jīng)存儲(chǔ)的第一前向狀態(tài)S1′和第二后向狀態(tài)S2,由k時(shí)刻的第一前向狀態(tài)的后向概率βk(S1′)按公式(14)計(jì)算k+1時(shí)刻的第二后向狀態(tài)的后向概率βk+1(S2),其中k時(shí)刻從第二后向狀態(tài)轉(zhuǎn)移到第一前向狀態(tài)的轉(zhuǎn)移概率γk(S1′,S2)是通過(guò)常規(guī)方法的γ計(jì)算來(lái)進(jìn)行的,由公式(1)給出。
然后,在步驟S804針對(duì)每個(gè)B(k+1)蝴蝶對(duì)的第一后向狀態(tài)S1和第二后向狀態(tài)S2,由已經(jīng)算出的k+1時(shí)刻的第二后向狀態(tài)概率βk+1(S2)和已經(jīng)存儲(chǔ)的后向概率差值Dk+1(S1,S2),按照公式(15)計(jì)算第一后向狀態(tài)S1的后向概率βk+1(S1)。這樣,由B(k)可以通過(guò)前向計(jì)算完全地逆推出B(k+1)。
在計(jì)算出B(k+1)之后,在步驟S805,將k加1,然后在步驟S806判斷是否已經(jīng)計(jì)算了所有的時(shí)刻,如果沒(méi)有,則流程返回到步驟S803,繼續(xù)進(jìn)行下一時(shí)刻的計(jì)算,如此遞推直到數(shù)據(jù)塊結(jié)束。如果已經(jīng)計(jì)算了所有的時(shí)刻,則流程結(jié)束。
圖9表示了根據(jù)本發(fā)明實(shí)施例的譯碼器的構(gòu)成圖。本發(fā)明的譯碼器包括轉(zhuǎn)移概率計(jì)算單元901、后向遞推概率計(jì)算單元902、存儲(chǔ)單元903、逆推計(jì)算單元904、前向遞推概率計(jì)算單元905和似然比計(jì)算單元906。
在轉(zhuǎn)移概率計(jì)算單元901,根據(jù)輸入的先驗(yàn)信息和接收比比特序列計(jì)算轉(zhuǎn)移概率,其一個(gè)輸入L(U)in為輸入的信息比特的先驗(yàn)概率似然比,對(duì)于初始迭代,認(rèn)為是等概分布,因而為零,而對(duì)于以后的迭代,是前一個(gè)MAP譯碼器輸出的外信息(見(jiàn)圖3);另一個(gè)輸入YN為輸入的接收序列。在轉(zhuǎn)移概率計(jì)算單元901,根據(jù)上述的輸入的先驗(yàn)概率似然比和輸入的接收序列計(jì)算轉(zhuǎn)移概率γk(s′,s)≡P(Yk,Sk=S/SK-1=s′),表示在k-1時(shí)刻的s′條件下到k時(shí)刻的S狀態(tài)且接收碼字為Yk的轉(zhuǎn)移概率。
然后在后向遞推概率計(jì)算單元902按照公式(3)進(jìn)行后向概率β的的常規(guī)后向遞推計(jì)算針對(duì)每個(gè)B(k-1)蝴蝶對(duì)的第一后向狀態(tài)S1和第二后向狀態(tài)S2計(jì)算它們的后向概率之間的差值Dk-1(S1,S2)并存儲(chǔ)在存儲(chǔ)單元903中,然后對(duì)每個(gè)B(k-1)蝴蝶對(duì)的第一前向狀態(tài)S1′和第二前向狀態(tài)S2′,選擇并存儲(chǔ)其中一個(gè)狀態(tài)例如第一前向狀態(tài)S1′的后向概率βk-1(S1′)及其相對(duì)應(yīng)的k時(shí)刻的后向狀態(tài)例如第二后向狀態(tài)S2的后向概率βk(S2),最后得到B(1),作為逆推計(jì)算的初始值,其計(jì)算流程如圖7所示。
接下來(lái),而在逆推計(jì)算單元904中,進(jìn)行前向逆推計(jì)算把B(1)作為初始值,對(duì)于每個(gè)B(k)蝴蝶對(duì),根據(jù)已經(jīng)存儲(chǔ)的第一前向狀態(tài)S1′和第二后向狀態(tài)S2,由k時(shí)刻的第一前向狀態(tài)的后向概率βk(S1′)按公式(14)計(jì)算k+1時(shí)刻的第二后向狀態(tài)S2的后向概率βk+1(S2),其中從第二后向狀態(tài)S2轉(zhuǎn)移到第一前向狀態(tài)S1′的轉(zhuǎn)移概率γk(S1′,S2)是通過(guò)常規(guī)方法的γ計(jì)算的,由公式(1)給出。
然后,在逆推計(jì)算單元904中,針對(duì)每個(gè)B(k+1)蝴蝶對(duì)的第一后向狀態(tài)S1和第二后向狀態(tài)S2,由已經(jīng)算出的第二后向狀態(tài)的后向概率βk+1(S2)和已經(jīng)存儲(chǔ)的后向概率的差值Dk+1(S1,S2),按照公式(15)計(jì)算第一后向狀態(tài)S1的后向概率βk+1(S1)。這樣,由B(k)可以通過(guò)前向計(jì)算完全地逆推出B(k+1),其計(jì)算過(guò)程如上面結(jié)合圖8所述。
在β逆推計(jì)算的同時(shí),根據(jù)公式(3)和公式(2)以及存儲(chǔ)單元903中存儲(chǔ)的狀態(tài)分別在前向遞推概率計(jì)算單元905和轉(zhuǎn)移概率計(jì)算單元901中進(jìn)行常規(guī)的α前向計(jì)算和γ計(jì)算。然后在似然比計(jì)算單元906,按照公式(5)進(jìn)行似然比LLR的計(jì)算。
此外,在計(jì)算出后驗(yàn)概率似然比之后,似然比計(jì)算單元906還根據(jù)公式(9)計(jì)算并輸出軟輸出,以及通過(guò)取計(jì)算出的后驗(yàn)概率似然比的符號(hào)來(lái)輸出硬判決。
在計(jì)算穩(wěn)定性上,本發(fā)明算法沒(méi)有矩陣求逆運(yùn)算,不存在條件數(shù)過(guò)大的問(wèn)題,只是簡(jiǎn)單的加減法操作,因而是簡(jiǎn)單和魯棒(Robust)的。在存儲(chǔ)方面,本發(fā)明需要NS/2個(gè)浮點(diǎn)類型的β存儲(chǔ)單元(N為數(shù)據(jù)塊長(zhǎng)度,S為卷積碼狀態(tài)數(shù)),而常規(guī)算法需要NS個(gè)β存儲(chǔ)單元,因而只是常規(guī)算法的一半??傊?,本發(fā)明計(jì)算穩(wěn)定,存儲(chǔ)少,有利于硬件制造工藝的小型化和高速化。
參考文獻(xiàn)[1]Todd A.Summers and Stephen G.Wilson,SNR Mismatch and OnlineEstimation in Turbo Decoding,IEEE TRANSACTIONS ON COMMUNICATIONS,VOL.46,NO.4,APRIL 1998 pp421-423[2]Jason P.Woodard and Lajos Hanzo,Comparative Study of TurboDecoding TechniquesAn Overview,IEEE TRANSACTIONS ON VEHICULARTECHNOLOGY,VOL.49,NO.6,NOVEMBER 2000,pp2208-2233[3]王新梅,糾錯(cuò)碼—原理與方法,西安電子科技大學(xué)出版社,2001年4月第3版[4]C.Berrou,A.Glavieux,and P.Thitimajshima,Near Shannon LimitError-Correcting Coding and DecodingTurbo Codes[A],in Proc.ICC’93,Geneva,Switzerland[c],1993,51064-1070. 吳偉陵,通向信道編碼的Turbo碼及其性能分析[J],電子學(xué)報(bào),1998,28(7)35-40[6]孫毅,Turbo碼在移動(dòng)通信中的應(yīng)用[D],博士學(xué)位論文,北京北京郵電大學(xué),1999年[7]Heegard,“the turbo coding”,Bostonkluwer AcademicPublisher,1999/01/01,1stedition,chapter334-62[8]J.Hagenauer,E.Offer,and L.Papke,“Iterative decoding ofbinary block and convolutional codes,”IEEE Trans.Inform.Theory,vol.42,pp.429-445,Mar.1996[9]Rose Y.Shao,Two Simple Stopping Criteria for Turbo Decoding,IEEE Transactions On Communications,VOL.47,NO.8,AUGUST 1999,pp1117-1120[10]Yufei Wu,Brian D.Woerner,A Simple Stopping Criterion forTurbo Decoding,IEEE Communications Letters,VOL.4,NO.8,AUGUST2000,pp258-260[11]Nam Yul Yu,efficient stopping criterion for iterative decodingof turbo codes,electronics letters,9thJanuary 2003 Vol.39 No.1,pp73-74 Wangrok Oh and Kyungwhoon Cheun,Adaptive Channel SNREstimation Algorithm for Turbo Decoder,IEEE Communication letters,VOL.4,NO.8,AUGUST 2000,pp255-256[13]Soonyoung Kim,simple iterative decoding stop criterion forwireless packet transmisiion,Electronics Letters,23rdNovember2000,Vol.36,No.24,pp2026-2027[14]Yufei Wu,forward computation of backward path metrics for MAPdecoder
權(quán)利要求
1.一種最大后驗(yàn)概率譯碼方法,包括輸入步驟,輸入接收卷積碼的碼字序列和先驗(yàn)概率似然比,并把卷積碼的網(wǎng)格圖分成蝴蝶對(duì);轉(zhuǎn)移概率計(jì)算步驟,根據(jù)所述接收碼字序列和先驗(yàn)概率似然比計(jì)算各個(gè)時(shí)刻的轉(zhuǎn)移概率;后向遞推概率計(jì)算步驟,針對(duì)每個(gè)蝴蝶對(duì)的第一后向狀態(tài)和第二后向狀態(tài)計(jì)算并存儲(chǔ)其后向概率之間的差值,對(duì)每個(gè)蝴蝶對(duì)的第一前向狀態(tài)和第二前向狀態(tài),選擇并存儲(chǔ)其中一個(gè)前向狀態(tài)和相應(yīng)的前一時(shí)刻的后向狀態(tài),以及它們的后向概率,得到逆推計(jì)算的初始值;逆推計(jì)算步驟,利用所述初始值,對(duì)于每個(gè)蝴蝶對(duì),根據(jù)所述存儲(chǔ)的一個(gè)前向狀態(tài)和相應(yīng)的后向狀態(tài),由所述一個(gè)前向狀態(tài)的后向概率和從所述相應(yīng)的第二后向狀態(tài)轉(zhuǎn)移到所述一個(gè)前向狀態(tài)的轉(zhuǎn)移概率,計(jì)算所述相應(yīng)的后向狀態(tài)的后向概率,針對(duì)下一蝴蝶對(duì)的第一后向狀態(tài)和第二后向狀態(tài),由所述計(jì)算的后向狀態(tài)的后向概率和所述存儲(chǔ)的后向概率的差值,計(jì)算下一時(shí)刻的第一后向狀態(tài)的后向概率;針對(duì)所述存儲(chǔ)的一個(gè)前向狀態(tài)和相應(yīng)的后向狀態(tài),計(jì)算當(dāng)前時(shí)刻的前向遞推概率和轉(zhuǎn)移概率的步驟;根據(jù)所述的前向遞向概率和轉(zhuǎn)移概率計(jì)算后驗(yàn)概率似然比。
2.如權(quán)利要求1所述的最大后驗(yàn)概率譯碼方法,其特征在于,還包括通過(guò)從所述后驗(yàn)概率似然比減去與輸入碼字序列相關(guān)的輸出量來(lái)輸出軟判決輸出的步驟。
3.如權(quán)利要求1所述的最大后驗(yàn)概率譯碼方法,其特征在于,還包括通過(guò)取所述后驗(yàn)似然比的符號(hào)來(lái)輸出硬判決比特的步驟。
4.如權(quán)利要求1-3之一所述的最大后驗(yàn)概率譯碼方法,其特征在于,所述后向遞推概率a)設(shè)置譯碼時(shí)刻k=N,并初始化后向概率向量B(N);b)根據(jù)所述轉(zhuǎn)移概率從B(k)計(jì)算B(k-1);c)對(duì)每個(gè)B(k-1)蝴蝶對(duì)的第一后向狀態(tài)S1和第二后向狀態(tài)S2,計(jì)算并存儲(chǔ)它們的后向概率的差值Dk-1(S1,S2);d)對(duì)每個(gè)B(k-1)蝴蝶對(duì)的第一前向狀態(tài)S1′和第二前向狀態(tài)S2′,選擇并記錄其中一個(gè)前向狀態(tài)S1′的后向概率βk-1(S1′)及其相對(duì)應(yīng)的k時(shí)刻的后向狀態(tài)S2的后向概率βk(S2);e)將k減1,重復(fù)上述步驟b)、c)和d),得到B(1),作為前向逆推的初始值;以及逆推計(jì)算步驟包括f)設(shè)置譯碼時(shí)刻k=1,將得到的B(1)作為初始值;g)對(duì)每個(gè)B(k)蝴蝶對(duì),針對(duì)已經(jīng)存儲(chǔ)的第一前向狀態(tài)S1′和第二后向狀態(tài)S2,由k時(shí)刻的第一前向狀態(tài)的后向概率βk(S1′)計(jì)算k+1時(shí)刻的第二后向狀態(tài)的后向概率βk+1(S2),其中k時(shí)刻從第二后向狀態(tài)轉(zhuǎn)移到第一前向狀態(tài)的轉(zhuǎn)移概率γk(S1′,S2)是通過(guò)常規(guī)方法的γ計(jì)算來(lái)進(jìn)行的;h)對(duì)每個(gè)B(k+1)蝴蝶對(duì)的第一后向狀態(tài)S1和第二后向狀態(tài)S2,由已經(jīng)算出的k+1時(shí)刻的第二后向狀態(tài)概率βk+1(S2)和已經(jīng)存儲(chǔ)的后向概率差值Dk+1(S1,S2),計(jì)算第一后向狀態(tài)S1的后向概率βk+1(S1);以及i)將k加1,重復(fù)上述步驟g)和h),獲得所有的后向概率。
5.一種最大后驗(yàn)概率譯碼裝置,包括轉(zhuǎn)移概率計(jì)算單元,用于根據(jù)輸入的先驗(yàn)信息和接收比比特序列計(jì)算轉(zhuǎn)移概率;后向遞推概率計(jì)算單元,用于針對(duì)每個(gè)蝴蝶對(duì)的第一后向狀態(tài)和第二后向狀態(tài)計(jì)算并存儲(chǔ)其后向概率之間的差值,對(duì)每個(gè)蝴蝶對(duì)的第一前向狀態(tài)和第二前向狀態(tài),選擇并存儲(chǔ)其中一個(gè)前向狀態(tài)和相應(yīng)的前一時(shí)刻的后向狀態(tài),以及它們的后向概率,得到逆推計(jì)算的初始值;存儲(chǔ)單元,用于存儲(chǔ)所述差值,和所述一個(gè)前向狀態(tài)和相應(yīng)的前一時(shí)刻的后向狀態(tài),以及它們的后向概率;逆推計(jì)算單元,用于利用所述初始值,對(duì)于每個(gè)蝴蝶對(duì),根據(jù)所述存儲(chǔ)的一個(gè)前向狀態(tài)和相應(yīng)的后向狀態(tài),由所述一個(gè)前向狀態(tài)的后向概率和從所述相應(yīng)的第二后向狀態(tài)轉(zhuǎn)移到所述一個(gè)前向狀態(tài)的轉(zhuǎn)移概率,計(jì)算所述相應(yīng)的后向狀態(tài)的后向概率,針對(duì)下一蝴蝶對(duì)的第一后向狀態(tài)和第二后向狀態(tài),由所述計(jì)算的后向狀態(tài)的后向概率和所述存儲(chǔ)的后向概率的差值,計(jì)算下一時(shí)刻的第一后向狀態(tài)的后向概率;前向遞推概率計(jì)算單元,用于針對(duì)所述存儲(chǔ)的一個(gè)前向狀態(tài)和相應(yīng)的后向狀態(tài),計(jì)算當(dāng)前時(shí)刻的前向遞推概率;似然比計(jì)算單元,用于根據(jù)所述前向遞推概率、后向概率和所述轉(zhuǎn)移概率計(jì)算單元針對(duì)所述存儲(chǔ)的一個(gè)前向狀態(tài)和相應(yīng)的后向狀態(tài)計(jì)算的當(dāng)前時(shí)刻轉(zhuǎn)移概率,來(lái)計(jì)算后驗(yàn)概率似然比。
6.如權(quán)利要求5所述的最大后驗(yàn)概率譯碼裝置,其特征在于,所述似然比計(jì)算單元還通過(guò)從所述后驗(yàn)概率似然比減去與輸入碼字序列相關(guān)的輸出量來(lái)輸出軟判決輸出。
7.如權(quán)利要求5所述的最率譯碼裝置,其特征在于,所述似然比計(jì)算單元還通過(guò)取所述后似然比的符號(hào)來(lái)輸出硬判決比特。
8.一種包括權(quán)利要求5-7一所述的最大后驗(yàn)概率譯碼裝置的迭代譯碼系統(tǒng)。
全文摘要
公開(kāi)了一種最大后驗(yàn)概率譯碼方法,其需要的存儲(chǔ)空間小并且計(jì)算簡(jiǎn)單。相對(duì)于傳統(tǒng)的Max-Log-MAP譯碼算法,本發(fā)明對(duì)于后向概率的遞推算法做了如下改進(jìn)首先,對(duì)卷積碼的網(wǎng)格圖進(jìn)行分組,共有文檔編號(hào)H03M13/00GK1841942SQ20051006254
公開(kāi)日2006年10月4日 申請(qǐng)日期2005年3月29日 優(yōu)先權(quán)日2005年3月29日
發(fā)明者吳湛擊, 李繼峰 申請(qǐng)人:松下電器產(chǎn)業(yè)株式會(huì)社