多层单元闪存中联合LDPC码的构造方法及其译码装置.pdf

上传人:jo****n 文档编号:11509029 上传时间:2021-10-01 格式:PDF 页数:15 大小:842.36KB
收藏 版权申诉 举报 下载
多层单元闪存中联合LDPC码的构造方法及其译码装置.pdf_第1页
第1页 / 共15页
多层单元闪存中联合LDPC码的构造方法及其译码装置.pdf_第2页
第2页 / 共15页
多层单元闪存中联合LDPC码的构造方法及其译码装置.pdf_第3页
第3页 / 共15页
文档描述:

《多层单元闪存中联合LDPC码的构造方法及其译码装置.pdf》由会员分享,可在线阅读,更多相关《多层单元闪存中联合LDPC码的构造方法及其译码装置.pdf(15页完成版)》请在专利查询网上搜索。

1、(19)中华人民共和国国家知识产权局 (12)发明专利申请 (10)申请公布号 (43)申请公布日 (21)申请号 201910302170.8 (22)申请日 2019.04.16 (71)申请人 南京大学深圳研究院 地址 518035 广东省深圳市南山区粤海街 道粤兴三道6号南大产学研大厦8B03 (72)发明人 沙金陈帅 (74)专利代理机构 南京苏高专利商标事务所 (普通合伙) 32204 代理人 柏尚春 (51)Int.Cl. H03M 13/11(2006.01) (54)发明名称 多层单元闪存中联合LDPC码的构造方法及 其译码装置 (57)摘要 本发明公开了一种多层单元闪存中联。

2、合 LDPC码的构造方法及其译码装置。 联合校验LDPC 码将多层单元闪存的分层数据页的子LDPC码的 校验结合形成全局LDPC码, 进行进一步校验, 更 有力地保障了闪存数据的完整性。 联合LDPC码译 码器装置即可以对各层数据页的子LDPC码分层 译码, 也可以利用联合LDPC码对多层数据也进行 联合译码, 并且两种译码模式可以结合起来先后 执行。 本发明所述的联合LDPC码提升了分层的子 LDPC码的纠错性能, 增强了对闪存数据完整性的 保障; 其译码方式的灵活性, 有助于将纠错能力 同闪存单元的源误码率动态匹配, 提升闪存读写 的效率。 权利要求书2页 说明书9页 附图3页 CN 11。

3、0071726 A 2019.07.30 CN 110071726 A 1.一种适用于多层单元闪存的联合LDPC码的构造方法, 其特征在于: 设多层单元闪存 的信息分层共有P层, 其构造方法包括以下步骤: (1)针对多层单元闪存的不同层pP的数据页构造子LDPC码, 其中Np, Kp, Np分别为码 长、 数据位长度和校验位长度, 子校验矩阵为Hp; (2)针对多层单元闪存的所有层的数据页构造联合LDPC码, 设联合校验位长度位Mu, 则 该联合LDPC码的数据位为多层单元闪存所有层的数据位和校验位和, 联合LDPC码的数据位 为: KupPNppP(Kp+Mp), 码长为NuMu+Ku, 联。

4、合校验矩阵记为Hu; (3)将P个子校验矩阵Hp和联合校验矩阵记为Hu以对角线的形式排列组合成全局校验矩 阵Hglobal。 2.根据权利要求1所述的适用于多层单元闪存的联合LDPC码的构造方法, 其特征在于: 步骤(1)具体包括以下步骤: (11)构造基于伽罗华域GF(q)的元素 -, 0, 1, ., q-2的拉丁方阵W, 其中 为GF(q) 的素元; (12)从W中提取互不相同的行列, 记为行集合Rowp和列集合Colp, 行、 列集合的交集元素组成基础矩阵Bp; 其中且不同子LDPC码必须选取W中完全不相同的列, 即 (13)对Bp中元素进行CPM拓展生成Hp。 3.根据权利要求1所述。

