System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 低密度奇偶校检码的译码方法、存储介质和装置制造方法及图纸_技高网

低密度奇偶校检码的译码方法、存储介质和装置制造方法及图纸

技术编号:40275913 阅读:10 留言:0更新日期:2024-02-02 23:02
本发明专利技术涉及一种低密度奇偶校验码的译码方法、存储介质及装置。该方法包含:在使用顺序性选择策略的观察期间后,判断比特翻转算法是否在译码码字时进入陷阱状态;以及当比特翻转算法进入陷阱状态时,改为非顺序性选择策略,并且在非顺序性选择策略下对码字执行比特翻转算法。通过非顺序性选择策略的使用,可让比特翻转算法跳出陷阱状态。

【技术实现步骤摘要】

所属人员知道可使用熟知的奇偶校验矩阵和高效算法来产生 ldpc码,例如二阶段编码(2-stage encoding)等。nand闪存控制器137可包含ldpc译码器(ldpc decoder)138,用于校验通过闪存接口139从闪存模块150被读出的码字(codeword,包含使用者数据和ldpc码)并判断码字中是否包含错误比特。一旦发现码字中存在错误比特,ldpc译码器138尝试恢复出正确的码字,并且从码字中获取使用者数据。如果经过预定数目的尝试,还没有办法恢复出正确的码字,则ldpc译码器138判定此码字为无法修复错误的码字(uncorrectable codeword)。关于ldpc 译码,参考图3所示的示例(n=3,k=6)ldpc码。方块33#0至33#5代表变化节点(variable nodes),方块31#0至31#2代表校验节点(check nodes)。变化节点33#0至33#5中的比特形成码字,由使用者数据和ldpc码组成,其中的比特必须满足图形限制(graphicalconstrains)。详细来说,所有连接到一个变化节点的线具有相同的值,并且所有连接到一个校验节点的加总必须除以二后的余数为0(也就是说,其加总起来为偶数,或者具有偶数个奇数值)。校验节点 31#0至31#2又可称为校验子(syndrome)。nand闪存控制器137还包含静态随机存取存储器(static random accessmemory,sram)140,用于存储译码过程中所需的数据。闪存接口139可存储从闪存模块150读取的码字(又可称为硬比特)和软比特在sram 140中的指定地址。每个硬比特可对应至少一个软比特,对应的软比特用于指出此硬比特的信心程度(likelihood of belief)。为了修正码字中的错误比特,sram 140 还需要配置空间来存储在译码过程中的更新后的变化节点以及其对应的软比特。类似地,每个变化节点可对应至少一个软比特,对应的软比特用于指出此变化节点的信心程度。参考图4所示的nand闪存控制器137的框图。详细来说,ldpc译码器 (ldpcdecoder)138包含两个重要的电路:校验节点计算电路(check-node calculationcircuit)418和变化节点计算电路(variable-node calculation circuit) 416。校验节点计算电路418对硬比特或者变化节点,以及奇偶校验矩阵执行模 2乘法以计算出校验子。变化节点计算电路416依据相应于硬比特或者变化节点的软比特,以及校验子执行已知的比特翻转算法(bit flipping algorithm)以产生新的变化节点,并且使用已知的公式来计算新的变化节点的软比特。sram 140中可配置局部431,用于存储硬比特和变化节点,以及配置局部433,用于存储硬比特和变化节点所对应的软比特。闪存接口139将从闪存模块150读取的码字(包含多个硬比特)写入局部431。在一些实施例中,闪存接口139可包含软比特计算电路(soft-bit calculation circuit),用于在从闪存模块150读取码字的时候,为码字中的每个硬比特计算软比特。并且将计算出来的软比特写入局部433。变化节点计算电路416分别将变化节点和其软比特分别写入局部 431和433。ldpc译码器138包含处理单元412,可使用多种方式实施,如使用通用硬件(例如,单一处理器、具有并行处理能力的多处理器、图形处理器或其他具有运算能力的处理器),并且在执行软件以及/或固件指令时,提供之后描述的功能,例如,在译码的过程中统合校验节点计算电路418和变化节点计算电路416的运行。所属人员可将处理单元412设置于ldpc译码器138之外,本专利技术并不因此受限。校验节点计算电路418用于依据局部431中存储的硬比特或者变化节点,以及奇偶校验矩阵来计算出校验子。校验子的产生可使用以下公式表示:pcmnx(n+m)⊙cw(n+m)x1=sydmx1其中,pcmnx(n+m)代表n列、(n+m)行奇偶校验矩阵,msg(n+m)x1代表码字的 (n+m)列、1行矩阵,sydmx1代表校验子的m列、1行矩阵,⊙代表模2乘法。举例如下:由于计算后的校验子为全“0”,码字中不包含错误比特。如果计算后的校验子不为全“0”,则码字中包含错误比特。校验节点计算电路418可输出硬比特或者变化节点,以及计算出的校验子至变化节点计算电路416。在一些实施例中,校验节点计算电路418可依据相应于硬比特或者变化节点的软比特计算校验子的可靠度(reliability of syndrome),并且将校验子及其可靠度一并传送到变化节点计算电路416。变化节点计算电路416用于依据从校验节点计算电路418输入的校验子判断是否需要修正码字。如果不需要(也就是校验子为全“0”),则变化节点计算电路416传送译码成功的信息给处理单元412。如果需要(也就是校验子不为全“0”),则变化节点计算电路416传送译码失败的信息给处理单元412,并且根据校验子、硬比特或者变化节点、相应于硬比特或者变化节点的软比特,执行熟知的比特翻转算法,用于将码字中可能出错的一个或者多个硬比特或者变化节点进行状态改变(也就是将“0b0”改变为“0b1”,或者将“0b1”改变为“0b0”)。变化节点计算电路416存储更新后的变化节点至sram 140中的局部431。接着,变化节点计算电路416依据更新后的变化节点使用熟知的公式来计算相应于更新后的变化节点的软比特,并且存储计算出的软比特至sram 140中的局部433。软比特可以是对数似然比(log-likelihood ratio,llr)、对数似然比的量化值(quantization of llr)等。一段码字(可包含从闪存模块150读取的硬比特,或者包含由变化节点计算电路416所产生的变化节点)可依据变化节点计算电路416的运算能力分成相同长度(例如16、32、64、128、256、512、736比特等)的多个块(chunks)。码字包含使用者数据和ldpc码,常见的码率(code rate)接近0.9。也就是说,使用者数据在整个码字中所占的比例接近90%。参考图5,举例来说,码字50可分成相同长度的块510、530、550和570,块570包含ldpc码575。虽然以下实施例以4块为例,所属人员可依据系统需要将一段码字分成超过1的任意数目的块。在先前的一些实施方式中,变化节点计算电路416 反复执行多次迭代的操作,在每次迭代中顺序性地为码字中的一个块执行比特翻转,而迭代的次数不能超过默认的阈值。例如,在每次迭代中,依序针对块 510、530、550和570执行比特翻转。然而,由于奇偶校验矩阵可能含有陷阱集(trapping set)而让比特翻转算法进入陷阱状态(trappingstate),使得在执行过最大允许次数的迭代之后,依然找不到可以让校验节点计算电路418产生校验子为全“0”的结果。为了避免进入陷阱状态,本专利技术实施例在ldpc译码方法中实施有别于如上所述的顺序性选择码字中的不同块的一种新的调度策略(novel sch本文档来自技高网...

