一種極化碼的bp譯碼方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種極化碼的譯碼方法,尤其涉及一種極化碼的BP譯碼方法及裝置, 屬于信道編碼技術(shù)領(lǐng)域。
【背景技術(shù)】
[0002] 極化碼(polarcode)是由ErdalArikan在"ChannelPolarization:AMethod forConstructingCapacity-AchievingCodesforSymmetricBinary-InputMemoryless Channels"一文中提出的。他從理論層面證明了經(jīng)過信道的組合和分離,當(dāng)信道數(shù)量趨于無 窮大時(shí),一部分信道趨于完美,而一部分信道趨于純噪聲信道,稱為信道極化現(xiàn)象。我們基 于此信道極化現(xiàn)象,選取組合信道中比較好的信道,構(gòu)造極化碼。ErdalArikan證明了當(dāng)信 道數(shù)量趨于無窮,極化碼理論上可以趨于香農(nóng)極限。
[0003]極化碼主要的譯碼方法有SC譯碼[E.Arikan,"Channelpolarization:A methodforconstructingcapacityachievingcodesforsymmetricbinary-input memorylesschannels,',InformationTheory,IEEETransactionson,vol. 55,no. 7, pp. 3051 - 3073, 2009.]和BP譯碼[E.Arikan,"Aperformancecomparisonofpolar codesandreed-mullercodes, ',
[0004]CommunicationsLetters,IEEE,vol. 12,no. 6,pp. 447 - 449, 2008.]。SC譯碼計(jì) 算復(fù)雜度低,并且有良好的糾錯(cuò)性能,但是由于SC算法內(nèi)在的串行運(yùn)算結(jié)構(gòu),它存在長時(shí) 間的譯碼延遲。BP譯碼是ErdalArikan在APerformanceComparisonofPolarCodes andReed-MullerCodes" [2] -文中提出的。他證明了因?yàn)闃O化碼能用因子圖表示,所以 極化碼能用BP(置信傳播)的方法譯碼。和SC譯碼相比,BP譯碼由于其內(nèi)在并行結(jié)構(gòu),譯 碼延遲遠(yuǎn)小于SC譯碼。但是由于BP譯碼需要進(jìn)行多次迭代才能得到可靠的譯碼結(jié)果,BP 譯碼的計(jì)算復(fù)雜度很高。為了較小BP譯碼的譯碼復(fù)雜度,早停止(或稱提前終止)算法十 分重要。早停止算法是指在譯碼迭代過程中自適應(yīng)地檢測是否已經(jīng)得到可靠的譯碼輸出, 如果條件滿足可以立刻結(jié)束譯碼。早停止算法可以線性地降低譯碼復(fù)雜度和譯碼延時(shí)。
[0005] -篇中國專利(公開號(hào)為CN104539296A,公開日為2015-4-22)公開了"一種基于 提前終止迭代策略的極化碼改進(jìn)BP譯碼方法",該方法利用極化碼的信息比特的似然比左 信息數(shù)值連續(xù)兩次變化量的均值小于一預(yù)設(shè)閾值作為迭代提前終止的判斷準(zhǔn)則,以降低BP 極化譯碼方法的譯碼復(fù)雜度和譯碼延時(shí)。然而,該方法需要利用連續(xù)三次迭代的似然比數(shù) 值信息進(jìn)行計(jì)算,計(jì)算復(fù)雜度較高,硬件(寄存器)耗費(fèi)大,且經(jīng)試驗(yàn)驗(yàn)證,其降低迭代次數(shù) 的效果有限。由于BP譯碼的最終步驟是通過信息比特的似然比左信息的符號(hào)而非數(shù)值進(jìn) 行判決譯出信息位的,而該專利將數(shù)值變化小于一預(yù)設(shè)閾值作為迭代提前終止條件,顯然 并不是最優(yōu)的。并且預(yù)設(shè)閾值為某一固定值,并不能適合于現(xiàn)實(shí)通信場景中信道狀況復(fù)雜 多變的情況,不具有自適應(yīng)性。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明所要解決的技術(shù)問題在于克服現(xiàn)有技術(shù)不足,提供一種極化碼的BP譯碼 方法及裝置,采用更有效的迭代提前終止策略,以降低譯碼復(fù)雜度和譯碼延時(shí)。
[0007] 本發(fā)明具體采用以下技術(shù)方案解決上述技術(shù)問題:
[0008] -種極化碼的BP譯碼方法,利用基于提前終止迭代策略的BP譯碼算法進(jìn)行極化 碼的譯碼,所述基于提前終止迭代策略的BP譯碼算法的迭代提前終止的判斷條件為:因子 圖最左端的對(duì)數(shù)似然比的符號(hào)在連續(xù)兩次迭代過程中均未發(fā)生變化。
[0009] 優(yōu)選地,利用下式是否成立作為所述判斷條件是否得到滿足的判斷依據(jù):
[0010] max{diff(j) |diff(j) = |sign(Lt (1,j))-sign(Lt ! (1,j)) |,j= 1, 2, ???,N} = 0
[0011] 式中,Lt(l,j)、Ltl(l,j)分別表示在第t、t-1次迭代中,位于因子圖左起第一列 第j行的對(duì)數(shù)似然比信息;N為譯碼輸入數(shù)據(jù)的長度;sign( ?)為符號(hào)函數(shù);max( ?)為取 最大值函數(shù)。
[0012] 根據(jù)相同的發(fā)明思路還可以得到以下技術(shù)方案:
[0013] 一種極化碼的BP譯碼器,利用基于提前終止迭代策略的BP譯碼器進(jìn)行極化碼的 譯碼,所述基于提前終止迭代策略的BP譯碼器包括迭代提前終止判斷模塊,迭代提前終止 判斷模塊判斷迭代提前終止的判斷條件為:因子圖最左端的對(duì)數(shù)似然比的符號(hào)在連續(xù)兩次 迭代過程中均未發(fā)生變化。
[0014] 優(yōu)選地,利用下式是否成立作為所述判斷條件是否得到滿足的判斷依據(jù):
[0015] max{diff(j) |diff(j) = |sign(Lt (1,j))-sign(Lt ! (1,j)) |,j= 1, 2, ???,N} = 0
[0016] 式中,Lt(l,j)、Ltl(l,j)分別表示在第t、t-1次迭代中,位于因子圖左起第一列 第j行的對(duì)數(shù)似然比信息;N為譯碼輸入數(shù)據(jù)的長度;sign( ?)為符號(hào)函數(shù);max( ?)為取 最大值函數(shù)。
[0017] 相比現(xiàn)有技術(shù),本發(fā)明具有以下有益效果:
[0018] 本發(fā)明借助對(duì)數(shù)似然比符號(hào)收斂特性進(jìn)行BP譯碼的迭代終止判斷,能夠在不造 成譯碼性能損失的情況下顯著減小譯碼迭代次數(shù),尤其在中、高信噪比信道中效果更為明 顯。并且該方法簡單易懂,計(jì)算復(fù)雜度低,硬件實(shí)現(xiàn)簡單。
【附圖說明】
[0019] 圖1是碼長為8的極化碼的因子圖;
[0020] 圖2是極化碼因子圖的基本單元;
[0021] 圖3本發(fā)明BP譯碼器和傳統(tǒng)BP譯碼器的性能比較,兩個(gè)譯碼器最大譯碼次數(shù)都 設(shè)置為30 ;
[0022] 圖4為本發(fā)明BP譯碼方法在不同信噪比信道中的平均迭代次數(shù)。
【具體實(shí)施方式】
[0023] 下面結(jié)合附圖對(duì)本發(fā)明的技術(shù)方案進(jìn)行詳細(xì)說明:
[0024] 傳統(tǒng)的極化碼的BP譯碼算法是在如圖1 (以碼長為8的極化碼為例)所示的因子 圖上依次向右向左傳遞對(duì)數(shù)似然比的信息。圖2顯示了極化碼因子圖的基本單元。因子圖 最左端的一列比特對(duì)應(yīng)信息u,最右端的一列比特對(duì)應(yīng)碼字x。(i,j)表示從左起第i列, 第j行的節(jié)點(diǎn)。每個(gè)節(jié)點(diǎn)都有兩個(gè)信息量,我們將從右到左傳遞通過節(jié)點(diǎn)(i,j)的信息量 記Sk,,將從左到右傳遞通過節(jié)點(diǎn)(i.j)的信息量記為Ru,這些信息是以LLR為形式相 互傳遞更新的。在譯碼過程中,首先按照下式對(duì)最左端的R信息和最右端的L信息進(jìn)行初 始化:
[0027] 公式中的A指的是信息位的集合,n=lo