5、的适用于多层单元闪存的联合LDPC码的构造方法, 其特征在于: 步骤(2)具体包括以下步骤: (21)从W中提取互不相同的行列, 记为行集合Rowu和列集合Colu, 行、 列集合的交集元素组成基础矩阵Bu; 其中且联合LDPC码必须选取W中和子LDPC码完全不相 同的行, 即 (22)对Bu中元素进行CPM拓展生成Hu。 4.根据权利要求1所述的适用于多层单元闪存的联合LDPC码的构造方法, 其特征在于: 所述方法在构造过程中, 闪存控制器在编译码的同时统计闪存单元源误码率RBER, 当源误 码率低于RBER_th时, 分层依照子校验矩阵Hp译码; 当RBER高于源误码率阈值参数RBER_t。

6、h 时, 依照Hglobal采取联合LDPC编码, 在依照Hp分层编码后, 进一步依照联合校验矩阵Hu编码。 5.一种适用于多层单元闪存的联合LDPC码的译码装置, 其特征在于: 所述装置包含P个 子译码器和一个联合译码器; 所述装置的工作模式包括分层译码模式和联合译码模式, 分 层译码模式时装置所包含的子译码器装置分别译码, 且联合译码器不工作, 联合译码模式 时装置所包含的子译码器结合联合译码器共同译码; 两种工作模式包括按照先分层译码模 式后联合译码模式的顺序执行, 若分层译码在最大迭代次数内译码未成功, 则进入联合译 码模式。 6.根据权利要求5所述的适用于多层单元闪存的联合LDPC码。

7、的译码装置, 其特征在于: 所述的子译码器包括逻辑部分和存储部分, 通过按列分组的译码方式, 在统一的译码单元 中对不同层的数据页进行译码; 所述逻辑部分包括C2V消息提取模块、 移位和反向移位、 变 量节点更新模块、 校验节点更新模块和奇偶校验模块; 所述存储部分包括校验节点信息存 权利要求书 1/2 页 2 CN 110071726 A 2 储, 变量节点信息存储, 初始信息存储和校验矩阵存储。 7.根据权利要求6所述的适用于多层单元闪存的联合LDPC码的译码装置, 其特征在于: 所述子译码器中变量节点更新模块, 在分层译码模式中, 变量节点的更新按照传统的按列 分组的最小和译码算法更新;。

8、 在联合译码模式中, 变量节点更新需要结合联合校验LLR消息 并生成子校验LLR消息公式表示为: Qvcv-Rcv 根据子校验矩阵Hp中满足的奇偶校验的比例, 校验节点更新采取动态归一化或者动态 偏移; 对于多层单元闪存的某一层pP, 动态归一化因子 p(0, 1), 子校验矩阵Hp满足校验 的校验节点数为Mp 。其中f(*)为可调节参数的递增函数, 在数字电路中, 用分 段函数查找表的方式实现。 8.根据权利要求5所述的适用于多层单元闪存的联合LDPC码的译码装置, 其特征在于: 所述联合译码器包括逻辑部分和存储部分, 通过按列分组的译码方式, 结合子译码器提供 的子校验节点LLR信息、 联。

9、合校验硬判决的消息完成联合所有层的数据页的联合LDPC译码; 联合译码器中每个时钟周期同时处理对应P个分层数据页的校验节点和变量节点的信息更 新。 9.根据权利要求8所述的适用于多层单元闪存的联合LDPC码的译码装置, 其特征在于: 所述存储部分包括联合校验节点信息存储, 联合变量节点信息存储和联合校验矩阵存储。 10.根据权利要求8所述的适用于多层单元闪存的联合LDPC码的译码装置, 其特征在 于: 所述逻辑部分包括联合C2V消息提取模块、 移位和反向移位、 联合变量节点更新模块、 联 合校验节点更新模块和联合奇偶校验模块; 具体包括如下: (a)联合C2V消息提取模块每个时钟周期从联合校验。

10、节点信息存储中生成P组, 共Pz 个C2V消息; (b)联合校验节点更新模块, 在一个时钟周期内, 每个校验节点利用P个V2C消息进行校 验节点更新; (c)联合奇偶校验模块, 在一个时钟周期内, 每个联合译码的校验和由P个硬判决信息 更新; (d)联合变量节点更新模块, 设对应第p层数据页的C2V消息和V2C消息分别为Qcv(p)和 Rv(p)c, 输入子校验LLR消息和输出联合校验LLR消息分别为和变量节点更新公式 表示如下: 权利要求书 2/2 页 3 CN 110071726 A 3 多层单元闪存中联合LDPC码的构造方法及其译码装置 技术领域 0001 本发明属于数据存储技术, 涉及。

