陳明陽(yáng),高興龍,王中訓(xùn),顏飛,殷熔煌
(煙臺(tái)大學(xué) 光 電信息科學(xué)技術(shù)學(xué)院, 山東 煙 臺(tái) 2 64005)
隨著近幾年來(lái)現(xiàn)代通信技術(shù),軟件無(wú)線電技術(shù)、處理器技術(shù)的不斷發(fā)展,編譯碼算法被提上了日程,如何找到適應(yīng)現(xiàn)代通信的好碼,是信息理論界不斷探索的課題。Gallager提出的LDPC碼一直被認(rèn)為是最接近Shannon限的好碼。近年來(lái)二元LDPC碼得到了極大地發(fā)展[1-5],多元LDPC碼也在發(fā)展當(dāng)中。多元LDPC碼與二元LDPC碼有著重要的聯(lián)系,然而多元LDPC碼在性能上相比二元LDPC碼更具有優(yōu)勢(shì)。本文分別從檢驗(yàn)矩陣、Tanner圖和BP譯碼算法方面比較LDPC碼的性能,論證了多元LDPC碼的確是性能優(yōu)異的好碼,需要我們花大力氣去研究。
眾所周知,二元LDPC碼定義為二元域上的校驗(yàn)矩陣H的零空間,矩陣H的結(jié)構(gòu)具有如下的性質(zhì):1)每行有定常重量ρ;2)每列有定常重量r;3)沒(méi)有兩行或兩列有多余一個(gè)位置上是1,即其對(duì)應(yīng)的Tanner圖無(wú)四環(huán),從而保證譯碼的性能。這樣的H被稱為(γ,ρ)規(guī)則的。被H的0空間定義的碼稱為(γ,ρ)規(guī)則LDPC碼。其H矩陣具有如圖1所示的形式。
多元LDPC碼由取自有限域GF(q)元素形成的校驗(yàn)矩陣H定義,本文在驗(yàn)證LDPC碼性能將二元矩陣中的非零行用中的非零元素替代。其矩陣具有如圖2所示的形式。

圖1 校驗(yàn)矩陣HFig.1 Parity-check matrix H

圖2 多元LDPC碼校驗(yàn)矩陣HFig.2 Parity-check matrix H for nonbinary LDPC codes
多元LDPC碼校驗(yàn)矩陣的元素基于GF(q),而二元LDPC碼校驗(yàn)矩陣中的元素基于 GF(2),若 q=2^M,則 GF(q)中任意一個(gè)元素都可以用M個(gè)二進(jìn)制位表示,因此可以找到對(duì)應(yīng)多元矩陣的等價(jià)二維矩陣[6],其有如圖3所示的形式。

圖3 多元LDPC碼與二元LDPC碼校驗(yàn)矩陣關(guān)系圖Fig.3 Relational graph between nonbinary LDPC codes and binary LDPC codes
對(duì)應(yīng)的Tanner圖如圖4所示。

圖4 多元LDPC碼與二元LDPC碼二分圖之間的關(guān)系Fig.4 Relationship of the bipartite graph between nonbinary LDPC codes and binary LDPC codes
由以上tanner圖和LDPC碼的校驗(yàn)矩陣可知多元LDPC碼的等價(jià)二元矩陣存在四環(huán),這就從一定程度上降低了譯碼性能。
對(duì)于給定的譯碼器,當(dāng)校驗(yàn)矩陣H的列重量(固定常數(shù))足夠大,碼長(zhǎng)充分大時(shí),LDPC碼的性能可以接近shannnon限,即大重量的列有助于譯碼器的快速糾錯(cuò),然而若增加列重量會(huì)造成相應(yīng)的雙向圖中循環(huán)數(shù)目急劇地增加,從而導(dǎo)致迭代譯碼的性能下降。而在GF(q=2^P)(q>2)上構(gòu)造的LDPC碼可以很好地解決這個(gè)問(wèn)題。增加它校驗(yàn)矩陣Hq的列重量(即增加與其對(duì)應(yīng)的二進(jìn)制校驗(yàn)矩陣H2中的列重量),而他們進(jìn)行譯碼的雙向圖是相同的。GF(q)上不會(huì)造成結(jié)點(diǎn)之間循環(huán)路徑數(shù)目的增加,從而使譯碼性能得到顯著地提高。
多元LDPC碼與二元LDPC碼在譯碼思想上都采用傳統(tǒng)的后驗(yàn)概率譯碼思想,即BP算法。概率信息在校驗(yàn)節(jié)點(diǎn)與變量節(jié)點(diǎn)之間傳遞。所不同的是二元LDPC傳遞概率信息是兩個(gè),而多元LDPC碼傳遞的概率信息是q=2^p個(gè)。多元LDPC碼的傳遞是將碼元信號(hào)轉(zhuǎn)化成p個(gè)二進(jìn)制序列在二進(jìn)制信道進(jìn)行傳遞 信道模型如圖5所示[7]。

