CN101615913B - Ldpc码的快速收敛译码方法 - Google Patents

Ldpc码的快速收敛译码方法 Download PDF

Info

Publication number
CN101615913B
CN101615913B CN2009100889895A CN200910088989A CN101615913B CN 101615913 B CN101615913 B CN 101615913B CN 2009100889895 A CN2009100889895 A CN 2009100889895A CN 200910088989 A CN200910088989 A CN 200910088989A CN 101615913 B CN101615913 B CN 101615913B
Authority
CN
China
Prior art keywords
llr
decoding
prime
node
variable node
Prior art date
Application number
CN2009100889895A
Other languages
English (en)
Other versions
CN101615913A (zh
Inventor
殷柳国
解进
葛宁
陆建华
Original Assignee
清华大学
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 清华大学 filed Critical 清华大学
Priority to CN2009100889895A priority Critical patent/CN101615913B/zh
Publication of CN101615913A publication Critical patent/CN101615913A/zh
Application granted granted Critical
Publication of CN101615913B publication Critical patent/CN101615913B/zh

Links

Abstract

LDPC码的快速收敛译码方法属于通信技术领域,其特征在于,迭代过程中外信息变得越来越可靠的特点,即LDPC码相邻两次迭代的外信息代表了变量节点的LLR值改变的方向,适当增加当前迭代中的外信息能够有效地加快迭代的收敛速度。从而,本方法可以获得比标准分层最小和译码方法更快的译码速度。同时,本方法还可推广到磁盘存储系统中去。

Description

LDPC码的快速收敛译码方法技术领域[0001] LDPC码的快速收敛译码方法属于通信信道译码技术领域,特别涉及采用前向差错 控制(FEC)技术用于数据传输及存贮时的一种采用低密度奇偶校验码(0^(:码)纠正信道 差错的有效而快速的译码方法。背景技术[0002] 数据在存贮以及传输过程中经常会引发各种差错。产生这种差错的原因有随机 噪声、解调过程中的同步丢失、无线传输中的多径衰落、磁性存储器中的磁道缺损等。这种 突发错误一般呈非周期性出现并且持续时间长短不定。由于这些差错的存在,大大限制了 特定带宽下的信息传输速率和特定面积下存储器的存储容量。特别是在无线多媒体传输系 统中,由于大量的数据要在带宽有限且受到各种突发严重干扰的信道中以很高的可靠性传 输,这一问题变得更加突出。[0003] 为了解决数据传输和存储中的可靠性问题,通常采用信道编码的方法。在当前已 有的信道编码方法中,新近提出的LDPC码具有最为强大的纠错能力,具有很强的应用前旦ο[0004] 采用LDPC码进行差错控制的译码方法为:[0005] 1. LDPC码的定义和参数:[0006] LDPC码是一种二进制分组码,这种码采用超稀疏矩阵作为校验矩阵。矩阵中每行 (每列)中非零元素的个数非常稀少,且位置呈随机分布。由于LDPC码是分组码,对于任 何合法的码字V,与校验矩阵H的乘积为零,即H · Vt = 0。为了描述译码算法方便,我们用 Tanner图来描述LDPC码。Tarmer图由两类节点组成,一类是变量节点,一类是校验节点。 每个变量节点对应于码字里面的一个比特,每个校验节点对应于校验矩阵H里面的一行。 变量节点与校验节点的连线对应于校验矩阵H里面的‘1’,如图1所示。在迭代译码过程 中,译码器利用校验节点和变量节点的约束关系进行迭代译码。在一次迭代过程中,首先利 用变量节点的约束关系进行译码,各变量节点的输入为接收序列对应的对数似然值(即各 个元符号取“1”的概率除以取“0”的概率再取自然对数所得的值)以及相关校验节点在上 一次迭代的输出;随后,变量节点的输出通过“连线”送到相应的校验节点,再利用校验节点 的约束关系进行译码。在这个过程中,一种节点的输出成为另外一种节点的输入,矩阵中非 零元素所对应的“连线”成为了这两种节点输入输出交换信息的“通道”。[0007] 2. LDPC 码的译码:[0008] LDPC码的译码充分应用了校验矩阵的超稀疏特性,通过变量节点和校验节点的约 束关系计算并输出外信息,并相互反馈,进行迭代译码。(外信息即所有同属于一个码字的 其它码元通过码字的约束关系而得到的关于某一个码元取值的信息,采用外信息交互是为 了避免迭代过程中出现正反馈。)当前,LDPC码的译码方法主要有两种译码流程(Decoding Schedule)。[0009]流程一是泛洪算法(Flooding Schedule)。[0010] 设为从校验节点j输出到变量节点i的外信息,Qij为从变量节点i到校验节 点j的外信息,泛洪算法的迭代过程包括如下步骤:[0011] 1)译码初始化:对于接收到的长度为N的实数序列氏(1 ( i彡N),对应的LDPC码 第i个码元的初始接收值被译码器解调成对数似然比的形式: [0012]

Figure CN101615913BD00041

[0013] 式中LLR表示取值为对数似然比,Q2为信道噪声的标准方差。同时,初始条件下 校验节点没有任何关于码字的信息,故设置校验节点j输出到变量节点i的外信息为:[0014] LLR(Aj) = 0 (2)[0015] 2)若所得到的序列的硬判决结果不为一个合法的码字(其中硬判决是指根据序 列各个符号的对数似然值决定各个码元符号的比特取值,对数似然值为正数则码元取符号 “ 1 ”,为负数则码元取符号“0”),执行一次译码的迭代过程为:[0016] a)变量节点的译码:在这种节点的约束关系下,输出与输入的关系为“和”的关 系,即变量节点i到校验节点j的外信息输出为:

Figure CN101615913BD00042

[0018] 式中Col [i]表示校验矩阵H第i列非零元素的位置集合。[0019] b)校验节点的译码:在校验节点的约束关系下,输出与输入的关系为某种“最小” 的关系,即校验节点j输出到变量节点i的外信息为:[0020]

Figure CN101615913BD00043

[0021] [0022]

Figure CN101615913BD00044

[0023] 式中R0W[j]表示校验矩阵H第j行非零元素的位置集合。[0024] 根据校验节点的输出与输入的关系,译码算法可以分为和积译码算法和最小和译 码算法。这里采用的偏移最小和译码算法,是最小和算法的一种改进,其中β e (0,i)o[0025] 3)迭代后所得的第i个变量节点的译码结果为该节点所有输入的和:[0026] LLR^r) = YjLLR^rlf)+ LLRiRl) (5)f^Col[i][0027] 对所得到的译码结果进行如下的硬判决,然后转移到第二步。其中第i个码元符 号的硬判决为:[0028]

Figure CN101615913BD00045

[0029] 4)如果需要进行下一个码字的译码,跳转到第一步;否则,结束译码。[0030] 流程二是分层算法(Layered Schedule) 0与泛洪算法不同,分层算法把校验矩阵 看成是一层层的校验方程。泛红算法是在所有变量节点更新之后再更新所有校验节点,而 分层算法是在更新当前层的校验节点之后立即更新与当前层相连的变量节点。分层算法的 迭代过程包括如下步骤:[0031] 1)译码开始,把接收序列作为软判决的初始值,把校验节点传输给变量节点的外 信息设为0.,如下所示:

Figure CN101615913BD00051

[0033]及

Figure CN101615913BD00052

2)迭代译码。对于第k次迭代,执行如下迭代过程: 设M是校验矩阵的行数,对于每一个0 < m < M, a)计算当前层变量节点的外信息:[0038] LLR{qi}) = LLRivi) - LLR{ri}) (9)[0039] b)校验节点的译码:校验节点j输出到变量节点i的外信息为: LLRirij)= Π sign{LLR{qrj)r

Figure CN101615913BD00053

c)更新当前层的变量节点的软信息:M,:004:)

Figure CN101615913BD00054