11、适用于多层次单元闪存存储的低密度奇偶校验码 纠错码编码译码系统, 尤其涉及一种多层单元闪存中联合LDPC码的构造方法及其译码装 置。 背景技术 0002 闪存作为一种比传统磁盘存储方式更加稳定, 数据读写更快速便捷的存储器件, 已经渗入到日常生活中每个角落。 为了满足日益增加的存储需求, 闪存制造商不断缩减工 艺尺寸, 提出三维NAND存储技术, 增加在单个闪存单元的信息比特数。 随之而来的就是闪存 的错误概率不断上升, 传统的BCH纠错码已经不足以保证数据的安全。 低密度奇偶校验码 LDPC(LowDensityParity Check)作为一种纠错能力逼近香农极限的纠错方式, 正在逐渐取 。

12、代BCH, 成为新一代闪存控制器中纠错编码方式。 0003 多层次单元闪存(Multi-LevelCellFlash Memory), 即在一个闪存存储单元存储 多比特信息, 是近年来闪存存储密度提升的一个重要途径,包括狭义上的MLC(每个单元存 储2-bit消息,闪存单元有4个不同阈值电压区间)、 TLC(每个单元存储3-bit消息,闪存单元 有8个不同阈值电压区间)。 三星、 镁光等公司在2018年宣布量产的QLC(Quad-LevelCell)闪 存, 每个闪存单元能存储4-bit信息。 纠错编码的码率反映了纠错码的性能。 码率越低, 校验 比特数相对越多, 纠错能力越强。 闪存中的源误。

13、码率(RawBit Error Rate, 简写为RBER)是 闪存单元数据可靠性的衡量标准。 在多层单元闪存中, 属于不同层的数据具有不同的源误 码率; 对闪存单元整体而言, 在使用寿命的不同时期也有不相同的源误码率。 因此, 应用于 闪存的纠错码方案, 可以利用多层次单元闪存中源误码率的这种特性。 通过针对性地设计 LDPC的纠错码方案, 将LDPC纠错能力和不同层数据页的、 不同使用寿命时期的的源误码率 适配起来, 以充分利用有限的闪存单元冗余空间。 发明内容 0004 发明目的: 本发明的目的之一是提供一种多层单元闪存中联合LDPC码的构造方 法, 第二目的是提供一种多层单元闪存中联合。

14、LDPC码的译码装置, 提高闪存和纠错编码的 数据可靠性和装置或系统的使用寿命。 0005 技术方案: 一种适用于多层单元闪存的联合LDPC码的构造方法, 设多层单元闪存 的信息分层共有P层, 包括以下步骤: 0006 (1)针对多层单元闪存的不同层pP的数据页构造子LDPC码, 其中Np, Kp, Mp分别为 码长、 数据位长度和校验位长度, 子校验矩阵为Hp; 0007 (2)针对多层单元闪存的所有层的数据页构造联合LDPC码, 设联合校验位长度位 Mu, 则该联合LDPC码的数据位为多层单元闪存所有层的数据位和校验位和, 联合LDPC码的 数据位为: KupPNppP(Kp+Mp), 码。

15、长为NuMu+Ku, 联合校验矩阵记为Hu; 0008 (3)将P个子校验矩阵Hp和联合校验矩阵记为Hu以对角线的形式排列组合成全局 说明书 1/9 页 4 CN 110071726 A 4 校验矩阵Hglobal。 0009 进一步的, 步骤(1)具体包括以下步骤: 0010 (11)构造基于伽罗华域GF(q)的元素 -, 0, 1, ., q-2的拉丁方阵W, 其中 为 GF(q)的素元; 0011(12)从W中提取互不相同的行列, 记为行集合Rowp和列集合 Colp, 行、 列集合的交集元素组成基础矩阵Bp。 其中且不同子LDPC码必须选取W中完全不相同 的列, 即 0012 (13)。

