非易失性存储系统及其读取方法与流程

文档序号:16236893发布日期:2018-12-11 22:41阅读:199来源:国知局
非易失性存储系统及其读取方法与流程
本发明主要涉及非易失性存储器,尤其是涉及一种非易失性存储系统及其读取方法。
背景技术
在非易失性存储器件中,即使在移除电源时也能保持数据。非易失性存储器件的示例是只读存储器(rom)、电可擦除可编程rom(eeprom)、闪速存储器(flashmemory,坚称闪存)等等。可以将闪存分类为nor型闪存和nand型闪存。数据保持(dataretention)特性是影响闪存,例如nand型闪存的数据存储可靠性的重要特征。闪存中的己编程存储单元的阈值电压可以因电荷丢失等等原因而改变或偏移,这会降低读取操作期间的可靠性。技术实现要素:本发明提供一种非易失性存储系统及其读取方法,可以改善读取操作的可靠性。根据本发明的一个方面一种非易失性存储系统,包括:存储单元阵列,具有多个存储单元;字线电压产生器,用于产生提供给所述多个存储单元的第一尝试读取电压和第二尝试读取电压,其中所述第一尝试读取电压和第二尝试读取电压适于将处于最高态的存储单元按照阈值电压分为三个部分,所述第二尝试读取电压小于所述第一尝试读取电压;控制逻辑,配置为确定处于最高态下的存储单元中,阈值电压高于所述第一尝试读取电压的第一部分存储单元的第一数量以及阈值电压介于所述第一尝试读取电压和第二尝试读取电压之间的第二部分存储单元的第二数量;电压偏移确定模块,根据所述第一数量和所述第二数量确定对应所述最高态的第一阈值电压偏移量,以及根据所述第一阈值电压偏移量确定所述最高态以外的分布态的第二阈值电压偏移量。在本发明的一实施例中,所述电压偏移确定模块包括索引模块,所述索引模块中预设所述第一阈值电压偏移量与所述第一数量和第二数量的对应关系,所述控制逻辑以所述第一数量和第二数量查询所述索引模块以获取所述第一阈值电压偏移量。在本发明的一实施例中,所述索引模块独立于所述存储单元阵列。在本发明的一实施例中,所述索引模块为所述存储单元阵列中的索引区域,所述索引区域具有多个索引存储单元。在本发明的一实施例中,所述存储单元阵列、字线电压产生器和控制逻辑是集成在非易失性存储器中,所述电压偏移确定模块所述独立于非易失性存储器,其中所述控制逻辑与所述电压偏移确定模块之间具有传送所述第一数量、所述第二数量、所述第一阈值电压偏移量和所述第二阈值电压偏移量的接口。在本发明的一实施例中,根据所述第一阈值电压偏移量与所述第二阈值电压偏移量的函数关系,利用所述第一阈值电压偏移量确定所述第二阈值电压偏移量。在本发明的一实施例中,所述第二尝试读取电压大于或等于所述多个存储单元在所述最高态下的初始阈值电压的最小值。在本发明的一实施例中,在所述第一阈值电压偏移量与所述第一数量和第二数量的对应关系中,所述第一数量和第二数量的一系列数值是按照指数关系量化的。在本发明的一实施例中,每个所述存储单元具有2n个分布态,n≥0。在本发明的一实施例中,非易失性存储器还包括字线译码器,用于向所述多个存储单元提供所述第一尝试读取电压和第二尝试读取电压。在本发明的一实施例中,非易失性存储器还包括页缓存器,用于临时地存储已从所述多个存储单元中读出的数据位,所述控制逻辑连接所述页缓存器。本发明还提出一种非易失性存储器的读取方法,包括以下步骤:向存储单元阵列的多个存储单元分别提供第一尝试读取电压和第二尝试读取电压,其中所述第一尝试读取电压和第二尝试读取电压适于将处于最高态的存储单元按照阈值电压分为三个部分,所述第二尝试读取电压小于所述第一尝试读取电压;确定处于最高态下的存储单元中,阈值电压高于所述第一尝试读取电压的第一部分存储单元的第一数量以及阈值电压介于所述第一尝试读取电压和第二尝试读取电压之间的第二部分存储单元的第二数量;根据所述第一数量和所述第二数量确定对应所述最高态的第一阈值电压偏移量,以及根据所述第一阈值电压偏移量确定所述最高态以外的分布态的第二阈值电压偏移量。在本发明的一实施例中,根据所述第一数量和所述第二数量确定所述第一阈值电压偏移量的步骤包括:以所述第一数量和第二数量查询所述第一阈值电压偏移量与所述第一数量和第二数量的对应关系,以获取所述第一阈值电压偏移量。在本发明的一实施例中,所述第二尝试读取电压大于或等于所述多个存储单元在所述最高态下的最小阈值电压。在本发明的一实施例中,在所述第一阈值电压偏移量与所述第一数量和第二数量的对应关系中,所述第一数量和第二数量的一系列数值是按照指数关系量化的。在本发明中,能够通过2次读取操作可以确定最高态下阈值电压在不同电压区间的分布数量,从而确定阈值电压偏移量,进而找到重读纠错(readretry)所需要的电压。这大大降低了在非易失性存储器做重读纠错的过程中所需要的读操作的次数,能够大大的节省重读纠错所需要的时间,能够提高非易失性存储器的性能,降低非易失性存储器在重读纠错操作中和控制器之间的延时。并且,本发明的实施例不要求多个分布态的存储单元个数分布均匀,符合实际的应用条件。附图说明为让本发明的上述目的、特征和优点能更明显易懂,以下结合附图对本发明的具体实施方式作详细说明,其中:图1是示出一种非易失性存储器件的电路框图。图2a是示出图1所示非易失性存储器读取操作示意图。图2b是示出图1所示非易失性存储器阈值电压漂移示意图。图3是根据本发明一实施例的非易失性存储器件的电路框图。图4是根据本发明一实施例的非易失性存储系统的电路框图。图5是根据本发明一实施例的非易失性存储器件的读取方法流程图。图6是根据本发明一实施例的估计阈值电压偏移的示意图。图7是根据本发明一示例的阈值电压偏移量与存储单元数量的函数关系。图8是根据本发明另一示例的阈值电压偏移量与存储单元数量的函数关系。具体实施方式为让本发明的上述目的、特征和优点能更明显易懂,以下结合附图对本发明的具体实施方式作详细说明。在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其它不同于在此描述的其它方式来实施,因此本发明不受下面公开的具体实施例的限制。如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其他的步骤或元素。应当理解的是,当单元或模块被描述为“连接”其它单元、模块或块时,其可以指直接连接,或者与其它单元、模块或块通信,或者可以存在中间的单元、模块或块,除非上下文明确指明其它方式。本文所使用的术语“和/或”可包括一个或多个相关列出项目的任意与所有组合。为了便于理解本申请实施例提供的读取方法,首先介绍本申请实施例的具体应用场景。非易失性存储器包括多个以矩阵排列的用于存储数据的存储单元管。其中,存储单元分为若干个块(block),每个块又分为若干个页(page),对非易失性存储器的读写、验证、清除等操作均可以页为单位进行。图l是示出一种非易失性存储器的电路框图。该非易失性存储器包括存储单元阵列10、控制逻辑20、页缓存器(pagebuffer,pb)30、字线电压产生器40和字线译码器50。存储单元阵列10中的每列存储单元通过一条位线(bitline,bl)连接页缓存器30,每行存储单元的栅极通过一条字线(wordline,wl)连接字线译码器50。控制逻辑20用于控制页缓存器30和字线电压产生器40。在进行读取操作时,控制逻辑20通过控制字线电压产生器40在选中的字线上施加读取电压、在未选中的字线上施加读通过电压后,控制页缓存器30根据不同的读取操作方法对相应位线上存储单元存储的数据进行感测,从而读取出非易失性存储器存储的数据。目前,非易失性存储器主要分为slc(single-levelcell)、mlc(multi-levelcell)和tlc(trinary-levelcell)三种类型。slc,即1bit/cell,每个存储单元存储1比特数据,存储单元只存在两种存储状态:“0”和“1”。mlc,即2bit/cell,每个存储单元存储2比特数据,存储单元存在四种存储状态:“00”、“01”、“10”和“11”。tlc,即3bit/cell,每个存储单元存储3比特数据,存储单元存在八种存储状态:“000”、“001”、“010”、“011”、“100”、“101”、“110”和“111”。可以理解非易失性存储器的存储单元可存储多于3比特数据。为了确定存储单元的存储状态,从而读出其存储的数据,对slc型的非易失性存储器而言,在选中的字线上执行一次读取操作在字线上施加一次读取电压后感测数据,即可将对应的存储单元中存储的数据读出。但对于mlc和tlc等每存储单元存储多比特数据的非易失性存储器而言,由于每个存储单元的存储状态不止两种,因此需要对同一存储单元进行连续多次的读取操作在字线上施加多个不同大小的读取电压后感测存储的数据,才可以确定存储单元的实际存储状态,将该非易失性存储器存储的数据读出。以mlc为例,其具有四种存储状态,可以使用图2a所示的3个读取电压r0、r1和r2进行读取。然而,存储在存储阵列中的数据放置一段时间后其分布态会左移,如图2b所示。造成分布态左移的原因是电荷存储层所存储的电荷丢失。分布态左移后,如果还是采用原来的读取电压r0、r1、r2读取存储在阵列中的数据,将会有较大的误码率,很有可能无法通过ecc(纠错控制编码)校验,无法得到正确的存储数据。一种解决的方法,是以一定的间隔为单位,不断地增大或减小读取电压,直到找到最优的电压点。另一种方法是通过三次读取操作来得到三个读电压之间的两个区间的存储单元的数量a和b来判断当前读取电压所在的分布态位置。如果a大于b就增大读取电压再次进行搜索,如果a小于b就减小读取电压再次进行搜索,直到找到合适的位置。然而这种方法一次搜索就需要三次,并且需要多次搜索才能找到合适位置,这也浪费了大量的读取操作时间。本发明的实施例描述非易失性存储器的读取方法,可以改善读取操作的可靠性,尤其是在己编程存储单元的阈值电压可以因电荷丢失等等原因而改变或偏移时,仍然可以准确地读出存储数据。基于上述思想,为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请的具体实施方式做详细的说明。首先需要说明的是,本申请实施例提供的非易失性存储器的读取方法、装置及相关设备,不仅适用于如图1所示的nand闪存存储器,还适用于磁阻存储器(magnetoresistiveram,mram)、相变存储器(phase-changeram,pcm、pram)、相变存储器和开关(phase-changeram,pcms)、阻性存储器、铁电存储器(ferroelectricram,f-ram、feram)、自旋转移转矩存储器(spintorquetransfermemory,stt)、热辅助的开关存储器(tas)、千足虫存储器(millipedememory)、浮动结栅存储器(fjgram)、电池备份ram等其他非易失性存储器。该非易失性存储器中每个存储单元可存储1比特、2比特甚至更多数据。图3是根据本发明一实施例的非易失性存储器的电路框图。参考图3所示,本实施例的非易失性存储器300可包括存储单元阵列310、控制逻辑320、页缓存器330、字线电压产生器340、字线译码器350以及电压偏移确定模块360。存储单元阵列310可具有多个存储单元。存储单元阵列310的一种示例性结构可参考图1所示,排列成多个行和多个列,每列存储单元通过一条位线bl连接页缓存器330,每行存储单元的栅极通过一条字线wl连接字线译码器350。页缓存器330可用于临时地存储已从存储阵列读出的数据位。字线电压产生器340可产生用于施加到字线的电压,例如编程电压、读取电压等。控制逻辑320用于控制页缓存器330和字线电压产生器340。在进行读取操作时,控制逻辑320通过控制字线电压产生器340在选中的字线上施加读取电压、在未选中的字线上施加读通过电压后,控制页缓存器330根据不同的读取操作方法对相应位线上存储单元存储的数据进行感测,从而读取出非易失性存储器存储的数据。由于存储单元阵列310中存储单元的阈值电压的漂移,可每隔一段时间进行重读纠错(readretry)以确定新的读取电压。为此,字线电压产生器340可产生提供给存储单元阵列310的多个存储单元的第一尝试读取电压read1和第二尝试读取电压read2。第二尝试读取电压read2小于第一尝试读取电压read1。尝试读取电压read1和read2的选取,适于将处于最高态的存储单元按照阈值电压分为三个部分a、b和c,并且read2小于read1。如图6所示,c为阈值电压大于read1的第一部分,b为阈值电压介于read2和read1之间的第二部分,以及a为阈值电压小于read2的第三部分。例如,第二尝试读取电压read1大于或等于多个存储单元在最高态下的初始阈值电压(图6中虚线部分)的最小值。当使用第一尝试读取电压read1来读取各存储单元时,阈值电压高于read1的存储单元将呈现关闭状态,阈值电压低于read1的存储单元将呈现打开状态。对于第二尝试读取电压read2也是如此。页缓存器330可以感测这些不同的状态,并且被控制逻辑320读取。控制逻辑320配置为确定处于最高态下的存储单元中,阈值电压高于第一尝试读取电压read1的第一部分存储单元的第一数量c以及阈值电压介于第一尝试读取电压read1和第二尝试读取电压read2之间的第二部分存储单元的第二数量b。电压偏移确定模块360可以根据第一数量c和第二数量b确定对应最高态的第一阈值电压偏移量la(参考图6,其为实线表示的当前阈值电压和虚线表示的初始阈值电压间的差值),以及根据第一阈值电压偏移量la确定最高态以外的分布态的第二阈值电压偏移量。在此,本申请的发明人发现第一数量c和第二数量b与第一阈值电压偏移量la之间存在能够被确定的关系,因此能够通过b和c来确定最高态下的阈值电压偏移量la。这一关系的原理将在后文展开描述。并且,可以进一步通过最高态下的阈值电压偏移量la与其他分布态的第二阈值电压偏移量的关系,来确定其他分布态的第二阈值电压偏移量。在确定了各分布态下的第二阈值电压偏移量后,可以确定各分布态下的读取电压。在一些实施例中,可以通过预设了第一阈值电压偏移量la与第一数量c和第二数量b的对应关系的索引模块来实现电压偏移确定模块360。在使用时,可以由控制逻辑320以b和c查询索引模块以获取第一阈值电压偏移量la。这种方式耗费的计算资源较低。在一个实施例中,索引模块可以独立于存储单元阵列。在另一个实施例中,索引模块可为存储单元阵列310中的索引区域,这一索引区域具有多个索引存储单元。在其他实施例中,可以通过能根据函数关系,利用第一数量c和第二数量b实时地计算第一阈值电压偏移量la的计算模块来实现电压偏移确定模块360。在一个实施例中,在第一阈值电压偏移量la与第一数量c和第二数量b的对应关系中,第一数量和第二数量的一系列数值是按照指数关系量化的。经过量化后,可以大大减小所需要存储的la的数目,节约存储空间。在一些实施例中,如图3所示,电压偏移确定模块360可以是非易失性存储器300的一部分。在另一些实施例中,如图4所示,电压偏移确定模块360可以是用于控制非易失性存储器300的存储控制器400的一部分。在该实施例中,控制逻辑340与电压偏移确定模块340之间具有接口。控制逻辑340可通过接口传送第一数量、第二数量给电压偏移确定模块340,电压偏移确定模块340可通过接口传送第一阈值电压偏移量和第二阈值电压偏移量给电压偏移确定模块340。另外,本发明的实施例可根据第一阈值电压偏移量与第二阈值电压偏移量的函数关系,利用第一阈值电压偏移量确定第二阈值电压偏移量。通过实际测量的数据来建立数学模型来确定最高分布态与其他分布态的阈值电压的数学模型关系,该模型包括但不限于一次、二次、三次、指数、对数等函数关系。图5是根据本发明一实施例的非易失性存储器的读取方法流程图。参考图5所示,本实施例的读取方法可包括如下步骤:在步骤502,向存储单元阵列的多个存储单元分别提供第一尝试读取电压和第二尝试读取电压,第二尝试读取电压小于第一尝试读取电压;在步骤504,确定处于最高态下的存储单元中,阈值电压高于第一尝试读取电压的第一部分存储单元的第一数量以及阈值电压介于第一尝试读取电压和第二尝试读取电压之间的第二部分存储单元的第二数量;在步骤506,根据第一数量和第二数量确定对应最高态的第一阈值电压偏移量,以及根据第一阈值电压偏移量确定最高态以外的分布态的第二阈值电压偏移量。本实施例的方法可以在图2、图3或者其变化的硬件环境中实施。本实施例的其他细节可以参考前文所描述,在此不再展开。回到图6所示,下面描述本申请中根据存储单元在最高态下阈值电压的分布数量c和b得到最高态阈值电压偏移量的原理:1、根据概率论的相关知识有如下结论:pa+pb+pc=1其中pa,pb,pc分别表示存储单元分布在区域a,b,c的概率,sum为处于最高阈值电压分布态的存储单元总个数为sum,a、b、c分别表示分布在区域a、b、c中的存储单元数量;2、由(1)推导可得:pa+(a+1)pc=1其中a=b/c=pb/pc;3、假设存储单元分布为正态分布,根据分布函数、概率密度、积分函数的相关知识可得:其中f0(x)为均值为0,方差为σ2的正态分布的分布函数;4、最后可以得到:f0(-3σ+la)-f0(-3σ)+(a+1)[f0(3σ)-f0(-3σ+la+b)]=1由此确定了一个b、c和最高态阈值电压偏移量的函数关系,这个函数关系式是一个带有变限积分的隐函数关系式。在一个实现中,可以用数值法求解b、c和la之间的关系。具体地说,首先是两次读取电压的间隔b的选择。根据图6可以知道,b越小则能够估计的阈值电压偏移量越大。当lc≤0时,不再有估计阈值电压向左偏移量的功能;当la≤-b时,不再有估计阈值电压向右偏移量的功能。换句话说本方法能够估计的阈值电压偏移量的范围是-b至6σ-b,因此为了获得合适范围的向左和向右的阈值电压偏移量的估计范围,需要根据不同的应用环境选择不同的b。其次b和c与la的关系表的建立与求解。在一个示例中,可以得到如图7所示的阈值电压偏移量与存储单元数量的函数关系。在这一示例中,阈值电压偏移量la是存储单元数量b和c的函数。作为简化,可以得到如图8所示的另一示例的阈值电压偏移量与存储单元数量的函数关系,在这一示例中,阈值电压偏移量la是存储单元比值b/c的函数。进一步,根据前面关系推导和图8可以知道,la是与b/c相关的一个函数。当b/c为一个常数时,la是一个唯一确定的常数。如果将b和c全部按照指数型的关系进行量化(例如,c1=b1=20,c2=b2=21,…,cn=bn=215),可以大大减小所需要存储的la元素的个数,只需要记录表中的第一行和第一列的元素即可。如下表1所示,如果按照指数型的关系进行量化,同一条斜线上的b/c是同一个常数。b1b2b3b4b5…bnc1la11la12la13la14la15…la1nc2la21c3la31c4la41c5la51……cnlan1表1尽管上文以存储单元的阈值电压分布为高斯分布为例说明,但可以理解,也可以用其他的分布方式来近似。不论是什么分布都可以用本方法得到a和la之间的关系。与其他技术相比,本申请的实施例能够通过2次读操作就能找到重读纠错所需要的电压,大大降低了在非易失性存储器做重读纠错的过程中所需要的读操作的次数,能够大大的节省重读纠错所需要的时间,能够提高非易失性存储器的性能,降低非易失性存储器在重读纠错操作中和控制器之间的延时。并且,本申请的实施例不要求多个分布态的存储单元个数分布均匀,符合实际的应用条件。本申请使用了特定词语来描述本申请的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一替代性实施例”并不一定是指同一实施例。此外,本申请的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的修改和完善,因此本发明的保护范围当以权利要求书所界定的为准。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1