[发明专利]快速的比特翻转译码方法在审
申请号: | 201910253874.0 | 申请日: | 2019-03-30 |
公开(公告)号: | CN111769839A | 公开(公告)日: | 2020-10-13 |
发明(设计)人: | 薛立成;王祎磊 | 申请(专利权)人: | 北京忆芯科技有限公司 |
主分类号: | H03M13/11 | 分类号: | H03M13/11 |
代理公司: | 北京卓特专利代理事务所(普通合伙) 11572 | 代理人: | 陈变花 |
地址: | 100085 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 快速 比特 翻转 译码 方法 | ||
本申请公开了比特翻转译码方法,包括:根据伴随式矩阵验证待译码的码字的正确性;若待译码的码字不正确则进行迭代译码,包括:根据伴随式矩阵中非零元素的数量设置阈值;根据反演函数的值与阈值的比较结果确定需要翻转的一个或多个比特;翻转需要翻转的比特以更新待译码的码字。
技术领域
本申请涉及信息解码技术,特别地,涉及对用于LDPC译码算法的比特翻转译码方法的改进。
背景技术
错误校正码(Error Corrected Code,ECC)在信息处理技术中被广泛使用,以识别和校正信息存储、传输乃至计算过程中产生的错误。
例如,非易失存储介质一般都不是完全可靠的介质,读出数据和写入数据会有差别,需要通过ECC技术保证用户得到准确的数据。现有技术中采用例如低密度奇偶校验码(LDPC,Low Density Parity Check Code)来保护非易失存储介质中的数据。
LDPC码是一种纠错能力极强的ECC编码方法,被广泛应用于通信和存储等多个领域。LDPC译码算法分为两类:硬判决译码算法和软判决译码算法。硬判决译码算法的输入数据(硬信息)量小,译码算法简单,但是纠错能力一般;软判决译码算法的输入数据(软信息)量大,译码算法复杂度高,纠错能力极强。对于存储领域的应用,由于存储器需要比较大的代价(需要多次读存储器)才能获得软信息,因此优先使用硬判决译码算法。
比特翻转译码算法(Bit Flipping Algorithm)是一种常见的硬判决译码算法,其主要优点是译码算法简单,利于硬件实现,且功耗和面积小,因此存储控制器的前期数据纠错常常采用比特翻转算法。比特翻转算法的核心思想是在完成一次基于特纳图的译码迭代后,统计每个变量节点获得的消息,将获得“翻转”消息最多的变量节点翻转,并对翻转后的数据做校验。如果校验成功则译码结束,否则开始第二次基于特纳图的译码迭代。如此反复直到数据译码成功或因超过最大迭代次数而译码失败。一次译码后的校验是通过码字矩阵C和校验矩阵H做矩阵乘法,判断结果矩阵(伴随式矩阵)R是否是全零矩阵来判断的。
对于所有的LDPC译码算法,包括比特翻转算法,都需要在每次接收到待译码数据以及每次迭代译码完成后去校验当前的数据是否是正确数据,是否还需要继续做迭代译码。比特翻转译码算法有多种变体,根据译码的每次迭代中翻转的变量节点的数量的不同,包括单比特(Single Bit)比特翻转译码算法和多比特(Multiple Bit)比特翻转译码算法。对于涉及多比特的比特翻转译码算法,在译码的每次迭代中如何决定翻转的比特个数是一个难题。现有技术中,根据反演函数(Inversion function)Δk(x)的值与阈值θ比较的结果来确定在一次迭代中要翻转的比特。现有技术的比特翻转译码算法定义了各自的反演函数Δk(x),但确定阈值θ往往依赖于经验。
图1展示了现有技术中比特翻转译码算法的流程图。
响应于接收到待译码的数据x(110),验证从待译码的数据x得到的码字C的正确性(120)。
数据正确性验证是通过码字矩阵C(可以是刚刚接收到的数据x,或者是经过迭代译码翻转了部分比特后得到的码字)和校验矩阵H做矩阵乘法,判断得到的伴随式矩阵R是否是全0矩阵(130)。
如果R是一个全0矩阵,则译码成功,指示码字C是合法码字,将译码结果作为从存储介质读出数据的真实值。否则译码不成功,码字C是非法码字。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京忆芯科技有限公司,未经北京忆芯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910253874.0/2.html,转载请声明来源钻瓜专利网。
- 同类专利
- 专利分类