16、对Bp中元素进行CPM拓展生成Hp。 0013 进一步的, 步骤(2)具体包括以下步骤: 0014(21)从W中提取互不相同的行列, 记为行集合Rowu和列集合 Colu, 行、 列集合的交集元素组成基础矩阵Bu。 其中且联合LDPC码必须选取W中和子LDPC码完 全不相同的行, 即 0015 (22)对Bu中元素进行CPM拓展生成Hu。 0016 进一步的, 所述方法在构造过程中, 闪存控制器在编译码的同时统计闪存单元源 误码率RBER, 当源误码率低于RBER_th时, 分层依照子校验矩阵Hp译码; 当RBER高于源误码 率阈值参数RBER_th时, 依照Hglobal采取联合LDPC编码。

17、, 在依照Hp分层编码后, 进一步依照联 合校验矩阵Hu编码。 0017 一种适用于多层单元闪存的联合LDPC码的译码装置, 所述装置包含P个子译码器 和一个联合译码器; 所述装置的工作模式包括分层译码模式和联合译码模式, 分层译码模 式时装置所包含的子译码器装置分别译码, 且联合译码器不工作, 联合译码模式时装置所 包含的子译码器结合联合译码器共同译码; 两种工作模式可以按照先分层译码模式后联合 译码模式的顺序执行若分层译码在最大迭代次数内译码未成功, 则进入联合译码模式。 0018 进一步的, 所述的子译码器包括逻辑部分和存储部分, 通过按列分组的译码方式, 在统一的译码单元中对不同层的数。

18、据页进行译码; 所述逻辑部分包括C2V消息提取模块、 移 位和反向移位、 变量节点更新模块、 校验节点更新模块和奇偶校验模块; 所述存储部分包括 校验节点信息存储, 变量节点信息存储, 初始信息存储和校验矩阵存储。 0019 进一步的, 所述子译码器中变量节点更新模块, 在分层译码模式中, 变量节点的更 新按照传统的按列分组的最小和译码算法更新; 在联合译码模式中, 变量节点更新需要结 合联合校验LLR消息并生成子校验LLR消息公式表示为: 0020 0021 Qvcv-Rcv 0022 0023 根据子校验矩阵Hp中满足的奇偶校验的比例, 校验节点更新采取动态归一化或者 动态偏移; 对于多层。

19、单元闪存的某一层pP, 动态归一化因子 p(0, 1), 子校验矩阵Hp满足 校验的校验节点数为Mp 。其中f(*)为可调节参数的递增函数, 在数字电路中, 说明书 2/9 页 5 CN 110071726 A 5 用分段函数查找表的方式实现。 0024 进一步的, 所述联合译码器包括逻辑部分和存储部分, 通过按列分组的译码方式, 结合子译码器提供的子校验节点LLR信息、 联合校验硬判决的消息完成联合所有层的数据 页的联合LDPC译码; 联合译码器中每个时钟周期同时处理对应P个分层数据页的校验节点 和变量节点的信息更新。 0025 进一步的, 所述存储部分包括联合校验节点信息存储, 联合变量节。

20、点信息存储和 联合校验矩阵存储。 0026 更进一步的, 所述逻辑部分包括联合C2V消息提取模块、 移位和反向移位、 联合变 量节点更新模块、 联合校验节点更新模块和联合奇偶校验模块; 具体包括如下: 0027 (a)联合C2V消息提取模块每个时钟周期从联合校验节点信息存储中生成P组, 共P z个C2V消息; 0028 (b)联合校验节点更新模块, 在一个时钟周期内, 每个校验节点利用P个V2C消息进 行校验节点更新; 0029 (c)联合奇偶校验模块, 在一个时钟周期内, 每个联合译码的校验和由P个硬判决 信息更新; 0030 (d)联合变量节点更新模块, 设对应第p层数据页的C2V消息和V。

21、2C消息分别为Qcv(p) 和Rv(p)c, 输入子校验LLR消息和输出联合校验LLR消息分别为和变量节点更新公 式表示如下: 0031 0032 0033 有益效果: 与现有技术相比, 本发明显著的效果在于: 第一、 本发明所述联合LDPC 码的构造方法基于现有的性能卓越的LDPC码构造, 保证了LDPC码的纠错性能。 第二、 所述联 合LDPC码的构造方法的联合校验位计算基于分层页的数据和校验信息, 通过分层编码可以 方便地在线性时间复杂度内进行联合LDPC码的编码。 第三、 本发明的联合LDPC码的译码器 装置, 相比于多层单元闪存中分层进行LDPC码纠错的方案, 在纠错能力上有进一步的。

