一种应用于NAND闪存上的极化码纠错方案的制作方法

文档序号:12128694阅读:499来源:国知局
一种应用于NAND闪存上的极化码纠错方案的制作方法与工艺

本发明涉及信道编码技术领域,具体涉及一种应用于NAND闪存上的极化码纠错方案。



背景技术:

在当今数字技术飞速发展的时代,快闪存储器(NAND闪存)因其非易失性和可擦除性,加之小体积,高速写入/擦除的性能以及更加低廉的每比特价格备受欢迎。目前存储市场上极为火爆的固态硬盘即采用NAND闪存作为存储介质。通过在每个闪存单元中存储多个比特信息,每单元多层型(MLC)NAND闪存因为其极具吸引力的存储密度统治了全球市场。然而密度上的扩大导致该类型闪存受到存储可靠性问题的限制日益加深。因此我们需要选取合适的纠错码(ECC)来解决这一问题。

传统的ECC方案采用的是BCH编码、低密度奇偶校验码(LDPC)或两者混合的编码方案。它们是存在局限性的。BCH码受限于其线性性质与判决特点,纠错能力较弱,尤其在低信噪比情况下无法满足实际应用需求;LDPC码的性能十分优良,但是其较长的译码延迟在目前追求高速吞吐性能的存储领域是不合时宜的。



技术实现要素:

为了满足实际应用需求,并减少译码延迟,本发明提出了一种基于极化码(Polar Code)的高效多方案ECC技术,我们称之为“预检测方案”。该技术可以通过对当前NAND闪存的电压扩散情况做出判断,针对不同的电压分布状态,选取相应的极化码译码器(硬判决译码器、量化软判决译码器和纯软判决译码器)来达到译码速度和性能需求上的平衡。

技术方案:

一种应用于NAND闪存上的极化码纠错方案,包括步骤:

1)对用户数据进行预处理:用户数据经过文件系统,编码器和映射三步转化为电压信息储存在NAND闪存当中;

2)电压探测器判断当前闪存的电压扩散情况,并依据电压扩散情况决定使用对应的译码器译码;译码器包括硬判决译码器、量化软判决译码器以及纯软判决译码器。

所述用户数据进行预处理具体为:用户数据首先经过文件系统转换为不同格式的二进制比特流,之后通过极化码编码器转变为相应的码字,再将二进制比特流通过格雷码映射到对应的目标电压上。

所述步骤2)具体为:

所述硬判决译码器采用两次电压比较获取电压所在区间,得到对于所存储比特的观测值,产生对数似然比的符号位;并根据对数似然比的符号位信息进行位运算产生译码结果;所述两次电压比较具体为:第一次先判断最低有效位LSB,在此基础上进行第二次判断得到最高有效位MSB;

所述量化软判决译码器先行计算重叠区域的边界值,在硬判决比较的基础上,增加电压比较次数,获得电压值所在区间信息,计算得到重叠区域对应的对数似然比;并根据对数似然比进行迭代计算得到译码结果;

所述纯软判决译码器根据电压信息通过概率分布密度函数的估计值计算得到对数似然比;并根据对数似然比进行迭代计算得到译码结果。

采用所述硬判决译码器时首先将感知到的电压信息和阈值电压V1做比较,得到最低有效位LSB的结果;若LSB=0则与V0比较;若LSB=1则与V2比较,得到最高有效位MSB的结果。

所述量化软判决译码器根据不同的性能需求,对重叠区域进行进一步的划分,对电压进行多次比较。

有益效果:本发明针对于传统译码方案中的单一形式作出了改进。当前方案中,大多数均采用“量化软判决方案”。我们提出的硬判决方案和纯软判决方案解决了单一方案在速度和性能上不能兼顾的问题。硬判决方案码字的每一个比特的观测量中所包含的信息量仅为1bit。采用这些1bit信息来产生硬判决译码器所需要LLR的符号位,使译码器在二进制状态下通过位运算来进行译码,极大地提升译码速度;纯软判决方案采用信息量最大的LLR作为译码器输入,保证了恶劣情况下仍有合理的比特错误率,延长了闪存使用寿命。

附图说明

图1展示了整个系统的功能框图和提出的多策略ECC方案。

图2展示了2-比特NAND闪存中的目标电压与实际电压分布。虚线所示为目标电压,即存储对应信息的理论电压值。由于电荷流失、单元间干扰等多种原因,闪存中实际的电压分布呈现高斯分布的态势。

图3展示了在采用格雷码映射和直接映射方案的对比。

图4展示在硬判决方案下如何将存储的电压信息转化为对码字的估计。

图5展示量化软判决译码器中对于电压区间的划分。

具体实施方式

下面结合附图对本发明作更进一步的说明。

本发明包括步骤:

1)用户数据存储阶段预处理

不同用户在不同操作系统中的数据在最终存储前,都会在其文件系统中转换为不同格式的二进制数字信息。为了保证这些被存储的信息可以被完整地恢复,我们向其中添加冗余信息来抗干扰。因此文件系统输出的二进制比特将在被分段后首先通过极化码编码器(Polar Encoder)转变为相应的码字。

对于2-比特/单元的MLC闪存而言,比特流c将被两比特一组映射到对应的目标电压上(详见图3)。具体的映射方式采用格雷码(Gray Code),其相邻码字间的汉明距离(Hamming Distance)为1;而电压判断出错也只发生在相邻状态。故采用这种映射方式可以获得最大的编码增益。