(11)[0046] 3)判断迭代次数是否达到预定值,或者硬判决译码序列是否为一个合法码序列。[0047] 若是,输出硬判决序列,并器输出相应的变量节点所对应码元的硬判决结果为 1 if LLR(V1) > 00 IfLLR(Vi)KO (12)若否,则回到步骤2,迭代次数加1。分层算法相对于泛洪算法有两个优点,一是只需要约一半的迭代时间,二是减少 了存储空间。虽然分层算法已经减少了近一半的迭代次数,但是对于长码而言,尤其是低码 率的情况,仍然需要很多次的迭代,导致译码延时很大。本发明对分层算法进行了改进,使 收敛速度加快,从而减少了译码延时。发明内容[0051] LDPC码的快速收敛译码方法,含有低密度奇偶检验码的分层最小和译码方法,它 的输入为接收序列的对数似然值并在对数空间下通过利用比特节点和校验接点的约束关 系进行迭代译码,其特征在于,它利用校验节点传输给变量节点的信息随着迭代进行变得 更准确的特性,在迭代译码中,扩大了当前软信息中校验节点信息的比重,从而加快了迭代 过程的收敛速度。本发明的特征在于,所述方法是在译码器中依次按以下步骤实现的:[0052] 步骤(1),译码初始化:[0053] 对于接收到的长度为N的实数序列氏(1 ( i < N),所述译码器的变量节点的初始 值iZi?伐)设置成对应的LDPC码第i个码元的对数似然比,

Figure CN101615913BD00061

[0055] σ 2为信道噪声标准方差,[0056] 同时,设置校验节点j输出到变量节点i的外信息为LLR,[0057] LLR(Aj) = 0 ; (14)[0058] 步骤0),迭代译码:当第k-Ι次迭代时所得到的所述序列氏的硬判决结果不为一 个合法的码字时,执行第k次迭代,设M是校验矩阵的行数,对于每一行m,0 < m < M,执行 以下迭代步骤:[0059] 步骤(2. 1),计算所述变量节点i的外信息LLR(Ciij):[0060]

Figure CN101615913BD00062

[0061] 式中Hi?伐)是变量节点i的软信息,LLR' (riJ)是第k_l次迭代的LLR(Aj)值,[0062] 步骤(2. 2),更新所述校验节点j输出到所述变量节点i的外信息LLR(ru),采用 最小和译码算法时,

Figure CN101615913BD00063

)[0065]式中,β e (0,1),[0066] 步骤(2. 3),更新所述变量节点i的软信息为UA(A):[0067] LLRivj) = LLRiqij) + LLRirjj ) + ω· (LLRQrjj)-LLRXrjj)) (17)[0068] 式中,ω在(0,1)取值;[0069] 步骤(3),判断迭代次数是否达到预定值K,或者判断硬判决译码序列是否为一个 合法码序列,[0070] 若是,输出硬判决序列并执行下一步骤。译码器输出相应的变量节点所对应码元 的硬判决结果为[0071]^ _Jl 如 U聊)>0,|0 如 LL啊 < 0, (18)[0072] 并执行下一步骤,[0073] 若不是,则回到步骤O),迭代次数加1,执行第k+Ι次迭代;[0074] 步骤,若有译码矢量需要译码,则回到步骤(1),若没有,则结束译码过程。[0075] 本发明的效果是,能够有效加快LDPC码译码的收敛速度。附图说明[0076] 图 1. LDPC 码的 Tanner 图。[0077] 图2.本发明所述译码方法的程序流程图。[0078] 图3.应用本发明纠正传输差错的通信系统框图。具体实施方式[0079] 本发明提出的一种改进的分层最小和译码方法,如图2所示,则本发明提出的译 码方法包括以下步骤:[0080] 译码开始时,接收序列输入到变量节点,译码器进行初始化,译码迭代次数置为0。 然后,译码器计算各阶变量节点的硬判决输出,送到节点码字检测节点,检测硬判决序列是 否为一个合法码字。如果所得的硬判决系列为一个合法的码序列,则译码结束,输出相应的 硬判决结果;否则,执行一次迭代过程:对于每一层校验节点,利用标准的分层最小和算法 来更新变量节点的LLR,然后对当前层的软判决,适当放大LDPC码当前层迭代的外信息,得 到新的当前层的软判决。完成这些运算后,迭代次数加1。在下一次迭代开始时,各阶变量 节点再次计算硬判决输出,随后由码字检测节点判决是否为一个合法码序列。如果是一个 合法码字,则结束译码迭代,输出相应的硬判决序列;否则,执行一次迭代过程。完成这些运 算以后,迭代次数加1,转入下一轮迭代。[0081] 本发明所述方法的原理及算法描述如下:[0082] 1)初始化软判决值为:2[0083] LLRd) = —1 ^ i ^ N (19)σ[0084]及[0085] LLR(Aj) = 0 (20)[0086] 2)迭代译码。对于第k次迭代,执行如下迭代过程:[0087] 设M是校验矩阵的行数,对于每一个0 < m < M,[0088] a)计算当前层变量节点的外信息:[0089] LLRiqij) = LLRiyi) - LLR\ri}) (21)[0090] b)校验节点的译码:校验节点j输出到变量节点i的外信息为: LLRirij ) = Π sign(LLR(qrj)) *[0091][0092][0093][0094]