22、保障, 第四、 本发明的联合LDPC码的译码器装置, 相比于将多层数据页进行统一长码长低码率的 LDPC编译码, 其具有更大的灵活性, 且源误码率较低时具有更高的译码速率。 附图说明 0034 图1是本发明所述的的多层单元闪存中联合LDPC码的编码译码流程图; 0035 图2是本发明所述的多层单元闪存中联合LDPC码的全局校验矩阵构造的示意图; 0036 图3是本发明所述的多层单元闪存中联合LDPC码的译码器装置的顶层结构示意 图; 0037 图4是本发明所述的多层单元闪存中联合LDPC码的子译码器的结构示意图; 0038 图5是本发明所述的多层单元闪存中联合LDPC码的联合译码器的结构示意图。

23、。 具体实施方式 0039 为了详细的说明本发明所公开的技术方案, 下面结合说明书附图及具体实施例做 说明书 3/9 页 6 CN 110071726 A 6 进一步的阐述。 0040 一种适用于多层单元闪存的联合LDPC码的构造方法, 设多层单元闪存的信息分层 共有P层, 包括以下步骤: 0041 (1)针对多层单元闪存的不同层pP的数据页构造子LDPC码, 其中Np, Kp, Mp分别为 码长、 数据位长度和校验位长度, 其校验矩阵位Hp。 基于伽罗华GF(q)的元素构造 -, 0, 1, ., q-2拉丁方阵W, 其中 为GF(q)的素元; 从W中提取互不相同的 行 列, 记为行集合Ro。

24、wp和列集合Colp, 行、 列集合的交集元素组成基础矩阵Bp。 其中且不同子 LDPC码必须选取W中完全不相同的列, 即对基础矩阵Bp中的每一 元素进行循环移位矩阵 拓展CPM-d ispersion (Circulant Permuta tion MatrixDispersion)生成Hp。 CPM由单位矩阵I(q-1)(q-1)将矩阵的每一行循环右移s得来。 GF (q)中的q个元素同CPM一一对应: s(s 0, 1, .q-2)对应移位值为s的As; -对应全零矩 阵O(q-1)(q-1)。 0042 0043 (2)针对多层单元闪存的所有层的数据页构造联合LDPC码, 设联合校验位。

25、长度位 Mu, 则该联合LDPC码的数据位长度为KupPNppP(Kp+Mp), 码长为NuKu+Mu, 从W中提 取互不相同的行列, 记为行集合Rowu和列集合Colu, 行、 列集合的交集元 素组成基础矩阵Bu。 其中且联合LDPC码必须选取W中和子LDPC码完全不相同的行, 即 对Bu中元素进行CPM拓展生成Hu。 0044 (3)将P个子校验矩阵Hp和联合校验矩阵记为Hu以对角线的形式排列组合成全局校 验矩阵Hglobal。 0045 闪存控制器可以通过统计已经译码成功的数据中纠错比特数占总比特数的比例 来估计闪存中不同块的源误码率; 当源误码率低于RBER_th时, 分层依照子校验矩。

26、阵Hp译 码; 当RBER高于源误码率阈值参数RBER_th时, 依照Hglobal采取联合LDPC编码, 即在依照Hp分 层编码后, 进一步依照联合校验矩阵Hu编码。 当源误码率较高时, 需要较多额外的校验位, 超过了闪存单元内置的校验位空间。 联合LDPC码的校验位可以存放于闪存的特定的物理地 址空间, 由闪存控制器管理。 0046 一种适用于多层单元闪存的联合LDPC码的译码装置, 包含多个子译码器和一个联 合译码器。 所述装置可工作于两种工作模式: 分层译码模式和联合译码模式, 分层译码模式 指多个子译码器装置分别译码, 且联合译码器不工作; 联合译码模式指多个子译码器结合 联合译码器。

27、共同译码。 0047 进一步的说, 所述装置在闪存使用寿命中前期, 闪存源误码率低时, 仅使用分层译 码模式。 在闪存使用寿命中后期, 闪存源误码率较高时, 先使用分层译码模式译码, 若在分 层译码最大迭代次数内译码未成功, 进入联合译码模式。 0048 子译码器装置包括逻辑部分和存储部分, 通过按列分组的译码方式, 在统一的译 说明书 4/9 页 7 CN 110071726 A 7 码单元中对不同层的数据页进行译码; 逻辑部分包括C2V消息提取模块、 移位和反向移位、 变量节点更新模块、 校验节点更新模块和奇偶校验模块; 存储部分包括校验节点信息存储, 变量节点信息存储, 初始信息存储和校。

