專利名稱:一種低碼率ldpc碼的編碼方法
技術(shù)領(lǐng)域:
本發(fā)明屬于信息論信道編碼技術(shù)領(lǐng)域,具體涉及一種低碼率的低密度奇偶校驗(yàn)(LDPC)碼的編碼方法。本發(fā)明是提高信息傳輸可靠性的一種技術(shù),它能在空間通信、衛(wèi)星通信、移動(dòng)通信和寬帶無限通信等多個(gè)無線通信領(lǐng)域中得到應(yīng)用。
背景技術(shù):
首先簡(jiǎn)要介紹一下低率碼在糾錯(cuò)碼領(lǐng)域的研究與應(yīng)用現(xiàn)狀1)1992年在Galileo空間站上布署了一個(gè)級(jí)聯(lián)碼方案,它的內(nèi)碼是1/6碼率的卷積碼,解碼采用大Viterbi解碼器,外碼是一個(gè)變碼長(zhǎng)的RS碼,這個(gè)方案的運(yùn)行信噪比為Eb/N0=0.8dB,誤碼率為Pb(E)≈2×10-7,實(shí)際編碼增益大約為8.8dB。2)低率碼在美國(guó)內(nèi)陸移動(dòng)通信標(biāo)準(zhǔn)IS—95系統(tǒng)中得到應(yīng)用,該系統(tǒng)的上行鏈路采用帶寬擴(kuò)展因子為4的偽隨機(jī)序列,擴(kuò)展因子64的余下部分是由正交調(diào)制和低率卷積碼來完成的。3)1999年H.Jin和McEliece在實(shí)用代數(shù)糾錯(cuò)碼年會(huì)上發(fā)表了“RA codes achieve AWGN channel capacity”一文。文中對(duì)不規(guī)則重復(fù)積累IRA碼采用打孔和擴(kuò)展的方式構(gòu)造出率兼容(RC)IRA碼,其中對(duì)IRA碼的H矩陣進(jìn)行擴(kuò)展,可產(chǎn)生低率IRA碼。例如,對(duì)于碼率0.1、碼長(zhǎng)5120的IRA碼,如果在擴(kuò)展時(shí)合理的設(shè)計(jì)度為1的節(jié)點(diǎn)的比例,在誤碼率為10-4~10-5之間時(shí),最好性能為1.6dB左右,離香農(nóng)限大約2.9dB。4)2000年Sorokine、Kschischang和Pasupathy在IEEE雜志Transaction on Communications上發(fā)表的“Gallager Codes forCDMA Applications—Part IIImplementations,Complexity,and SystemCapacity”一文,利用LDPC碼為IS—95系統(tǒng)設(shè)計(jì)了碼率為1/8的低率碼,在誤碼率為6×10-5時(shí),信噪比為3.5dB。
對(duì)于碼率趨近于零的信道編碼,以每信息位信噪比形式表示時(shí),加性高斯白噪聲信道上的最大Shannon信道容量是—1.6dB。從這個(gè)理論似乎可以推知,碼率越低,低率信道編碼所達(dá)到的信噪比應(yīng)該越低,獲得的編碼增益越高,但實(shí)際情況并非如此。最原始的低率信道編碼方案是Hadamard碼和超正交卷積碼,這兩類碼只能提供較小的編碼增益,它們均遠(yuǎn)離香農(nóng)的信道容量限。Hadamard碼的編碼增益很低,即長(zhǎng)度為4096的雙正交Hadamard碼,在信噪比為Eb/N0≈4dB時(shí),能達(dá)到誤碼率為Pb(E)=10-5的可靠通信,離香農(nóng)限大約是6dB,僅提供了5.6dB的編碼增益。超正交卷積碼,從1/64碼率到1/1024碼率,具有相同的漸進(jìn)編碼增益7dB,離香農(nóng)限5dB。由此可見,上述這些編碼方案,隨著碼率的降低,并沒有導(dǎo)致信噪比的下降。一般而言,高可靠性低復(fù)雜度的低率信道編碼的設(shè)計(jì)一直是一個(gè)難點(diǎn)。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種低碼率LDPC碼的編碼方法,該編碼方法所獲得的LDPC碼具有計(jì)算復(fù)雜度低、數(shù)據(jù)處理速度高和性能優(yōu)良(即在低誤碼率情況下,有很低的運(yùn)行信噪比)的特點(diǎn)。
為實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明提供的低碼率LDPC碼的編碼方法,其步驟包括 (1)分別構(gòu)造矩陣Hp和Hd,其中,Hp為尺寸等于qb×qb的雙對(duì)角線矩陣,其結(jié)構(gòu)形式為下式(I),b為大于等于5的正整數(shù),q為大于等于3的正整數(shù);矩陣Hd的結(jié)構(gòu)形式為下式(II),式(II)中ai1表示是矩陣Hd中置換矩陣Q的循環(huán)移位值,其值由下式(III)計(jì)算得到,Qail表示對(duì)置換矩陣Q循環(huán)移位ai1次所得到的矩陣,i=1,2,…,q;置換矩陣Q是行重量和列重量均為1的b×b方陣,且每條對(duì)角線上最多只有一個(gè)元素取1,其余元素均為0;
(2)按照下式(N)構(gòu)造H矩陣,其尺寸等于bq×b(q+1),
(3)構(gòu)造校驗(yàn)矢量cp,cp=[pl,l=1,2,...M]T,pl表示任意第l個(gè)校驗(yàn)位的值,取值為0或1,M為校驗(yàn)位長(zhǎng)度,其值等于q×b, 其中
是Hd中第l行第j列的元素,1≤l≤M,1≤j≤K,dj表示輸入的信息矢量cd={dj}中的對(duì)應(yīng)值; (4)根據(jù)上述步驟所獲得的校驗(yàn)矢量cp={pl},以及輸入的信息矢量cd={dj},得到編碼碼字c=[cd cp]。
本發(fā)明方法所得到的低率糾錯(cuò)碼,即碼率為1/(q+1)的低率碼,當(dāng)q=4,5,6,7,8,9,10,...15時(shí),碼率的取值為R=1/4,1/5,1/6,1/7,1/8,1/9,1/10,...1/16。與現(xiàn)有的其它碼率的LDPC碼相比,本發(fā)明提供的低率LDPC碼的行重量最多為3,表明其編碼和解碼復(fù)雜度是相同列重量下1/2率LDPC碼編碼和解碼復(fù)雜度的1/t,其中3≤t≤6,它所需要的門電路和觸發(fā)器的數(shù)量也相應(yīng)的減少大約1/t。設(shè)Pb(E)表示誤碼率,Eb/N0表示信噪比。在高斯白噪聲信道上模擬仿真演示在誤碼率為Pb(E)≈1×10-7,1/6碼率,104碼長(zhǎng)時(shí),信噪比性能達(dá)到Eb/N0=0.5dB;誤碼率為Pb(E)≈2×10-6,1/8碼率,104碼長(zhǎng)時(shí),信噪比性能達(dá)到Eb/N0=0.4dB,均能提供9.0dB以上的編碼增益,這些性能優(yōu)于目前在用低率碼的最好性能。
圖1為低碼率LDPC碼的編碼方法的流程示意圖。
圖2為不同碼長(zhǎng)0.25低率LDPC碼在AWGN信道上的性能和香農(nóng)限曲線圖。
圖3為碼長(zhǎng)為20160、不同碼率(1/6和1/7)的低率LDPC碼在AWGN信道上的性能曲線圖。
具體實(shí)施例方式 本發(fā)明的編碼方法可以分成兩步,第一步是構(gòu)造稀疏奇偶校驗(yàn)矩陣H;第二步是根據(jù)構(gòu)造出的H矩陣設(shè)計(jì)編碼算法。
LDPC碼定義為稀疏奇偶校驗(yàn)矩陣H的零空間,設(shè)c表示碼字序列,T表示對(duì)碼字求轉(zhuǎn)置運(yùn)算,即有HcT=0。由定義可知,設(shè)計(jì)LDPC碼,關(guān)鍵是設(shè)計(jì)H矩陣的結(jié)構(gòu),H矩陣結(jié)構(gòu)的優(yōu)與劣會(huì)產(chǎn)生三個(gè)方面的影響一是迭代解碼時(shí),要用到H矩陣,其結(jié)構(gòu)會(huì)影響迭代解碼的性能,例如“1”元素越多,分布越不均勻,性能越好;二是迭代解碼算法的復(fù)雜度與H矩陣的結(jié)構(gòu)有關(guān),也就是“1”元素的個(gè)數(shù)越少,解碼復(fù)雜度越低;三是應(yīng)將H矩陣的結(jié)構(gòu)設(shè)計(jì)成有利于編碼器的實(shí)現(xiàn),最好是將信息位和校驗(yàn)位對(duì)應(yīng)的矩陣分開,也就是將H矩陣設(shè)計(jì)成系統(tǒng)形式的。
設(shè)Hp表示校驗(yàn)位對(duì)應(yīng)的矩陣,Hd表示信息位對(duì)應(yīng)的矩陣,cp表示校驗(yàn)位序列,cd表示信息位序列;M表示H矩陣的行數(shù),也是校驗(yàn)碼位長(zhǎng)度;N表示H矩陣的列數(shù),也是碼長(zhǎng);K表示信息位長(zhǎng)度,R表示碼率;b表示置換子矩陣的尺寸,q表示H矩陣的陣列行數(shù),也是H矩陣的列重量,t表示H矩陣的陣列列數(shù),也是H矩陣的行重量,也即b,q,t是H矩陣的結(jié)構(gòu)參數(shù),它們的取值范圍是b∈[5,∞),q≥3,t=1。由此可得到碼率為R=t/(q+t)=1/(q+1),碼長(zhǎng)為N=b(q+t)=b(q+1),信息位長(zhǎng)度為K=b×1=b,校驗(yàn)位長(zhǎng)度為M=qb。
本發(fā)明的基本原理如下首先構(gòu)造H矩陣,可將陣列H矩陣分解為校驗(yàn)位矩陣Hp和信息位矩陣Hd,即H=|Hd Hp|。Hp矩陣由雙對(duì)角線矩陣構(gòu)成,Hd矩陣由按一定規(guī)則選擇的一組循環(huán)移位置換矩陣經(jīng)適當(dāng)排列構(gòu)成。通過設(shè)計(jì)下標(biāo)矩陣可以獲得對(duì)置換矩陣的合適排列。這里的置換矩陣采用一種置換矩陣Q,它的結(jié)構(gòu)是每行、每列、每對(duì)角線均只有一個(gè)1的方陣,置換矩陣Q所對(duì)應(yīng)的Q矢量由b維皇后搜索算法得到。按下標(biāo)矩陣設(shè)計(jì)好的下標(biāo)值對(duì)置換矩陣Q進(jìn)行循環(huán)移位操作,得到一組循環(huán)移位置換矩陣Q,將這組置換矩陣Q帶入Hd矩陣,再與雙對(duì)角線的Hp矩陣進(jìn)行并置,就構(gòu)成了H矩陣。然后根據(jù)構(gòu)造出的H矩陣推導(dǎo)遞歸編碼算法。根據(jù)LDPC碼的定義表達(dá)式可以推知在二進(jìn)制有限域上,由定義表達(dá)式可推出Hdcd=Hpcp,對(duì)任給的信息序列cd,根據(jù)上面構(gòu)造的Hd和Hp矩陣,可以很容易推出求解校驗(yàn)位序列cp的編碼算法,由此求解碼字序列c=[cd cp]。
下面對(duì)本發(fā)明的低率LDPC碼編碼方法步驟作進(jìn)一步詳細(xì)的說明。
1)構(gòu)造置換矩陣Q。
常規(guī)的置換矩陣是行重量和列重量均為1的b×b方陣。本發(fā)明設(shè)計(jì)的置換矩陣Q為滿足如下條件的置換矩陣任意一個(gè)矩陣元素在二進(jìn)制有限域上取值的b×b階方陣,其行重量和列重量均為1,但其每條對(duì)角線上最多只有一個(gè)元素取1,其余元素均為0。b為大于等于5的正整數(shù)。
置換矩陣Q滿足置換矩陣的約束條件,即每列、每行只有一個(gè)1元素,所以矩陣Q是置換矩陣,但矩陣Q多了對(duì)角線為1的約束條件。矩陣Q可以表示成矢量VQ,二者是等效的,可以互相表示。規(guī)定VQ矢量與矩陣的對(duì)應(yīng)關(guān)系是VQ矢量中每個(gè)元素所在位置的序號(hào)表示Q置換矩陣中“1”元素所在列的序號(hào),VQ矢量中元素的值表示Q置換矩陣中“1”元素所在行的序號(hào)。
構(gòu)成Q矩陣的b個(gè)列(或行)矢量是線性無關(guān)的,所以Q矩陣是滿秩矩陣,秩為rank(Q)=b。對(duì)Q矩陣進(jìn)行初等行列變換,可以得到單位對(duì)角矩陣,由此也可以得到Q矩陣是滿秩矩陣的結(jié)論。當(dāng)b很小時(shí),可用枚舉排列方法舉例說明置換Q矩陣的結(jié)構(gòu)和分布。隨著b的增大,很難用枚舉排列的方法來設(shè)計(jì)Q矩陣的結(jié)構(gòu)和布局,這時(shí)需要用計(jì)算機(jī)搜索的方法。本發(fā)明主要是采用皇后搜索算法?;屎笏阉魉惴ㄊ沁@樣描述的由b×b個(gè)方塊排成b行b列的正方形稱為“b元棋盤”。若任意兩個(gè)皇后位于b元棋盤上同一行、或同一列、或同一對(duì)角線,則稱她們?yōu)榛ハ喙簟G蠼鈈維皇后問題就是尋找在b×b的棋盤上b個(gè)皇后互不攻擊的布局,即在每一行、每一列、每一對(duì)角線上,最多只能有唯一的一個(gè)皇后存在。從上面的描述中可以看出在一個(gè)b×b的Q矩陣中,b個(gè)非零元素的排列形式等效于在一個(gè)b×b棋盤上b個(gè)皇后互不沖突的布局,只要用Q矩陣中的1元素取代棋盤上的皇后即可。所以Q矩陣的搜索問題可采用b維皇后搜索算法來求解。采用局部?jī)?yōu)化的皇后搜索算法,得到一個(gè)局部最優(yōu)解的VQ矢量,將VQ矢量擴(kuò)展成Q置換矩陣,這就完成了置換矩陣的設(shè)計(jì)。
2)構(gòu)造Hd的整數(shù)下標(biāo)矩陣S(Hd) 設(shè)S(Hd)矩陣表示Hd矩陣的整數(shù)下標(biāo)矩陣,ai1表示S(Hd)矩陣中的元素值,實(shí)際上是Hd矩陣中Q置換矩陣的循環(huán)移位值,也稱為Q置換矩陣的下標(biāo)值,i表示Hd矩陣的陣列行索引,從1到q索引,即i=1,2,...,q,q表示Hd矩陣的陣列行數(shù),q≥3。
整數(shù)下標(biāo)矩陣S(Hd)有如下q×1的矩陣形式 其中,下標(biāo)值ai1可用如下的下標(biāo)計(jì)算表達(dá)式計(jì)算得到 3)構(gòu)造Hd的矩陣 將步驟1)中由皇后搜索算法得到的置換矩陣Q按步驟2)下標(biāo)計(jì)算表達(dá)式設(shè)計(jì)的下標(biāo)矩陣S(Hd)中的元素提供的值進(jìn)行循環(huán)左移,得到一組置換矩陣
利用這組置換矩陣構(gòu)成如下的Hd矩陣 其中,
表示Hd矩陣中的一組置換子矩陣,Hd矩陣是q×1的陣列矩陣;設(shè)
表示由(2)式的下標(biāo)值進(jìn)行循環(huán)移位得到的一組Q置換矩陣,用來表示這組置換矩陣,Hd矩陣也是q×1的陣列矩陣。Hd矩陣的尺寸是M×K=bq×bt=bq×b,(t=1)。
4)構(gòu)造Hp矩陣 Hp矩陣是雙對(duì)角線矩陣,它的尺寸為M×M=qb×qb,具有下列確定的結(jié)構(gòu)形式
5)構(gòu)造H矩陣。
H矩陣具有系統(tǒng)的結(jié)構(gòu)形式,即它由Hd和Hp矩陣并置構(gòu)成,尺寸是M×N=bq×b(q+t)=bq×b(q+1)
上述1)至5)步給出了H矩陣的設(shè)計(jì)步驟。
下面進(jìn)一步給出編碼算法的執(zhí)行步驟 6)給出定義表達(dá)式 設(shè)j表示信息位索引,即j=1,2,...,K,dj表示任意一位信息位的值,只能取0和1兩個(gè)值,cd=[dj,j=1,2,...K]T表示信息位構(gòu)成的信息矢量;設(shè)l表示校驗(yàn)位索引,即l=1,2,...,M,pl表示任意一位校驗(yàn)位的值,只能取0和1兩個(gè)值,cp=[pl,l=1,2,...M]T表示校驗(yàn)位構(gòu)成的校驗(yàn)矢量;設(shè)u表示碼位索引,即u=1,2,...,N,cu表示任意一位碼位的值,只能取0和1兩個(gè)值,c=[cd cp]=[dj pl|j=1,2,...K,l=1,2,...M]T=[cu,u=1,2,...N]T表示碼矢量。根據(jù)LDPC碼是稀疏奇偶校驗(yàn)矩陣的零空間的定義,可寫出下列表達(dá)式 給定二進(jìn)制信息矢量cd=[dj,j=1,2,...K]T,由于Hd和Hp都是定義在二進(jìn)制有限域上的矩陣,在二進(jìn)制運(yùn)算規(guī)則下,根據(jù)(3)和(6)式,可得 Hpcp=Hdcd (7) 7)遞歸編碼算法 由于Hp設(shè)計(jì)成了雙對(duì)角線矩陣,在求解(7)式時(shí),不需要對(duì)Hp矩陣求逆,而是先求第一行,得到第一行對(duì)應(yīng)的校驗(yàn)位p1,然后采用回代和遞推的方式求解下面各行,得到p2,p3...直到最后一行pM,最終求得cp=[pl,l=1,2,...M]T。設(shè)
表示Hd中第l行第j列的元素,1≤l≤M,1≤j≤K。編碼算法的遞歸計(jì)算表達(dá)式如下 其中
是Hd中第l行第j列的元素,1≤l≤M,1≤j≤K。求出cp后,即可求得碼字矢量c=[cd cp]=[dj pl|j=1,2,...K,l=1,2,...M]T=[cu,u=1,2,...N]T。
當(dāng)(5)式的低率LDPC碼的H矩陣構(gòu)造出來以后,就可采用置信傳播迭代解碼算法(也稱為和積解碼算法)進(jìn)行完全并行解碼。
實(shí)例下面給出本發(fā)明設(shè)計(jì)的低率LDPC碼在高斯白噪聲(AWGN)信道上的性能仿真曲線,以及它們到香農(nóng)限的距離。
例1 對(duì)q=3,碼率R=1/4=0.25的低率LDPC碼,取不同碼長(zhǎng)N=64800,16000,8000,4000,2000,1000,置換矩陣Q的尺寸分別為n=16200,4000,2000,1000,500,250,仿真條件為200次最大迭代數(shù),1000個(gè)傳輸分組。
它們?cè)诟咚拱自肼曅诺郎系恼`碼率與信噪比曲線如圖2所示。由圖2可以看出,1/4低率LDPC碼具有碼長(zhǎng)增加性能變好的特征。當(dāng)碼長(zhǎng)為64800,誤碼率為10-7時(shí),信噪比在0.8dB左右,離1/4碼率香農(nóng)限的距離為1.593dB,與未編碼BPSK的9.6dB相比,能獲得9.8dB的編碼增益。Galileo空間站上步署的1/6碼率的卷積碼和變長(zhǎng)的RS碼的級(jí)聯(lián)碼方案,在誤碼率為10-7數(shù)量級(jí)時(shí),信噪比為0.8dB,實(shí)際編碼增益為9.8dB,本發(fā)明的低率LDPC碼只需要采用1/4碼率,就能獲得相同的運(yùn)行性能。
例2 對(duì)q=5,6,碼率R=1/6,1/7的低率LDPC碼,取相同碼長(zhǎng)N=20160,置換矩陣Q的尺寸分別為n=3360,2880,仿真條件仍為200次最大迭代數(shù),1000個(gè)傳輸分組。
圖3演示了1/6和1/7碼率20160碼長(zhǎng)的低率LDPC碼的誤碼率與信噪比特性曲線。由圖中可以看出,1/6率LDPC碼的性能優(yōu)于1/7LDPC碼的性能,但二者十分接近。這表明隨著碼率的減小,低率LDPC碼的性能并不是越來越好。最好性能是1/6率LDPC碼,它在10-6誤碼率時(shí),信噪比為0.478dB,離香農(nóng)限(—1.061dB)的距離為1.534dB,提供的編碼增益為10.12dB。1/7率LDPC碼,它在10-6誤碼率時(shí),信噪比為0.52dB,離香農(nóng)限(—1.158dB)的距離為1.678dB,提供的編碼增益為10.08dB。1/6低率LDPC碼與Galileo空間站上步署的1/6碼率的卷積碼和變長(zhǎng)的RS碼的級(jí)聯(lián)碼方案相比,在相同碼率情況下,性能提高了0.322dB。
權(quán)利要求
1、一種低碼率LDPC碼的編碼方法,其步驟包括
(1)分別構(gòu)造矩陣Hp和Hd,其中,Hp為尺寸等于qb×qb的雙對(duì)角線矩陣,其結(jié)構(gòu)形式為下式(I),b為大于等于5的正整數(shù),q為大于等于3的正整數(shù);矩陣Hd的結(jié)構(gòu)形式為下式(II),式(II)中ai1表示是矩陣Hd中置換矩陣Q的循環(huán)移位值,其值由下式(III)計(jì)算得到,Qai1表示對(duì)置換矩陣Q循環(huán)移位ai1次所得到的矩陣,i=1,2,…,q;置換矩陣Q是行重量和列重量均為1的b×b方陣,且每條對(duì)角線上最多只有一個(gè)元素取1,其余元素均為0;
式中T表示對(duì)矩陣進(jìn)行轉(zhuǎn)置;
(2)按照下式(IV)構(gòu)造H矩陣,其尺寸等于bq×b(q+1),
(3)構(gòu)造校驗(yàn)矢量cp,cp=[pl,l=1,2,...M]T,pl表示任意第l個(gè)校驗(yàn)位的值,取值為0或1,M為校驗(yàn)位長(zhǎng)度,其值等于q×b,
其中
是Hd中第l行第j列的元素,1≤l≤M,1≤j≤K,dj表示輸入的信息矢量cd={dj}中的對(duì)應(yīng)值;
(4)根據(jù)上述步驟所獲得的校驗(yàn)矢量cp={pl},以及輸入的信息矢量cd={dj},得到編碼碼字c=[cd cp]。
全文摘要
本發(fā)明公開了一種低碼率LDPC碼的編碼方法,步驟為①分別構(gòu)造矩陣Hp和Hd,Hp矩陣是雙對(duì)角線矩陣,Hd是q×1的陣列矩陣,由q個(gè)循環(huán)移位的置換矩陣Q構(gòu)成。置換矩陣Q由行重量和列重量均為1、每條對(duì)角線上最多只有一個(gè)元素取1、其余元素均為0的b×b階Q置換矩陣形成;②構(gòu)造尺寸等于bq×b(q+1)的H矩陣;③構(gòu)造校驗(yàn)矢量cp,cp=[pl,l=1,2,…M]T,pl表示任意第l個(gè)校驗(yàn)位的值,M為校驗(yàn)位長(zhǎng)度;④根據(jù)校驗(yàn)矢量cp={pl},輸入的信息矢量cd={dj},得到編碼碼字c=[cdcp]。本發(fā)明方法中,Q置換矩陣的循環(huán)移位值使用的代數(shù)方法使置信傳播迭代解碼算法更容易并行實(shí)現(xiàn);Hp矩陣的雙對(duì)角線矩陣結(jié)構(gòu)特征能使低率LDPC碼以回帶遞歸方式進(jìn)行編碼,并具有線性時(shí)間計(jì)算復(fù)雜度。它的仿真性能優(yōu)于現(xiàn)有在用低率糾錯(cuò)碼的性能,可以達(dá)到0.4dB的信噪比,并具有率兼容性。
文檔編號(hào)H03M13/11GK101488760SQ200910060739
公開日2009年7月22日 申請(qǐng)日期2009年2月13日 優(yōu)先權(quán)日2009年2月13日
發(fā)明者立 彭, 朱光喜 申請(qǐng)人:華中科技大學(xué)