Figure CN101615913BD00071

(22)c)更新当前层的变量节点的软信息:[0095] LLR(^1) = LLR(Clij) + LLR(Tfj) + ω尔(LLR(Tij) - LLlV (Tfj)) (23)[0096] 式中LLR' (riJ)是第k-Ι次迭代的LLIUrij)值,ω是一个0到1之间的数。[0097] 3)检验停止准则。如果迭代次数达到预定值,或者硬判决译码序列是一个合法码 序列,结束译码并输出硬判决序列。[0098] 此时,译码器输出相应的变量节点所对应码元的硬判决结果为 [0099]

Figure CN101615913BD00072

(24) [0100] 实施例:本实施例为在清华同方PC机上用软件实现本发明提出的纠错译码方法, 如图2所示,包括以下步骤:[0101] 译码开始时,译码迭代次数置为0,并按照(13) (14)式进行初始化。然后,译码器转移到2c,执行一次迭代过程:每层的变量节点根据(1¾式计算各节点的输出,通过节点 间连线送到相应的校验节点作为输入;校验节点再按照(16)式计算反馈给各变量节点的 外信息,当前层的变量节点再按照(17)式更新软信息值。完成这些运算后,转移到步骤2f。 如果所有层都被更新完,则迭代次数加1,否则继续下一层的更新。随后在步骤池,判断是 否为合法码字。如果不是,则跳转到2c,转入下一轮迭代;否则,转移到步骤2i,判断是否小 于迭代最大允许值:如果是,则下一步跳回到步骤2c ;否则下一步转移到步骤2j。步骤2j 输出译码结果。然后跳到步骤业,判断是否结束译码过程:如果是,则译码结束,否则,重新 开始下一个码矢量的译码。[0102] 作为一个例子,表1列出了 DVB-S2标准中的LDPC码在BIAWGN信道下采用标准分 层最小和算法以及本发明的算法所得到的译码迭代次数。由表1可见,本发明的算法所得 的迭代次数要比标准算法少一些。在高信噪比情况下,平均迭代次数减少8. 4% -19. 7%, 在低信噪比情况下,平均迭代次数要减少30% -62. 6%。[0103] 表1.两种译码算法在BIAWGN信道下的性能[0104]

Figure CN101615913BD00081

[0105] 可见,采用本方法能够以较少的迭代次数得到很好的纠错性能,大大提高了 LDPC 码的实用性。[0106] 参照图3,采用本发明的方法纠正传输差错的通信系统包括一个产生数字信息流 的信源31,LDPC编码器33,传输信道35,以及如图3所示的纠正传输错误译码器37。在本 例中,信源31产生的携带信息的数据符号流32被送往LDPC码编码器33,LDPC码编码器33 对信息进行信道编码。编码后的LDPC码流34在传输信道35传输过程中受到干扰而产生 差错,包含传输差错的码流36被纠正传输错误的LDPC码译码器37所接收。经过LDPC码 译码器37采用本发明的方法完成纠错译码,输出的码流38为正确的数字信息流。[0107] 应当指出,本发明方法的应用还可以推广到磁存储系统中去。[0108] 本发明的效果是,通过利用LDPC码迭代过程中外信息变得越来越可靠的特点,即 LDPC码相邻两次迭代的外信息代表了变量节点的LLR值改变的方向,适当增加当前迭代中 的外信息能够有效地加快迭代的收敛速度,从而有效地减少了迭代次数。因此,对于LDPC 码的译码,本方法明显优于其它的方法。

Claims (1)

1. LDPC码的快速收敛译码方法,其特征在于,所述方法是在译码器中依次按以下步骤 实现的:步骤(1),译码初始化:对于接收到的长度为N的实数序列氏,1 < i < N,所述译码器的变量节点的初始值 iZi?伐)设置成对应的LDPC码第i个码元的对数似然比, 2LLR(V1) = -^,02为信道噪声标准方差,同时,设置校验节点j输出到变量节点iCT的外信息为
Figure CN101615913BC00021
步骤O),迭代译码:当第k-Ι次迭代时所得到的所述序列^的硬判决结果不为一个合 法的码字时,执行第k次迭代,设M是校验矩阵的行数,对于每一行m,0 < m < M,执行以下 迭代步骤:步骤(2. 1),计算所述变量节点i的外信息LLR(qij): LLRiqij) = LLRivi) - LLR\ri})式中ZZi?伐)是变量节点i的软信息,LLR' (riJ)是第k-Ι次迭代的LLR值, 步骤(2. 2),更新所述校验节点j输出到所述变量节点i的外信息LLR(ru),采用最小 和译码算法时,
Figure CN101615913BC00022
式中,β e (0,1),步骤(2. 3),更新所述变量节点i的软信息为Ui?伐):
Figure CN101615913BC00023
式中,ω在(0,1)取值;步骤(3),判断迭代次数是否达到预定值K,或者判断硬判决译码序列是否为一个合法 码序列,若是,输出硬判决序列并执行下一步骤,译码器输出相应的变量节点所对应码元的硬 判决结果为
Figure CN101615913BC00024
并执行下一步骤,若不是,则回到步骤O),迭代次数加1,执行第k+i次迭代;步骤G),若有译码矢量需要译码,则回到步骤(1),若没有,则结束译码过程。
CN2009100889895A 2009-07-17 2009-07-17 Ldpc码的快速收敛译码方法 CN101615913B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009100889895A CN101615913B (zh) 2009-07-17 2009-07-17 Ldpc码的快速收敛译码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100889895A CN101615913B (zh) 2009-07-17 2009-07-17 Ldpc码的快速收敛译码方法

