首页> 中国专利> 一种操作多状态存储器设备的方法和装置

一种操作多状态存储器设备的方法和装置

摘要

多状态存储器设备包含一个模拟信号多状态存储单元阵列。每个存储单元可以被视为一个离散信道,包括一个输入符号集,一个输出符号集,和一个转移概率矩阵。数据比特的可靠度信息,如对数似然比,可以根据转移概率矩阵和从存储单元中读取的数据来计算,并用于软解码。在一个数据存储系统中,通常的硬解码和软解码可以通过多种方式结合使用依据转移概率矩阵来计算对数似然比的方法。

著录项

  • 公开/公告号CN112216334A

    专利类型发明专利

  • 公开/公告日2021-01-12

    原文格式PDF

  • 申请/专利权人 本征信息技术(上海)有限公司;

    申请/专利号CN201910612557.3

  • 发明设计人 陈惕生;

    申请日2019-07-09

  • 分类号G11C29/42(20060101);H03M13/11(20060101);

  • 代理机构

  • 代理人

  • 地址 201203 上海市浦东新区蔡伦路1690号2幢206室

  • 入库时间 2023-06-19 09:30:39

说明书

技术领域

本发明涉及存储器领域,尤其涉及一种操作多状态存储器设备的方法和装置。

背景技术

多状态存储器设备,如浮栅型闪存(Floating Gate Flash)、电荷捕获型闪存(Charge Trap Flash)、相变存储器(Phase Change Memory)和电阻型随机存取器(Resistive RAM)等,都使用模拟信号的多状态存储单元来保存数据。文献中,多状态存储单元也常称为多层存储单元或者多比特存储单元。每个模拟信号存储单元可以保存一个模拟信号,如电荷、电压或者电阻。对多状态存储单元,模拟信号的允许取值范围可以分成多个区域,每个区域定义了一个单元状态,每个状态表示一个或多个数据比特的取值。每个存储单元状态都对应一个或多个比特的一个取值,我们称之为“状态编码”。一个模拟存储单元的数据写入操作是通过把该单元的模拟信号的值调整到一个与指定的写入数值对应的信号标称值来完成的。从模拟存储单元读取数据是通过感测存储单元的状态来完成,感测是基于把存储单元的模拟信号与多个参考阈值进行比较,从而确定单元状态。

一个多状态存储单元可以保存一个或多个数据比特。比如,SLC型闪存的每个单元保存一个比特,而MLC型闪存的每个单元可以保存两个比特,TLC型闪存的每个单元可以保存三个比特。页(page)是NAND型闪存读写操作的基本单位。在目前主流的NAND型闪存中,每个存储单元的多个比特一般是映射到不同的页中。对MLC型闪存,一个单元中的两个比特分别称为MSB和LSB,相应的页称为MSB页和LSB页。对TLC型闪存,一个单元中的三个比特分别称为MSB、CSB和LSB,相应的页称为MSB页、CSB页和LSB页。

由于制程差异、电子噪声、单元缺陷、单元干扰,和单元的老化等因素,测量到的单元状态有可能和写入的目标状态不同。这样的状态迁移导致从存储器单元中读取的数据会与原本写入的数据出现偏差。为了纠正这些数据错误,就必须使用ECC(error correctioncode)技术。在写入数据前,需要对原始数据进行ECC编码;在从存储器中读出数据后,需要对读取的数据进行ECC解码。

在传统的硬判决解码中,从存储器中读取数据时,会对每个所读数据比特做硬判决,并使用每个ECC码字的硬判决的比特来解码。在软判决解码中,闪存“信道”对每个数据比特都进行软判决,包含了像对数似然比(LLR)这样的可靠度信息,并用每个ECC码字的软判决的结果进行解码。由于使用了信道提供的额外的可靠度信息,软解码的性能要比硬解码好很多。许多ECC支持软解码,如Turbo码、LDPC码和极化码。

第7975192号美国专利,“Reading Memory Cells Using Multiple Thresholds”,介绍了从多状态存储器设备中提取软指标(soft metrics),并将其用于软解码的方法,该专利通过引入的方式并入本文本。该方法需要通过多次感测操作来得到软指标,且软指标数据需要额外的总线数据传输,因此使用软指标的开销是比较大的。在典型的应用中,一般首先采用硬解码,这时多状态存储器被近似为二进制对称信道(BSC),BSC交叉概率可以基于原始数据误码率的期望平均值计算得到。如果解码失败,可以多次尝试采用不同的参考阈值重新读取硬判决数据,并进行硬解码。当所有的硬解码尝试都失败后,才会读取软指标,并进行软解码。