【技术保护点】

1.一种低密度奇偶校验码的译码方法,由低密度奇偶校验译码器中的处理单元执行,其特征在于,所述低密度奇偶校验码的译码方法包括:

2.如权利要求1所述的低密度奇偶校验码的译码方法,其特征在于,所述观察期间包含至少三次使用所述顺序性选择策略来针对所述码字执行所述比特翻转算法的迭代。

3.如权利要求1所述的低密度奇偶校验码的译码方法,其特征在于,在所述观察期间的每个迭代中包含多次比特翻转程序,每次所述比特翻转程序包括:

4.如权利要求3所述的低密度奇偶校验码的译码方法,其特征在于,每次所述比特翻转程序中的所述第二临界值的计算步骤,包含:

5.如权利要求3所述的低密度奇偶校验码的译码方法,其特征在于,当在所述观察期间的多个所述迭代之间发现多个所述差值的相同变化模式时,判定所述比特翻转算法在译码码字时进入所述陷阱状态。

6.如权利要求3所述的低密度奇偶校验码的译码方法,其特征在于,所述非顺序性选择策略将前一个迭代中的第一个所述差值大于0的相应块从所述码字中移除而不处理。

7.如权利要求3所述的低密度奇偶校验码的译码方法,其特征在于,所述非顺序性选择策略依据前一个迭代中的所述差值由低至高安排所述码字中的相应块的顺序。