Publications (2)

Publication Number Publication Date
CN101615913A CN101615913A (zh) 2009-12-30
CN101615913B true CN101615913B (zh) 2011-04-27

Family

ID=41495373

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100889895A CN101615913B (zh) 2009-07-17 2009-07-17 Ldpc码的快速收敛译码方法

Country Status (1)

Country Link
CN (1) CN101615913B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8549387B2 (en) * 2010-11-04 2013-10-01 Himax Media Solutions, Inc. System and method of decoding LDPC code blocks
JP2012151676A (ja) * 2011-01-19 2012-08-09 Jvc Kenwood Corp 復号装置および復号方法
CN104092468B (zh) * 2014-07-07 2017-02-08 西安电子科技大学 基于加速交替方向乘子法的ldpc码线性规划译码方法
CN105790774B (zh) * 2016-02-25 2019-07-19 北京邮电大学 一种ldpc译码方法及装置
CN106849959B (zh) * 2016-12-30 2020-08-11 深圳忆联信息系统有限公司 数据处理方法及译码器
CN106877880A (zh) * 2016-12-30 2017-06-20 北京联想核芯科技有限公司 数据处理方法及译码器
CN111865335A (zh) * 2020-09-24 2020-10-30 浙江三维通信科技有限公司 一种分组纠错码的译码方法、装置、存储介质和电子装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006115164A1 (ja) * 2005-04-25 2006-11-02 Sony Corporation 復号装置および復号方法
CN1859013A (zh) * 2006-06-09 2006-11-08 东南大学 低密度奇偶校验码迭代排序统计译码方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006115164A1 (ja) * 2005-04-25 2006-11-02 Sony Corporation 復号装置および復号方法
CN1859013A (zh) * 2006-06-09 2006-11-08 东南大学 低密度奇偶校验码迭代排序统计译码方法