28、验矩阵存储。 0049 所述子译码器中变量节点更新模块, 设C2V消息和V2C消息分别为Qcv和Rvc, 联合校 验LLR消息和子校验LLR消息分别为和初始变量节点信息LLR为 v; 0050 在分层译码模式中, 变量节点更新为: 0051 0052 Qvcv-Rcv 0053 在联合译码模式中, 变量节点更新为: 0054 0055 Qvcv-Rcv 0056 0057 子译码器在联合译码模式下, 校验节点更新模块根据子校验矩阵Hp中, 满足奇偶 校验的比例而动态归一化或者动态偏移; 对于多层单元闪存的某一层pP, 动态归一化因 子 p(0, 1), 子校验矩阵Hp满足校验的校验节点数为Mp。

29、 。其中f(*)为可调节参 数的递增函数, 在数字电路中, 用分段函数查找表的方式实现。 0058 进一步的说, 所述联合译码器装置包括逻辑部分和存储部分, 通过按列分组的译 码方式, 结合子译码器提供的子校验节点LLR信息、 联合校验硬判决的消息完成联合所有层 的数据页联合译码。 逻辑部分包括联合C2V消息提取模块、 移位和反向移位、 联合变量节点 更新模块、 联合校验节点更新模块和联合奇偶校验模块; 存储部分包括联合校验节点信息 存储, 联合变量节点信息存储和联合校验矩阵存储。 0059 联合译码器中每个时钟周期同时处理对应P个分层数据页的校验节点和变量节点 的信息更新。 联合译码器其中的。

30、联合C2V消息提取模块每个时钟周期从联合校验节点信息 存储中生成P组(共Pz个)C2V消息。 联合译码器中联合变量节点更新模块, 设对应第p层数 据页的C2V消息和V2C消息分别为Qcv(p)和Rv(p)c, 输入子校验LLR消息和输出联合校验LLR消 息分别为和变量节点更新公式表示为: 0060 0061 0062 联合译码器中的联合校验节点更新模块, 在一个时钟周期内, 每个校验节点利用P 个V2C消息进行校验节点更新。 述联合译码器中的联合奇偶校验模块, 在一个时钟周期内, 每个联合译码的校验和由P个硬判决信息更新。 0063 实施例1 0064 本实施例基于TLC(Triple-Lev。

31、elCell)单元闪存, 页大小为2KB, 默认子LDPC码码 说明书 5/9 页 8 CN 110071726 A 8 率为0.89。 0065 本发明中适用于多层单元闪存的联合LDPC码的构造方法, 信息分层P3, 三层数 据页也被称为上层页, 中层页和下层页(Upper Page, Middle Page和LowerPage)。 本实施例 中采取上中下三层数据页相同码率的编译码的方案, 但本发明所提出的联合LDPC码不局限 于这种情况。 0066 (1)针对TLC闪存的三层数据页构造子LDPC码, 其中Np, Kp, Mp分别为码长、 数据位长 度和校验位长度, 其校验矩阵位Hp。 本实。

32、施例中三层数据页的子LDPC的参数是相同的, Np 18432, Kp16384, Mp2048。 0067 基于伽罗华域GF(257)中的元素 -, 0, 1, ., 255的拉丁方阵W中分别提取不 相同的8行64列的行集合Rowp和列集合Colp, 行、 列集合的交集元素组成基础矩阵Bp。 对基础 矩阵中的每一元素进行循环移位矩阵扩散CPM-dispersion(Circulant Permutation MatrixDispersion)生成Hp。 CPM由单位矩阵I256256将矩阵的每一行循环右移s得来。 GF(q) 中的q个元素同CPM一一对应: s(s0, 1, .q-2)对应移。

