一种低密度奇偶校验码译码方法

文档序号:7538603阅读:435来源:国知局
专利名称:一种低密度奇偶校验码译码方法
技术领域
本发明涉及信道译码技术领域,具体涉及一种低密度奇偶校验码译码方法。
背景技术
在通信系统中,接收信号往往会受到噪声、干扰以及无线信道中衰落的影响,有时会出现错误。为了避免接收信号错误,通常在通信系统中采用信道编码的方法。在发送端对原始码元进行编码得到发送码元,在接收端对接收码元进行译码以估计发送码元。低密度奇偶校验码(LDPC)由于其优异的性能,在实践中得到了越来越广泛的应用。LDPC具有以下优点译码复杂度较低,且由于LDPC译码算法中一次迭代的计算复杂度很低,因此可通过改变最大迭代次数获得复杂度与性能的最佳折衷,且,LDPC的译码还是高度并行的;二进制LDPC的最小距离随着码长以逼近1的概率线性增大;根据任意码长与编码率很容易设计性能优越的LDPC;LDPC无“错误地板”现象,这适合于应用短帧的场合。
LDPC是一种线性分组码,它的名字来源于其校验矩阵的稀疏性,即其校验矩阵中每行及每列中非零元素的个数非常稀少,且非零元素的位置呈随机分布。对于码长为n、信息位个数为k的LDPC,该LDPC可由其校验矩阵H(n-k)×n来描述,LDPC的所有码元X1×n,满足X·HT=0。校验矩阵的每一行表示一个校验约束,其中所有非零元素对应的码元变量xj(j=1,2,...,n)构成一个校验集,用一个校验方程表示;校验矩阵的每一列表示一个码元变量参与的校验约束,当列元素不为零时,表示该码元变量参与了该行的校验约束。
LDPC分为正则LDPC与非正则LDPC。正则LDPC的校验矩阵H满足以下三个条件(1)H的每行有λ个1,且λ≥3;(2)H的每列有ρ个1;(3)与码长n和矩阵的行数(n-k)相比,ρ和λ的值都很小。正则LDPC可以用(n,λ,ρ)来表示,如若一个正则LDPC码表示为(8,4,2),则其校验矩阵H为H=10101010100101010110011001011001]]>若LDPC的校验矩阵H的各列或各行中“1”的个数不全相同,则该LDPC为非正则LDPC。通常,为了研究问题的方便,LDPC的校验矩阵H可利用Tanner图模型表示为一个二部图,如图1所示,图中的圆形点表示变量节点,方形点表示约束,即圆形点对应校验矩阵H的每列,方形点对应校验矩阵H的每行,圆形点与方形点之间的连线表示校验矩阵H中的非0元素。
LDPC码常用的一种译码方法是基于概率的迭代译码方案,实质上就是目前倍受重视的置信传播(BeliefPropagation)迭代译码算法,也称和积(Sum-Product)迭代译码算法(SPA)。和积迭代译码算法是一种迭代译码算法,在该算法的每一轮迭代过程中,关于各节点的置信信息需要在变量节点和校验节点之间传递。例如由变量节点向校验节点传递的置信信息是基于变量节点对应的码元变量经过信道后的观察值和由邻接的校验节点在上一次迭代过程中传递过来的置信信息联合计算的。
对于校验矩阵为Hm×n的LDPC码,为了描述方便,给出如下定义发送码元为U=[u1,u2,…,un];接收码元为Y=[y1,y2,…,yn];M(j)≡{iHi,j=1}表示在二部图上与变量节点j相连的校验节点的集合;N(i)≡{jHi,j=1}表示在二部图上与校验节点i相连的变量节点的集合;M(j)\i表示集合M(j)中除去校验节点i后的子集合;N(i)\j表示集合N(i)中除去变量节点j后的子集合;
qj→i(x),x∈{0,1}表示变量节点j发送到校验节点i的表示变量节点j为0或1的概率信息;ri→j(x),x∈{0,1}表示校验节点i发送到变量节点j的表示变量节点j为0或1的概率信息;二进制随机变量A的对数似然比LLR定义为L(A)=logP(A=0)P(A=1)]]>其中,P(A=x),x∈{0,1}表示随机变量A取x值的概率。此外,还定义如下LLRs变量节点j到校验节点i的似然比λj→i(uj)=logqj→i(0)qj→i(1);]]>校验节点i到变量节点j的似然比Λi→j(uj)=logri→j(0)ri→j(1).]]>在以上各定义中,i=1,2,...,m,j=1,2,...,n,且m为校验节点的个数,n为变量节点的个数。
LDPC译码即通过接收码元Y=[y1,y2,…,yn]并根据LDPC译码算法得到发送码元的估计值U^={u^1,u^2,...,u^n},]]>图2为现有的LDPC译码流程图,如图2所示,其具体步骤如下步骤201设定最大迭代次数K,对各变量节点j(j=1,2,...,n)的似然比进行初始化,同时对变量节点到校验节点的似然比、校验节点到变量节点的似然比进行初始化。
具体地,变量节点j(j=1,2,...,n)的似然比可初始化为L(u0,j)=log{P(u0,j=0|yj)/P(u0,j=1|yj)};同时,对满足Hi,j=1的(i,j),变量节点j(j=1,2,...,n)到校验节点i(i=1,2,...,m)的似然比可初始化为λ0i,j→i(u0,j)=L(u0,j),校验节点i(i=1,2,...,m)到变量节点j(j=1,2,...,n)的似然比可初始化为Λ0,i→j(u0,j)=0。
步骤202记录当前迭代次数k。
步骤203计算当前校验节点i(i=1,2,...,m)到变量节点j(j=1,2,...,n)的似然比。
具体地,对于i,j∈N(i),当前校验节点i(i=1,2,...,m)到变量节点j(j=1,2,...,n)的似然比的计算公式为Λk,i→j(uk,j)=2tanh-1{Πj′∈N(i)\jtanh[λk-1,j′→i(uk-1,j′)/2]}]]>其中,λk-1,j′→i(uk-1,j′)为第k-1次迭代过程中得到的变量节点j′到校验节点i的似然比。
步骤204计算当前变量节点j(j=1,2,...,n)到校验节点i(i=1,2,...,m)的似然比及变量节点j(j=1,2,...,n)的自似然比。
具体地,对于i,j∈M(j),变量节点j(j=1,2,...,n)到校验节点i(i=1,2,...,m)的似然比的计算公式为λk,j→i(uk,j)=L(uk-1,j)+Σi′∈M(j)\iΛk-1,i′→j(uk-1,j)]]>变量节点j(j=1,2,...,n)的自似然比的计算公式为λk,j(uk,j)=L(uk-1,j)+Σi∈M(j)Λk-1,i→j(uk-1,j)]]>其中,L(uk-1,j)为第k-1次迭代过程中得到的变量节点j的似然比,Λk-1,i′→j(uk-1,j)为第k-1次迭代过程中得到的校验节点i′到变量节点j的似然比。
步骤205根据变量节点j(j=1,2,...,n)的自似然比计算发送码元U的当前估计值U^k={u^k,1,u^k,2,...,u^k,n}.]]>具体地,若λk,j(uk,j)≥0(j=1,2,...,n)成立,则uk,j的估计值u^k,j=0;]]>否则,u^k,j=1.]]>步骤206判断校验方程U^kHT=0]]>是否成立,若是,U=U^k,]]>本流程结束;否则,执行步骤207。
步骤207判断当前迭代次数k是否等于设定的最大迭代次数K,若是,U=U^k,]]>本流程结束;否则,执行步骤208。
步骤208将迭代次数k加1后转至步骤202。
通过对图2所示流程的仿真试验发现在信噪比一定时,当经过一定次数的迭代之后,再继续进行迭代并不能使误码率明显降低,甚至会出现误码率波动的情况。因此,在校验方程U^kHT=0]]>不成立且误码率出现波动时,若继续进行迭代,非但不能提高译码精度,反而会增加译码时延。