如同在最新的TLC和QLC NAND型闪存中一样,当单个存储器单元保存了更多的数据比特时,由于单元磨损和数据保存的问题,原始数据误码率快速上升,硬解码已不足以完全解决数据错误。虽然可以使用软解码,但是多次感测操作的开销很大。在这种情况下,要在保持感测开销很小的情况下,达到很好的解码性能是一个挑战。

发明内容

针对现有技术中存在的问题,本发明实施例提供了一种操作多状态存储器设备的方法,包括:

把ECC编码的数据保存到一组多状态存储单元中;

从一组多状态存储单元中读取硬判决或软判决数据比特,其中每个存储单元至少保存了待读取的ECC码字的一个数据比特;

根据从所述一组多状态存储单元中读取的数据比特确定信道输出符号;

使用所述信道输出符号和转移概率矩阵为所述ECC码字计算数据比特的可靠度信息;

使用所述数据比特的可靠度信息解码所述ECC码字;以及

从解码后的所述ECC码字中提取数据。

一般而言,信道输出符号是从所述一组多状态存储单元读取的数据的函数,表示单元的状态。所述转移概率矩阵,P(y|x),表示当数值x写入到一个多状态存储单元后,从该单元读到输出符号y的概率。所述可靠度信息可以是对数似然比(LLR),其可通过LLR查找表计算得到。

页是NAND型闪存等存储器设备的读写操作的基本单位。保存在一组多状态存储单元中的全部比特可以映射到同一个页或者不同的页。在本发明的一些实施例中,每个ECC码字可以保存到一组多状态存储单元的单个页中。在本发明的另一些实施例中,每个ECC码字可以保存到一组多状态存储单元的多个页中。

一些存储器设备支持通过“重读”(read retry)操作用不同的参考阈值来读取硬判决数据,甚至支持通过与多个参考阈值进行多次比较操作来读取软判决数据。但是,这些方法都增加了读取数据的延时和开销。基于转移概率矩阵来计算可靠度信息的方法可以与这些方法通过多种方式相结合。这几种方法的一个很好的结合可以优化解码性能,降低不可纠正误码率(UBER),提高数据的可靠性,同时保持较低的延时和开销。

本发明实施例还提供了一种数据存储装置,其使用以上所述的方法操作一个或多个多状态存储器设备。

本发明实施例进一步提供了一个系统,包括一个或多个多状态存储器设备,和一个或多个存储控制器,其使用以上所述方法操作所述存储器设备。

本发明的有益效果是,本发明通过使用转移概率矩阵来计算数据的可靠度信息,可以在不增加额外的感测操作的情况下,改善解码性能,且该方法可以和现有的重读和软指标方法通过多种方式结合,进一步改善解码性能,降低不可纠正误码率(UBER),提高存储设备的数据可靠性。

附图说明

图1为根据本发明一实施例的一个存储系统的框图。

图2为2-状态单元的参考阈值的示意图。

图3为4-状态单元的参考阈值的示意图。

图4为4-状态单元的读取软指标的额外参考阈值的示意图。

图5为测量转移概率矩阵的一种示例流程图。

图6为根据本发明一实施例的使用转移概率矩阵的解码过程的示例流程图。

图7为根据本发明又一实施例的使用转移概率矩阵的解码过程的示例流程图。

具体实施方式

以下结合附图对本发明的原理和特征进行描述。所述具体实施例仅用于解释本发明,而非限定本发明的范围。

根据本发明的一个实施例,图1是基于多状态存储器设备的存储系统(100)的一个示例配置。为清晰起见,其中省略了一些与理解本发明无关的模块。存储系统(100)可适用于多种系统和设备中,如固态硬盘、手机、数字相机,媒体播放器,和计算设备。

存储系统(100)包括一个或多个多状态存储器设备(110),和一个或多个存储控制器(120)。多状态存储器设备(110)通过存储单元阵列(112)来保存数据。存储单元阵列(112)包括一定数量的模拟信号多状态存储单元(113)。模拟信号多状态存储单元(113)可以是任何一种保存连续的模拟物理信号的存储单元。读/写电路(114)通过改变单元中模拟信号的值把数据写入到模拟信号多状态存储单元(113),通过把单元的模拟信号与参考阈值进行比较来读取数据。数据缓冲区(116)用于在存储控制器(120)和存储单元阵列(112)之间传输数据。控制逻辑(118)接受由存储控制器(120)发送的命令,并管理多状态存储器设备(110)的操作。