圖5 信道模型Fig.5 Information channel model
很明顯一個(gè)多元碼字由p個(gè)二進(jìn)制比特組成,當(dāng)譯碼器糾正一個(gè)碼元時(shí),不管錯(cuò)誤出現(xiàn)在其中的一個(gè)比特還是多個(gè)比特,譯碼器都將錯(cuò)誤碼元以為正確的碼元。因此當(dāng)多元碼字發(fā)生錯(cuò)誤時(shí),其中的任何一個(gè)比特都有可能發(fā)生錯(cuò)誤,這樣多元LDPC碼就具備了更好的抗突發(fā)噪聲的性能。另外多個(gè)比特組成一個(gè)碼元,由于在編譯碼環(huán)節(jié)碼字的運(yùn)算都是采用多進(jìn)制的運(yùn)算規(guī)則,即一次運(yùn)算p個(gè)比特,因此很大程度上提高了編譯碼的效率。
具體的性能分析如圖6所示。

圖6 誤比特率(BER)與信噪比(Eb_N0)關(guān)系圖Fig.6 Relational graph on bit error ratio and signal to noise ratio(Eb_N0)
圖6是碼長(zhǎng)為200,碼率為0.5時(shí)的LDPC碼誤比特率(BER)與信噪比(Eb_N0)的關(guān)系圖。由圖中可以觀察到當(dāng)碼長(zhǎng)一定時(shí),隨著所取的有限域元素的增多,其性能與與較少元素的矩陣對(duì)應(yīng)的LDPC碼基本吻合,某些地方只是略微有些下降。然而事實(shí)是矩陣的增大可以降低校驗(yàn)矩陣的構(gòu)造難度,可以較好的避免短環(huán)的出現(xiàn)。因此多元LDPC碼相比同等長(zhǎng)度碼長(zhǎng)的二元LDPC碼的確有優(yōu)勢(shì)。
文章在檢驗(yàn)矩陣、Tanner圖和BP譯碼算法方面比較LDPC碼的性能,論證了多元LDPC碼的確是性能優(yōu)異的好碼,值得研究人員進(jìn)一步探究。
[1]Gallager R G.Low density parity check codes[D].Cambridge:MIT,1962.
[2]MacKay D J C,Neal R M.Near Shannon limit performance of low density parity check codes[J].Electronics Letters,1996,32(18):1645-1646.
[3]Davey M C.Error-correction using Low-Density Parity-Check code[D].Cambridge:Gonville and Caius College,1999.
[4]Luby M,Mitzenmacher M,Shokrollahi M A.Practical lossresilient codes[C]//Proc.of 29th Annual ACM Symposium on Theory of Computing,1997:150-159.
[5]Luby M,Mitzenmacher M,Shokrollahi M A.Analysis of random processes via and-or tree evaluation[C]//Proc.of 9th Annual ACM-SIAM Symposium on Discrete Algorithms,1998:364-373.
[6]符初生,周亮,文紅.LDPC碼原理與應(yīng)用[M].成都:電子科技大學(xué)出版社,2006.
[7]張譽(yù).多進(jìn)制LDPC碼譯碼算法的研究[D].湖南:國(guó)防科技大學(xué),2011.