低延迟LDPC译码器及其译码方法技术

技术编号:39425680 阅读:11 留言:0更新日期:2023-11-19 16:12
低延迟LDPC译码器及其译码方法,本申请涉及低密度奇偶校验码(Low Dens i ty Par ity Check Code,LDPC)译码方法,包括:将第一变量节点存储器存储的变量节点传输给计算单元以生成所述变量节点的新值;将第二变量节点存储器存储的变量节点传输给校验单元以验证所述变量节点构成LDPC码字的合法性;若构成的LDPC码字合法,则结束迭代译码;若构成的LDPC码字不合法,则通过计算单元生成的变量节点新值更新第一变量节点存储器和第二变量节点存储器,以及在更新第一变量阶段和第二变量节点存储器,与从第一变量节点存储器读出下一轮迭代译码的变量节点的过程同时进行,从而缩短了LDPC译码的延迟。译码的延迟。译码的延迟。

【技术实现步骤摘要】
低延迟LDPC译码器及其译码方法


[0001]本申请涉及低密度奇偶校验码(Low Density Parity Check Code,LDPC)译码方法,更具体地,本专利技术涉及对基于最小和算法的LDPC译码过程的优化。

技术介绍

[0002]LDPC码是一种纠错编码,与其他纠错编码相比,在相同的码率下,LDPC码具有纠错能力强、收敛速度快的特点,因此是现阶段SSD(固态驱动器,Solid State Drive)控制器领域最佳的纠错编码。
[0003]LDPC码是一种二进制分组码,采用超稀疏矩阵作为校验矩阵。校验矩阵中每行(每列)中非零元素稀少。对于任何合法的码字V,码字V与校验矩阵H的乘积为零。现有技术中用Tanner图描述LDPC码。Tanner图由两类节点组成,一类是变量节点,一类是校验节点。每个变量节点对应码字的一个比特,每个校验节点对应校验矩阵H的一行。变量节点与校验节点的连线对应校验矩阵里的“1”。图1是LDPC码的Tanner图。在迭代译码过程中,译码器利用校验节点和变量节点的约束关系进行迭代译码。各变量节点的输入为接收序列对应的对数似然比,以及校验节点上一次迭代的输出;随后,变量节点的输出通过“连线”送到相应的校验节点,在利用校验节点的约束关系进行译码。在这个过程中,一种节点的输出成为另一种节点的输入,矩阵中非零元素所对应的“连线”成为这两种节点交换信息的通道。在中国专利申请2016108617916(专利名称为LDPC译码方法与装置)中提供了LDPC码的一种译码方法,将其全文通过引用并入本申请。
[0004]常见的LDPC译码算法包括:置信传播算法(Belief Propagation,BP),最小和算法(Min

Sum)和比特反转算法(Bit Flip)等。而最小和算法和基于最小和算法的改进算法由于其硬件时间简单,且具有足够好的纠错性能在SSD控制器领域被广泛采用。
[0005]最小和算法包括多个主要步骤。首先初始化变量节点与校验节点,变量节点的初始值是,例如,从存储介质读出的值,校验节点的初始值根据所使用的校验矩阵得到。在LDPC迭代译码的一轮中,更新校验节点与变量节点。更新后的变量节点与校验节点将在下一轮译码中被使用。还对变量节点执行校验,以识别其是否是正确的码字。若得到了正确的码字,停止译码过程。
[0006]AN

MS(Adaptive Normalize Min

Sum Algorithm)算法是一种基于最小和算法改进的迭代译码算法。它是一种纠错能力强,且比较易于硬件实现的LDPC译码算法。AN

MS算法的核心译码过程包括两部分:变量节点处理与校验节点处理。在一次迭代中需要完成变量节点处理与校验节点处理。如果迭代后译码结果正确则完成译码,否则开始下一次迭代,直到译码成功或者超过预设的最大迭代次数。
[0007]AN

MS算法的详细介绍参见“Wu X,Song Y,Cui L,et al.Adaptive

normalized min