发明内容
有鉴于此,本发明的主要目的在于提供一种LDPC译码方法,以提高译码精度,并减少译码时延。
为达到上述目的,本发明的技术方案是这样实现的一种LDPC译码方法,该方法预先设定最大迭代次数,计算迭代译码似然比的初始化值,包括A、记录当前迭代次数,根据前一次迭代过程中得到的迭代译码似然比及迭代译码似然比的初始化值,计算当前迭代译码似然比;根据当前迭代译码似然比计算当前发送码元的估计值;B、判断当前发送码元的估计值是否满足校验方程,若满足,执行步骤C;若不满足,判断当前迭代次数是否等于最大迭代次数,若等于,执行步骤C,若不等于,判断当前误码率是否出现波动,若出现,执行步骤C,若未出现,转至步骤A;C、将当前发送码元的估计值作为发送码元,本流程结束。
步骤B所述判定当前迭代次数不等于最大迭代次数之后进一步包括计算并保存当前发送码元的估计值中的非零元素的个数,步骤B所述判断当前误码率是否出现波动具体为判断(Zk-Zk-1)*(Zk-1-Zk-2)<0是否成立,若成立,判定误码率出现波动;若不成立,判定误码率未出现波动,其中,Zk为所述当前发送码元的估计值中非零元素的个数,Zk-1为前一次迭代过程中得到的发送码元的估计值中非零元素的个数,Zk-2为前两次迭代过程中得到的发送码元的估计值中非零元素的个数,k为当前迭代次数且k≥3。
步骤B所述判定当前迭代次数不等于最大迭代次数之后进一步包括保存当前发送码元的估计值,计算当前发送码元的估计值与前一次迭代过程中得到的发送码元的估计值的汉明距离,步骤B所述判断当前误码率是否出现波动具体为判断(Dk-Dk-1)*(Dk-1-Dk-2)<0是否成立,若成立,判定误码率出现波动;若不成立,判定误码率未出现波动,其中,Dk为所述当前发送码元的估计值与前一次迭代过程中得到的发送码元的估计值的汉明距离,Dk-1为前一次迭代过程中得到的发送码元的估计值与前两次迭代过程中得到的发送码元的估计值的汉明距离,Dk-2为前两次迭代过程中得到的发送码元的估计值与前三次迭代过程中得到的发送码元的估计值的汉明距离,k为当前迭代次数且k≥4。
所述计算迭代译码似然比的初始化值具体为计算各变量节点的似然比的初始化值、变量节点到校验节点的似然比的初始化值及校验节点到变量节点的似然比的初始化值;步骤A所述根据前一次迭代过程中得到的迭代译码似然比及迭代译码似然比的初始化值,计算当前迭代译码似然比具体为根据前一次得到的变量节点到校验节点的似然比计算当前校验节点到变量节点的似然比;根据前一次得到的校验节点到变量节点的似然比及变量节点似然比的初始化值,计算当前变量节点到校验节点的似然比及当前变量节点的自似然比;步骤A所述根据当前迭代译码似然比计算当前发送码元的估计值具体为根据当前变量节点的自似然比计算当前发送码元的估计值。
所述计算各变量节点的似然比的初始化值具体为L(u0,j)=log{P(u0,j=0|yj)/P(u0,j=1|yj)},j=1,2,...,n,其中,L(u0,j)为变量节点j的似然比的初始化值,yj为第j个接收码元值,P(u0,j=0|yj)表示第j个接收码元值为yj时第j个发送码元值为0的概率,P(u0,j=1|yj)表示第j个接收码元值为yj时第j个发送码元值为1的概率,n为变量节点的个数。
所述计算变量节点到校验节点的似然比的初始化值具体为对满足Hi,j=1的(i,j),变量节点j(j=1,2,...,n)到校验节点i(i=1,2,...,m)的似然比的初始化值为λ0,j→i(u0,j)=log{P{u0,j=0|yj)/P(u0,j=1|yj},j=1,2,...,n,其中,Hi,j为校验矩阵的第i行第j个元素,λ0,j→i(u0,j)为变量节点j到校验节点i的似然比的初始化值,yj为第j个接收码元值,P(u0,j=0|yj)表示第j个接收码元值为yj时第j个发送码元值为0的概率,P(u0,j=1|yj)表示第j个接收码元值为yj时第j个发送码元值为1的概率,n为变量节点的个数,m为校验节点的个数。
所述计算校验节点到变量节点的似然比的初始化值,具体为对满足Hi,j=1的(i,j),校验节点i(i=1,2,...,m)到变量节点j(j=1,2,...,n)的似然比的初始化值为Λ0,i→j(u0,j)=0,其中,Hi,j为校验矩阵的第i行第j个元素,Λ0,i→j(u0,j)为校验节点i到变量节点j的似然比的初始化值,m为校验节点的个数,n为变量节点的个数。
步骤A所述计算当前校验节点到变量节点的似然比具体为Λk,i→j(uk,j)=2tanh-1{Πj′∈N(i)\jtanh[λk-1,j′→i(uk-1,j′)/2]},]]>i,j∈N(i)其中,Λk,i→j(uk,j)为当前校验节点i(i=1,2,...,m)到变量节点j(j=1,2,...,n)的似然比,λk-1,j′→i(uk-1,j′)表示前一次迭代过程中得到的变量节点j′到校验节点i的似然比,N(i)表示在二部图上与校验节点i相连的变量节点的集合,N(i)\j表示在二部图上与校验节点i相连的变量节点的集合中除去变量节点j后的子集合,m为校验节点的个数,n为变量节点的个数,k为当前迭代次数,k-1为前一次迭代次数。
步骤A所述计算当前变量节点到校验节点的似然比具体为
λk,j→i(uk,j)=L(uk-1,j)+Σi′∈M(j)\iΛk-1,i′→j(uk-1,j),i,j∈M(j)]]>其中,λkj→i(uk,j)为当前变量节点j(i=1.2,...,n)到校验节点i(i=1.2,...,m)的似然比,L(uk-1,j)表示前一次迭代过程中得到的变量节点j的似然比,Λk-1,i′→j(uk-1,j)表示前一次迭代过程中得到的校验节点i′到校验节点j的似然比,M(j)表示在二部图上与变量节点j相连的校验节点的集合,M(j)\i表示在二部图上与变量节点j相连的校验节点的集合中除去校验节点i后的子集合,n为变量节点的个数,m为校验节点的个数,k为当前迭代次数,k-1为前一次迭代次数。
步骤A所述计算当前变量节点的自似然比具体为λk,j(uk,j)=L(uk-1,j)+Σi∈M(j)Λk-1,i→j(uk-1,j)]]>所述计算当前发送码元的估计值具体为判断λk,j(uk,j)≥0,j=1,2,...,n是否成立,若是,u^k,j=0;]]>否则,u^k,j=1,]]>其中,λk,j(uk,j)表示当前变量节点j的自似然比,L(uk-1,j)表示前一次迭代过程中得到的变量节点j的似然比,Λk-1,i→j(uk-1,j)表示前一次迭代过程中得到的校验节点i到变量节点j的似然比,M(j)表示在二部图上与变量节点j相连的校验节点的集合, 为当前第j个发送码元的估计值,n为变量节点的个数,k为当前迭代次数,k-1为前一次迭代次数。
与现有技术相比,本发明所提供的在当前迭代过程中得到发送码元估计值,并在判定当前发送码元估计值不满足校验方程且当前迭代次数不等于最大迭代次数之后,进一步判断当前误码率是否出现波动,若出现,将当前发送码元的估计值作为发送码元,本流程结束;否则,继续进行下一次迭代过程,使得在误码率出现波动时,及时停止迭代过程,提高了译码精度,减少了译码时延。具体地,可通过相邻两次迭代过程中得到的发送码元估计值中非零元素个数的差值来判断误码率是否出现波动,也可通过相邻两两迭代过程中得到的发送码元估计值的汉明距离的差值来判断误码率是否出现波动。


