用于LDPC码的改进的最小和解码制造技术

技术编号:20750306 阅读:17 留言:0更新日期:2019-04-03 11:17
本发明专利技术描述了用于执行作为低密度奇偶校验(LDPC)码的迭代解码的一部分的校验节点更新(CNU)的技术。CNU使用最小和解码方法,其监视来自连接到校验节点的两个变量节点的消息中接收到的两个值是否相等,并且是否是校验节点从与其连接的其它变量节点接收的值之中的最小值。在检测到这种事件时,通过将最小值减小调整值来对最小值进行调整以生成调整后的最小值。该调整后的最小值近似于和积算法(SPA)解码方法会生成的最小值。调整后的最小值包括在从校验节点发送到变量节点的响应消息中。基于该调整后的最小值对与该变量节点相对应的位进行解码。

【技术实现步骤摘要】
用于LDPC码的改进的最小和解码相关申请的交叉引用本申请要求于2017年9月25日提交的申请号为62/562,901,名称为“用于LDPC码的最小和解码”的临时申请的优先权,该临时申请被转让给本申请的受让人,并且该临时申请的全部内容通过引用而明确地并入本文。
技术介绍
数据完整性是任何数据存储装置和数据传输的重要特征。为包括NAND闪速存储器装置的各种类型的数据存储装置推荐使用强大的错误校正码(ECC)。ECC也经常用于数据传输进程中。错误校正码(ECC)是指将冗余数据或奇偶校验数据添加到消息的代码,使得即使在传输进程期间或存储期间引入多个错误时,接收器也能够恢复该消息。通常,ECC能够校正多达正被使用的代码的容量的错误。低密度奇偶校验(LDPC)码是ECC的示例。通常,LDPC解码器使用迭代解码进程来对信息位进行解码。迭代解码消耗时间并且承担(levy)处理负担。在迭代和积算法(SPA)情况下的LDPC码显示出色的错误校正性能(例如,位错误率、代码失败率等)。然而,SPA的实施成本(例如,电路面积、功耗、处理周期、等待时间等)可能令人望而却步。对于低成本实施,使用迭代最小和(MS)解码器对LDPC码进行解码。虽然MS解码器具有较低的实施成本(例如,电路面积、功耗、处理周期、等待时间等),但与SPA相比,其导致性能退化(例如,位错误率、代码失败率等)。
技术实现思路
本专利技术描述了用于改进与最小和解码有关的LDPC解码的性能(例如,位错误率、代码失败率等),同时降低与和积算法(SPA)解码有关的实施成本(例如,电路面积、功耗、处理周期、等待时间等)的技术。更具体地,描述了用于在降低实施成本的同时提高性能的系统和方法。在示例中,系统执行涉及基于MS的解码方法并在LDPC解码器上实施的低密度奇偶校验(LDPC)方法。LDPC方法包括LDPC解码器的校验节点从LDPC解码器的第一变量节点接收第一值,其中第一值表示LDPC码字的第一位的位值的可靠性。第一变量节点对应于第一位,并且被连接到校验节点。该方法还包括由校验节点确定第一值等于由校验节点针对LDPC解码器的第二变量节点存储的最小值。第二变量节点对应于LDPC码字的第二位,并且连接到校验节点。该方法还包括:由校验节点响应于确定第一值等于最小值而通过根据调整值至少更新最小值来生成调整后的最小值。该方法还包括由校验节点向LDPC解码器的第三变量节点发送调整后的最小值。第三变量节点对应于LDPC码字的第三位,并且连接到校验节点。第三位基于调整后的最小值进行解码。在示例中,LDPC解码器为软输入解码器。调整值从0.6至0.9的范围内进行选择。例如,将调整值设置为0.75。在另一示例中,LDPC解码器为硬输入解码器。将调整值设置为整数。例如,将整数设置为一。在又一示例中,LDPC解码器使用迭代LDPC解码。调整值基于迭代LDPC解码的迭代次数而改变。例如,调整值随着迭代次数的增加而增加。附图说明通过参考以下附图可理解各个实施例的本质和优点。在附图中,相似的部件或特征可具有相同的参考标记。进一步地,可通过在参考标记后面加上短划线和区分相似部件的第二标记来区分相同类型的各个部件。如果在说明书中仅使用了第一参考标记,则不管第二参考标记如何,描述适于具有相同第一参考标记的任何一个相似部件。图1示出了根据本公开的特定实施例的错误校正系统的示例性高级框图。图2A和图2B示出了根据本公开的特定实施例的示例性奇偶校验矩阵和表示奇偶校验矩阵的示例图。图3示出了现有技术中可用的最小和(MS)与和积算法(SPA)解码中的示例性校验节点更新(CNU)。图4示出了根据本公开的特定实施例的修改的最小和(MS)解码中的示例性校验节点更新(CNU)。图5示出了根据本公开的特定实施例的用于使用修改的最小和(MS)解码作为用于对LDPC码字进行解码的校验节点更新(CNU)的一部分的示例性流程。图6示出了根据本公开的特定实施例的基于对使用最小和解码的校验节点更新和使用和积算法解码的校验节点更新进行模拟,来定义调整值的示例性流程600。图7示出了根据本公开的特定实施例的使用最小和解码与和积算法(SPA)解码的示例性校验节点更新的模拟。图8示出了根据本公开的特定实施例的使用典型最小和解码的CNU与使用修改的最小和解码的CNU之间的性能比较的示例。图9描述了根据本公开的特定实施例的可使用的系统的一个可能的实施。具体实施方式本公开的实施例涉及改进与最小和(MS)解码有关的LDPC解码的性能(例如,位错误率、代码失败率等),同时描述了降低与和积算法(SPA)解码有关的实施成本(例如,电路面积、功耗、处理周期、等待时间等)。换言之,鉴于现有方案实施MS解码或SPA解码时在性能和实施成本之间进行折衷,本文的实施例避免了这种折衷。相反地,两种解码方法中最好的方法成为可能:以低成本实施改进性能。这转换成LDPC解码系统,其在实现类似于SPA解码器的位错误率和代码失败率的同时,具有类似于MS解码器的较小的电路面积、较低的功耗、更少的处理周期、较短的等待时间等。在示例中,LDPC解码系统实施修改的MS解码方法。特别地,典型的MS解码被用作迭代LDPC解码的一部分。然而,当校验节点检测到从两个变量节点传递的两个传入值相等并且是从其它连接节点传递的值之中的最小值时,校验节点对其发送给这些其它连接节点的值进行调整。这些值表示码字中位的位值的可靠性(例如,根据符号,值越高,位为“0”或“1”的可能性更大)。例如,这些值对应于位对数似然比(LLR)的大小。校验节点通过调整值来调整该最小值以生成调整后的最小值并将该调整后的最小值发送出去,而非发送最小值。例如,最小值减少“0.75”或其它调整值。然后基于该调整后的最小值进行解码。使用修改的MS解码方法(例如,调整后的最小值而非最小值)具有许多技术优点。具体而言,MS解码倾向于高估节点之间交换的值,这使与SPA解码有关的性能降低。在校验节点接收两个相等且最小的值的情况下,对MS解码的过高估计相对于SPA解码是最大的。因此,通过调整检测到事件时的最小值,可以减少或甚至消除这种较大的过高估计,以接近SPA解码的性能。在示例中,调整值将(MS解码被高估的)最小值减小到SPA解码可能会计算的可能的最小值。因此,MS解码的性能得到显着提高,并且变得类似于SPA解码的性能,而不会对SPA解码的实施成本产生影响。出于说明的目的,并且返回参考调整值“0.75”的示例,对软输出迭代LDPC解码的模拟表示当检测到上述事件时,MS解码性能与SPA解码性能之间出现最大差距。图7示出了这种模拟和差距的示例。调整值“0.75”对应于差距的最大大小。因此,MS解码被高估的最小值减小“0.75”以变得等于SPA解码被更准确估计的最小值。此后,在解码中使用这一更精确的调整后的最小值,从而提高MS解码的性能。在下面的附图中进一步说明修改的MS解码方法的这些和其它特征。图1示出了根据本公开的特定实施例的错误校正系统100的示例性高级框图。在示例中,描述关于数据存储的LDPC码。然而,本公开的实施例不限于此。相反,实施例同样适于包括例如数据传输的LDPC码的其它用途。LDPC码是通过由0和1组成的稀疏奇偶校验矩阵H定义的线性块本文档来自技高网...

