新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 非規(guī)則LDPC碼譯碼改進(jìn)算法及其DSP實(shí)現(xiàn)

非規(guī)則LDPC碼譯碼改進(jìn)算法及其DSP實(shí)現(xiàn)

作者: 時(shí)間:2012-12-10 來源:網(wǎng)絡(luò) 收藏

為了降低非低密度奇偶校驗(yàn)(low-densityparity-check,)碼譯碼的復(fù)雜度,提出一種適合數(shù)字信號(hào)處理囂(digital signal processor,)的低運(yùn)算復(fù)雜度、低誤碼平臺(tái)譯碼的。

本文引用地址:http://m.butianyuan.cn/article/148209.htm

校驗(yàn)節(jié)點(diǎn)的運(yùn)算采用修正最小和算法,外信息的更新采用串行方式,既保持了串行和積算法在有限迭代次數(shù)下譯碼門限低的優(yōu)點(diǎn),又降低了節(jié)點(diǎn)運(yùn)算復(fù)雜度和誤碼平臺(tái)。用定點(diǎn)芯片的非碼譯碼器的實(shí)測(cè)結(jié)果表明,該算法能以較低的復(fù)雜度獲得低的誤碼平臺(tái)和譯碼門限。

低密度奇偶校驗(yàn)(low-density paruty-check,)碼是一種非常有效的信道編碼方案,已經(jīng)成為新一代數(shù)字衛(wèi)星廣播(DVB-S2)等標(biāo)準(zhǔn)的信道編碼方案,具有重要的應(yīng)用價(jià)值。

LDPC碼譯碼器設(shè)計(jì)的實(shí)現(xiàn)成為近年來研究的熱點(diǎn)。LDPC碼譯碼器的實(shí)現(xiàn)方法主要有2種:一種是基于超大規(guī)模集成電路(VLSI)的設(shè)計(jì);另外一種是基于數(shù)字信號(hào)處理器(digital signalprocessor,)等指令串行執(zhí)行系統(tǒng)的實(shí)現(xiàn)。

LDPC碼譯碼多采用和積(sum-product,SP)譯碼算法,影響其復(fù)雜度的因素有迭代次數(shù)和每次迭代的運(yùn)算復(fù)雜度。由于DSP芯片指令串行執(zhí)行的特點(diǎn),要實(shí)現(xiàn)較高速率的LDPC碼譯碼器,必須同時(shí)減少迭代譯碼次數(shù)和每次迭代的運(yùn)算量。文提出一種逐個(gè)校驗(yàn)節(jié)點(diǎn)串行更新的迭代譯碼算法(S-SP),并說明在二進(jìn)制對(duì)稱信道(BSC)下可以有效降低迭代譯碼的次數(shù);為降低每次迭代的運(yùn)算復(fù)雜度,校驗(yàn)節(jié)點(diǎn)的運(yùn)算存在一些簡(jiǎn)化的譯碼算法,如修正最小和算法(modified mim-sum,MMS)等,但這些算法的譯碼門限有一定的損失。

本文研究非LDPC碼的S-SP算法在加性高斯白噪聲(AWGN)信道下的性能,說明該算法雖能降低迭代次數(shù),但是存在誤碼平臺(tái)較高的問題??紤]到簡(jiǎn)化的譯碼算法(例如MMS算法)有復(fù)雜度和誤碼平臺(tái)低的特點(diǎn),本文綜合這2類算法的特點(diǎn),提出了串行MMS(S-MMS)算法,該算法在有限迭代次數(shù)下具有低的誤碼平臺(tái)和較低的譯碼門限,實(shí)現(xiàn)了復(fù)雜度和性能的較好折衷,適合于用DSP實(shí)現(xiàn)。

1 LDPC碼簡(jiǎn)介和迭代譯碼算法

1.1 LDPC碼簡(jiǎn)介

LDPC碼是一種分組碼。其校驗(yàn)矩陣為超稀疏隨機(jī)矩陣,設(shè)為H。對(duì)于任何一個(gè)合法的碼字v,都有校驗(yàn)方程。由該方程可知,校驗(yàn)矩陣中每行的非零元素,將所對(duì)應(yīng)的LDPC碼元映射成一個(gè)相當(dāng)于校驗(yàn)碼的約束,定義這種約束關(guān)系為一個(gè)校驗(yàn)節(jié)點(diǎn)。校驗(yàn)矩陣中每列的非零元素對(duì)應(yīng)LDPC碼的同一個(gè)碼元,形成了一個(gè)相當(dāng)于重復(fù)碼的約束,定義這種約束關(guān)系為一個(gè)變量節(jié)點(diǎn),而矩陣中的非零元素,既參與了變量節(jié)點(diǎn)的重復(fù)碼的約束關(guān)系,又參與了校驗(yàn)節(jié)點(diǎn)的校驗(yàn)碼的約束關(guān)系;因此定義矩陣中非零元素所對(duì)應(yīng)的關(guān)系為連結(jié)這2種節(jié)點(diǎn)的“連結(jié)線”。因此,LDPC碼的結(jié)構(gòu)也可以用圖1的因子圖表示。

LDPC碼的編碼,先利用校驗(yàn)矩陣得到對(duì)應(yīng)的生成矩陣,然后直接用信息序列和生成矩陣相乘即可得到編碼碼字,而LDPC碼的譯碼則利用校驗(yàn)節(jié)點(diǎn)和變量節(jié)點(diǎn)的約束關(guān)系,在2類節(jié)點(diǎn)間通過“連結(jié)線”進(jìn)行外信息的傳遞,從而實(shí)現(xiàn)迭代譯碼。