8.一种计算机可读取存储介质,用于存储能够被处理单元执行的程序代码,其特征在于,所述程序代码被所述处理单元执行时实现如权利要求1至7中任一项所述的低密度奇偶校验码的译码方法。

9.一种低密度奇偶校验码的译码装置,其特征在于,包括:

10.如权利要求9所述的低密度奇偶校验码的译码装置,其特征在于,所述观察期间包含至少三次使用所述顺序性选择策略来针对所述码字执行所述比特翻转算法的迭代。

11.如权利要求9所述的低密度奇偶校验码的译码装置,其特征在于,在所述观察期间的每个迭代中包含多次比特翻转程序,每次所述比特翻转程序包括:

12.如权利要求11所述的低密度奇偶校验码的译码装置,其特征在于,每次所述比特翻转程序中的所述第二临界值的计算操作,包括:

13.如权利要求11所述的低密度奇偶校验码的译码装置,其特征在于,当所述处理单元在所述观察期间的多个所述迭代之间发现多个所述差值的相同变化模式时,判定所述比特翻转算法在译码码字时进入所述陷阱状态。

14.如权利要求11所述的低密度奇偶校验码的译码装置,其特征在于,所述非顺序性选择策略将前一个迭代中的第一个所述差值大于0的相应块从所述码字中移除而不处理。

15.如权利要求11所述的低密度奇偶校验码的译码装置,其特征在于,所述非顺序性选择策略依据前一个迭代中的所述差值由低至高安排所述码字中的相应块的顺序。

...

【技术特征摘要】

1.一种低密度奇偶校验码的译码方法,由低密度奇偶校验译码器中的处理单元执行,其特征在于,所述低密度奇偶校验码的译码方法包括:

2.如权利要求1所述的低密度奇偶校验码的译码方法,其特征在于,所述观察期间包含至少三次使用所述顺序性选择策略来针对所述码字执行所述比特翻转算法的迭代。

3.如权利要求1所述的低密度奇偶校验码的译码方法,其特征在于,在所述观察期间的每个迭代中包含多次比特翻转程序,每次所述比特翻转程序包括:

4.如权利要求3所述的低密度奇偶校验码的译码方法,其特征在于,每次所述比特翻转程序中的所述第二临界值的计算步骤,包含:

5.如权利要求3所述的低密度奇偶校验码的译码方法,其特征在于,当在所述观察期间的多个所述迭代之间发现多个所述差值的相同变化模式时,判定所述比特翻转算法在译码码字时进入所述陷阱状态。

6.如权利要求3所述的低密度奇偶校验码的译码方法,其特征在于,所述非顺序性选择策略将前一个迭代中的第一个所述差值大于0的相应块从所述码字中移除而不处理。

7.如权利要求3所述的低密度奇偶校验码的译码方法,其特征在于,所述非顺序性选择策略依据前一个迭代中的所述差值由低至高安排所述码字中的相应块的顺序。

8.一种计算机可读取存储介质,用于存储能够被处理单元执行的程序代码,...

【专利技术属性】
技术研发人员:邓惇益
申请(专利权)人:慧荣科技股份有限公司
类型:发明
国别省市:

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

1