用于刷新存储器设备中的数据的系统和方法技术方案

技术编号:15342905 阅读:58 留言:0更新日期:2017-05-17 00:17
提供了刷新存储器中的数据的系统、装置、和方法。将数据编程到所述存储器中。之后,可以刷新所述数据的部分或全部。对所述数据的刷新可以在一个或多个方面不同于对所述数据的初始编程。例如,对所述数据的刷新可以包括比对所述数据的编程少的步骤,并且可以在不擦除存储器区段的情况下进行。进一步,对所述数据的刷新可以用若干方式中的一种来触发。例如,在对所述数据进行编程之后,可以分析所述数据以寻找错误。基于所找到的错误的数量,可以刷新所述数据。

【技术实现步骤摘要】
【国外来华专利技术】用于刷新存储器设备中的数据的系统和方法相关申请的引用本申请要求2014年10月6日提交的美国申请号14/507,321的优先权,所述申请的全部内容通过引用结合在此。
本申请总体上涉及对系统中的数据进行管理。更确切地,本申请涉及刷新存储器设备中的数据。
技术介绍
存储器设备可以将数据编程到其中的单元中。然而,在编程之后立即或者在一段时间之后读取被编程到单元中的数据时可能存在问题。例如,在闪存的背景下,被编程到多层单元(其中,多个位被编程到单个单元中)中的数据可能由于数据保持问题而劣化。
技术实现思路
公开了用于刷新存储器设备中的数据的系统和方法。在一方面,公开了一种存储器设备。所述存储器设备包括非易失性存储器以及与所述非易失性存储器通信的处理器电路。所述处理器电路包括:擦除模块,所述擦除模块被配置成用于擦除所述非易失性存储器中的区段;编程模块,所述编程模块被配置成用于仅在所述存储器区段已经被所述擦除模块擦除之后才将数据编程到所述存储器区段中;以及刷新模块,所述刷新模块被配置成用于在所述存储器区段还没有被所述擦除模块擦除的情况下刷新所述存储器区段中的所述数据的一部分或全部。在另一方面,公开了一种存储器设备,所述存储器设备包括存储器控制器电路以及一个或多个存储器芯片。所述存储器控制器电路包括:错误校正模块,所述错误校正模块被配置成用于确定从一个或多个存储器芯片中读取的数据中的错误;以及刷新触发模块,所述刷新触发模块被配置成用于基于所述错误而判定是否命令刷新所述数据的部分或全部。所述一个或多个存储器芯片与所述存储器控制器电路通信,其中所述一个或多个存储器芯片各自包括:存储器阵列;刷新模块,所述刷新模块被配置成用于响应于刷新命令而刷新所述存储器阵列中的所述数据的部分或全部;以及编程验证模块,所述编程验证模块被配置成用于验证对在所述存储器阵列中的所述数据的所述部分或全部的所述刷新。在又另一方面,公开了一种方法。在存储器设备中进行的所述方法包括:使用第一编程方案将数据编程到所述存储器设备中的存储器区段中;确定所述存储器的所述区段中的所述数据中的一个或多个错误;基于所述一个或多个错误而判定是否刷新所述数据的部分或全部;以及响应于确定刷新所述数据的所述部分或全部而使用第二编程方案将所述数据的所述部分或全部编程到所述存储器的所述区段中,所述第二编程方案不同于所述第一编程方案并且具有比所述第一编程方案少的步骤。在查阅以下附图、具体实施方式和权利要求书之后,其他的特征和优点将变得清楚。此外,公开了其他实施例,并且实施例中的每一个可以单独地或组合在一起使用。现在将参照附图对所述实施例进行描述。附图说明参照以下附图和说明可以更好地理解所述系统。在附图中,相似的参考号遍及所有不同的视图指代对应的部分。图1A展示了与存储器设备相连接的主机系统。图1B展示了图1A的存储器设备控制器和存储器芯片的另一个框图。图1C展示了在所述存储器设备控制器和存储器芯片内的刷新的数据流。图2A展示了存储器设备控制器芯片,这是在图1A中描绘的存储器设备控制器的第一示例。图2B展示了存储器设备控制器芯片,这是在图1A中描绘的存储器设备控制器的第二示例。图3A展示了在图1A中描绘的存储器芯片控制器的示例。图3B展示了例如在图1A中描绘的存储器中使用的存储器芯片的框图的示例。图4是在图3B的存储器存储体中可以使用的存储器单元阵列的代表性电路图。图5展示了图3B的存储器存储体的示例物理存储器组织。图6示出了图5的物理存储器的一部分的展开视图。图7A展示了示例非易失性存储器编程图,展示了每单元三位的存储器中的三阶段NAND闪存编程操作中每一阶段的目标电压水平。图7B是图7A中展示的编程序列的对字线进行编程的序列的图表。图8A展示了将数据编程到存储器区段中、判定是否刷新所述数据、并刷新所述数据的部分或全部的第一示例的流程图。图8B展示了将数据编程到存储器区段中、判定是否刷新所述数据、并刷新所述数据的部分或全部的第二示例的流程图。图9展示了触发对数据的读取、使用错误校正编码(ECC)确定位错误率(BER)、并使用所述BER来判定是否刷新所述数据的一个示例的流程图。图10A展示了从控制存储器芯片的存储器设备控制器的角度看对数据进行刷新的第一示例的流程图。图10B展示了从存储器芯片的角度看对数据进行刷新的所述第一示例的流程图。图11A展示了从控制存储器芯片的存储器设备控制器的角度看对数据进行刷新的第二示例的流程图。图11B展示了从存储器芯片的角度看对数据进行刷新的所述第二示例的流程图。图12展示了从控制存储器芯片的存储器设备控制器的角度看对数据进行刷新的第三示例的流程图。图13A展示了在编程操作之后判定是否进行刷新操作并进行刷新操作的流程图。图13B展示了判定是否对遭受数据保持问题的块进行刷新操作并进行刷新操作的流程图。图13C展示了判定是否对遭受循环应力问题的块进行刷新操作并进行刷新操作的流程图。图14A展示了处于多个不同阶段的每单元3位的不同状态的第一图表,包括由于电荷损失造成的改变。图14B展示了处于多个不同阶段的每单元3位的不同状态的第一图表,包括由于刷新造成的改变。图14C展示了处于多个不同阶段的每单元1位的不同状态的第一图表,包括由于电荷损失造成的改变。图14D展示了处于多个不同阶段的每单元1位的不同状态的第一图表,包括由于刷新造成的改变。具体实施方式如在
技术介绍
部分中讨论的,所述存储器设备可以将数据编程到存储器单元中。所述存储器单元可以被编程以在相应单元中存储一个位或多个位。例如,所述存储器单元可以被操作以存储两个电荷层,使得在每个单元中存储单个位的数据。这典型地被称为二进制或单层单元(SLC)存储器。作为另一个示例,所述存储器单元可以被操作来在每个电荷储存元件或区域中存储多于两个可检测电荷层,由此在每个中存储多于一个位的数据。后一种构型被称为多层单元(MLC)存储器。在存储器中可以使用一种或两种类型的存储器单元,例如可以使用二进制闪存来缓存数据并且可以使用MLC存储器来进行长期存储。例如,在被配置成用于3个位的信息的MLC存储器单元中,表示这3个位必然存在23=8种可能状态。这8种状态(在此称为Er、A、B、C、D、E、F和G,其中Er是指擦除状态)是所述单元可以被编程到的8个分立的电压水平(Vt)。在新近编程后的这8种编程后状态的示例在图14A的图表中用虚线展示。同样,SLC的在新近编程后的编程状态的示例在图14C的图表中用虚线展示。每个单元中存在的位数的示例仅用于展示的目的。然而,立即或在一段时间后从所述存储器单元中读取数据可能产生错误。读取中的错误可能是由于Vt移位(Vt下移)。更具体地,Vt移位的发生可能:是在对单元进行编程之后不久的新近条件下;是由于数据保持问题;和/或是由于所述存储器设备的大量循环。例如,对单元进行编程之后,Vt可能下移而造成故障位计数(FBC)增大,由此使得系统性能下降并潜在地造成在所述存储器设备中错误地检测高的位错误率(BER)。Vt下移现象可能致使所述状态的Vt分布在尾侧上略微加宽,甚至在没有数据保持问题的情况下也是如此,如下文讨论的。这种类型的Vt下移典型地并不是足够严重而立即造成不可校正的错误校正码(UECC本文档来自技高网
...
用于刷新存储器设备中的数据的系统和方法

【技术保护点】
一种存储器设备,包括:非易失性存储器;以及处理器电路,与所述非易失性存储器通信,所述处理器电路包括:擦除模块,所述擦除模块被配置成用于擦除所述非易失性存储器中的区段;编程模块,所述编程模块被配置成用于仅在所述存储器区段已经被所述擦除模块擦除之后才将数据编程到所述存储器区段中;以及刷新模块,所述刷新模块被配置成用于在所述存储器区段还没有被所述擦除模块擦除的情况下刷新所述存储器区段中的所述数据的部分或全部。

【技术特征摘要】
【国外来华专利技术】2014.10.06 US 14/507,3211.一种存储器设备,包括:非易失性存储器;以及处理器电路,与所述非易失性存储器通信,所述处理器电路包括:擦除模块,所述擦除模块被配置成用于擦除所述非易失性存储器中的区段;编程模块,所述编程模块被配置成用于仅在所述存储器区段已经被所述擦除模块擦除之后才将数据编程到所述存储器区段中;以及刷新模块,所述刷新模块被配置成用于在所述存储器区段还没有被所述擦除模块擦除的情况下刷新所述存储器区段中的所述数据的部分或全部。2.如权利要求1所述的存储器设备,其中,所述刷新模块在刷新所述数据的部分或全部时包括比所述编程模块在对所述数据进行编程时少的编程步骤。3.如权利要求1所述的存储器设备,进一步包括:错误分析模块,所述错误分析模块被配置成用于确定被编程到所述存储器区段中的所述数据中的一个或多个错误;以及刷新判定模块,所述刷新判定模块被配置成用于基于所述一个或多个错误而判定是否触发所述刷新模块来刷新所述数据的所述部分或全部。4.如权利要求3所述的存储器设备,其中,所述错误分析模块包括错误校正编码(ECC)引擎。5.如权利要求3所述的存储器设备,其中,所述刷新模块被配置成用于使用所述错误分析模块来判定是否迭代执行所述刷新模块。6.如权利要求3所述的存储器设备,进一步包括:触发模块,所述触发模块被配置成用于响应于执行所述编程模块来将所述数据编程到所述存储器区段中而触发执行所述错误分析模块和所述刷新判定模块。7.如权利要求6所述的存储器设备,其中,所述编程模块被配置成用于将所述数据从SLC存储器折叠到MLC存储器中;其中,响应于将所述数据从所述SLC存储器折叠到所述MLC存储器中,所述存储器设备被配置成用于触发执行所述错误分析模块和所述刷新判定模块;并且响应于所述刷新判定模块确定刷新所述MLC存储器中的所述数据的所述部分或全部,所述刷新模块被配置成用于使用来自所述SLC存储器的所述数据来刷新所述MLC存储器中的所述数据的所述部分或全部。8.如权利要求3所述的存储器设备,进一步包括:触发模块,所述触发模块被配置成用于:将所述存储器区段的寿命指示符与触发寿命指示符进行比较;并且响应于所述触发模块确定所述寿命指示符大于所述触发寿命指示符而触发执行所述错误分析模块和所述刷新判定模块。9.如权利要求8所述的存储器设备,其中,所述错误分析模块进一步被配置成用于生成校正数据,所述校正数据至少部分地校正被编程到所述存储器区段中的所述数据中的所述一个或多个错误;并且其中,所述刷新模块被配置成用于使用所述校正数据来刷新所述数据的所述部分或全部。10.如权利要求1所述的存储器设备,其中,所述存储器区段包括存储器块;其中,所述刷新模块被配置成用于在小于所述存储器块中刷新所述数据的所述部分。11.一种存储器设备,包括:存储器控制器电路,所述存储器控制器电路包括:错误校正模块,所述错误校正模块被配置成用于确定从一个或多个存储器芯片中读取的数据中的错误;以及刷新触发模块,所述刷新触发模块被配置成用于基于所述错误而判定是否命令刷新所述数据的部分或全部;以及所述一个或多个存储器芯片,与所述存储器控制器电路通信,所述一个或多个存储器芯片各自包括:存储器阵列;刷新模块,所述刷新模块被配置成用于响应于刷新命令而刷新所述存储器阵列中的所述数据的部分或全部;以及...

【专利技术属性】
技术研发人员:J黄B雷J万N杨
申请(专利权)人:桑迪士克科技有限责任公司
类型:发明
国别省市:美国,US

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

1