33、位值为s的As; -对应全零矩阵 O256256。 0068 0069 (2)针对多层单元闪存的所有层的数据页构造联合LDPC码, 设联合校验位长度位 Mu2048, 则该联合LDPC码的数据位长度为KupPNppP(Kp+Mp)55296, 码长为Nu Ku+Mu57344。 从W中提取互不相同的行列, 记为行集合Rowu和列集合 Colu, 行、 列集合的交集元素组成基础矩阵Bu。 其中且联合LDPC码必须选取W中和子LDPC码完 全不相同的行, 即对Bu中元素进行CPM拓展生成Hu。 0070 (3)子校验矩阵和联合校验矩阵呈对角线排布组成全局校验矩阵Hglobal, 如图2所 示 00。

34、71 闪存控制器可以通过统计已经译码成功的数据中纠错比特数占总比特数的比例 来估计闪存中不同块的源误码率; 并依据闪存源误码率高低决定是否需要联合LDPC的编 码, 即当源误码率接近子LDPC码的纠错能力边界时, 需要对经过子LDPC码编码的数据进一 步进行联合LDPC码编码。 当源误码率较高时, 可能需要较多额外的校验位, 超过了闪存单元 内置的校验位空间。 联合LDPC码的校验位可以存放于闪存的特定的物理地址空间, 由闪存 控制器管理。 0072 实施例2 0073 一种适用于多层单元闪存的联合LDPC码的译码装置如图3所示, 包含子译码器和 一个联合译码器。 0074 所述装置可工作于两。

35、种工作模式: 分层译码模式和联合译码模式, 分层译码模式 时多个子译码器装置分别译码, 联合译码模式时多个子译码器结合联合译码器共同译码。 0075 在闪存使用寿命中前期, 闪存源误码率低时, 仅使用分层译码模式; 在闪存使用寿 命中后期, 闪存源误码率较高时, 先使用分层译码模式译码, 若在分层译码最大迭代次数内 说明书 6/9 页 9 CN 110071726 A 9 译码未成功, 进入联合译码模式。 0076本发明中的LDPC码译码是基于按列分组的归一化最小和算法。 设和分别为 变量节点VNv(v0, 1, .N)和校验节点CNc(c0, 1, ., M)中间传递的V2C和C2V消息。 。

36、为VNv的初始LLR信息, 即对闪存读入的数据x为0或1的概率比的对数。 N (c)为和CNc连接的变量节点, M(v)为同VNv连接的校验节点。 在shuffled调度的归一化最小 和算法中, N个变量节点被分为G个列组, 其中第g个组Ng(g 0, 1, ., G-1)包含 个变量 节点, 在本实施例中, G等于基础矩阵的最大列数n, 每一组包含。 设为Ng左边的列组, 为Ng右边的列组。 在每一次迭代中, G个列组的依次序更新, 对于第g组的变量节点 以及其相邻的校验节点, CNc, cM(v)。 对应的消息更新可以 用公式概括为: 0077 变量节点更新: 0078 0079 0080。

37、 校验节点更新: 0081 0082 本发明中的译码器装置改进于传统的按列分组的归一化最小和算法译码器的硬 件实现。 其中校验节点的更新通过实时更新每一个时钟周期的最小值队列来简化。 0083 子译码器装置, 如图4所示, 包括逻辑部分和存储部分, 通过按列分组的译码方式, 在统一的译码单元中对不同层的数据页进行译码; 0084 其中存储部分包括: 0085 校验节点信息存储, 用寄存器组(Register Files)实现。 用于存储和校验节点更 新相关的信息, 包括校验节点的最小值队列信息(包括两个最小绝对值和最小绝对值所在 列组序号min1, min2, idx1, idx2)、 全局符。

38、号以及校验和。 校验校验节点信息存储的字长对应 q-1256个校验节点信息, 深度为mp8。 0086 变量节点信息存储, 用双口随机读写存储器实现(dual-portRAM)。 用于存储和变 量节点更新相关的信息, 包括校验节点到变量节点信息(V2C消息)的符号和变量节点的硬 判决信息。 设dv为子校验矩阵列重, 且所构造的子校验矩阵列重均匀分布。 变量节点信息存 储的字长为(q-1)(dv+1), 深度为np64。 0087 初始信息存储, 用单口随机读写存储器实现(single-port RAM)用于存储读取的 闪存单元的初始LLR信息。 本发明实施例中, 每一个变量节点存储2-bit软。