【技术保护点】
1.一种低密度奇偶校验方法,即LDPC方法,其涉及基于最小和解码方法并在LDPC解码器上实施,所述LDPC方法包括:由LDPC解码器的校验节点从LDPC解码器的第一变量节点接收第一值,所述第一值表示LDPC码字的第一位的位值的可靠性,所述第一变量节点对应于所述第一位并连接到所述校验节点;由所述校验节点确定所述第一值等于由所述校验节点针对所述LDPC解码器的第二变量节点存储的最小值,所述第二变量节点对应于所述LDPC码字的第二位并连接到所述校验节点;由所述校验节点响应于确定所述第一值等于所述最小值而通过根据调整值至少更新所述最小值来生成调整后的最小值;以及由所述校验节点向所述LDPC解码器的第三变量节点发送所述调整后的最小值,所述第三变量节点对应于所述LDPC码字的第三位并连接到所述校验节点,其中基于所述调整后的最小值对所述第三位进行解码。

【技术特征摘要】
2017.09.25 US 62/562,901;2018.02.23 US 15/903,6041.一种低密度奇偶校验方法,即LDPC方法,其涉及基于最小和解码方法并在LDPC解码器上实施,所述LDPC方法包括:由LDPC解码器的校验节点从LDPC解码器的第一变量节点接收第一值,所述第一值表示LDPC码字的第一位的位值的可靠性,所述第一变量节点对应于所述第一位并连接到所述校验节点;由所述校验节点确定所述第一值等于由所述校验节点针对所述LDPC解码器的第二变量节点存储的最小值,所述第二变量节点对应于所述LDPC码字的第二位并连接到所述校验节点;由所述校验节点响应于确定所述第一值等于所述最小值而通过根据调整值至少更新所述最小值来生成调整后的最小值;以及由所述校验节点向所述LDPC解码器的第三变量节点发送所述调整后的最小值,所述第三变量节点对应于所述LDPC码字的第三位并连接到所述校验节点,其中基于所述调整后的最小值对所述第三位进行解码。2.根据权利要求1所述的LDPC方法,其进一步包括:由所述校验节点将未经调整的最小值发送到所述第一变量节点和所述第二变量节点,其中所述第一位和所述第二位基于所述未经调整的最小值进行解码。3.根据权利要求1所述的LDPC方法,其中所述第一值被接收在来自所述第一变量节点的第一消息中,其中所述第一消息包括所述第一位的第一符号,并且进一步包括:由所述校验节点从所述第二变量节点接收第二消息,所述第二消息包括所述最小值和所述第二位的第二符号;由所述校验节点确定所述最小值是来自与所述校验节点连接的变量节点的消息中接收到的值之中的最小的值;以及由所述校验节点利用所述最小的值替换先前存储的最小值,并且更新存储的索引以包括所述第二变量节点的标识符。4.根据权利要求3所述的LDPC方法,其进一步包括:由所述校验节点从所述第三变量节点接收第三消息,所述第三消息包括表示所述第三位的位值的可靠性的第三值和所述第三位的第三符号;以及由所述校验节点对所述第三消息作出响应,将响应消息发送给所述第三变量节点,其中所述响应消息包括所述调整后的最小值。5.根据权利要求4所述的LDPC方法,其进一步包括:由所述校验节点通过至少对所述第一符号和所述第二符号应用XOR运算来生成对所述第三符号的更新,其中所述响应消息进一步包括对所述第三符号的更新。6.根据权利要求1所述的LDPC方法,其中所述LDPC解码器为软输入解码器,并且其中所述调整值在从0.6至0.9的范围中选择。7.根据权利要求6所述的LDPC方法,其中所述调整值被设置为0.75。8.根据权利要求1所述的LDPC方法,其中所述LDPC解码器为硬输入解码器,并且其中所述调整值被设置为整数。9.根据权利要求8所述的LDPC方法,其中所述整数被设置为1。10.根据权利要求1所述的LDPC方法,其中所述LDPC解码器使用迭代LDPC解码,并且其中所述调整值基于所述迭代LDPC解码的迭代次数而改变。11.根据权利要求10所述的LDPC方法,其中所述调整值随所述迭代次数的增加而增大。12.根据权利要求1所述的LDPC方法,其中所述调整值从所述LDPC解码器可访问的存储空间中可获得,并基于对使用最小和解码的第一校验节点更新即第一CNU和使用和积算法解码,即SPA解码的第二CNU的模拟而被存储在所述存储空间中。13.根据权利要求12所述的LDPC方法,其中所述模拟包括:改变第一最小值同时保持第二最小值,所述第一最小值和所述第二最小值表示位值的可靠性;当改...

【专利技术属性】
技术研发人员:哈曼·巴蒂亚内维·库马尔亚伯希伦伯拉哈卡熊晨荣张帆
申请(专利权)人:爱思开海力士有限公司
类型:发明
国别省市:韩国,KR

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

1