存储控制器(120)处理来自主机的命令,并管理一个或多个多状态存储器设备(110).当存储控制器(120)处理一个写命令时,数据首先从主机传输到I/O缓冲区(122),然后由ECC编码器(124)进行编码,并最终存入多状态存储器设备(110)。当存储控制器(120)处理一个读命令时,首先从多状态存储器设备(110)读取原始数据到数据缓冲区(116),然后LLR逻辑(130)根据读取的数据计算出数据比特的对数似然比(LLR),再然后ECC解码器(132)根据计算出的LLR解码ECC码字,并从ECC码字中提取出数据,最后存储控制器(120)将提取出的数据传输到主机。

对于写入任一给定数据的大量的模拟信号存储单元,其阈值会从标称值偏离,并形成一个统计分布。这和多个因素有关,比如制程偏差、电子噪声、温度、读写干扰、磨损以及数据保存时间等。与两个不同的数值对应的两个阈值分布可能以一定的概率交叉。在两个相邻的标称值中间,有一个默认的参考阈值用来区分相邻的两个单元状态,并据以做出硬判决。一些存储器设备支持“重读”(read retry),可以使用微调后的参考阈值来重新读取硬判决数据。通过使用两个相邻的标称值中间的多个不同的参考阈值,进行多次读操作,可以得到软指标。一些存储器设备支持用一个读操作以软比特(soft bit)的形式读取软指标从而减少数据传输,软比特是由存储器设备根据使用相邻标称值间的多个不同的参考阈值的比较结果计算得到。

图2是一个2-状态单元存储器设备的阈值分布和参考阈值的示意图。一个2-状态存储单元保存一个比特。图中的曲线(201)显示了存储值为“1”的单元的阈值分布。曲线(202)显示了存储值为“0”的单元的阈值分布。参考阈值T1用于区分两个单元状态,并读取硬判决的数据比特。由于两个概率分布的较差,数据有一定的概率发生错误,即原始误码率(RBER)。

假定交叉概率是对称的,则2-状态存储单元可以近似为一个二进制对称信道(BSC)。BSC交叉概率p

其中,当X取值为0时符号为正,否则为负。

图3是一个4-状态单元存储设备的阈值分布的示意图。一个4-状态存储单元保存两个数据比特。图中的曲线(301)、(302)、(303)和(304)分别显示了存储值为“11”、“10”、“00”和“01”的单元的阈值分布。参考阈值T1、T2和T3,用来区分四个单元状态。参考阈值T1可以用来读取MSB比特。参考阈值T2和T3可以用来读取LSB比特。

一般来说,一个多状态存储单元可以用一个离散信道来描述,包括输入符号集

当单元状态数大于2时,存在多个阈值分布的交叉或状态迁移。BSC信道模型过于简单,已不足以描述这些细节。但是传统上,多状态单元还是经常用BSC信道模型来简化地描述。这种情况下,BSC交叉概率,p

事实上,转移概率矩阵可以用来计算数据的可靠度信息,如对数似然比(LLR),来改善解码性能。令v

使用转移概率矩阵,单元数据的LLR估算可以得到改善。设测量的单元状态为s