至此,原始的用户信息经过文件系统、编码器和映射三步后已经转化为电信息储存在了NAND闪存当中,预处理工作完成。

2)电压感知与原始电信号处理

电压探测器将首先判断当前闪存的电压扩散情况,从而决定使用对应的译码器。对于硬判决译码器,采用类似于牛顿二分法利用格雷码(Gray Code)映射相邻两状态仅一个比特位有区别的特性,通过两次电压比较,第一次先判断最低有效位(LSB),在此基础上进行第二次判断得到最高有效位(MSB),得到的MSB与LSB值即为所存储比特的观测值(详见图4),产生对数似然比(LLR)的符号位;对于量化软判决译码器,需要先行计算重叠区域的边界值,在硬判决比较的基础上,增加电压比较次数,获得电压值所在区间信息后,计算该区域对应的LLR;对于纯软判决译码器,在得到电压信息后,

直接通过对于概率分布密度函数(PDF)的估计值进行计算来获取需要的LLR。

3)处理得到的似然比信息送入对应译码器译码

译码器得到对应的LLR后,会进行相应的迭代计算。硬判决译码器仅需要LLR的符号位信息在二进制域内进行位运算产生译码结果,速度最快,性能最低;量化软判决与纯软判决译码器的构造上并没有区别,其性能区别在于输入译码器的LLR与原始信息的匹配程度。

针对用户数据存储阶段预处理,参照图1的上半部分。我们假设原始信息(即文件系统输出的二进制比特流)为x,被分为n段,则有:

每段信息通过编码器后变为码字ci,则编码器输出的二进制比特流为:

如图4,采用硬判决译码器时将首先将感知到的电压和阈值电压V1做比较,得到LSB的结果。若LSB=0则与V0比较;若LSB=1则与V2比较,得到MSB结果;将模拟信息转化为数字信息。其中,LSB(Least Significant Bit)为最低有效位,MSB(Most Significant Bit)为最高有效位;V0和V1分别为MSB在LSB为0和1时的判决门限。

即:三个门限将电压分布分为4个区域,分别对应四种不同的存储信息;逐比特来看:

V1为LSB门限,即感知电压<V1,LSB=0;感知电压>V1,LSB=1;

V0、V2为MSB门限;

LSB=0时感知电压<V0,MSB=0,感知电压>V0,MSB=1;

LSB=1时感知电压<V2,MSB=1,感知电压>V2,MSB=0。

可以看到,硬判决方案中,码字的每一个比特的观测量中所包含的信息量也仅为1bit。我们采用这些1bit信息来产生硬判决译码器所需要LLR的符号位,使译码器在二进制状态下通过位运算来进行译码。

如图5,随着使用时间增长,电压分布逐渐“扩散”,两个相邻的电压状态会发生重叠,此时硬判决方案会带来较大的偏差。我们需要增加电压比较的次数来增加输入译码器的信息量。

我们首先根据量化软判决译码器重叠边界计算方程计算出三组重叠边界的边界电压。根据不同的性能需求,我们可以对重叠区域进行进一步的划分,对电压进行多次比较,获得更加准确的信息。

量化软判决译码器重叠边界计算方程

其中,和μk分别为高斯分布p(k)的方差和均值;Bl(k)和Br(k)是重叠区域的下界和上界。

经过之前两个步骤,我们已经将整个电压分布划分为n个不同的区间[R1,R2,…,Rn],并且已知读取到的电压位于某一个区间Ri中,则我们可以通过量化软判决译码器对应区域LLR计算方程来分别计算出两个比特的LLR。

量化软判决译码器对应区域LLR计算方程

对于纯软判决译码器,我们不再对电压区间进行划分。为了得到最高的输入信息量,我们直接在感知到的电压x处分别求出四个概率密度,即p(0)(x),p(1)(x),p(2)(x),p(3)(x),根据纯软判决译码器在读取电压为x时的LLR计算方程计算LLR。

纯软判决译码器在读取电压为x时的LLR计算方程

通过对接收到的码字观测量中的每一个比特求LLR,我们得到了译码器的输入信息。将这些信息输入译码器,即可得到对存储信息的估计:

在比特错误率(Bit Error Rate,BER)允许的情况下,我们可以认为:

本发明首次在NAND闪存中采用极化码作为纠错码(ECC),并且针对不同的使用阶段提供了三种不同的译码方案来满足性能需要。在本发明中译码器并不局限于极化码,只要是采用软信息作为输入的译码器均适用。针对不同电压分布状态产生的是信息量不同的LLR,因为输入信息量不同,所以才会有不同的译码增益;采用LLR的符号位译码(硬判决译码器)无法通用,需要特别设计;量化软判据和纯软判决采用的是LLR,是可以适配其它译码器。

在本发明中,选择哪个译码器需要根据具体情况来分析;三种译码器能够提供不同的译码性能,相对应的电压扩散情况要看具体应用中对于性能的不同要求,在仿真环境下,一般采用信噪比作为判决条件;但是实际应用过程中只要能够达到性能要求,则会尽量采用架构最简单的译码器。

本发明具有很强的通用性,对于市场上的SLC,MLC以及TLC产品均可作为解决方案使用。映射过程中仍采用格雷码,比特分组长度对应于1-bit,2-bit与3-bit。电压读取逻辑仍可MLC的方式进行相应的缩减与扩展,以满足SLC于TLC产品的要求。

以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1