Also Published As

Publication number Publication date
CN101615913A (zh) 2009-12-30

Similar Documents

Publication Publication Date Title
KR101758737B1 (ko) 검사-비균일 비-체계적 ira 코드들의 인코딩 및 디코딩을 위한 시스템 및 방법
US8495448B2 (en) Header encoding/decoding
CN102292917B (zh) 利用二元删除替代信道在awgn信道条件下将比特交织器适配于ldpc码和调制的方法和装置
US7653859B2 (en) System, apparatus and method for transmitting and receiving data coded by low density parity check code having variable coding rate
EP1525664B9 (en) Method and system for memory management in low density parity check (ldpc) decoders
US8010869B2 (en) Method and device for controlling the decoding of a LDPC encoded codeword, in particular for DVB-S2 LDPC encoded codewords
CN1836394B (zh) 在移动通信系统中编码/解码分块低密度奇偶校验码的装置和方法
EP2372919B1 (en) Rate compatible low-density parity-check (LDPC) codes for H-ARQ systems
Shokrollahi et al. Design of efficient erasure codes with differential evolution
US7729437B2 (en) Method and apparatus for space-time coding using lifting low density parity check codes in a wireless communication system
RU2354045C2 (ru) Устройство и способ для кодирования и декодирования блочных кодов с низкой плотностью контроля по четности с переменной скоростью кодирования
EP1626505B1 (en) Apparatus and method for encoding and decoding a block low density parity check code
Nguyen et al. Systematic Luby transform codes and their soft decoding
KR100929079B1 (ko) 저밀도 패리티 검사 부호를 사용하는 통신 시스템의 복호 장치 및 방법
JP4971144B2 (ja) ファイルダウンロードおよびストリーミングのシステム
Saber et al. An incremental redundancy hybrid ARQ scheme via puncturing and extending of polar codes
CN110545110B (zh) 级联极化编码和滑动窗口极化编码
Guo et al. Multi-CRC polar codes and their applications
CN101103533B (zh) 编码方法
EP1550254B1 (en) Transmission method and apparatus
CN100539446C (zh) 提早终止迭代的涡轮解码器
CN101785189B (zh) 编码装置和解码装置
EP1868294B1 (en) Apparatus and method of encoding/decoding block low density parity check codes in a communication system
US7516389B2 (en) Concatenated iterative and algebraic coding
Wang et al. Symbol-level synchronization and LDPC code design for insertion/deletion channels

Legal Events

Date Code Title Description
PB01 Publication
C06 Publication
SE01 Entry into force of request for substantive examination
C10 Entry into substantive examination
GR01 Patent grant
C14 Grant of patent or utility model
ASS Succession or assignment of patent right

Owner name: SHENZHEN INSTITUTE OF STINGHUA UNIVERSITY

Free format text: FORMER OWNER: TSINGHUA UNIVERSITY

Effective date: 20121024

TR01 Transfer of patent right

Effective date of registration: 20121024

Address after: 518057 Nanshan District science and Technology Park, Guangdong, Shenzhen, Tsinghua University, Shenzhen, A301

Patentee after: Shenzhen Institute of Stinghua University

Address before: 100084 Beijing 100084-82 mailbox

Patentee before: Tsinghua University

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 100084 HAIDIAN, BEIJING TO: 518057 SHENZHEN, GUANGDONG PROVINCE