CN108809327B - Ldpc译码方法 - Google Patents

Ldpc译码方法 Download PDF

Info

Publication number
CN108809327B
CN108809327B CN201710312949.9A CN201710312949A CN108809327B CN 108809327 B CN108809327 B CN 108809327B CN 201710312949 A CN201710312949 A CN 201710312949A CN 108809327 B CN108809327 B CN 108809327B
Authority
CN
China
Prior art keywords
diagonal
information
matrix
check matrix
updating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710312949.9A
Other languages
English (en)
Other versions
CN108809327A (zh
Inventor
张文军
文凛
寇亚军
戴永清
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai National Engineering Research Center of Digital Television Co Ltd
Original Assignee
Shanghai National Engineering Research Center of Digital Television Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai National Engineering Research Center of Digital Television Co Ltd filed Critical Shanghai National Engineering Research Center of Digital Television Co Ltd
Priority to CN201710312949.9A priority Critical patent/CN108809327B/zh
Publication of CN108809327A publication Critical patent/CN108809327A/zh
Application granted granted Critical
Publication of CN108809327B publication Critical patent/CN108809327B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1108Hard decision decoding, e.g. bit flipping, modified or weighted bit flipping

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

本发明提供了一种LDPC译码方法,利用校验矩阵进行校验更新,对变量信息更新得到中间变量结果,其特征在于:当校验矩阵需兼容准循环矩阵和/或多对角线矩阵时,基于校验矩阵的并列度、多对角线的线数以及多对角线最大个数来设计用于存储中间变量结果的多对角线信息存储单元,对校验矩阵采用准循环矩阵结构或多对角线矩阵结构进行判断,判定为多对角线矩阵结构时利用多对角线信息存储单元进行存储,其中,多对角线最大个数表示以一定并行度对校验矩阵进行层处理时子矩阵为多对角线结构的最大个数,其中还利用校验矩阵存储单元:用于存储译码器所支持的不同码率下所有校验矩阵信息,可配置支持不同协议标准。

Description

LDPC译码方法
技术领域
本发明属于通信领域,更具体地说涉及一种LDPC译码方法。
背景技术
低密度校验码(Low Density Parity Check Code,LDPC)码是Robert G.Gallager在1962 年提出的,直到1999年MacKay和Wilberg重新发现了LDPC码的优秀性能,才引起了编码领域专家和学者们的广泛关注。LDPC码是一种线性分组码,其校验矩阵为稀疏矩阵,采用迭代的译码算法使得LDPC码可以接近香农限的性能。由于准循环结构的LDPC译码器易于并行实现,能提供高吞吐率,因此被多个标准使用,目前,LDPC码的技术已应用于 CMMB、DTMB、DVB-S2、DVB-T2、ATSC3.0和4G等标准的通信***中。
现有的LDPC译码器实现主要基于准循环结构的校验矩阵。随着技术演进,也逐步出现双对角线结构甚至是多对角线结构的校验矩阵。当设计LDPC译码器或者译码方法时,所需处理的校验矩阵需兼容准循环和/或多对角线结构时,原有的基于准循环结构设计的LDPC译码器当被用于处理多对角线结构的校验矩阵时就往往需重新设计以满足并行实现需要,设计繁杂、耗时且不灵活。
现有技术中,也有设计LDPC译码需兼容准循环结构和多对角线结构的考虑,当子矩阵为准循环结构时,更新后验信息无明显区别,但是,当子矩阵为多对角线结构时,由于子矩阵列重为大于等于2,更新后验信息会导致同一RAM地址中的后验信息依据列重数量相应地更新多次,且后一次更新会覆盖掉前一次更新值,引起性能损失。
发明内容
为了解决上述问题,本发明提出一种高效通用的LDPC译码方法,尤其适用于需兼容处理准循环结构的校验矩阵和/或多对角线结构的校验矩阵。
本发明提供了一种LDPC译码方法,利用校验矩阵进行校验更新,对变量信息更新得到中间变量结果,其特征在于:当所述校验矩阵需兼容准循环矩阵和/或多对角线矩阵时,基于所述校验矩阵的并列度、多对角线的线数以及多对角线最大个数来设计用于存储所述中间变量结果的多对角线信息存储单元,对校验矩阵采用准循环矩阵结构或多对角线矩阵结构进行判断,判定为多对角线矩阵结构时利用所述多对角线信息存储单元进行存储,其中,所述多对角线最大个数表示以一定并行度对所述校验矩阵进行层处理时子矩阵为多对角线结构的最大个数,其中还利用校验矩阵存储单元:用于存储译码器所支持的不同码率下所有校验矩阵信息,可配置支持不同协议标准。
进一步可选地,在本发明所提供的LDPC译码方法中,其中,所述多对角线信息存储单元的大小由以下方式确定:
并行度×(后验信息位宽+变量信息位宽×(K-1))×Ndiag
其中,并行度表示用于处理校验矩阵的子矩阵的大小;后验信息位宽表示为后验信息存储单元所需的预先设定宽度;变量信息位宽表示为变量信息存储单元所需的预先设定宽度;Ndiag表示以一定并行度进行层处理时子矩阵为多对角线结构的最大个数;K表示对角线个数。
进一步可选地,在本发明所提供的LDPC译码方法中,当判断用于处理校验矩阵的子矩阵为多对角线结构时,依据所判定出的多对角线结构的对角线个数对子矩阵进行重写;将变量节点更新的上一次迭代得到的后验信息作为输入值更新存储到多对角线信息存储单元。
进一步可选地,在本发明所提供的LDPC译码方法中,校验矩阵中的多个子矩阵存在至少一个多对角线结构时,将校验矩阵相应分解为多个子矩阵用于进行相应的译码更新运算。
进一步可选地,在本发明所提供的LDPC译码方法中,其中,所述译码更新运算包含以下变量节点更新步骤:利用所述多个子矩阵中的第一个单位阵进行变量节点更新,将得到的变量节点结果存储到后验信息存储单元;后续每次更新中,利用所述多个子矩阵中的剩余个单位阵相应分别进行变量节点更新,将对应得到的变量节点结果存储到多对角线信息存储单元。
进一步可选地,在本发明所提供的LDPC译码方法中,所述译码更新运算包含以下后验信息更新步骤:从后验信息存储单元读取与所述第一个单位阵对应得到的变量节点更新结果,进行后验信息更新,将更新后的后验信息存储到后验信息存储单元;后续每次更新中,从多对角线信息存储单元分别读取出与所述剩余个单位阵对应得到的变量节点更新结果,进行后验信息更新,将更新后的后验信息存储到多对角线信息存储单元。
进一步可选地,在本发明所提供的LDPC译码方法中,将多个子矩阵分别译码更新运算所得到的后验信息进行运算,得到最终后验信息结果,用于后续处理。
进一步可选地,在本发明所提供的LDPC译码方法中,支持ATSC3.0标准协议,校验矩阵存储模块需存储两种码长和对应码率的信息,码长分为16200和64800两种,对应的码率从2/15到13/15中任意一种均可。
进一步可选地,在本发明所提供的LDPC译码方法中,在ATSC3.0的LDPC译码器实现中,采用并行度为360,后验节点信息和变量节点信息均设置为11位来存储,多对角线信息存储RAM的大小为71280比特。
本发明的技术效果
根据本发明所提供的LDPC码的译码方法,考虑到了需兼容准循环结构的校验矩阵和/或多对角线结构的校验矩阵,并非现有技术中,完成一次迭代需要更新所有的校验节点和变量节点,这样逐行逐列更新的译码算法不能满足高速率要求且占用了不必要的大存储空间,且后一次更新会覆盖掉前一次更新值,引起性能损失,本发明中通过对准循环矩阵结构或多对角线矩阵结构进行判断,并且增加设置了多对角线信息存储单元来对中间变量结果进行存储,且预先依据多对角线的结构来设计多对角线信息存储单元的大小,避免浪费不必要的存储空间,可减少总的存储空间,实现了兼容准循环和双对角线结构的译码处理,整体减小译码器所需的存储空间,且不会引起性能损失。
附图说明
图1是本发明实施例的LDPC校验矩阵中准循环矩阵结构的子矩阵示意图;
图2是本发明实施例的LDPC校验矩阵中第一种多对角线矩阵结构的子矩阵示意图;
图3是本发明实施例的LDPC译码器结构图;以及
图4是本发明实施例的LDPC校验矩阵中第二种多对角线矩阵结构的子矩阵示意图。
具体实施方式
本发明提出一种高效通用的LDPC译码方法,尤其适用于需兼容处理准循环结构的校验矩阵和/或多对角线结构的校验矩阵。
在阐明发明方案之前,先对现有技术中的LDPC译码方法进行如下介绍,LDPC译码方法采用常见的归一化最小和积算法。
常见的归一化最小和积算法的LDPC译码方法,包含以下步骤:
1.初始化:初始软值信息,
Figure DEST_PATH_GDA0001393939980000031
2.校验节点更新:
Figure DEST_PATH_GDA0001393939980000041
3.变量节点更新:
Figure DEST_PATH_GDA0001393939980000042
Figure DEST_PATH_GDA0001393939980000043
4.硬判决:
Figure DEST_PATH_GDA0001393939980000044
5.如果满足校验方程DHT=0或者当前迭代次数达到最大迭代次数,则迭代结束;否则k加1并重复步骤2-5。
其中,
Figure DEST_PATH_GDA0001393939980000045
表示第k次迭代中变量节点i传递给校验节点j的信息,
Figure DEST_PATH_GDA0001393939980000046
表示k次迭代中校验节点j传递给变量节点i的信息。
Nj表示所有和校验节点j连接的变量节点集合,Nj\i表示去除节点i外的所有和校验节点j连接的变量节点集合;Mi表示所有和变量节点i连接的校验节点集合。
Figure DEST_PATH_GDA0001393939980000047
为初始软值信息,
Figure DEST_PATH_GDA0001393939980000048
为第k次迭代后验信息。α为归一化因子。
从上述译码步骤可以看出,完成一次迭代需要更新所有的校验节点
Figure DEST_PATH_GDA0001393939980000049
和变量节点
Figure DEST_PATH_GDA00013939399800000410
分别对应于校验矩阵的行遍历和列遍历。然而,现有的应用对***吞吐率却是要求越来越高,这样采用串行的逐行逐列更新的译码算法不能满足高速率要求,因而,可以采用并行的层译码算法可以提供更高的吞吐率。
然而在采用并行的层译码算法过程中,需进一步考虑到校验矩阵需兼容准循环和/或多对角线结构这样的前提时,当判定子矩阵为如图1中的准循环结构时,可直接更新后验信息;但是,值得注意的是,当判定子矩阵为如图2中的多对角线结构时,由于子矩阵列重为大于等于2,更新后验信息时会导致同一RAM地址中的后验信息相应更新列重数量的多次,例如图2中由于为双对角线结构则同一列中更新2次,致使多次更新过程中后一次更新会覆盖掉前一次更新值,引起性能损失。
为了更具有针对性的表述方便,本实施例中利用双对角线结构来进行说明,然而并非限制于此,本发明所提出的技术方案包含针对多对角线结构的方案,也包含例如图4中这样的矩阵结构的方案,也就是说,利用多对角线最大个数去设计存储空间大小,更加能避免不合理的存储空间浪费,该多对角线最大个数表示以一定并行度对校验矩阵进行层处理时子矩阵为多对角线结构的最大个数,即在图4中可以看出,其中若干列的列重为1,有的若干列的列重为2,并非每列列重数量相同,将校验矩阵分解为多个子矩阵进行并行更新运算时,存在有的子矩阵为对角线结构而有的子矩阵为非对角线结构的情况。
本实施例中,准循环结构子矩阵是行重和列重均为1的方阵;双对角线结构是两个不同的准循环结构子矩阵的叠加。
图1给出了本实施例子中准循环结构中子矩阵示意图。图2给出了本实施例子中双对角线结构的子矩阵示图。
定义I为q×q的单位阵,则准循环子矩阵Aij可通过I的循环右移得到。定义I(τm)表示将I循环右移τm位,则如下所示的Aij=I(2)。
Figure DEST_PATH_GDA0001393939980000051
对于校验矩阵包含准循环结构和双对角线结构的子矩阵,其子矩阵可统一定义为
Hij=β0I(τ0)+β1I(τ1),其中τ0≠τ10,β1=0或1。 (1)
进一步,多对角线结构子矩阵可以表示为:
Figure DEST_PATH_GDA0001393939980000052
βk=0或1 (2)
现有的层译码算法在归一化和积算法上进行了优化,其处理步骤如下:
1.初始化:
Figure DEST_PATH_GDA0001393939980000053
其中Lch是初始软值信息 (3)
2.变量节点更新:
Figure DEST_PATH_GDA0001393939980000054
3.校验节点更新:
Figure DEST_PATH_GDA0001393939980000055
4.后验信息更新:
Figure DEST_PATH_GDA0001393939980000056
5.重复步骤2-4直到完成所有层更新
6.硬判决:
Figure DEST_PATH_GDA0001393939980000057
7.如果满足校验方程DHT=0或者当前迭代次数达到最大迭代次数,则迭代结束;否则k 加1并重复步骤2-6。
上述对现有LDPC译码方案进行了介绍,下面提供本发明的实施例中一种LDPC译码方案。本发明实施例中的LDPC译码器或者LDPC译码方法,能减少译码器的存储空间,避免不必要的存储空间浪费,无论子矩阵Hij为准循环还是双对角线结构,都能通过一套通用的译码器结构来实现,无需重新设计译码器,以下结合现有技术重点对如何实现进行阐述。
结合附图3,本发明的LDPC译码器和LDPC译码方法具体实施如下:
本实施例中采用后验信息RAM来存储后验信息,采用多对角线信息存储RAM存储多对角线处理所需信息,该方法可减少总的存储空间。对该多对角线处理所需信息具体而言,也就是说,在设计多对角线信息存储单元的大小时,基于校验矩阵的并列度、多对角线的线数以及多对角线最大个数来设计。
由于需要考虑到校验矩阵需兼容准循环矩阵和/或多对角线矩阵的情况,对校验矩阵采用准循环矩阵结构或多对角线矩阵结构进行判断:
当判定子矩阵为准循环结构时,直接按照公式(6)更新后验信息;
当判定子矩阵为双对角线结构时,由于子矩阵列重为2,直接按照公式(6)更新后验信息会导致同一RAM地址中的后验信息更新两次,且后一次更新会覆盖掉前一次更新值,引起性能损失。通过增加多对角线信息存储RAM的方法可以解决该问题,具体过程如下:当子矩阵为双对角线结构时,根据公式(1)重写子矩阵如下:
Hij=I(τ0)+I(τ1),其中τ0≠τ1
将公式(4)的输入
Figure DEST_PATH_GDA0001393939980000065
存储到多对角线信息存储RAM。
Figure DEST_PATH_GDA0001393939980000061
存储Lu所需的空间和层译码时子矩阵为双对角线的个数相关。
因为子矩阵Hij为双对角线结构,因此可分解为I(τ0)和I(τ1)两个子矩阵进行相应的更新运算。公式(4)可以分解为:
针对子矩阵I(τ0),变量节点第一次更新:
Figure DEST_PATH_GDA0001393939980000062
更新后的
Figure DEST_PATH_GDA0001393939980000063
存储到后验信息RAM,如图3所示变量节点更新后的数据通过选择器存入后验信息RAM。
针对子矩阵I(τ1),变量节点第二次更新:
Figure DEST_PATH_GDA0001393939980000064
Figure DEST_PATH_GDA0001393939980000071
存储到多对角线信息存储RAM,存储
Figure DEST_PATH_GDA0001393939980000072
所需的空间和层译码时子矩阵为双对角线的个数相关。
公式(5)校验节点更新不变。
公式(6)后验信息更新可以分解为:
针对子矩阵I(τ0),后验信息第一次更新时:
Figure DEST_PATH_GDA0001393939980000073
从后验信息RAM读取
Figure DEST_PATH_GDA0001393939980000074
按照公式(11)更新后的后验信息
Figure DEST_PATH_GDA0001393939980000075
存储到后验信息 RAM。
针对子矩阵I(τ1),后验信息第二次更新时:
Figure DEST_PATH_GDA0001393939980000076
从多对角线信息存储RAM读取
Figure DEST_PATH_GDA0001393939980000077
按照公式(12)更新后的后验信息
Figure DEST_PATH_GDA0001393939980000078
存储到多对角线信息存储RAM。当后验信息
Figure DEST_PATH_GDA0001393939980000079
的位宽超过变量信息位宽时,
Figure DEST_PATH_GDA00013939399800000710
按照变量信息位宽进行饱和处理,即当
Figure DEST_PATH_GDA00013939399800000711
超过变量信息位宽所能表示的最大整数时,将
Figure DEST_PATH_GDA00013939399800000712
赋值为变量信息位宽所能表示的最大整数;当
Figure DEST_PATH_GDA00013939399800000713
小于变量信息位宽所能表示的最小整数时,将
Figure DEST_PATH_GDA00013939399800000714
赋值为变量信息位宽所能表示的最小整数。
更新后验信息RAM:
Figure DEST_PATH_GDA00013939399800000715
从后验信息RAM读取
Figure DEST_PATH_GDA00013939399800000716
多对角线信息存储RAM读取
Figure DEST_PATH_GDA00013939399800000717
和Lu,按照公式(13) 更新后的后验信息
Figure DEST_PATH_GDA00013939399800000718
存储到后验信息RAM,用于硬判和后续迭代使用。
对后验信息RAM的存储空间大小而言,当子矩阵为多对角线结构时,设对角线个数为 K,变量节点更新如上述例子所示相应扩展;后验信息更新如上述例子所示相应扩展。更新后验信息RAM的公式(13)扩展为:
Figure DEST_PATH_GDA00013939399800000719
本发明实施例中,LDPC译码方法还包括利用校验矩阵存储单元:用于存储译码器所支持的不同码率下所有校验矩阵信息,可配置支持不同协议标准。
例如在ATSC3.0协议标准中,短码为16200,子矩阵大小为360×360,以并行度为360处理时双对角线结构的最大个数为9。如后验信息和变量节点信息均用11位来存储,则为了解决双对角线冲突的问题,现有方法是分别存储后验信息和变量节点信息,需要的存储空间大小为16200×11×2=356400比特。采用本发明提出的方案,采用后验信息 RAM和多对角线信息存储RAM的方式,仅需16200×11+360×(11+11)×9=249480 比特,相比较可知,本发明方案所占存储空间明显减少。
另外,关于校验节点更新后的信息R的RAM保存方式与传统处理方法一致,即仅存储符号位、最大值,最大值索引和次大值。
除了上述LDPC译码方法,本发明还提供了一种LDPC译码器,该LDPC译码器可以通用校验矩阵需兼容准循环矩阵和/或多对角线矩阵的情况,具体进行以下介绍。
本发明提出的通用LDPC译码器的结构示意,如图3所示,译码器包含以下模块:
1.主控模块:产生译码器的控制逻辑:包括从校验矩阵存储单元读取校验矩阵信息,更新到子矩阵控制字;控制地址生成器产生相应的地址,输出到校验信息RAM和后验信息 RAM;控制变量节点更新模块、校验节点更新模块和后验信息更新模块的工作;根据子矩阵控制字判断当前处理的子矩阵是否是双对角线结构,如是双对角线结构,更新多对角线信息存储RAM。判断译码器是否达到预设的最大迭代次数,控制判决模块输出硬判结果等。
2.校验矩阵存储单元:用于存储译码器所支持的不同码率下的所有校验矩阵信息。根据 LDPC校验矩阵属于稀疏矩阵特点,实现时仅需存储包含非0矩阵的信息。在ATSC3.0 中,码长分为16200和64800两种,对应的码率从2/15到13/15。因此支持ATSC3.0的校验矩阵存储模块需存储两种码长和对应码率的信息。为支持不同协议标准,该模块可配置。
3.后验信息RAM:用于存储后验信息的RAM,本实施例中采用一块RAM来实现。
4.多对角线信息存储RAM:用于存储处理多对角线所需的信息,前述公式(8)、(10)和 (12)计算结果。在ATSC3.0的LDPC译码器实现中,采用并行度为360,如后验信息和变量节点信息均用11位来存储,则该存储单元大小为71280比特。
5.校验信息RAM:用于存储校验信息的RAM,本实施例中采用一块RAM来实现。前述公式(5)的计算结果。
6.子矩阵控制字:用于指示当前处理的子矩阵是准循环结构还是双对角线结构。
7.变量节点更新模块:完成前述公式(4)运算。
8.校验节点更新模块:完成前述公式(5)运算。
9.后验信息更新模块:当子矩阵为准循环结构时,完成前述公式(6)运算;当子矩阵为双对角线结构时,完成前述公式(11)(12)(13)运算。
10.地址生成模块:在主控模块控制下,产生存取后验信息RAM,多对角线信息存储RAM 和校验信息RAM地址。
11.判决模块:完成前述公式(7)运算,判断硬判结果是否满足校验方程以及硬判结果输出。
上述LDPC译码器结构和实现方法可以兼容准循环矩阵和双对角矩阵并行处理冲突的问题,减小译码器所需的存储空间。
本发明提出的方法使用的多对角线信息存储RAM大小为:
并行度×(后验信息位宽+变量信息位宽)×Ndiag (14)
其中Ndiag表示以一定并行度进行层处理时子矩阵为双对角线结构的最大个数。显然Ndiag不会超过检验矩阵行重。该通用译码器结构较现有的译码器以更小的存储空间实现LDPC码的高效译码。
当校验矩阵中的子矩阵存在多对角线结构时,该结构仍然可以复用。
子矩阵Hij如下:
Figure DEST_PATH_GDA0001393939980000091
其中mi≠mj,对角线个数为K。
则本发明提出的方法使用的多对角线信息存储RAM大小为:
并行度×(后验信息位宽+变量信息位宽×(K-1))×Ndiag (15)
本发明提出的方法也适用于图4所示的子矩阵结构,即在图4中可以看出,其中若干列的列重为1,有的若干列的列重为2,并非每列列重数量相同,将校验矩阵分解为多个子矩阵进行并行更新运算时,存在有的子矩阵为对角线结构而有的子矩阵为非对角线结构的情况。
本技术领域中的普通技术人员应当认识到,以上的说明书仅是本发明众多实施例中的一种或几种实施方式,而并非用对本发明的限定。任何对于以上所述实施例的均等变化、变型以及等同替代等技术方案,只要符合本发明的实质精神范围,都将落在本发明的权利要求书所保护的范围内。

Claims (8)

1.一种LDPC译码方法,利用校验矩阵进行校验更新,对变量信息更新得到中间变量结果,其特征在于:
当所述校验矩阵需兼容准循环矩阵和/或多对角线矩阵时,基于所述校验矩阵的并列度、多对角线的线数以及多对角线最大个数来设计用于存储所述中间变量结果的多对角线信息存储单元,
对校验矩阵采用准循环矩阵结构或多对角线矩阵结构进行判断,判定为多对角线矩阵结构时利用所述多对角线信息存储单元进行存储,
其中,所述多对角线最大个数表示以一定并行度对所述校验矩阵进行层处理时子矩阵为多对角线结构的最大个数,其中,所述多对角线信息存储单元的大小由以下方式确定:
并行度×(后验信息位宽+变量信息位宽×(K-1))×Ndiag
其中,并行度表示用于处理校验矩阵的子矩阵的大小;后验信息位宽表示为后验信息存储单元所需的预先设定宽度;变量信息位宽表示为变量信息存储单元所需的预先设定宽度;Ndiag表示以一定并行度进行层处理时子矩阵为多对角线结构的最大个数;K表示对角线个数,
其中还利用校验矩阵存储单元:用于存储译码器所支持的不同码率下所有校验矩阵信息,可配置支持不同协议标准。
2.如权利要求1所述的LDPC译码方法,其特征在于,
当判断用于处理校验矩阵的子矩阵为多对角线结构时,依据所判定出的多对角线结构的对角线个数对子矩阵进行重写;将变量节点更新的上一次迭代得到的后验信息作为输入值更新存储到多对角线信息存储单元。
3.如权利要求1所述的LDPC译码方法,其特征在于,
其中,校验矩阵中的多个子矩阵存在至少一个多对角线结构时,将校验矩阵相应分解为多个子矩阵用于进行相应的译码更新运算。
4.如权利要求3所述的LDPC译码方法,其特征在于,
其中,所述译码更新运算包含以下变量节点更新步骤:
利用所述多个子矩阵中的第一个单位阵进行变量节点更新,将得到的变量节点结果存储到后验信息存储单元;
后续每次更新中,利用所述多个子矩阵中的剩余个单位阵相应分别进行变量节点更新,将对应得到的变量节点结果存储到多对角线信息存储单元。
5.如权利要求4所述的LDPC译码方法,其特征在于,
其中,所述译码更新运算包含以下后验信息更新步骤:
从后验信息存储单元读取与所述第一个单位阵对应得到的变量节点更新结果,进行后验信息更新,将更新后的后验信息存储到后验信息存储单元;
后续每次更新中,从多对角线信息存储单元分别读取出与所述剩余个单位阵对应得到的变量节点更新结果,进行后验信息更新,将更新后的后验信息存储到多对角线信息存储单元。
6.如权利要求3所述的LDPC译码方法,其特征在于,
其中,将多个子矩阵分别译码更新运算所得到的后验信息进行运算,得到最终后验信息结果,用于后续处理。
7.如权利要求1所述的LDPC译码方法,其特征在于,
其中,支持ATSC3.0标准协议,校验矩阵存储模块需存储两种码长和对应码率的信息,码长分为16200和64800两种,对应的码率从2/15到13/15中任意一种均可。
8.如权利要求7所述的LDPC译码方法,其特征在于,
其中,在ATSC3.0的LDPC译码器实现中,采用并行度为360,后验节点信息和变量节点信息均设置为11位来存储,多对角线信息存储RAM的大小为71280比特。
CN201710312949.9A 2017-05-05 2017-05-05 Ldpc译码方法 Active CN108809327B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710312949.9A CN108809327B (zh) 2017-05-05 2017-05-05 Ldpc译码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710312949.9A CN108809327B (zh) 2017-05-05 2017-05-05 Ldpc译码方法

Publications (2)

Publication Number Publication Date
CN108809327A CN108809327A (zh) 2018-11-13
CN108809327B true CN108809327B (zh) 2022-01-28

Family

ID=64054904

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710312949.9A Active CN108809327B (zh) 2017-05-05 2017-05-05 Ldpc译码方法

Country Status (1)

Country Link
CN (1) CN108809327B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112152637B (zh) * 2020-09-10 2024-04-30 南京中科晶上通信技术有限公司 Dvb-s2 ldpc译码变量节点更新模块及其实现方法
CN112272029B (zh) * 2020-10-22 2024-04-09 西安空间无线电技术研究所 一种基于dvb-s2标准的ldpc译码器实现方法
CN117976021B (zh) * 2024-04-01 2024-06-11 陕西中安数联信息技术有限公司 多数据块联合ldpc编码的数据存储方法与***

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1819055A1 (en) * 2006-02-13 2007-08-15 Fujitsu Ltd. Multi-rate low density parity check (LDPC) decoder and decoding method
CN101689865A (zh) * 2007-07-04 2010-03-31 Nxp股份有限公司 置乱式ldpc解码
CN103618556A (zh) * 2013-12-11 2014-03-05 北京理工大学 基于rmp调度的部分并行qc-ldpc译码方法
CN105337618A (zh) * 2014-08-06 2016-02-17 上海明波通信技术股份有限公司 并行向下兼容的多模ira_ldpc译码器及其译码方法
CN106571829A (zh) * 2016-10-27 2017-04-19 西安空间无线电技术研究所 一种基于fpga的高速自适应dvb‑s2 ldpc译码器及译码方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8321746B2 (en) * 2009-07-30 2012-11-27 Lsi Corporation Systems and methods for quasi-cyclic LDPC code production and decoding

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1819055A1 (en) * 2006-02-13 2007-08-15 Fujitsu Ltd. Multi-rate low density parity check (LDPC) decoder and decoding method
CN101689865A (zh) * 2007-07-04 2010-03-31 Nxp股份有限公司 置乱式ldpc解码
CN103618556A (zh) * 2013-12-11 2014-03-05 北京理工大学 基于rmp调度的部分并行qc-ldpc译码方法
CN105337618A (zh) * 2014-08-06 2016-02-17 上海明波通信技术股份有限公司 并行向下兼容的多模ira_ldpc译码器及其译码方法
CN106571829A (zh) * 2016-10-27 2017-04-19 西安空间无线电技术研究所 一种基于fpga的高速自适应dvb‑s2 ldpc译码器及译码方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
多模LDPC译码器的设计与原型验证;段倩妮;《中国优秀硕士学位论文全文数据库 信息科技辑》;20170315;正文第6-49页,图3.2、3.7 *

Also Published As

Publication number Publication date
CN108809327A (zh) 2018-11-13

Similar Documents

Publication Publication Date Title
KR101789959B1 (ko) 구조적 ldpc의 인코딩 방법, 디코딩 방법, 인코딩 장치 및 디코딩 장치
US7373581B2 (en) Device, program, and method for decoding LDPC codes
JP5112468B2 (ja) 誤り検出訂正回路、メモリコントローラ、および半導体メモリ装置
US6961888B2 (en) Methods and apparatus for encoding LDPC codes
CA2798963C (en) Apparatus and method for layered decoding in a communication system using low-density partiy-check codes
US8869003B2 (en) Method, apparatus, computer program product and device providing semi-parallel low density parity check decoding using a block structured parity check matrix
WO2010073922A1 (ja) 誤り訂正符号化装置、復号装置、符号化方法、復号方法、及びそのプログラム
WO2004019268A1 (en) Methods and apparatus for encoding ldpc codes
CN108809327B (zh) Ldpc译码方法
WO2011109084A1 (en) Quasi-cyclic ldpc encoding and decoding for non-integer multiples of circulant size
US8145971B2 (en) Data processing systems and methods for processing digital data with low density parity check matrix
JP4819470B2 (ja) 復号装置および復号方法
US20110179337A1 (en) Memory utilization method for low density parity check code, low density parity check code decoding method and decoding apparatus thereof
CN108809324B (zh) Ldpc译码方法
CN108809325B (zh) Ldpc译码器
CN108809326B (zh) Ldpc译码器
US11075650B1 (en) Sub-matrix reduction for quasi-cyclic LDPC codes
CN112583420B (zh) 一种数据处理方法和译码器
US10727869B1 (en) Efficient method for packing low-density parity-check (LDPC) decode operations
Kakde et al. FPGA implementation of decoder architectures for high throughput irregular LDPC codes
EP2951926B1 (en) Ldpc code design and encoding apparatus for their application
EP3496277A1 (en) Parallel encoding method and system for protograph-based ldpc codes with hierarchical lifting stages
CN109936380B (zh) 无需后向迭代的qc-ldpc编码方法
CN109639288B (zh) 适用于qc-ldpc码的通用化译码方法及译码模块
CN110518918B (zh) 译码方法及译码器

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant