一种用于ldpc码的交叠译码方法

文档序号:7544838阅读:168来源:国知局
一种用于ldpc码的交叠译码方法
【专利摘要】本发明提供了一种用于LDPC码的交叠译码方法,属于通信【技术领域】。本方法先将奇偶校验矩阵按列进行分组,每组具有相同的列数,对每个分组依次进行垂直更新运算和水平更新运算,最后当满足迭代停止条件或者译码成功时,输出译码结果,结束译码。本方法对奇偶校验矩阵的第一分组进行垂直更新运算后,在依次对奇偶校验矩阵剩余分组进行垂直更新运算的同时,开始依次对奇偶校验矩阵的分组进行水平更新运算,相邻的两个分组的垂直更新运算和水平更新运算交叠进行。本发明能够提高LDPC码译码器的硬件资源利用率,提高译码速率,减少硬件资源消耗。
【专利说明】—种用于LDPC码的交叠译码方法
【技术领域】
[0001]本发明属于通信【技术领域】,具体涉及一种LDPC码的交叠译码方法。
【背景技术】
[0002]LDPC码,全称Low Density Parity Check Code,即低密度奇偶校验码。在目前已有的编码方法中,LDPC码的编码方法在某些情况下已经显示出了接近香农限(Shannon’ slimit)的编码性能;在译码方面,与同样是长码的Turbo码相比,LDPC码的误码平层出现在很低的误码率区域,且错误码字无法检测的概率趋近于O ;LDPC码的奇偶校验矩阵H的绝大多数元素为“0”,此即“低密度”的命名由来,而这样的特性使其能够通过简单易于实现的译码方法进行译码,具有极高的实用价值。由于以上几点原因,使得LDPC在近年来成为研究与应用的热点,例如:第二代卫星数字电视视频广播标准(DVB-S2)以及我国的数字电视地面传输标准都使用LDPC码作为核心的信道编码,但就其译码方法的应用而言,还存着很多值得研究的问题。
[0003]本领域内公知,传统的LDPC译码算法包含两种运算:变量节点更新运算和校验节点更新运算,这两种运算交替进行。这类两种运算交替进行的算法可以归结为双向消息传递(two phase message passing,简称 TPMP)译码算法,可以用 log-BP (Log-BeliefPropagation)算法或者最小和(min sum,简称MS)算法实现,也可以用1g-BP或最小和算法的各种变体算法实现,它们的运算流程一致。由于这两种更新运算必须交替进行,所以使用传统方法进行译码的译码器的硬件利用率(hardware usage ratio,简称HUE)只有50%。
[0004]在文献“Y.Chen and K.K.Parh1.0verlapped message passing forquas1-cyclic low-density parity check codes,,和 “Y.M.Dai, Z.Y.Yan, and N.Chen.0ptimal overlapped message passing decoding of quas1-cyclic LDPC codes,,中,作者提出了一种交叠(overlapped message passing,简称0MP)译码算法及其改进算法。在OMP算法中,通过改变矩阵中各行与各列的运算顺序,使得变量节点更新运算和校验节点更新运算可以部分交叠运行,从而提高了 HUE。由于OMP算法改变的仅仅是校验矩阵各行与各列的运算顺序,其有效性很大程度上取决于码字自身的结构,而且为了解决交叠区运算单元对迭代存储器的访问冲突,通常需要额外增加一倍的迭代信息存储器或采用双倍时钟使得两种更新单元对迭代信息存储器进行交替访问。
[0005]在最近几年,TDMP (turbo decoding message passing)译码算法由于具有更快的收敛速度,受到了研究者的广泛关注。TDMP算法是将校验矩阵分成若干层,各层依次进行译码,如果能满足每一层的每一列最多包含一个“I”的约束条件,那么TDMP算法的HUE可以达到1,而且所需的存储器块数以及存储量均远远小于TPMP算法;反之,如果校验矩阵的每一层的每一列包含“I”的个数大于1,那么TDMP算法消耗的存储器资源以及迭代周期都要远大于TPMP算法,所以,TDMP算法仅适用于部分LDPC码,例如子矩阵重量为I的QC-LDPC码。此外,TDMP算法中各层之间的运算具有依赖性,导致各层的运算只能顺序执行,从而限制了译码器的最大吞吐率。[0006]综上所述,TPMP算法能适用于所有LDPC码,但是HUE较低;TDMP算法HUE高,但适用的LDPC码有限,并且最高译码速率受限。因此,一种高HUE,能适用所有LDPC码,能高速译码的译码方法是一种需求。

