專利名稱:一種Turbo碼與多維調(diào)制級聯(lián)的系統(tǒng)編譯碼方案的制作方法
技術(shù)領(lǐng)域:
一種Turbo碼與多維調(diào)制級聯(lián)的系統(tǒng)編譯碼方案屬于迭代譯碼技術(shù)領(lǐng)域。
背景技術(shù):
在無線通信系統(tǒng)中,為了保證信息被可靠地傳輸,信道編碼是一項靈活而且有效的技術(shù)。在各種信道編碼技術(shù)中,Turbo碼是一種能力強大的信道編碼,它能夠在距離香農(nóng)極限較近的信噪比達到較低的誤碼率。它已經(jīng)被廣泛應(yīng)用在各種通信系統(tǒng)當(dāng)中,比如第三代陸地移動通信協(xié)議UMTS/3GPP以及深空通信協(xié)議CCSDS中。
Turbo碼的編譯碼器結(jié)構(gòu)如圖1中所示。在發(fā)送端,它由兩個相同的系統(tǒng)遞歸卷積碼(RSC)編碼器和一個交織器π組成,兩個編碼器通過π并行級聯(lián)在一起,兩個RSC碼輸出的校驗位序列p1和p2與原始信息比特序列u通過復(fù)接器進行復(fù)接得到的碼字序列,最后對該序列進行Gray映射的QPSK調(diào)制(或者說是BPSK調(diào)制),如圖1.1所示。復(fù)接器的功能就是將三個輸入序列按照(u,p1,p2)的順序連接在一起,成為一個單獨的輸出序列。在接收端,Turbo碼的譯碼器包括兩個相同的RSC碼的譯碼器,分別對每個RSC碼使用軟輸入軟輸出(SISO)的最大后驗概率(MAP)譯碼算法,每個RSC碼譯碼器都會輸出信息比特序列的后驗概率序列,該后驗概率序列通過交織或解交織后成為了另外一個譯碼器的先驗概率序列,這樣,通過在兩個譯碼器間的后驗概率序列的傳遞來實現(xiàn)迭代譯碼,如圖1.2所示。圖中P(;I)表示輸入的先驗概率序列,P(;O)表示輸出的后驗概率序列,P(u;)表示關(guān)于信息比特序列的概率序列,P(p1;)和P(p2;)分別表示關(guān)于兩個RSC碼的校驗比特序列的概率序列,下標(biāo)dec1表示譯碼器1的輸入或輸出,下標(biāo)dec2表示譯碼器2的輸入或輸出,下標(biāo)dem表示解調(diào)器的輸入或輸出。在第一次迭代開始的時候,由于譯碼器2還沒有后驗概率輸出,P(u;Idec1)被初始化為等概情況,也就是信息比特序列u中得每一個比特等于0和等于1的概率都為0.5。
這里我們對所選用的RSC碼做如下規(guī)定。RSC碼的記憶深度為m,以網(wǎng)格圖表示時共有2m個狀態(tài),以st表示狀態(tài)值,st∈{st0,st1,···,st2m-1}.]]>每個狀態(tài)都有兩個輸出分支和兩個輸入分支,整個網(wǎng)格圖中一共可能有2m+1個分支,分支以e表示,e∈{e0,e1,···,e2m+1-1}.]]>每個分支都有一個起始狀態(tài)和一個結(jié)束狀態(tài),令stB(e)表示分支e的起始節(jié)點的狀態(tài)值,stE(e)表示分支e的結(jié)束節(jié)點的狀態(tài)值。另外,每個分支都對應(yīng)于一個n比特的標(biāo)簽,n為大于1的整數(shù),其中包括一個信息比特和n-1個校驗比特,分別用u(e)和p(e)表示。不鑿孔時,忽略收尾比特序列的影響,RSC碼的編碼效率為R1=1/n,如果想得到更高效率的編碼可以使用鑿孔技術(shù)。所謂“收尾”就是在對信息比特序列的編碼過程結(jié)束后,為了最終使得編碼器的狀態(tài)值為0狀態(tài),而對每一個編碼器進行的操作,包括添加長度為m的收尾比特序列ut,以及對收尾比特序列編碼所得到的長度為(n-1)*m的校驗比特序列pt,兩部分的總長度為n*m。Turbo碼的碼字長度決定于其交織器的深度以及RSC碼的記憶深度。假設(shè)交織器的深度為L,也就是每個Turbo碼的編碼塊內(nèi)共有L個信息比特,則兩個RSC碼編碼器輸出的校驗比特序列長度均為(n-1)*L,兩個RSC碼編碼器的兩組收尾比特序列的總長度為2*n*m,最終的Turbo碼的碼字長度為2*n*L-L+2*N*m,由于2*n*m一般遠小于L,Turbo碼的編碼效率近似為R=R1/(2-R1)。
在Turbo碼譯碼過程中的每一次迭代譯碼時,每個RSC碼譯碼器都使用MAP算法,RSC碼譯碼器后驗概率的計算過程如下1.首先要完成前向和逆向的遞推。交織器的深度為L,RSC碼的記憶深度為m,在有收尾比特序列的情況下,用網(wǎng)格圖表示的整個卷積碼共有M=L+m+1個節(jié)點。令A(yù)k(stB(e))表示在第k個節(jié)點上,該碼處于狀態(tài)stB(e)且輸出分支為e的概率,k=0,1,…,M-1;令Bk(stE(e))表示在第k個節(jié)點上,該碼處于狀態(tài)stE(e)且輸入分支為e的概率,k=1,2,…,M;令u(e)表示當(dāng)分支為e的時候在該編碼節(jié)點上輸入的信息比特的值;pj(e)表示當(dāng)分支為e的時候在該編碼節(jié)點上輸出的校驗比特序列中第j個比特的值,j=0,1,…,n-2。則前向遞推為Ak(st)=Σe:stE(e)=stAk-1(stB(e))Pk(u(e);I)Πj=0n-2Pk(pj(e);I)---(1),]]>逆向遞推為
Bk(st)=Σe:stB(e)=stBk+1(stE(e))Pk+1(u(e);I)Πj=0n-2Pk+1(pj(e);I)---(2).]]>假設(shè)網(wǎng)格圖的初始狀態(tài)為0,而且經(jīng)過收尾以后,最終的狀態(tài)也為0。則上述遞推公式的初始值為A0(st0)=1,A0(sti)=0 i=1,2,…,2m-1;BM(st0)=1,BM(sti)=0 i=1,2,…,2m-1。
2.輸出的網(wǎng)格圖上第k個節(jié)點對應(yīng)的信息比特和校驗比特的后驗概率,通過下式計算得到Pk(u(e)=b;O)=Σe:u(e)=bAk-1(stB(e))Πj=0n-2Pk+1(pj(e);I)Bk(stE(e))---(3),]]>Pk(pj(e)=b;O)=Σe:pj(e)=bAk-1(stB(e))Pk(u(e);I)(Σi=0i≠jv-2Pk(pi(e);I))Bk(stE(e))---(4),]]>其中pi(e)表示分支e的標(biāo)簽中校驗比特的第i個比特,b∈{0,1}。(1-4)式中得到的概率值需要進行歸一化。
對于鑿孔和不鑿孔的兩種情況,譯碼器的結(jié)構(gòu)是完全一樣的,只不過在輸入先驗概率時,對應(yīng)于鑿孔位置的先驗概率用先驗等概來描述。
整個Turbo碼的譯碼過程由兩個RSC碼譯碼器迭代完成,每一次迭代中兩個譯碼器都分別進行一次譯碼。在信噪比滿足一定大小的條件下,每次迭代之后,每個譯碼器輸出的信息比特序列的后驗概率序列的準確度都會有所增長,該后驗概率序列經(jīng)過交織或解交織后又將成為另外一個譯碼器的輸入先驗概率序列。最終經(jīng)過多次迭代之后,信息比特序列的后驗概率序列將接近準確。與此同時,在每次迭代譯碼之后,校驗比特序列上的后驗概率序列也將變得更加準確,但是由于Turbo碼的結(jié)構(gòu),該后驗概率序列無法被利用。
本發(fā)明針對Turbo碼的上述缺陷對Turbo碼進行了修改,使得Turbo碼的校驗比特序列上的后驗概率序列在譯碼過程中得以被利用,從而得到了性能更好的信道編碼調(diào)制方案。同時,針對本發(fā)明提出的編碼調(diào)制結(jié)構(gòu),對構(gòu)成系統(tǒng)所需的RSC碼和調(diào)制方式進行了搜索,提出了一套高性能的具體實現(xiàn)方案。
發(fā)明內(nèi)容
本發(fā)明的目的在于,使得傳統(tǒng)Turbo碼譯碼過程中無法被使用的校驗比特序列的后驗概率序列得以利用。本發(fā)明提出的新型的編譯碼方案將Turbo碼的信息比特序列和校驗比特序列使用不同的調(diào)制方式進行調(diào)制,通過迭代解調(diào),使得校驗比特序列的后驗概率序列得以利用。迭代解調(diào)是二十世紀九十年代末被提出的,它通過對星座映射方式的仔細選擇,與信道編碼一起配合,可以提高系統(tǒng)的誤碼率性能。之所以選擇多維調(diào)制,是因為相比以往使用的二維調(diào)制,它有更好的性能。本發(fā)明針對加性高斯白噪聲(AWGN)信道,根據(jù)后驗概率傳遞的特性進行了多維星座圖調(diào)制映射的優(yōu)化,提出了一個具體的多維調(diào)制映射方案(見后文中的表1)。
本發(fā)明所提出的系統(tǒng)的收發(fā)兩端系統(tǒng)結(jié)構(gòu)如圖2所示。圖2.1中給出了本系統(tǒng)的發(fā)端,對比圖1.1可知,它對傳統(tǒng)的Turbo碼的調(diào)制方式進行了修改,把Turbo碼的碼字分成兩部分分別進行調(diào)制映射。其中,信息比特序列仍然使用Gray映射的QPSK進行調(diào)制(調(diào)制器1),對于校驗比特序列則使用多維QPSK星座映射進行調(diào)制。這是因為在不進行迭代調(diào)制時,對Gray映射的解調(diào)所得到的后驗概率是所有映射方式中最準確的,而對于信息比特序列來說,我們已經(jīng)通過Turbo碼譯碼對它的后驗概率序列進行了利用,并不需要再使用迭代解調(diào)。對于Turbo碼的校驗比特序列,我們根據(jù)Turbo碼的后驗概率傳遞特性選擇與之匹配的多維QPSK調(diào)制方式。Turbo碼的兩個RSC碼編碼器編碼后的校驗比特序列先通過復(fù)接器1進行復(fù)接,然后進入交織器π2進行交織,再進入N維QPSK調(diào)制器(調(diào)制器2)進行調(diào)制。兩個調(diào)制器的輸出符號t1和t2通過復(fù)接器2進行復(fù)接后被發(fā)送。
所謂N維QPSK調(diào)制,就是由N個比特一起決定連續(xù)的N/2個QPSK信號,每個2維QPSK信號都是由正交和同相兩個分量組成的,一個N維QPSK信號也就是由N/2對正交和同相的分量組成的一個N維星座圖上的一個星座點,該星座圖上共有2N個星座點。圖3.1和圖3.2中分別畫出了一個2維QPSK和一個4維QPSK星座圖,可見后者就是對前者進行的一個4維擴展。在4維星座圖中任意地標(biāo)注了兩個星座點S0和S1,其中,S0的坐標(biāo)為(a,a,a,a),它所對應(yīng)的4比特二進制序列為“0000”(下文中將稱該二進制序列為星座點的“標(biāo)簽”),S1的坐標(biāo)為(-a,-a,-a,-a),它的標(biāo)簽為“1111”。一般的,一個N維QPSK星座圖中任意一個星座點都有一個N維的坐標(biāo)向量,令該坐標(biāo)為si,令星座點的集合為χ={s0,s1,···,s2N-1}.]]>同時,每個星座點都有一個N比特的標(biāo)簽,令該標(biāo)簽為v=(v0,v1,…,vN-1),其中vi表示標(biāo)簽v的第i個比特。坐標(biāo)與標(biāo)簽間的對應(yīng)方式稱為該星座圖的映射方式,用μ來表示,s=μ(v)。假設(shè)發(fā)送的信號為s,s∈χ,接收到的信號為r,則該信號的標(biāo)簽的各個比特值的后驗概率可以依下式計算
P(vi=b;O)=Σs∈χbiP(r|s)Πj≠ij=0N-1P(vj=(μ-1(s))j;I)---(5).]]>其中P(r|s)表示接收信號的先驗概率;χbi表示χ的子集,其中每個星座點的標(biāo)簽第i位的值都等于b,b∈{0,1};(μ-1(s))j表示星座點s的標(biāo)簽的第j位的比特值。設(shè)噪聲的方差為N0/2,則近似有P(r|s)=1πN0exp(-|r-s|2N0)---(6)]]>當(dāng)標(biāo)簽的各個比特都沒有先驗概率的時候,也就是先驗等概時,(5)式可以簡化成P(vi=b;O)=Σs∈χbiP(r|s)---(7).]]>(5)、(7)式中計算的概率值還需要進行歸一化。
圖2.2中給出了本系統(tǒng)的收端,對比1.2可知,該收端是在Turbo碼譯碼器上疊加了一個迭代解調(diào)的單元。圖中的符號意義與圖1.2中所描述的相同,另外,下標(biāo)dem1表示解調(diào)器1的輸入或輸出,下標(biāo)dem2表示解調(diào)器2的輸入或輸出。在迭代解調(diào)和譯碼的開始,接收機先通過解復(fù)接器2將接收到的信號進行解復(fù)接分為兩個接收符號序列r1和r2,分別對應(yīng)于調(diào)制信號t1和t2,它們分別作為解調(diào)器1和解調(diào)器2的輸入。圖中實線連接的部分是一個Turbo碼的譯碼器,我們把它稱作“小環(huán)”譯碼,在該過程中,Turbo碼的兩個RSC碼譯碼器接收來自解調(diào)器1的信息比特序列的先驗概率序列和來自解調(diào)器2的和校驗比特序列的先驗概率序列,信息比特序列的后驗概率序列在兩個RSC碼譯碼器之間迭代傳遞,其過程與上文中描述的Turbo碼譯碼器譯碼過程相同。每迭代U次“小環(huán)”譯碼以后,將校驗比特序列的后驗概率序列輸出,經(jīng)過復(fù)接器1和交織器π2之后,成為解調(diào)器2的先驗概率序列,解調(diào)器2進行一次解調(diào),然后再輸出校驗比特序列的后驗概率序列,該后驗概率序列再經(jīng)過解交織器π2-1和解復(fù)接器1后成為“小環(huán)”譯碼的先驗概率序列。迭代解調(diào)相關(guān)的過程在圖中以虛線表示。我們把一次解調(diào)器2的解調(diào)和U次“小環(huán)”譯碼一起稱作一次“大環(huán)”譯碼。把“大環(huán)”譯碼的迭代次數(shù)V叫做本方案的的迭代譯碼次數(shù)。
本發(fā)明的特征在于它依次含有以下步驟在發(fā)送端,依次含有以下步驟
第1步.在開始編碼前進行初始化,設(shè)定交織器π1的交織深度L,隨機產(chǎn)生交織圖樣;設(shè)定交織器π2的交織深度為Lp=2*(n-1)*L+2*n*m,隨機產(chǎn)生交織圖樣。編碼器1和編碼器2相同,都是編碼效率為R1=1/n的系統(tǒng)碼編碼器,每輸入一個信息比特就會輸出n-1個校驗比特,編碼器的記憶深度為m,將編碼器1和編碼器2的狀態(tài)都設(shè)為0狀態(tài)。
第2步.把序列長度為L的信息比特序列u輸入編碼器1進行編碼,令u=u0,u1,…,uL-1,輸出信息比特序列的校驗比特序列p1,輸出收尾比特序列ut1,輸出收尾比特序列的校驗比特序列pt1,將上述三個比特序列一起稱為分量碼1的校驗比特序列p1’;同時該信息比特序列通過交織器π1進行交織,然后輸入編碼器2進行編碼,輸出信息比特序列的校驗比特序列p2,輸出收尾比特序列ut2,輸出收尾比特序列的校驗比特序列pt2,將上述三個比特序列一起稱為分量碼2的校驗比特序列p2’。最終得到的碼字總長度為2*n*L-L+2*n*m,其中校驗比特序列以及收尾比特序列(以后合在一起簡稱為Turbo碼的校驗比特序列)的長度為Lp=2*(n-1)*L+2*n*m。
第3步.將信息比特序列通過調(diào)制器1進行2維Gray映射的調(diào)制,生成長度為 的2維調(diào)制信號序列t1,t1=t1,0,t1,1,···,t1,L2-1.]]>假設(shè)2維QPSK星座點可能的四種信號取值為(±a,±a)。信息比特序列u的第2k和2k+1兩個比特u2k和u2k+1分別決定t1,k的同相分量t1,kI和正交分量t1,kQt1,kI=(-1)u2ka,]]>t1,kQ=(-1)u2k+1a.]]>將編碼器1和編碼器2輸出的信息比特序列的校驗比特序列、收尾比特序列、收尾比特序列的校驗比特序列通過復(fù)接器1按照(p1,p2,ut1,pt1,ut2,pt2)的順序復(fù)接在一起,成為一個單獨的序列。之后通過交織器π2進行交織,得到序列p,p=p0,p1,···,pLp-1.]]>p再通過調(diào)制器2按照選定的調(diào)制映射方案進行N維QPSK調(diào)制映射,生成長度為 的N維調(diào)制信號序列t2,t2=t2,0,t2,1,···,t2,LPN-1.]]>該星座圖的星座點的集合為χ={s0,s1,···,s2N-1},]]>每個調(diào)制信號t2,i∈χ,t2,i的標(biāo)簽v2,i為校驗比特序列p的第N*i到N*i+N-1個比特,v2,i=(pNi,PNi+1,…,PNi+N-1)。
第4步.將調(diào)制器1輸出的調(diào)制信號序列t1和調(diào)制器2輸出的調(diào)制信號序列t2通過復(fù)接器2按照(t1,t2)的順序進行復(fù)接,成為一個單獨的輸出符號序列,然后發(fā)送至信道。
在接收端,依次含有以下步驟第1步.在開始譯碼前進行初始化,把輸入到譯碼器1的序列u的先驗概率序列P(u;Idec1)和輸入到解調(diào)器2的序列p先驗概率序列P(p;Idem2)置為等概率。所述的先驗概率序列P(u;Idec1)也就是譯碼器2輸出的后驗概率序列P(u;Odec2)經(jīng)過解交織器π1-1解交織器后得到的。
第2步.對從信道上接收到的符號用解復(fù)接器2進行解復(fù)接,得到接收信號序列r1和r2,分別輸送給兩個解調(diào)器。r1=r1,0,r1,1,···,r1,LP2-1,]]>r2=r2,0,r2,1,···,r2,LPN-1,]]>它們分別對應(yīng)于兩個發(fā)射信號序列t1和t2。
第3步.解調(diào)器1根據(jù)接收信號序列r1計算并輸出序列u的后驗概率序列P(u;Odem1)。對于序列r1中的第i個接收信號r1,i,它的同相分量r1,iI和正交分量r1,iQ兩個分量分別對應(yīng)于信息比特u2k和u2k+1,依下式計算它們的后驗概率P(u2k=b;O)=1πN0exp(-|r1,iI-(-1)ba|2N0);]]>P(u2k+1=b;O)=1πN0exp(-|r1,iQ-(-1)ba|2N0).]]>上式中b∈{0,1}。對所有的r1,i所對應(yīng)的比特計算后驗概率并進行歸一化后,就得到后驗概率序列P(u;Odem1),它直接作為譯碼器1的序列u的先驗概率序列輸入;另外,它經(jīng)過交織器π1進行交織后將作為譯碼器2的先驗概率序列輸入。
第4步.進行V次“大環(huán)”迭代解調(diào)譯碼,包括一次解調(diào)器2的解調(diào)和U次“小環(huán)”迭代譯碼第4.1步.解調(diào)器2的工作解調(diào)器2的輸入有兩部分,包括從信道上接收到的信號序列r2和編碼器輸出的序列p的先驗概率序列P(p;Idem2)。輸出為序列p的后驗概率序列P(p;Odem2)。首先,對于序列r2中的第i個信號r2,i計算發(fā)送信號t2,i的先驗概率P(r2,i|t2,i=sj),j=0,1,…,2N-1
P(r2,i|t2,i=sj)=1πN0exp(-|r2,i-sj|2N0)]]>然后再計算r2,i的標(biāo)簽v2,i所對應(yīng)的N個比特的后驗概率P(v2,il=b;O)=Σsj∈χblP(r2,i|t2,i=sj)Πh≠lh=0N-1P(v2,ih=(μ-1(sj))h;I),l,h=0,1,···,N-1.]]>其中,χbl表示χ的子集,其中每個星座點的標(biāo)簽第l位的值都等于b,b∈{0,1};v2,il表示v2,i的第l個比特,(μ-1(sj))h表示信號sj的標(biāo)簽的第h個比特的值。對所有的r2,i的標(biāo)簽計算后驗概率并進行歸一化后,就得到序列p的后驗概率序列P(p;Odem2)。
第4.2步.P(p;Odem2)經(jīng)過解交織器π2-1進行解交織,然后經(jīng)過解復(fù)接器1進行解復(fù)接,得到P(p1′;Idec1)和P(p2′;Idec2),分別作為譯碼器1和譯碼器2的關(guān)于序列p1’和p2’的先驗概率序列輸入。
第4.3步.進行U次“小環(huán)”譯碼第4.3.1步.譯碼器1的譯碼譯碼器1對分量碼1進行譯碼,它有三個輸入,分別是來自解調(diào)器1的序列u的先驗概率序列P(u;Odem1);來自解交織器π1-1的序列u的先驗概率序列P(u;Idec1);來自解復(fù)接器1的序列p1’的先驗概率序列P(p1′;Idec1)。有兩個輸出,分別是序列u的后驗概率序列P(u;Odec1);序列p1’的后驗概率序列P(p1′;Odec1)。
首先要完成前向和逆向的遞推。令A(yù)k(stB(e))表示在對第k個信息比特編碼時,該碼處于狀態(tài)stB(e)且輸出分支為e的概率,k=0,1,…,M-1。有收尾比特,所以整個碼字一共有M=L+m+1個狀態(tài)節(jié)點;令Bk(stE(e))表示在第k個信息比特編碼時,該碼處于狀態(tài)stE(e)且輸入分支為e的概率,k=1,2,…,M;當(dāng)k<L時,u(e)表示當(dāng)分支為e的時候在該編碼節(jié)點上輸入的信息比特,它對應(yīng)于序列u中的第k個比特,u(e)=uk;pj(e)表示當(dāng)分支為e的時候在該編碼節(jié)點上輸出的校驗比特序列中第j個比特,j=0,1,…,n-2,它對應(yīng)于序列p1中的第(n-1)*k+j個比特,pj(e)=P1,(n-1)·k+j;當(dāng)k≥L時,u(e)則表示第k-L個收尾比特,pj(e)表示第k-L個收尾比特的校驗比特序列中的第j個比特。則前向遞推為Ak(st)=Σe:stE(e)=stAk-1(stB(e))Pk(u(e);I)Πj=0n-2Pk(pj(e);I)]]>逆向遞推為Bk(st)=Σe:stB(e)=stBk+1(stE(e))Pk+1(u(e);I)Πj=0n-2Pk+1(pj(e);I)]]>編碼器1的初始狀態(tài)為0,經(jīng)過收尾以后,最終的狀態(tài)也為0。上述遞推公式的初始值為A0(st0)=1,A0(sti)=0,i=1,2,…,2m-1;BM(st0)=1,BM(sti)=0,i=1,2,…,2m-1。
然后計算第k個信息比特及其所對應(yīng)的校驗比特的后驗概率Pk(u(e)=b;O)=Σe:u(e)=bAk-1(stB(e))Πj=0n-2Pk+1(pj(e);I)Bk(stE(e))]]>Pk(pj(e)=b;O)=Σe:pj(e)=bAk-1(stB(e))Pk(u(e);I)(Σi=0i≠jv-2Pk(pi(e);I))Bk(stE(e))]]>式中j=0,1,…,n-2,序列u的輸入先驗概率可以按下式得到,需要歸一化處理。
Pk(u=b;I)=Pk(u=b;Idec1)*Pk(u=b;Odem1)以上各式式中得到的概率值需要進行歸一化。
第4.3.2步.序列P(u;Odec1)通過交織器π1進行交織,得到序列P(u;Idec2)。
第4.3.3步.譯碼器2的譯碼與譯碼器1的工作是對稱的;譯碼器2對分量碼2進行譯碼,它有三個輸入,分別是經(jīng)過交織器π1來自解調(diào)器1的序列u的先驗概率序列;經(jīng)過交織器π1來自譯碼器1的序列u的先驗概率序列P(u;Idec2);來自解復(fù)接器1的序列p2’的先驗概率序列P(p2′;Idec2)。有兩個輸出,分別是序列u的后驗概率序列P(u;Odec2);序列p2’的后驗概率序列P(p2′;Odec2)。具體譯碼過程與第i.)步中譯碼器1相同。
第4.3.4步. 序列P(u;Odec2)通過解交織器π1-1進行解交織,得到序列P(u;Idec1)。
第4.4步.將“小環(huán)”迭代譯碼輸出的序列p1’和p2’的后驗概率序列P(p1′;Odec1)和P(p2′;Odec2)通過復(fù)接器1進行復(fù)接,然后再通過交織器π2進行交織,得到解調(diào)器2的輸入先驗概率序列P(p;Idem2)。
第5步.根據(jù)譯碼得到的序列u的后驗概率P(u;Odec1)、P(u;Odec2)以及解調(diào)器1得到的后驗概率P(u;Odem1),依下式計算序列u的概率序列P(u),并根據(jù)此值進行硬判決,得到譯碼結(jié)果。
Pk(u=b)=Pk(u=b;Idec1)*Pk(u=b;Odec1)*Pk(u=b;Odem1)實驗效果如下按照下文中的實際系統(tǒng)實現(xiàn)方案得到的實際系統(tǒng)仿真結(jié)果見圖4。當(dāng)U=2,V=30,L=50000時,將該方案的性能與每個分量碼的狀態(tài)數(shù)都是16的Turbo碼(37,21)相比較,該Turbo碼譯碼的迭代次數(shù)也是30,碼長也是50000,編碼效率也是1/2。由圖中可見,本系統(tǒng)方案明顯好于Turbo碼,由于本系統(tǒng)方案使用的是分量碼為4狀態(tài)的Turbo碼,所以兩次小環(huán)迭代的復(fù)雜度只相當(dāng)于一個16狀態(tài)的RSC碼的譯碼復(fù)雜度,也就是說,兩次小環(huán)迭代的復(fù)雜度只相當(dāng)于1/2次的16的Turbo碼迭代譯碼的復(fù)雜度。一次8維QPSK的MAP解調(diào)復(fù)雜度相當(dāng)于一個16狀態(tài)的RSC碼的譯碼復(fù)雜度,而且比RSC碼的譯碼器更容易并行實現(xiàn)。由此可見,圖中進行性能比較的兩個系統(tǒng)的復(fù)雜度大致相同,而本發(fā)明中提出的方案更加有利于并行實現(xiàn)。
圖1傳統(tǒng)的Turbo碼的編譯碼器結(jié)構(gòu)1.1、Turbo碼的編碼器;1.2、Turbo碼的譯碼器。
圖2 Turbo碼與多維調(diào)制級聯(lián)的迭代譯碼解調(diào)系統(tǒng)的編譯碼器結(jié)構(gòu)2.1、發(fā)送端;2.2、接收端。
圖3N維QPSK調(diào)制星座圖舉例3.1、2維Gray映射的QPSK;3.2、4維QPSK舉例。
圖4實際系統(tǒng)方案的實驗效果。
圖5編碼效率為1/2的RSC碼的編碼器。
實際系統(tǒng)方案這里給出適合于本發(fā)明中提出的編譯碼結(jié)構(gòu)一套實際系統(tǒng)方案。先規(guī)定命名規(guī)范,如果編碼效率為1/2的RSC碼的生成多項式為(G1,G2),則意味著該RSC碼編碼器的結(jié)構(gòu)如圖5中所示,如果使用二進制表示,則有G1=g10,g11,g12,···,g1m;]]>G2=g20,g21,g22,···,g2m,]]>其中m是前文中提到的RSC碼的記憶深度。習(xí)慣上G1和G2使用八進制進行表示。系統(tǒng)方案分別如下兩個RSC碼的生成多項式均為(0×7,0×6),是記憶深度為2,狀態(tài)數(shù)為4的RSC碼,鑿孔到編碼效率為2/3,鑿孔圖案使用最常用的圖案,即編碼器輸出的校驗比特序列每隔一個比特刪掉一個比特。調(diào)制器2為8維QPSK調(diào)制,調(diào)制映射見表1。在交織深度較大的情況下,本方案的編碼速率約等于1/2。
附表中的星座點標(biāo)號i是以十進制表示的,它決定了該星座點的坐標(biāo),如果用二進制表示,i=(i0,i1,…,iN-1),則對應(yīng)的星座點坐標(biāo)為si=((-1)i0·a,(-1)i1·a,···,(-1)iN-1·a).]]>標(biāo)簽的標(biāo)號k同樣是以十進制表示的,對應(yīng)的標(biāo)簽值就是k的二進制表示,vk=(k0,k1,…,kN-1)。
表1 8維QPSK調(diào)制映射方式
注表1中只列出了8維QPSK的前128個星座點的映射方式,后面128個星座點的標(biāo)簽為vk=(1,k1′,…,kN-1′),k′=k-128。
權(quán)利要求
1.一種Turbo碼與多維調(diào)制級聯(lián)的系統(tǒng)編譯碼方法,其特征在于它依次含有以下步驟在發(fā)送端,依次含有以下步驟第1步.在開始編碼前進行初始化,設(shè)定交織器(π1)的交織深度L,隨機產(chǎn)生交織圖樣;設(shè)定交織器(π2)的交織深度為Lp=2*(n-1)*L+2*n*m,隨機產(chǎn)生交織圖樣;編碼器(1)和編碼器(2)相同,都是編碼效率為R1=1/n的系統(tǒng)碼編碼器,每輸入一個信息比特就會輸出n-1個校驗比特,編碼器的記憶深度為m,將編碼器(1)和編碼器(2)的狀態(tài)都設(shè)為0狀態(tài);第2步.把序列長度為L的信息比特序列u輸入編碼器(1)進行編碼,令u=u0,u1,…,uL-1,輸出信息比特序列的校驗比特序列p1,輸出收尾比特序列ut1,輸出收尾比特序列的校驗比特序列pt1,將上述三個比特序列一起稱為分量碼(1)的校驗比特序列p1’;同時該信息比特序列通過交織器(π1)進行交織,然后輸入編碼器(2)進行編碼,輸出信息比特序列的校驗比特序列p2,輸出收尾比特序列ut2,輸出收尾比特序列的校驗比特序列pt2,將上述三個比特序列一起稱為分量碼(2)的校驗比特序列p2’;最終得到的碼字總長度為2*n*L-L+2*n*m,其中校驗比特序列以及收尾比特序列(以后合在一起簡稱為Turbo碼的校驗比特序列)的長度為Lp=2*(n-1)*L+2*n*m;第3步.將信息比特序列通過調(diào)制器(1)進行2維Gray映射的調(diào)制,生成長度為 的2維調(diào)制信號序列t1,t1=t1,0,t1,1,···,t1,L2-1;]]>假設(shè)2維QPSK星座點可能的四種信號取值為(±a,±a);信息比特序列u的第2k和2k+1兩個比特u2k和u2k+1分別決定t1,k的同相分量t1,kI和正交分量t1,kQt1,kI=(-1)u2ka,t1,kQ=(-1)u2k+1a;]]>將編碼器(1)和編碼器(2)輸出的信息比特序列的校驗比特序列、收尾比特序列、收尾比特序列的校驗比特序列通過復(fù)接器(1)按照(p1,p2,ut1,pt1,ut2,pt2)的順序復(fù)接在一起,成為一個單獨的序列;之后通過交織器(π2)進行交織,得到序列p,p=p0,p1,···,pLp-1;]]>p再通過調(diào)制器(2)按照選定的調(diào)制映射方案進行N維QPSK調(diào)制映射,生成長度為 的N維調(diào)制信號序列t2,t2=t2,0,t2,1,···,t2,LpN-1;]]>該調(diào)制星座圖的星座點的集合為χ={s0,s1,···,s2N-1},]]>每個調(diào)制信號t2,i∈χ,t2,i的標(biāo)簽v2,i為校驗比特序列p的第N*i到N*i+N-1個比特,v2,i=(pNi,pNi+1,…,pNi+N-1);第4步.將調(diào)制器(1)輸出的調(diào)制信號序列t1和調(diào)制器(2)輸出的調(diào)制信號序列t2通過復(fù)接器(2)按照(t1,t2)的順序進行復(fù)接,成為一個單獨的輸出符號序列,然后發(fā)送至信道;在接收端,依次含有以下步驟第1步.在開始譯碼前進行初始化,把輸入到譯碼器(1)的序列u的先驗概率序列P(u;Idec1)和輸入到解調(diào)器(2)的序列p先驗概率序列P(p;Idem2)置為等概率;所述的先驗概率序列P(u;Idec1)也就是譯碼器(2)輸出的后驗概率序列P(u;Odec2)經(jīng)過解交織器π1-1解交織后得到的;第2步.對從信道上接收到的符號用解復(fù)接器(2)進行解復(fù)接,得到接收信號序列r1和r2,分別輸送給兩個解調(diào)器;r1=r1,0,r1,1,···,r1,Lp2-1,r2=r2,0,r2,1,···,r2,LpN-1,]]>它們分別對應(yīng)于兩個發(fā)射信號序列t1和t2;第3步.解調(diào)器(1)根據(jù)接收信號序列r1計算并輸出序列u的后驗概率序列P(u;Odem1);對于序列r1中的第i個接收信號r1,i,它的同相分量r1,iI和正交分量r1,iQ兩個分量分別對應(yīng)于信息比特u2k和u2k+1,依下式計算它們的后驗概率P(u2k=b;O)=1πN0exp(-|r1,iI-(-1)ba|2N0);]]>P(u2k+1=b;O)=1πN0exp(-|r1,iQ-(-1)ba|2N0);]]>上式中b∈{0,1};對所有的r1,i所對應(yīng)的比特計算后驗概率并進行歸一化后,就得到后驗概率序列P(u;Odem1),它直接作為譯碼器(1)的序列u的先驗概率序列輸入;另外,它經(jīng)過交織器π1進行交織后將作為譯碼器(2)的先驗概率序列輸入;第4步.進行V次“大環(huán)”迭代解調(diào)譯碼,包括一次解調(diào)器(2)的解調(diào)和U次“小環(huán)”迭代譯碼第4.1步.解調(diào)器(2)的工作解調(diào)器(2)的輸入有兩部分,包括從信道上接收到的信號序列r2和交織器(π2)輸出的序列p的先驗概率序列P(p;Idem2);輸出為序列p的后驗概率序列P(p;Odem2);首先,對于序列r2中的第i個信號r2,i計算發(fā)送信號t2,i的先驗概率P(r2,i|t2,i=sj),j=0,1,…,2N-1P(r2,i|t2,i=sj)=1πN0exp(-|r2,i-sj|2N0)]]>然后再計算r2,i的標(biāo)簽v2,i所對應(yīng)的N個比特的后驗概率P(v2,il=b;O)=Σsj∈χblP(r2,i|t2,i=sj)Πh≠lh=0N-1P(v2,ih=(μ-1(sj))h;I),l,h=0,1,···,N-1;]]>其中,χbl表示χ的子集,其中每個星座點的標(biāo)簽第l位的值都等于b,b∈{0,1};v2,il表示v2,i的第l個比特,(μ-1(sj))h表示信號sj的標(biāo)簽的第h個比特的值;對所有的r2,i的標(biāo)簽計算后驗概率并進行歸一化后,就得到序列p的后驗概率序列P(p;Odem2);第4.2步.P(p;Odem2)經(jīng)過解交織器(π2-1)進行解交織,然后經(jīng)過解復(fù)接器(1)進行解復(fù)接,得到P(p1′;Idec1)和P(p2′;Idec2),分別作為譯碼器(1)和譯碼器(2)的關(guān)于序列p1’和p2’的先驗概率序列輸入;第4.3步.進行U次“小環(huán)”譯碼第4.3.1步.譯碼器(1)的譯碼譯碼器(1)對分量碼(1)進行譯碼,它有三個輸入,分別是來自解調(diào)器(1)的序列u的先驗概率序列P(u;Odem1);來自解交織器(π1-1)的序列u的先驗概率序列P(u;Idec1);來自解復(fù)接器(1)的序列p1’的先驗概率序列P(p1′;Idec1);有兩個輸出,分別是序列u的后驗概率序列P(u;Odec1);序列p1’的后驗概率序列P(p1′;Odec1);首先要完成前向和逆向的遞推;令A(yù)k(stB(e))表示在對第k個信息比特編碼時,該碼處于狀態(tài)stB(e)且輸出分支為e的概率,k=0,1,…,M-1;有收尾比特,所以整個碼字一共有M=L+m+1個狀態(tài)節(jié)點;令Bk(stE(e))表示在第k個信息比特編碼時,該碼處于狀態(tài)stE(e)且輸入分支為e的概率,k=1,2,…,M;當(dāng)k<L時,u(e)表示當(dāng)分支為e的時候在該編碼節(jié)點上輸入的信息比特,它對應(yīng)于序列u中的第k個比特,u(e)=uk;pj(e)表示當(dāng)分支為e的時候在該編碼節(jié)點上輸出的校驗比特序列中第j個比特,j=0,1,…,n-2,它對應(yīng)于序列p1中的第(n-1)*k+j個比特,pj(e)=p1,(n-1)·k+j;當(dāng)k≥L時,u(e)則表示第k-L個收尾比特,pj(e)表示第k-L個收尾比特的校驗比特序列中的第j個比特;則前向遞推為Ak(st)=Σe:stE(e)=stAk-1(stB(e))Pk(u(e);I)Πj=0n-2Pk(pj(e);I)]]>逆向遞推為Bk(st)=Σe:stB(e)=stBk+1(stE(e))Pk+1(u(e);I)Πj=0n-2Pk+1(pj(e);I)]]>編碼器(1)的初始狀態(tài)為0,經(jīng)過收尾以后,最終的狀態(tài)也為0;上述遞推公式的初始值為A0(st0)=1,A0(sti)=0,i=1,2,…,2m-1;BM(st0)=1,BM(sti)=0,i=1,2,…,2m-1;然后計算第k個信息比特及其所對應(yīng)的校驗比特的后驗概率Pk(u(e)=b;O)=Σe:u(e)=bAk-1(stB(e))Πj=0n-2Pk+1(pj(e);I)Bk(stE(e))]]>Pk(pj(e)=b;O)=Σe:pj(e)=bAk-1(stB(e))Pk(u(e);I)(Σi=0i≠jv-2Pk(pi(e);I))Bk(stE(e))]]>式中j=0,1,…,n-2,序列u的輸入先驗概率可以按下式得到,需要歸一化處理;Pk(u=b;I)=Pk(u=b;Idec1)*Pk(u=b;Odem1)以上各式式中得到的概率值需要進行歸一化;第4.3.2步.序列P(u;Odec1)通過交織器(π1)進行交織,得到序列P(u;Idec2);第4.3.3步.譯碼器(2)的譯碼與譯碼器(1)的工作是對稱的;譯碼器(2)對分量碼(2)進行譯碼,它有三個輸入,分別是經(jīng)過交織器(π1)來自解調(diào)器(1)的序列u的先驗概率序列;經(jīng)過交織器(π1)來自譯碼器(1)的序列u的先驗概率序列P(u;Idec2);來自解復(fù)接器(1)的序列p2’的先驗概率序列P(p2′;Idec2);有兩個輸出,分別是序列u的后驗概率序列P(u;Odec2);序列p2’的后驗概率序列P(p2′;Odec2);具體譯碼過程與第i.)步中譯碼器(1)相同;第4.3.4步.序列P(u;Odec2)通過解交織器(π1-1)進行解交織,得到序列P(u;Idec1);第4.4步.將“小環(huán)”迭代譯碼輸出的序列p1’和p2’的后驗概率序列P(p1′;Odec1)和P(p2′;Odec2)通過復(fù)接器(1)進行復(fù)接,然后再通過交織器(π2)進行交織,得到解調(diào)器(2)的輸入先驗概率序列P(p;Idem2);第5步.根據(jù)譯碼得到的序列u的后驗概率P(u;Odec1)、P(u;Odec2)以及解調(diào)器(1)得到的后驗概率P(u;Odem1),依下式計算序列u的概率序列P(u),并根據(jù)此值進行硬判決,得到譯碼結(jié)果;Pk(u=b)=Pk(u=b;Idec1)*Pk(u=b;Odec1)*Pk(u=b;Odem1)。
全文摘要
一種Turbo碼與多維調(diào)制級聯(lián)的系統(tǒng)編譯碼方案。其特征在于在發(fā)送端,將Turbo碼編碼器輸出的比特流進行不同類型的調(diào)制,其中,信息比特序列使用傳統(tǒng)的兩維Gray映射QPSK調(diào)制,而校驗比特序列使用經(jīng)過星座圖映射方式優(yōu)化的多維QPSK調(diào)制。在接收端,Turbo碼譯碼和多維調(diào)制的迭代解調(diào)間進行聯(lián)合迭代解調(diào)譯碼,其中,迭代解調(diào)使得傳統(tǒng)Turbo碼所無法利用的校驗比特的后驗概率得到利用。在相同的系統(tǒng)復(fù)雜度下,相對于單純的Turbo碼,本系統(tǒng)可以獲得系統(tǒng)誤比特率性能上的明顯增益。
文檔編號H03M13/23GK1645752SQ200510011229
公開日2005年7月27日 申請日期2005年1月21日 優(yōu)先權(quán)日2005年1月21日
發(fā)明者齊心, 周世東, 趙明, 王京, 許希斌, 肖立民 申請人:清華大學(xué)