图1为LDPC的校验矩阵的Tanner示意图;图2为现有的LDPC译码流程图;图3为本发明提供的LDPC译码的流程图;图4为本发明提供的LDPC译码的具体实施例一的流程图;图5为本发明提供的LDPC译码的具体实施例二的流程图。
具体实施例方式
下面结合附图及具体实施例对本发明再作进一步详细的说明。
图3为本发明提供的LDPC译码的流程图,如图3所示,其具体步骤如下步骤301设定最大迭代次数K,根据接收码元Y=[y1,y2,…,yn]对各变量节点j(j=1,2,...,n)的似然比进行初始化,同时对变量节点到校验节点的似然比、校验节点到变量节点的似然比进行初始化。
这里,初始化变量节点j(j=1,2,...,n)的似然比、变量节点j(j=1,2,...,n)到校验节点i(i=1,2,...,m)的似然比及校验节点i(i=1,2,...,m)到变量节点j(j=1,2,...,n)的似然比与现有技术相同。
步骤302记录当前迭代次数k。
步骤303计算当前校验节点i(i=1,2,...,m)到变量节点j(j=1,2,...,n)的似然比。
该步骤与现有技术相同。
步骤304计算当前变量节点j(j=1,2,...,n)到校验节点i(i=1,2,...,m)的似然比及变量节点j(j=1,2,...,n)的自似然比。
该步骤与现有技术相同。
步骤305根据变量节点j(j=1,2,...,n)的自似然比计算发送码元U的当前估计值U^k={u^k,1,u^k,2,...,u^k,n}.]]>
该步骤与现有技术相同。
步骤306判断U^kHT=0]]>是否成立,若是,U=U^k,]]>本流程结束;否则,执行步骤307。其中,HT为校验矩阵H的转置矩阵。
步骤307判断当前迭代次数k是否等于最大迭代次数K,若是,U=U^k,]]>本流程结束;否则,执行步骤308。
步骤308判断当前误码率是否出现波动,若是,U=U^k,]]>本流程结束;否则,执行步骤309。
步骤309将迭代次数k加1,然后转至步骤302。
图4为本发明提供的LDPC译码的具体实施例一的流程图,如图4所示,其具体步骤如下步骤401~405与步骤301~305相同。
步骤406判断U^kHT=0]]>是否成立,若是,U=U^k,]]>本流程结束;否则,执行步骤407。
步骤407判断当前迭代次数k是否等于最大迭代次数K,若是,U=U^k,]]>本流程结束;否则,执行步骤408。
步骤408记录U^k={u^k,1,u^k,2,...,u^k,n}]]>中非零元素的个数Zk。
步骤409判断(Zk-Zk-1)*(Zk-1-Zk-2)<0,k≥3是否成立,若是,U=U^k,]]>本流程结束;否则,执行步骤410。
这里,Zk-1表示第k-1次迭代过程中得到的 中非零元素的个数,Zk-2表示第k-2次迭代过程中得到的 中非零元素的个数。
步骤410将迭代次数k加1后转至步骤402。
当k<3时,不执行步骤409即执行完步骤408后,直接执行步骤410。
图5为本发明提供的LDPC译码的具体实施例二的流程图,如图5所示,其具体步骤如下
步骤501~505与步骤301~305相同。
步骤506判断U^kHT=0]]>是否成立,若是,U=U^k,]]>本流程结束;否则,执行步骤507。
步骤507判断当前迭代次数k是否等于最大迭代次数K,若是,U=U^k,]]>本流程结束;否则,执行步骤508。
步骤508计算并保存 与 的汉明距离Dk。
步骤509判断(Dk-Dk-1)*(Dk-1-Dk-2)<0,k≥4是否成立,若是,U=U^k,]]>本流程结束;否则,执行步骤510。
这里,Dk-1表示 与 的汉明距离,Dk-2表示 与 的汉明距离。
步骤510将迭代次数k加1后转至步骤502。
当k<4时,不执行步骤509即执行完步骤508后,直接执行步骤510。
以上所述仅为本发明的过程及方法实施例,并不用以限制本发明,凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种低密度奇偶校验码LDPC译码方法,其特征在于,预先设定最大迭代次数,计算迭代译码似然比的初始化值,该方法包括A、记录当前迭代次数,根据前一次迭代过程中得到的迭代译码似然比及迭代译码似然比的初始化值,计算当前迭代译码似然比;根据当前迭代译码似然比计算当前发送码元的估计值;B、判断当前发送码元的估计值是否满足校验方程,若满足,执行步骤C;若不满足,判断当前迭代次数是否等于最大迭代次数,若等于,执行步骤C,若不等于,判断当前误码率是否出现波动,若出现,执行步骤C,若未出现,转至步骤A;C、将当前发送码元的估计值作为发送码元,本流程结束。
2.如权利要求1所述的方法,其特征在于,步骤B所述判定当前迭代次数不等于最大迭代次数之后进一步包括计算并保存当前发送码元的估计值中的非零元素的个数,步骤B所述判断当前误码率是否出现波动具体为判断(Zk-Zk-1)*(Zk-1-Zk-2)<0是否成立,若成立,判定误码率出现波动;若不成立,判定误码率未出现波动,其中,Zk为所述当前发送码元的估计值中非零元素的个数,Zk-1为前一次迭代过程中得到的发送码元的估计值中非零元素的个数,Zk-2为前两次迭代过程中得到的发送码元的估计值中非零元素的个数,k为当前迭代次数且k≥3。
3.如权利要求1所述的方法,其特征在于,步骤B所述判定当前迭代次数不等于最大迭代次数之后进一步包括保存当前发送码元的估计值,计算当前发送码元的估计值与前一次迭代过程中得到的发送码元的估计值的汉明距离,步骤B所述判断当前误码率是否出现波动具体为判断(Dk-Dk-1)*(Dk-1-Dk-2)<0是否成立,若成立,判定误码率出现波动;若不成立,判定误码率未出现波动,其中,Dk为所述当前发送码元的估计值与前一次迭代过程中得到的发送码元的估计值的汉明距离,Dk-1为前一次迭代过程中得到的发送码元的估计值与前两次迭代过程中得到的发送码元的估计值的汉明距离,Dk-2为前两次迭代过程中得到的发送码元的估计值与前三次迭代过程中得到的发送码元的估计值的汉明距离,k为当前迭代次数且k≥4。
4.如权利要求1所述的方法,其特征在于,所述计算迭代译码似然比的初始化值具体为计算各变量节点的似然比的初始化值、变量节点到校验节点的似然比的初始化值及校验节点到变量节点的似然比的初始化值;步骤A所述根据前一次迭代过程中得到的迭代译码似然比及迭代译码似然比的初始化值,计算当前迭代译码似然比具体为根据前一次得到的变量节点到校验节点的似然比计算当前校验节点到变量节点的似然比;根据前一次得到的校验节点到变量节点的似然比及变量节点似然比的初始化值,计算当前变量节点到校验节点的似然比及当前变量节点的自似然比;步骤A所述根据当前迭代译码似然比计算当前发送码元的估计值具体为根据当前变量节点的自似然比计算当前发送码元的估计值。
5.如权利要求4所述的方法,其特征在于,所述计算各变量节点的似然比的初始化值具体为L(u0,j)=log{P(u0,j=0|yj)/P(u0,j=1|yj)},j=1,2,...,n,其中,L(u0,j)为变量节点j的似然比的初始化值,yj为第j个接收码元值,P(u0,j=0|yj)表示第j个接收码元值为yj时第j个发送码元值为0的概率,P(u0,j=1|yj)表示第j个接收码元值为yj时第j个发送码元值为1的概率,n为变量节点的个数。
6.如权利要求4所述的方法,其特征在于,所述计算变量节点到校验节点的似然比的初始化值具体为对满足Hi,j=1的(i,j),变量节点j(j=1,2,...,n)到校验节点i(i=1,2,...,m)的似然比的初始化值为λ0,j→i(u0,j)=log{P{u0,j=0|yj)/P(u0,j=1|yj},j=1,2,...,n,其中,Hi,j为校验矩阵的第i行第j个元素,λ0,j→i(u0,j)为变量节点j到校验节点i的似然比的初始化值,yj为第j个接收码元值,P(u0,j=0|yj)表示第j个接收码元值为yj时第j个发送码元值为0的概率,P(u0,j=1|yj)表示第j个接收码元值为yj时第j个发送码元值为1的概率,n为变量节点的个数,m为校验节点的个数。
7.如权利要求4所述的方法,其特征在于,所述计算校验节点到变量节点的似然比的初始化值,具体为对满足Hi,j=1的(i,j),校验节点i(i=1,2,...,m)到变量节点j(j=1,2,...,n)的似然比的初始化值为Λ0,i→j(u0,j)=0,其中,Hi,j为校验矩阵的第i行第j个元素,Λ0,i→j(u0,j)为校验节点i到变量节点j的似然比的初始化值,m为校验节点的个数,n为变量节点的个数。
8.如权利要求4所述的方法,其特征在于,步骤A所述计算当前校验节点到变量节点的似然比具体为Λk,i→j(uk,j)=2tanh-1{Πj′∈N(i)\jtanh[λk-1,j′→i(uk-1,j′)/2]},i,j∈N(i)]]>其中,Λk,i→j(uk,j)为当前校验节点i(i=1,2,...,m)到变量节点j(j=1,2,...,n)的似然比,λk-1,j′→i(uk-1,j′)表示前一次迭代过程中得到的变量节点j′到校验节点i的似然比,N(i)表示在二部图上与校验节点i相连的变量节点的集合,N(i)\j表示在二部图上与校验节点i相连的变量节点的集合中除去变量节点j后的子集合,m为校验节点的个数,n为变量节点的个数,k为当前迭代次数,k-1为前一次迭代次数。
9.如权利要求4所述的方法,其特征在于,步骤A所述计算当前变量节点到校验节点的似然比具体为λk,j→i(uk,j)=L(uk-1,j)+Σi′∈M(j)\iΛk-1,i′→j(uk-1,j),i,j∈M(j)]]>其中,λk,j→i(uk,j)为当前变量节点j(i=1.2,...,n)到校验节点i(i=1.2,...,m)的似然比,L(uk-1,j)表示前一次迭代过程中得到的变量节点j的似然比,Λk-1,i′→j(uk-1,j)表示前一次迭代过程中得到的校验节点i′到校验节点j的似然比,M(j)表示在二部图上与变量节点j相连的校验节点的集合,M(j)\i表示在二部图上与变量节点j相连的校验节点的集合中除去校验节点i后的子集合,n为变量节点的个数,m为校验节点的个数,k为当前迭代次数,k-1为前一次迭代次数。
10.如权利要求4所述的方法,其特征在于,步骤A所述计算当前变量节点的自似然比具体为λk,j(uk,j)=L(uk-1,j)+Σi∈M(j)Λk-1,i→j(uk-1,j)]]>所述计算当前发送码元的估计值具体为判断λk,j(uk,j)≥0,j=1,2,...,n是否成立,若是,u^k,j=0;]]>否则,u^k,j=1,]]>其中,λk,j(uk,j)表示当前变量节点j的自似然比,L(uk-1,j)表示前一次迭代过程中得到的变量节点j的似然比,Λk-1,i→j(uk-1,j)表示前一次迭代过程中得到的校验节点i到变量节点j的似然比,M(j)表示在二部图上与变量节点j相连的校验节点的集合, 为当前第j个发送码元的估计值,n为变量节点的个数,k为当前迭代次数,k-1为前一次迭代次数。
全文摘要
本发明公开了一种LDPC译码方法,本发明所提供的方法在当前迭代过程中得到发送码元估计值,并判定当前发送码元估计值不满足校验方程且当前迭代次数不等于最大迭代次数之后,进一步判断当前误码率是否出现波动,若出现,将当前发送码元的估计值作为发送码元,本流程结束;否则,继续进行下一次迭代过程,使得在误码率出现波动时,及时停止迭代过程,提高了译码精度,减少了译码时延。具体地,可通过相邻两次迭代过程中得到的发送码元估计值中非零元素个数的差值来判断误码率是否出现波动,也可通过相邻两两迭代过程中得到的发送码元估计值的汉明距离的差值来判断误码率是否出现波动。
文档编号H03M13/11GK101026436SQ20061005762
公开日2007年8月29日 申请日期2006年2月22日 优先权日2006年2月22日
发明者余荣道, 张毅 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1