1.2 LDPC碼迭代譯碼算法

定義為變量節(jié)點(diǎn)n的先驗(yàn)信息,即對(duì)數(shù)似然比;表示第k次迭代中,從校驗(yàn)節(jié)點(diǎn)m到變量節(jié)點(diǎn)n的外信息;表示第k次迭代中,從變量節(jié)點(diǎn)n到校驗(yàn)節(jié)點(diǎn)m的外信息;為第k次迭代后變量節(jié)點(diǎn)n的后驗(yàn)信息;M(n)表示和變量節(jié)點(diǎn)n相連的校驗(yàn)節(jié)點(diǎn)的集合;N(m)表示和校驗(yàn)節(jié)點(diǎn)m相連的變量節(jié)點(diǎn)的集合。

標(biāo)準(zhǔn)的和積(SP)譯碼算法如下。

步驟l 初始化。

其中:xn為發(fā)送比特;yn為接收符號(hào)。采用二進(jìn)制相移鍵控(BPSK)調(diào)制,信道為AWGN信道。

步驟2迭代譯碼。

迭代譯碼包括2個(gè)步驟,變量節(jié)點(diǎn)的計(jì)算和校驗(yàn)節(jié)點(diǎn)的計(jì)算。本文中設(shè)定固定的迭代次數(shù)K,然后判決輸出。

1)變量節(jié)點(diǎn)的運(yùn)算(對(duì)所有的變量節(jié)點(diǎn)n)。

2)校驗(yàn)節(jié)點(diǎn)的運(yùn)算(對(duì)所有的校驗(yàn)節(jié)點(diǎn)m)。

其中k≥1.

步驟3后驗(yàn)信息計(jì)算和判決輸出。

串行和積譯碼算法(S-SP),在計(jì)算校驗(yàn)節(jié)點(diǎn)m時(shí),需要將上面和積(SP)算法中的步驟2變量節(jié)點(diǎn)的運(yùn)算修改為

其k≥1,假設(shè)校驗(yàn)節(jié)點(diǎn)的計(jì)算從1開始,也即m依次取1,2,3,…,M,這里M為校驗(yàn)節(jié)點(diǎn)的個(gè)數(shù),如圖1所示。

S-SP算法和SP算法的不同點(diǎn)在于:在SP算法中,所有與校驗(yàn)節(jié)點(diǎn)m相鄰的變量節(jié)點(diǎn)更新時(shí)所使用的校驗(yàn)節(jié)點(diǎn)外信息都來自上一次的迭代輸出,然后進(jìn)行校驗(yàn)節(jié)點(diǎn)m的運(yùn)算。而在S-SP算法中,計(jì)算校驗(yàn)節(jié)點(diǎn)m時(shí),和其相連變量節(jié)點(diǎn)的更新可以使用本次迭代中已經(jīng)更新過的外信息。從上面的分析也可看出,S-SP算法的復(fù)雜度和SP算法相同,另外,可通過合理設(shè)計(jì),使得該算法需要的存儲(chǔ)資源可降低為原來的1/2。

2 的迭代譯碼算法和優(yōu)化設(shè)計(jì)

文指出,在BSC信道下,S-SP算法可以有效降低迭代譯碼次數(shù)。本文研究了該算法在AWGN信道下的特點(diǎn),發(fā)現(xiàn)該算法雖可以降低迭代譯碼次數(shù),但是存在誤碼平臺(tái)較高的缺點(diǎn)。后面將利用仿真結(jié)果說明這一特點(diǎn)。

本文將S-SP算法與修正最小和算法(MMS)結(jié)合,提出了算法,將外信息的更新采用串行更新策略,校驗(yàn)節(jié)點(diǎn)的計(jì)算采用修正最小和算法,稱為串行修正最小和算法(S-MMS)。該算法解決了S-SP算法的誤碼平臺(tái)較高的問題,譯碼門限和標(biāo)準(zhǔn)的SP算法相比,性能損失很小。

提出的串行修正最小和算法(S-MMS),其迭代譯碼步驟2修改如下。

設(shè)定固定的迭代次數(shù)K,對(duì)校驗(yàn)節(jié)點(diǎn)m,依次取1,2,3,…,M,進(jìn)行下面的2個(gè)步驟。

1)變量節(jié)點(diǎn)的運(yùn)算(只計(jì)算和校驗(yàn)節(jié)點(diǎn)m相連的變量節(jié)點(diǎn))。

其中:r=│N(m)│表示集合N(m)中的元素個(gè)數(shù),即非規(guī)則碼的校驗(yàn)節(jié)點(diǎn)m的階數(shù);βr為非規(guī)則碼不同階校驗(yàn)節(jié)點(diǎn)的偏移因子;sgn()為符號(hào)函數(shù)。

最優(yōu)的偏移因子βr值,可以采用密度演化或者計(jì)算機(jī)仿真的方法得到。

本算法變量節(jié)點(diǎn)的運(yùn)算只包括求和運(yùn)算,校驗(yàn)節(jié)點(diǎn)只包括最大、最小和減法操作,與SP算法的校驗(yàn)節(jié)點(diǎn)運(yùn)算的非線性函數(shù)ln(tanh())相比,量化噪聲對(duì)其影響小。本文針對(duì)定點(diǎn)DSP芯片特點(diǎn),信道觀測(cè)值和迭代譯碼中的外信息,都采用16 b的量化精度,有利于優(yōu)化指令并行度,并可以降低存儲(chǔ)器讀取、存儲(chǔ)延時(shí)。


上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