39、信息。 字长为(q- 1)2, 深度为np64 说明书 7/9 页 10 CN 110071726 A 10 0088 校验矩阵存储, 用单口只读存储器实现(single-port ROM)。 用于存储子校验矩阵 的信息。 字长为深度为np 0089 其中逻辑部分包括: 0090 C2V消息提取模块, 用于从校验信息存储中提取出C2V消息。 0091 移位和反向移位, 用于根据QC-LDPC的校验矩阵, 将C2V消息对齐到变量节点以及 将V2C消息对齐到校验节点。 0092 校验节点更新模块, 用于更新校验节点信息存储的最小值消息和全局符号(公式- 3)。 0093 奇偶校验模块, 用于进行校。

40、验矩阵的判决。 0094 以上子译码器中逻辑模块同传统的按列分组译码器的实现功能上是相同的, 而变 量节点更新模块, 基于(公式-1)和(公式-2), 在功能上与传统译码器实现不同。 设C2V消息 和V2C消息分别为Qcv和Rvc, 联合校验LLR消息和子校验LLR消息分别为和初始变量节 点信息LLR为 v; 0095 在分层译码模式中, 变量节点更新为: 0096 0097 Qvcv-Rcv 0098 在联合译码模式中, 变量节点更新为: 0099 0100 Qvcv-Rcv 0101 0102 进一步的, 所述子译码器在联合译码模式下, 校验节点更新模块根据子校验矩阵 Hp中, 满足奇偶校。

41、验的比例而动态归一化或者动态偏移; 对于多层单元闪存的某一层pP, 动态归一化因子 p(0, 1), 子校验矩阵Hp满足校验的校验节点数为Mp 。其中f (*)为可调节参数的递增函数, 在数字电路中, 用分段函数查找表的方式实现。 0103 0104 所述联合译码装置, 如图5所示, 包括逻辑部分和存储部分, 通过按列分组的译码 方式, 结合子译码器提供的子校验节点LLR信息、 联合校验硬判决的消息完成联合所有层的 数据页联合译码。 0105 所述存储部分包括联合校验节点信息存储、 联合变量节点信息存储和联合校验矩 阵存储。 同子译码器的存储部分的区别在于: 说明书 8/9 页 11 CN 1。

42、10071726 A 11 0106 1、 联合译码的存储部分的位宽为每个子译码器的P倍数。 0107 2、 联合变量节点信息存储不需要存储硬判决信息, 而联合译码器的判决信息从子 译码器中传输而来。 0108 所述逻辑部分包括联合C2V消息提取模块、 移位和反向移位、 联合变量节点更新模 块、 联合校验节点更新模块和联合奇偶校验模块; 0109 所述联合译码器中每个时钟周期同时处理对应P个分层数据页的校验节点和变量 节点的信息更新。 0110 联合C2V消息提取模块, 每个时钟周期从联合校验节点信息存储中生成P组(共P (q-1)个)C2V消息。 0111 移位和反向移位, 用于根据QC-L。

43、DPC的校验矩阵, 将C2V消息对齐到变量节点以及 将V2C消息对齐到校验节点。 0112 联合校验节点更新模块, 在一个时钟周期内, 每个联合校验节点综合P个V2C消息 和校验节点信息中存储最小值信息进行校验节点更新。 0113 所述联合译码器中联合变量节点更新模块, 设对应第p层数据页的C2V消息和V2C 消息分别为Qcv(p)和Rv(p)c, 输入子校验LLR消息和输出联合校验LLR消息分别为和 变量节点更新公式表示为: 0114 0115 0116 联合译码器中的联合奇偶校验模块, 在一个时钟周期内, 每个联合译码的校验和 由P个硬判决信息更新。 说明书 9/9 页 12 CN 110071726 A 12 图1 图2 说明书附图 1/3 页 13 CN 110071726 A 13 图3 图4 说明书附图 2/3 页 14 CN 110071726 A 14 图5 说明书附图 3/3 页 15 CN 110071726 A 15 。

展开阅读全文
内容关键字: 多层 单元 闪存 联合 LDPC 构造 方法 及其 译码 装置
关于本文
本文标题:多层单元闪存中联合LDPC码的构造方法及其译码装置.pdf
链接地址:https://www.zhuanlichaxun.net/pdf/11509029.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1