sum algorithm[C],2010 2nd International Conference on Future Computer and Communication.2010.”,将其全文通过引用并入本申请。
[0008]LDPC译码器实施LDPC译码算法。图2展示了现有技术的LDPC译码器的框图。
[0009]控制器210控制LDPC译码流程,控制译码器各部件之间的协作,包括校验矩阵的加载,各存储单元的数据写入与读出,控制迭代译码过程,识别译码终止条件等。
[0010]计算单元220用于处理译码过程中的计算,根据译码算法指示的操作,计算变量节点与校验节点的新值。计算单元220有多个,以并行地对计算。变量节点存储器230,用于存储变量节点信息;校验节点存储器240,用于存储校验节点,临时变量存储器250用于存储计算单元计算过程中产生的临时信息,例如符号、最小值等。校验单元260用于校验变量节点是否是合法的LDPC码字。
[0011]图3展示了现有技术的LDPC译码器的译码流程。
[0012]开始对码字的译码后,在控制器210的指示下,用待译码的码字初始化变量节点存储器230,用校验矩阵初始化校验节点存储器240(310)。从变量节点存储器230获取变量节点(320),校验单元260检查获取的变量节点是否构成合法的LDPC码字(330)。如果变量节点构成合法LDPC码字(340),则译码结束,输出变量节点作为LDPC译码器的译码结果(360)。若变量节点尚不构成合法LDPC码字(340),计算单元220将变量节点与校验节点提供给计算单元220进行一次迭代译码(350)。在一次迭代译码过程中,计算单元220生成变量节点与校验节点的新值,新值被用来更新变量节点存储器与校验节点存储器。以及校验单元260再次获取变量节点存储器中的变量节点,并进行校验。
[0013]图4展示了现有技术的LDPC译码器的译码过程的时序图。
[0014]图4中,向右的方向为时间流逝方向。图4中以校验矩阵有2行为例进行描述。在一次迭代译码过程中,对于校验矩阵的每行,从变量节点存储器230获取同校验矩阵的行对应的变量节点,由计算单元220进行计算。图4是围绕对变量节点存储器230的访问而展示的。
[0015]在初始化阶段(也参看图3,310),将变量节点存储到变量节点存储器230(410)。接下来,从变量节点存储器230读出变量节点(420),提供给校验单元260。可选地,从变量节点存储器230传输变量节点给校验单元260(420)发生于变量节点存储器230初始化完成之前,以缩短LDPC译码的延迟。例如,变量节点包括4096个,在变量节点的部分被存储到变量节点存储器230后,即启动从变量节点存储器230到校验单元260的数据传输,以传输已被写入到变量节点存储器230的部分变量节点。
[0016]校验单元260对变量节点进行校验(422),响应于校验结果(失败),再次从变量节点存储器230读出变量节点,将同校验矩阵的第一行对应的变量节点传输给计算单元220(430)。计算单元生成更新后的同校验矩阵的第一行对应的变量节点,并写回到变量节点存储器230(432)。从而将更新后的变量节点写入变量节点存储器230的过程(432)发生在将同校验矩阵的变量节点传输给计算单元220(430)之后。
[0017]将同校验矩阵的第一行对应的变量节点传输给计算单元220(430)后,还将同校验矩阵的第二行对应的变量节点传输给计算单元220(440),计算单元220生成更新后的同校验矩阵的第二行对应的变量节点,并写回到变量节点存储器230(442)。至此第一次迭代译码完成。
[0018]接下来将变量节点传输给校验单元260(450),以识别变量节点是否构成了合法的LDPC码本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种LDPC译码方法,其特征在于,包括:将第一变量节点存储器存储的变量节点传输给计算单元以生成所述变量节点的新值;将第二变量节点存储器存储的变量节点传输给校验单元以验证所述变量节点构成LDPC码字的合法性;其中,所述第二变量节点存储器与所述第一变量节点存储器所存储的变量节点相同;若构成的LDPC码字合法,则结束迭代译码;若构成的LDPC码字不合法,则通过计算单元生成的变量节点新值更新第一变量节点存储器和第二变量节点存储器,以及利用更新后的第一变量节点存储器和第二变量节点存储器进行下一轮迭代译码;在通过计算单元生成的变量节点新值更新第一变量节点存储器和第二变量节点存储器的同时,从第一变量节点存储器读出变量节点传输给计算单元。2.一种LDPC译码器,其特征在于,包括:第一变量节点存储器、第二变量节点存储器、计算单元、校验单元和控制器;所述控制器指示从第一变量节点存储器获取变量节点传输给计算单元以生成所述变量节点的新值,并且指示从第二变量节点存储器获取变量节点传输给校验单元以检查所述变量节点构成LDPC码字的合法性;其中,所述第二变量节点存储器与所述第一变量节点存储器所存储的变量节点相同;若构成的LDPC码字合法,控制器则指示迭代译码结束;若构成的LDPC码字不合法,控制器则指示计算单元将生成变量节点新值写入第一变量节点存储器和第二变量节点存储器,以及利用更新后的第一变量节点存储器和第二变量节点存储器进行下一轮迭代译码;在通过计算单元生成的变量节点新值更新第一变量节点存储器和第二变量节点存储器的同时,从第一变量节点存储器读出变量节点传输给计算单元。3.根据权利要求2所述的LDPC译码器,其特征在于,其中,控制器指示从第一变量节点存储器存储获取变量节点传输给计算...

【专利技术属性】
技术研发人员:高百通
申请(专利权)人:北京忆芯科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1