專利名稱:Turbo乘積碼串行級聯NR碼的信道編碼方法
技術領域:
本發(fā)明屬于數字信號傳輸領域,特別涉及數字信號傳輸中一種結合Turbo乘積碼(簡稱TPC碼)和Nordstrom-Robinson碼(簡稱NR碼)的信道編碼方法。
背景技術:
地面無線傳輸信道是一個非常復雜的傳輸信道,無論固定接收還是移動接收,都面臨嚴重的多徑干擾和其它衰落因素影響。所以,信號經過信道傳輸以后,將不可避免地出現錯碼現象。在恢復圖象之前,必須將這些可能出現的錯碼糾正過來,信道糾錯編譯碼就是非常有效的手段之一。信道編碼實際上是通過加入一定的冗余信息作為傳輸的輔助信息,對抗信道衰落和其他干擾,來保證數據的可靠傳輸。
信道編碼是反映系統(tǒng)糾錯能力的一個技術核心,編碼效率與糾錯能力是一對需要統(tǒng)一的矛盾。根據不同的運營業(yè)務的需要,選擇對應的數據碼率,并對該業(yè)務流提供相應的信道編碼保護。由于運營業(yè)務不同,相應的傳輸碼率不同,對應的信道衰落情況也各不相同比如高清視頻固定接收業(yè)務的傳輸碼率要求高,但固定接收的信道衰落不隨時間變化,因此可以選擇編碼效率高、糾錯性能相對要求較低的信道編碼方式;而對應標清視頻或數據的移動接收業(yè)務的傳輸碼率不高,但移動接收情況下的信道非常惡劣,并且隨時間和地點迅速變化,因此可以選擇編碼效率較低,糾錯能力強的信道編碼方式。
1993年,C.Berrou提出了經典“Turbo碼”,即PCCC由兩個并行級聯的子卷積碼編碼器以及偽隨機交織器構成,并采用了迭代譯碼結構和針對子卷積碼的MAP譯碼算法。PCCC是第一種出現的Turbo碼,它的構造是信道編碼領域的一次革命,并推動了其它一系列Turbo碼的誕生與成熟。
Turbo碼是至今為止最有效的信道糾錯碼使傳輸可靠性提高;也使傳輸速率提高;具有很好的誤碼性能十分接近香農界(Shannon)。現有大量的投資、人力正推動Turbo碼在各種系統(tǒng)中得到廣泛應用。對于傳播環(huán)境惡劣的無線系統(tǒng),采用Turbo碼可以最大程度上提高未來系統(tǒng)的性能。目前Turbo碼已經被廣泛應用于從有線到無線的各種寬帶數據通信應用場合,包括蜂窩移動通信,已被選為WCDMA/cdma2000中,作為傳輸多媒體業(yè)務的信道編碼標準;寬帶衛(wèi)星通信;數字電視廣播DVB-RCT和DVB-RCS;無線局域網(IEEE 802.11);寬帶無線接入(IEEE 802.16);以及其它如數據存儲介質設備訪問和有線調制解調器(CableModem)、DSL等。
Turbo乘積碼(簡稱TPC碼),是采用軟輸入軟輸出(SISO)迭代譯碼的乘積碼,是傳統(tǒng)Turbo碼技術(PCCC)的一種發(fā)展。與PCCC相比,TPC碼可以在較高的編碼效率情況下,比如R>2/3,仍然保持相當強的糾錯能力,有利于提高頻譜利用率;可提供更好的抗衰落性能,并能較大的改善誤比特率一信噪比(BER-SNR)性能曲線的誤碼平層效應,這些性能均優(yōu)于傳統(tǒng)的Turbo碼,以及傳統(tǒng)的卷積編碼,包括TCM編碼。
由于與傳統(tǒng)的Turbo碼相比,TPC具有更低的誤碼平層,更適合于高頻譜效率、高數據速率通信場合??赡軕冒o線局域網(IEEE 802.11)、寬帶無線接入(IEEE 802.16)、寬帶衛(wèi)星通信和3G+、4G移動通信系統(tǒng)等。
卷積碼(n,k,m)是一種非常有效的編碼,由于k和n通常很小,特別適合以串行形式進行傳輸,時延小。與分組碼不同,卷積碼編碼后的n個碼元不僅與當前段的k個信息有關,還與前面的N-1段信息有關,編碼過程中互相關聯的碼元個數為nN。采用基于碼的網圖基礎上的一種最大似然譯碼算法—維特比算法(viterbi),是一種最佳的概率譯碼方法。在通信領域內被廣為應用?,F有的美國、日本和歐洲的數字電視地面?zhèn)鬏敇藴识疾捎貌煌a率的卷積碼進行內碼編碼。
Nordstrom-Robinson碼(簡稱NR碼)是一種高效實用的非線性分組碼。NR(16,8,6)碼字的碼率為1/2,最小漢明距離為6(大于相同編碼效率的卷積碼(2,1,2),自由距為5),可以糾正2個錯誤。它的構成有多種方式,常采用是它的一種系統(tǒng)形式。NR(16,8,6)碼具有較好的相關特性,碼字集中的每一個碼字與256個碼字進行同步相關產生的256個相關輸出中有1個最大相關輸出16,1個最小相關輸出-16,有30個相關輸出為0,其他相關值為+4或-4。在接收端可以用相關譯碼,且每個比特的置信度一致。仿真結果表明,NR(16,8,6)比卷積碼(2,1,2)具有更低的Eb/No門限,更快進入瀑布區(qū)。
對于單載波系統(tǒng),信道編解碼不僅通過自身的編解過程進行糾錯,同時還與均衡器結合,為均衡器提供更為可靠的軟判決信息,來提高均衡器的性能,從而進一步降低系統(tǒng)的載噪比門限。因此,在單載波系統(tǒng)選擇編碼時還需要考慮同均衡器結合的特點——更為可靠的軟判決信息1更大的漢明距;2更低的載噪比(Eb/No)門限;3為均衡器提供置信度均勻的可靠信息。上述各種編碼方法雖各具優(yōu)點,但都不能單獨很好地滿足此要求。
發(fā)明內容
本發(fā)明的目的是提出一種結合Turbo乘積碼和NR碼的信道編碼方法。該方法充分挖掘出兩種編碼之間的匹配優(yōu)勢以得到更強的糾錯能力,可以進一步降低傳輸系統(tǒng)的載噪比門限。
本發(fā)明中的Turbo乘積碼編碼是這樣的輸入的串行數據信息比特流按比特為單位,逐行進入TPC編碼矩陣,每行M1比特,共N1行,形成一個N1行M1列的輸入數據信息比特矩陣(M1*N1);然后經擴展?jié)h明編碼形成N2行M2列的二維TPC(M2*N2)編碼輸出矩陣塊。
本發(fā)明中的NR碼采用具有較好相關特性的NR(16,8,6)碼。碼字集中的每一個碼字與256個碼字進行同步相關產生的256個相關輸出中有1個最大相關輸出16,1個最小相關輸出-16,有30個相關輸出為0,其他相關值為+4或-4。
在本發(fā)明設計的信道編碼方法中,Turbo乘積碼TPC(M2,M1;N2,N1)和NR(16,8,6)碼的結合采用串行級聯的方式,即輸入的串行數據信息比特流按比特為單位,逐行進入TPC編碼矩陣,每行M1比特,共N1行,形成一個N1行M1列的輸入數據信息比特矩陣(M1*N1);然后經擴展?jié)h明編碼形成N2行M2列的二維TPC(M2*N2)編碼輸出矩陣塊??梢允紫瓤v向逐列進行擴展?jié)h明編碼(N2,N1),然后再橫向逐行進行擴展?jié)h明編碼(M2,M1);也可以首先橫向逐行進行擴展?jié)h明編碼(M2,M1),然后再縱向逐列進行擴展?jié)h明編碼(N2,N1)。從TPC編碼器輸出的串行比特流再進行NR(16,8,6)編碼。
考慮到進一步提高抗突發(fā)錯誤的能力,在TPC與NR編碼之間可以增加比特交織處理。比特交織可以在K個二維TPC編碼塊之間進行,K取為1、4、8、16、32或64。交織輸出時,按照TPC塊的順序(1~K)依次輸出每個TPC塊的相同位置上的1個比特數據,每個TPC塊內的數據按對角線順序輸出。交織后輸出的串行比特流再進行NR(16,8,6)編碼。
此外,還可以考慮在NR編碼之后增加符號交織處理。
本發(fā)明提出一種新的信道編碼結合方式。TPC碼與NR編碼都屬于分組碼,其結合易于實現。TPC碼與NR編碼結合可以為接收端均衡器提供更為可靠的軟判決信息,來提高均衡器的性能,從而進一步降低系統(tǒng)的載噪比門限,特別適用于單載波傳輸系統(tǒng)。在TPC與NR編碼之間加入交織處理,還可以進一步提高系統(tǒng)抗突發(fā)錯誤的能力。
以下結合附圖和實施例進一步描述本發(fā)明。
圖1為本發(fā)明TPC編碼與NR編碼的串行級聯方式。
圖2為本發(fā)明實施例采用的TPC(128,120;128,120)編碼。
具體實施例方式
圖1給出了本發(fā)明TPC(M2,M1;N2,N1)和NR(16,8,6)碼的結合的實現方式,其中M2=N2=128,M1=N1=120。
輸入TPC編碼器的串行數據信息比特流按比特為單位,逐行進入TPC編碼矩陣,每行120比特,共120行,形成一個120行120列的輸入數據信息比特矩陣(120*120),參見圖2。然后首先縱向逐列(120列)進行擴展?jié)h明編碼(128,120),再橫向逐行(128行)進行擴展?jié)h明編碼(128,120),最后形成二維的TPC(128*128)編碼輸出矩陣塊。
該TPC編碼器同時支持多種擴展?jié)h明碼或者擴展BCH碼。表1列出了所支持的漢明碼或者BCH碼的生成多項式。擴展?jié)h明碼或者擴展BCH碼,就是在漢明碼或者BCH碼的基礎上,再增加一位奇偶交驗位。該奇偶交驗位對整個碼字進行奇偶交驗。
表1碼字與生成多項式
TPC編碼器對行或列提供9種可能的碼型,也即提供81種可能的乘積碼字。
從TPC編碼器輸出的串行比特流再進行NR(16,8,6)編碼。本發(fā)明使用的是NR編碼的一種系統(tǒng)形式,每個碼字長16比特,共有256個碼字。假設系統(tǒng)形式的NR(16,8,6)碼字為{X0,X1,…,X7,Y0,Y1,…Y7},其中X0,X1,…,X7是8位信息比特,Y0,Y1,…,Y7是8位校驗比特。每個校驗位Y都是信息位X的布爾函數。計算方法如下Y0=X7_X6_X0_X1_X3_(X0_X4)(X1_X2_X3_X5)_(X1_X2)(X3_X5),其中的_表示模二加,所有的X和Y都是0,1取值。其余的Yi(i=1,…,6)可以通過對式中的X0到X6循環(huán)移位得到,X7保持不變,即對于Yi將式中的Xj替換為X(i+j)mod7,其中i=0,…,6且j=0,…,6。
最后一位校驗位Y7進行奇偶校驗Y7=X0_X1_…_X7_Y0_Y1_…_Y6為了進一步提高抗突發(fā)錯誤的能力,在TPC與NR編碼之間還可以增加塊間比特對角線交織處理。交織在K個二維TPC編碼塊之間進行,K取為1、4、8、16、32或64。交織輸出時,按照TPC塊的順序(1~K)依次輸出每個TPC塊的相同位置上的1個比特數據,每個TPC塊內的數據按對角線順序輸出。以K取8為例,交織輸出時,按照TPC塊的順序(1~8),依次輸出第1個塊的(0,0)、第2個塊的(0,0)、...一直到第8個塊的(0,0),然后輸出第1個塊的(1,1)、第2個塊的(1,1)、...一直到第8個塊的(1,1),...,然后輸出第1個塊的(127,127)、第2個塊的(127,127)、...一直到第8個塊的(127,127),然后輸出第1個TPC塊的(0,1)、第2個TPC塊的(0,1)、...一直到第8個塊的(0,1),然后輸出第1個TPC塊的(1,2)、第2個TPC塊的(1,2)、...一直到第8個塊的(1,2),...,然后輸出第1個TPC塊的(127,0)、第2個TPC塊的(127,0)、...一直到第8個塊的(127,0),...,最后輸出第1個TPC塊的(127,126)、第2個TPC塊的(127,126)、...一直到第8個塊的(127,126)。
交織后輸出的串行比特流再進行NR(16,8,6)編碼。
NR(16,8,6)編碼輸出可以再進行J個NR編碼輸出塊的塊間符號交織,J可以為0、1、2、4、8、16、32、64或者128。
本發(fā)明實施例以M2=N2=128,M1=N1=120為例進行了說明。但本發(fā)明顯然還適用于其他TPC編碼與NR(16,8,6)編碼的串行級聯。
權利要求
1.一種Turbo乘積碼串行級聯NR碼的信道編碼方法,其特征在于包括以下步驟(1)輸入TPC編碼器的串行數據信息比特流按比特為單位,逐行進入TPC編碼矩陣,每行M1比特,共N1行,形成一個N1行M1列的輸入數據信息比特矩陣;然后經擴展?jié)h明編碼形成N2行M2列的二維TPC(M2*N2)編碼輸出矩陣塊;(2)從TPC編碼器輸出的串行比特流再進行NR(16,8,6)編碼。
2.根據權利要求1所述的信道編碼方法,其特征在于在所述步驟(1)和步驟(2)之間還包括一個比特交織處理步驟;比特交織在K個二維TPC編碼塊之間進行,K取為1、4、8、16、32或者64;交織輸出時,按照TPC塊的順序(1~K)依次輸出每個TPC塊的相同位置上的1個比特數據,每個TPC塊內的數據按對角線順序輸出;交織后輸出的串行比特流再進行NR(16,8,6)編碼。
3.根據權利要求2所述的信道編碼方法,其特征在于TPC編碼器支持以下漢明碼或者BCH碼的生成多項式
4.根據權利要求1或2或3所述的信道編碼方法,其特征在于M2=N2=128;M1=N1=120。
5.根據權利要求1或2或3所述的信道編碼方法,其特征在于在NR編碼之后,還進行塊間符號交織處理;交織深度為J個NR編碼輸出數據塊。
6.根據權利要求4所述的信道編碼方法,其特征在于在NR編碼之后,還進行塊間符號交織處理;交織深度為J個NR編碼輸出數據塊。
7.根據權利要求6所述的信道編碼方法,其特征在于交織深度參數J取為1、2、4、8、16、32、64或者128。
全文摘要
本發(fā)明公開了一種結合Turbo乘積碼和Nordstrom-Robinson碼(簡稱NR碼)的信道編碼方法,采用TPC(M
文檔編號H03M13/00GK1642019SQ200410006170
公開日2005年7月20日 申請日期2004年3月5日 優(yōu)先權日2004年3月5日
發(fā)明者張文軍, 徐友云, 歸琳, 管云峰, 陳超 申請人:上海交通大學