其中X(v

在非二进制ECC中,多状态单元的数据可以用一个非二进制符号来表示,非二进制符号的可能取值的数量大于2。对非二进制ECC可以得到类似的结果。定义非二进制符号X的对应于值x

设测量的单元状态为s

在两个相邻单元状态的标称值之间可以放入多个阈值,来读取软指标数据。图4显示了在一个4-状态存储器设备中用于读取软指标的阈值。在这个例子中,两个相邻标称值中间有3个阈值,用与这些阈值的比较结果可以计算软指标。用于读取软指标的阈值T12,T13,T22,T23,T32和T33,以及默认阈值T1,T2和T3,一起把单元模拟信号的值域分成了10个区域。每个区域定义为一个单元状态,则有10个单元状态。状态编码保持不变,仍然由T1,T2和T3决定。因此,总共有4个数值与10个状态对应。

令信道的输入符号集为可以保存到多状态存储单元的所有可能数值的集合。令信道的输出符号集为扩展的单元状态集合,对应于由默认参考阈值和用于读取软指标的额外的阈值所分割成的所有区域。则转移概率矩阵可以类似地定义。上述关于P

实践中,状态转移概率矩阵,P

当存储控制器(120)支持多种多状态存储器设备(110)时,一种多状态存储器设备(110)的状态转移矩阵与另外一种可能有很大不同。即使对同一种多状态存储器设备(110),由于多种原因,如阈值漂移和环境温度,会引起的阈值分布的变化,在一种条件下测量的状态转移矩阵可能不适用于所有情况。因此,需要多个转移概率矩阵来适应不同的条件。

在本发明的优选实施例中,LLR逻辑(130)可以通过简单的查找表来实现,以根据原始的硬比特和软指标来计算LLR。查找表的内容可以根据公式2或公式4预先确定。可以用多个静态查找表来提供多个不同的状态转移矩阵。或者可以用一个或多个动态查找表,其内容可以由软件动态更新。

一个多状态存储单元的多个数据比特可以映射到不同的页。比如,对4-状态存储器设备,一组存储器单元的所有MSB比特可以映射到MSB页或上页(upper page),所有LSB比特可以映射到LSB页或下页(lower page)。这种单元比特与页的映射关系我们称之为“分页模式”。同一存储器单元的所有数据比特也可以全部映射到同一个页中,我们称之为“同页模式”。

目前大多最先进的多状态存储器设备都采用分页模式。传统上,一个ECC码字存放于单个页中。图6显示了这种情况下使用状态转移矩阵来优化硬解码性能的一个示例流程图。首先,尝试进行普通的硬判决解码。如解码失败,则把相关单元的全部数据比特都读取到数据缓冲区,并使用上述方法根据状态转移矩阵计算所关心的数据比特的LLR。然后,使用计算所得的LLR重新解码。有些多状态存储器设备支持使用不同的阈值来重新读取硬判决数据。图中的硬判决解码部分或者整个流程可以通过重读操作来进行多次重试。

软指标可以与上述方法以多种方式结合使用。首先,软指标可以只使用需要读取的页,或者所读单元的全部页。另外,使用软判决的方法可以用在使用状态转移矩阵方法之前,或者之后。

在本发明的一实施例中,当普通的硬判决解码失败时,读取所读页的软指标,并尝试软解码。如普通的软判决解码失败,所读页的存储单元的硬判决数据比特全部读出,并根据状态转移矩阵计算所关心的数据比特的LLR,并使用改善的LLR重新尝试解码。必要时,可以利用所读单元的全部数据比特的软指标来进一步改善LLR。

在本发明的另一实施例中,当普通的硬判决解码失败时,所读单元的其它硬判决比特也全部读出,并根据状态转移矩阵计算所关心的数据比特的LLR,并使用得到的LLR重新尝试解码。如解码失败,则读取所读页数据的软指标,并重新尝试解码。必要时,可以利用所读单元的全部数据比特的软指标来进一步改善LLR。

一些多状态存储器设备支持使用不同的参考阈值来重读硬判决比特,或者使用额外的参考阈值来读取软指标。硬解码的重试次数和软指标的参考阈值的数量的选择提供了优化解码性能的更多可能性。

在本发明的一实施例中,一个ECC码字可以保存到分页模式的存储器设备的多个页中。每个码字包括了一组存储单元的映射到不同页上的全部数据比特。在硬判决解码时,一个ECC码字的全部硬比特从多个页中全部读出,并根据状态转移矩阵计算硬比特的LLR。必要时,可以使用软指标信息来进一步改善解码性能。

在本发明的一实施例中,一个ECC码字可以保存到同页模式的存储器设备的单个页中。与一个码字相关的一组存储单元的全部数据比特可以通过一个读操作全部读出,同样根据状态转移矩阵可以计算出所有数据比特的LLR。必要时,可以使用软指标信息来进一步改善解码性能。与分页模式的多状态存储器设备的情况相比,这种情况下,读取全部数据比特的延时可以得到大幅降低。

图7显示了另外一种解码过程的示意流程图。这尤其适用于同页模式的存储器设备。首先,把所关心的一组多状态存储单元的全部数据比特读取到数据缓冲区,并按照上述方法根据状态转移矩阵计算所有数据比特的LLR。然后,使用计算所得的LLR尝试解码。如果解码失败,则调整参考阈值,并重新尝试数据读取和解码过程。必要时,可以结合使用软指标进一步改善解码性能。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号