【发明内容】

[0007]本发明的目的是提供一种LDPC码的交叠译码方法,用以提高译码器的硬件资源利用率以及译码速率。
[0008]本发明提供的一种用于LDPC码的交叠译码方法,其步骤包括:
[0009]步骤1:对奇偶校验矩阵按列进行分组,每组具有相同的列数;
[0010]步骤2:对每个分组依次进行垂直更新运算;每个分组的垂直更新运算的结果参与本次迭代对应分组的水平更新运算以及下次迭代的对应分组的垂直更新运算;
[0011]步骤3:对每个分组依次进行水平更新运算;本次迭代的前一分组的水平更新运算的结果参与本次迭代当前分组的水平更新运算,最后一分组的水平更新运算的结果参与下次迭代的垂直更新运算;
[0012]步骤4:判断是否满足迭代停止条件或者译码成功,若是,则输出译码结果,结束译码;否则,重复上述步骤2至步骤3,进行迭代,直到译码成功或满足迭代停止条件。
[0013]所述的步骤2进行垂直更新运算,具体是:第k次迭代时,与校验节点m相关联的
变量节点j的译码迭代信息#_为:
【权利要求】
1.一种用于LDPC码的交叠译码方法,其特征在于,包括如下步骤: 步骤1:对奇偶校验矩阵按列进行分组,每组具有相同的列数;设L为分组数; 步骤2:对每个分组依次进行垂直更新运算;每个分组的垂直更新运算的结果参与本次迭代对应分组的水平更新运算以及下次迭代的对应分组的垂直更新运算; 步骤3:对每个分组按照下式依次进行水平更新运算;本次迭代的前一分组的水平更新运算的结果参与本次迭代当前分组的水平更新运算,最后一分组的水平更新运算的结果参与下次迭代的垂直更新运算; 步骤4:判断是否满足迭代停止条件或者译码成功,若是,则输出译码结果,结束译码;否则,重复步骤2至步骤3,进行迭代,直到译码成功或满足迭代停止条件。
2.根据权利要求1所述的用于LDPC码的交叠译码方法,其特征在于,所述的步骤2中进行的垂直更新运算,具体为: 第k次迭代时,与校验节点m相关联的变量节点j的译码迭代信息Lkmj为:
3.根据权利要求1或2所述的用于LDPC码的交叠译码方法,其特征在于,所述的步骤3中进行水平更新运算,具体是: 第k次迭代时,对位于第t分组的每一个校验节点m,统计与校验节点m相关联的所有变量节点的译码迭代信息的最小值I和次小值疋 t=l,…,L:
4.根据权利要求1所述的用于LDPC码的交叠译码方法,其特征在于,所述的步骤2中,对奇偶校验矩阵的第一分组进行垂直更新运算后,在依次对奇偶校验矩阵第2~L个分组进行垂直更新运算的同时,开始依次对奇偶校验矩阵的第I~(L-1)个分组进行水平更新运算,相邻的两个分组的垂直更新运算和水平更新运算交叠进行。
5.根据权利要求1所述的用于LDPC码的交叠译码方法,其特征在于,所述的步骤4中,在每次迭代的水平更新运算完成后,判断所有校验节点对应的全部译码迭代信息的符号位的异或结果是否均为O,若是,表示译码成功,否则,表示译码不成功。
【文档编号】H03M13/11GK103731161SQ201410010490
【公开日】2014年4月16日 申请日期:2014年1月9日 优先权日:2014年1月9日
【发明者】赵岭, 韩江雪, 侯毅, 刘荣科 申请人:北京航空航天大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1