一种存储器的纠错方法、纠错装置和数据刷新方法

文档序号:26594562发布日期:2021-09-10 22:01阅读:170来源:国知局
一种存储器的纠错方法、纠错装置和数据刷新方法

1.本发明涉及半导体器件及其制造领域,特别涉及一种存储器的纠错方法和装置以及一种存储器的数据刷新方法。


背景技术:

2.半导体存储器件的特点可为易失性的或非易失性的,尽管易失性半导体存储器件可以高速执行读取操作和写入操作,但是在断电状态下存储在易失性半导体存储器件中的内容会丢失。相反,非易失性半导体存储器件的特点是无论是否加电均保留存储的内容。闪存器件(flash memory)是典型的非易失性半导体存储器件的示例,闪存器件可以被广泛地用作数据存储介质。
3.随着对大容量存储装置的需求增大,正在广泛的使用每单元存储多比特的多级单元存储器件或多比特存储器件。在采用多级单元的存储器件中,可以在浮栅或电荷俘获层中注入不同数量的电子可以得到不同的阈值电压,从而表示不同的逻辑态,以多层单元(multi

level cell,mlc)nand flash为例,在读取数据时,通过在栅极施加3个不同的读取电压,来区分四个逻辑态。
4.然而存储单元的阈值电压通常随着存储器件的特性、时间的流逝和/或外围温度而变化,例如浮栅或电荷俘获层中的电子会随着时间的增加逐渐流失,使存储单元的阈值电压减小,当存储单元的阈值电压从高于相对应的读取电压减小到低于相对应的读取电压的电压,将会导致存储单元产生读取错误,称为数据保持错误(data retention error),数据保持错误会随着存储时间的增加逐渐增多。差错控制编码(error correcting code,ecc)可以纠正读出数据的错误,是保证写入数据和读出数据的一致性,提高存储系统可靠性的重要手段。但ecc也有一定的纠错范围,如果读出数据的原始误码率较高,将会超出差错控制编码的纠错能力,无法正确的恢复出写入的数据。
5.参考图1所示,为目前一种数据存储示意图,横坐标为阈值电压(threhold voltage),纵坐标为存储单元的数量,图中以e、p1、p2、p3态为例进行说明,实线表示数据写入到闪存中的零时刻存储单元的阈值电压所形成的初始阈值电压分布态,虚线表示经过一段存储时间后闪存的阈值电压分布态,从图中可以看出,经过一段存储时间后,由于存储单元所保持的电荷泄漏,导致闪存的阈值电压分布态向阈值电压较小的一侧偏移,即分布态左移,如果这时候使用数据写入零时刻所使用的读电压vread1、vread2、vread3对闪存进行读操作,将会导致读出数据的误码率较高。很有可能无法通过ecc校验,无法得到正确的存储数据。
6.数据保持错误是nand flash数据错误中最主要的成分,对nand flash可靠性影响最大,数据存储后最终能够被正确读出时所对应的最长存储时间成为数据保持(data retention)时间,如何延长data retention时间,降低数据保持错误,是本领域重要的研究方向。


技术实现要素:

7.有鉴于此,本技术的目的在于提供一种存储器的纠错方法及装置,能够延长数据保持时间,降低数据保持错误。
8.为实现上述目的,本技术有如下技术方案:
9.一种存储器的纠错方法,包括:
10.确定阈值电压分布态的初始电压位置,所述阈值电压分布态的初始电压位置是数据在零时刻写入到所述存储器的存储单元中的阈值电压所形成的;
11.确定所述阈值电压分布态的左移电压位置,所述阈值电压分布态的左移电压位置为经过一段存储时间后所述存储器的存储单元中的阈值电压向电压变小的方向偏移所形成的;
12.根据所述阈值电压分布态的初始电压位置和左移电压位置,删除所述阈值电压分布态的至少一个分布态,以增大所述阈值电压分布态之间的电压间隔。
13.可选地,所述阈值电压分布态包括固定分布态和可调分布态;
14.所述删除所述阈值电压分布态的至少一个分布态包括:
15.删除所述可调分布态中阈值电压值最大的分布态。
16.可选地,所述阈值电压分布态包括固定分布态和可调分布态;
17.所述删除所述阈值电压分布态的至少一个分布态包括:
18.从所述可调分布态中阈值电压值最大的分布态开始,间隔删除所述可调分布态中的分布态。
19.可选地,所述删除所述阈值电压分布态的至少一个分布态后,形成冗余电压间隔;
20.所述方法还包括:
21.将所述冗余电压间隔平均分配至所述可调分布态,以增大所述可调分布态中每个分布态的电压间隔。
22.可选地,所述删除所述阈值电压分布态的至少一个分布态后,形成冗余电压间隔;
23.所述方法还包括:
24.利用优化函数计算将所述冗余电压间隔分配至所述可调分布态中每个分布态的比例,根据所述比例将所述冗余电压间隔分配至所述可调分布态,以增大所述可调分布态中每个分布态的电压间隔。
25.一种存储器的数据刷新方法,所述数据刷新方法利用上述实施例所述的纠错方法中的存储器;
26.包括:
27.当所述存储器的数据保持时间低于所述存储器当前所处的数据刷新队列对应的数据保持阈值时,利用删除阈值电压分布态的至少一个分布态的存储器继续进行数据刷新。
28.一种存储器的纠错装置,包括:
29.第一确定单元,用于确定阈值电压分布态的初始电压位置,所述阈值电压分布态的初始电压位置是数据在零时刻写入到所述存储器的存储单元中的阈值电压所形成的;
30.第二确定单元,用于确定所述阈值电压分布态的左移电压位置,所述阈值电压分布态的左移电压位置为经过一段存储时间后所述存储器的存储单元中的阈值电压向电压
变小的方向偏移所形成的;
31.删除单元,用于根据所述阈值电压分布态的初始电压位置和左移电压位置,删除所述阈值电压分布态的至少一个分布态,以增大所述阈值电压分布态之间的电压间隔。
32.可选地,所述阈值电压分布态包括固定分布态和可调分布态;
33.所述删除单元具体用于:
34.删除所述可调分布态中阈值电压值最大的分布态。
35.可选地,所述阈值电压分布态包括固定分布态和可调分布态;
36.所述删除单元具体用于:
37.从所述可调分布态中阈值电压值最大的分布态开始,间隔删除所述可调分布态中的分布态。
38.可选地,所述删除所述阈值电压分布态的至少一个分布态后,形成冗余电压间隔;
39.所述装置还包括:
40.分配单元,用于利用优化函数计算将所述冗余电压间隔分配至所述可调分布态中每个分布态的比例,根据所述比例将所述冗余电压间隔分配至所述可调分布态,以增大所述可调分布态中每个分布态的电压间隔。
41.本技术实施例提供了一种存储器的纠错方法及装置,确定阈值电压分布态的初始电压位置,所述阈值电压分布态的初始电压位置是数据在零时刻写入到所述存储器的存储单元中的阈值电压所形成的;确定所述阈值电压分布态的左移电压位置,所述阈值电压分布态的左移电压位置为经过一段存储时间后所述存储器的存储单元中的阈值电压向电压变小的方向偏移所形成的;根据所述阈值电压分布态的初始电压位置和左移电压位置,删除所述阈值电压分布态的至少一个分布态,以增大所述阈值电压分布态之间的电压间隔。
42.由此可见,本技术实施例中通过确定阈值电压分布态的初始电压位置和左移电压位置,能够确定存储器是否发生了数据保持错误,当发生数据保持错误之后,删除阈值电压分布态的至少一个分布态,增大阈值电压分布态之间的电压间隔,以便降低数据保持错误,因此延长了存储单元的数据保持时间。
附图说明
43.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
44.图1为现有技术中一种数据存储示意图;
45.图2为本技术实施例提供的一种存储器的纠错方法的流程图;
46.图3为本技术实施例提供的阈值电压分布态的示意图;
47.图4为本技术实施例提供的存储单元数据保持错误示意图;
48.图5为本技术实施例提供的阈值电压分布态删除示意图;
49.图6为本技术实施例提供另一种阈值电压分布态删除示意图;
50.图7为本技术实施例提供的增大电压间隔后数据保持错误示意图;
51.图8为本技术实施例提供的冗余电压间隔调整示意图;
52.图9为本技术实施例提供的一种冗余电压间隔分配示意图;
53.图10为本技术实施例提供的数据保持错误与数据保持时间的关系图;
54.图11为本技术实施例提供的数据保持错误与数据刷新的关系图;
55.图12为现有技术中一种数据刷新队列的示意图;
56.图13为本技术实施例提供的一种数据刷新队列的示意图;
57.图14为本技术实施例提供的另一种数据刷新队列的示意图;
58.图15为本技术实施例提供的一种存储器的纠错装置的结构图。
具体实施方式
59.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
60.为了便于理解本技术实施例提供的存储器的纠错方法,首先介绍本技术实施例的具体应用场景。非易失存储器包括多个以阵列排列的用于存储数据的存储单元。其中,存储单元分为若干个块(block),每个块又分为若干个页(page),对非易失性存储器的读写、验证、清除等操作均可以以页为单位进行。
61.非易失性存储器包括存储单元阵列、控制逻辑、页缓存器(page buffer,pb)、字线电压产生器和字线译码器,存储单元阵列中的每列存储单元通过一条位线(bit line,bl)连接页缓存器,每行存储单元的栅极通过一条字线(word line,wl)连接字线译码器。控制逻辑通过控制字线电压产生器和页缓存器。在进行读取操作时,控制逻辑通过控制字线电压产生器在选中的字线上施加读取电压,在未选中的字线上施加读通过电压后,控制页缓存器根据不同的读取操作方法对相应位线上存储单元存储的数据进行感测,从而读取出非易失性存储器存储的数据。
62.非易失性存储器主要分为slc(single

level cell)、mlc(milti

level cell)、tlc(trinary

level cell)、qlc(quad

level cell)等多种类型,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比特数据。qlc,即4bit/cell,每个存储单元存储4比特数据,存储单元存在16中存储状态:“0000”、“0001”、“0010”、“0011”、“0100”、“0101”、“0110”、“0111”、“1000”、“1001”、“1010”、“1011”、“1100”、“1101”、“1110”、“1111”。
63.为了确定存储单元的存储状态,从而读出其存储的数据,对slc型的非易失性存储器而言,在选中的字线上执行一次读取操作在字线上施加一次读取电压后感测数据,即可将对应的存储单元中存储的数据读出。但对于mlc和tlc等每存储单元存储多比特数据的非易失性存储器而言,由于每个存储单元的存储状态不止两种,因此需要对同一存储单元进行连续多次的读取操作在字线上施加多个不同大小的读取电压后感测存储的数据,才可以确定存储单元的实际存储状态,将该非易失性存储器存储的数据读出。
64.目前,存储单元的阈值电压通常随着存储器件的特性、时间的流逝和/或外围温度而变化,例如浮栅或电荷俘获层中的电子会随着时间的增加逐渐流失,使存储单元的阈值电压减小,当存储单元的阈值电压从高于相对应的读取电压减小到低于相对应的读取电压的电压,将会导致存储单元产生读取错误,称为数据保持错误(data retention error),数据保持错误会随着存储时间的增加逐渐增多。差错控制编码(error correcting code,ecc)可以纠正读出数据的错误,是保证写入数据和读出数据的一致性,提高存储系统可靠性的重要手段。但ecc也有一定的纠错范围,如果读出数据的原始误码率较不超过ecc纠错范围时,通过ecc纠错可以得到正确的数据,而如果读出数据的原始误码率较高,将会超出差错控制编码的纠错能力,无法正确的恢复出写入的数据。
65.参考图1所示,为目前一种数据存储示意图,横坐标为阈值电压(threhold voltage),纵坐标为存储单元的数量,图中以e、p1、p2、p3态为例进行说明,实线表示数据写入到闪存中的零时刻存储单元的阈值电压所形成的初始阈值电压分布态,虚线表示经过一段存储时间后闪存的阈值电压分布态,从图中可以看出,经过一段存储时间后,由于存储单元所保持的电荷泄漏,导致闪存的阈值电压分布态向阈值电压较小的一侧偏移,即分布态左移,如果这时候使用数据写入零时刻所使用的读取电压vread1、vread2、vread3对闪存进行读操作,将会导致读出数据的误码率较高。很有可能无法通过ecc校验,无法得到正确的存储数据。
66.数据保持错误是nand flash数据错误中最主要的成分,对nand flash可靠性影响最大,数据存储后最终能够被正确读出时所对应的最长存储时间成为数据保持(data retention)时间,如何延长data retention时间,降低数据保持错误,是本领域重要的研究方向。
67.基于以上技术问题,本技术实施例提供了一种存储器的纠错方法及装置,确定阈值电压分布态的初始电压位置,所述阈值电压分布态的初始电压位置是数据在零时刻写入到所述存储器的存储单元中的阈值电压所形成的;确定所述阈值电压分布态的左移电压位置,所述阈值电压分布态的左移电压位置为经过一段存储时间后所述存储器的存储单元中的阈值电压向电压变小的方向偏移所形成的;根据所述阈值电压分布态的初始电压位置和左移电压位置,删除所述阈值电压分布态的至少一个分布态,以增大所述阈值电压分布态之间的电压间隔。
68.由此可见,本技术实施例中通过确定阈值电压分布态的初始电压位置和左移电压位置,能够确定存储器是否发生了数据保持错误,当发生数据保持错误之后,删除阈值电压分布态的至少一个分布态,增大阈值电压分布态之间的电压间隔,以便降低数据保持错误,因此延长了存储单元的数据保持时间。
69.基于以上思想,为使本技术的上述目的、特征、优点能够更加明显易懂,下面结合附图对本技术的具体实施方式进行详细说明。
70.首先,需要说明的是,本技术实施例提供的非易失性存储器的读取方法、装置及相关设备,不仅适用于nand闪存存储器,还适用于磁阻存储器(magnetoresistive random access memory,mram)、相变存储器(phase

change random access memory,pcram)、相变存储器和开关(phase

change random access memory and a switch,pcms)、阻性存储器、铁电存储器(ferroelectric ram,fram)、自旋转移转矩存储器(spin torque transfer,
stt)、热辅助的开关存储器(tas)、千足虫存储器(millipede memory)、浮动结栅存储器(fjg ram)、电池备份ram等其他非易失性存储器。该非易失性存储器中每个存储单元可存储3比特甚至更多数据。
71.参考图2所示,为本技术实施例提供的一种存储器的纠错方法的流程图,该方法可以包括:
72.s201,确定阈值电压分布态的初始电压位置。
73.在存储器中,尤其是三维存储器中,可以包括多层存储单元,多层存储单元纵向堆叠,每层可以包括多个存储单元,这样构成三维结构,从而在器件面积有限的情况下得到较大的存储容量,提高存储效率。通常来说,在一个块(block)中,每一层(layer)的存储单元的栅极通过一条字线连接字线译码器,构成一个页(page)。本技术实施例中,三维存储器可以为mlc、tlc、qlc中的一种,其存储单元具有多个阈值电压分布态。
74.存储单元,通常具有多个阈值电压分布态,多个阈值电压分布态的阈值电压不同,多个阈值电压分布态的读取电压也不同。通常来说,低阈值电压分布态的电子流失较慢,而高阈值电压分布态的电子流失较快,也就是高阈值电压分布态的左移较为严重,相较于低阈值电压分布态而言,高阈值电压分布态可能更快的发生数据保持错误。
75.在本技术的实施例中,阈值电压分布态的初始电压位置是数据在零时刻写入到所述存储器的存储单元中的阈值电压所形成的。
76.参考图3所示,为本技术实施例提供的阈值电压分布态的示意图,举例来说,tlc nand闪存器件中,阈值电压分布态可以为(e,p1,p2,

,p7)8个阈值电压分布态,v
refi
为各个分布态之间的读取电压,i为1

7之间的正整数。
77.s202,确定所述阈值电压分布态的左移电压位置。
78.在本技术的实施例中,随着存储器的使用,经过一段存储时间后,由于存储单元所保持的电荷泄漏,导致闪存的阈值电压分布态向阈值电压较小的一侧偏移,即分布态左移,如果这时候使用数据写入零时刻所使用的读取电压v
refi
对闪存进行读操作,将会导致读出数据的误码率较高。也就是说,阈值电压分布态的左移电压位置为经过一段存储时间后所述存储器的存储单元中的阈值电压向电压变小的方向偏移所形成的。
79.s203,根据所述阈值电压分布态的初始电压位置和左移电压位置,删除所述阈值电压分布态的至少一个分布态,以增大所述阈值电压分布态之间的电压间隔。
80.在本技术的实施例中,参考图4所示,为本技术实施例提供的存储单元数据保持错误示意图。图4中示出了两个阈值电压分布态p
i
和p
i+1
,i为大于或等于1的正整数。实线表示数据写入到闪存中的零时刻存储单元的阈值电压所形成的初始阈值电压分布态,记录了阈值电压分布态的初始电压位置,虚线为经过一段存储时间后闪存的阈值电压分布态,记录了阈值电压分布态的左移电压位置,p
i+1
相较于p
i
而言,具有更高的阈值电压,因此p
i+1
分布态的电子流失较快,p
i+1
分布态的阈值电压左移更快。
81.在零时刻,两个分布态p
i
和p
i+1
,的初始电压位置之间形成有电压间隔,互相之间不重叠,但是经过一段存储时间之后,两个分布态p
i
和p
i+1
的左移电压位置开始交叠,形成阴影区域,即数据保持错误区域。
82.在数据保持错误时,为了降低数据保持错误,延长数据保持时间,此时可以删除阈值电压分布态的至少一个分布态,以增大阈值电压分布态之间的电压间隔(margin)。
83.作为一种可能的实现方式,在tlc nand闪存器件中,阈值电压分布态可以为(e,p1,p2,

,p7)8个阈值电压分布态,相邻两个阈值电压分布态之间容易产生数据保持错误。当p7分布态的电压阈值左移较为严重时,p6分布态和p7分布态之间出现了数据保持错误,此时可以删除p6分布态,增大p5分布态和p7分布态之间的电压间隔,在一段时间内,利用删除p6分布态的剩余7个分布态进行闪存的存储工作,p5分布态和p7分布态之间不会产生读取错误,参考图5所示,为本技术实施例提供的阈值电压分布态删除示意图。
84.在实际应用中,通常而言,在tlc nand闪存器件中,阈值电压分布态e和p7为固定分布态,即固定分布态为阈值电压处于两端的阈值电压分布态或固定分布态为阈值电压最低的分布态和阈值电压最高的分布态,p1,p2,

,p6为可调分布态,可调分布态的阈值电压位于两个固定分布态的阈值电压之间,这是由存储器的特性决定的。因此当p7分布态的电压阈值左移较为严重时,p6分布态和p7分布态之间出现了数据保持错误,就可以删除p6分布态,删除p6分布态之后,p5分布态和p7分布态之间形成电压间隔,p5和p7在一段存储时间之内,不会出现数据保持错误,延长数据保持时间。
85.作为另一种可能的实现方式,在tlc nand闪存器件中,相邻两个阈值电压分布态之间容易产生数据保持错误,即p7分布态和p6分布态之间容易产生数据保持错误,p4分布态和p5分布态之间容易产生数据保持错误,此时可以间隔删除可调分布态中的某些分布态,以增加分布态之间的电压间隔,降低数据保持错误,延长数据保持时间。
86.参考图6所示,为本技术实施例提供另一种阈值电压分布态删除示意图。p6分布态和p7分布态之间出现了数据保持错误,此时可以删除p6分布态,增大p5分布态和p7分布态之间的电压间隔,p4分布态和p5分布态之间容易出现数据保持错误,此时可以删除p4分布态,增大p3分布态和p5分布态之间的电压间隔。在一段时间内,利用删除p6分布态和p4的剩余6个分布态进行闪存的存储工作,p5分布态和p7分布态之间不会产生读取错误,p3分布态和p5分布态之间不会产生读取错误。
87.图6中所示的删除分布态是从可调分布态中阈值电压值最大的分布态开始删除,即从p6分布态开始删除,进而间隔删除p4分布态。由于高阈值电压分布态的电压左移更为严重,这样从高阈值电压分布态开始删除,可以尽最大可能的延长数据保持时间。
88.本技术实施例列举了删除阈值电压分布态的两种可能的实现方式,在实际应用中,可以删除任意一个或多个阈值电压分布态,以增大不同阈值电压分布态之间的电压间隔,就能够实现降低数据保持错误,延长数据保持时间。
89.在实际应用中,在tlc nand闪存器件中,当p7分布态的电压阈值左移较为严重时,可以删除p6分布态,增大p5分布态和p7分布态之间的电压间隔。参考图7所示,为本技术实施例提供的增大电压间隔后数据保持错误示意图。由图可以看出,随着p5分布态和p7分布态之间的电压间隔增大,数据保持错误呈指数级下降,但是在p5分布态和p7分布态之间的电压间隔达到一定阈值时,数据保持错误的下降趋势变缓甚至没有变化。也就是说,删除p6分布态之后,p5分布态和p7分布态之间的电压间隔较大,删除p6分布态之后的电压间隔,其中一部分用于降低p5分布态和p7分布态之间的数据保持错误,另一部分形成冗余电压间隔(spared margin),对于降低p5分布态和p7分布态之间的数据保持错误效果较低。
90.在形成冗余电压间隔之后,为了进一步降低数据保持错误,延长数据保持时间,可以将冗余电压间隔分配至其他阈值电压分布态之间,以增大其他阈值电压分布态之间的电
压间隔。参考图8所示,为本技术实施例提供的冗余电压间隔调整示意图。图8中high、middle和low代表闪存的三个页(page)。椭圆实线圈出来的是相邻两个阈值电压分布态可能会发生数据读取错误的位置(error sources),删除p6分布态之后形成的冗余电压间隔(spared margin)可以分配(margin allocation)至可调分布态,以增大可调分布态之间的电压间隔,减少可调分布态的数据保持错误,进一步延长数据保持时间。
91.在进行冗余电压间隔的分配时,可以有如下两种分配方案:
92.作为一种可能的实现方式,可以将冗余电压间隔平均分配至可调分布态中的多个阈值电压分布态,以增大可调分布态中每个阈值电压分布态的之间电压间隔。
93.作为另一种可能的实现方式,可以利用优化函数计算将冗余电压间隔分配至可调分布态中每个分布态的比例,根据比例将冗余电压间隔分配至可调分布态,以增大可调分布态中每个分布态的电压间隔。这种利用优化函数计算出冗余电压间隔分配至可调分布态中每个分布态的比例,按比例分配冗余电压间隔的方法,能够使得合理分配删除一个或多个分布态之后的冗余电压间隔,使得每个分布态之间的数据保持错误达到最低,达到最大化的延长数据保持时间。
94.采用tlc nand闪存器件删除p6分布态之后形成的冗余电压间隔,对冗余电压间隔进行分配作为一种示例,优化函数可以通过以下方式获得:
95.首先使用正态分布来描述tlc nand闪存器件中每个阈值电压分布态,每个阈值电压分布态可以用正态分布的均值μ和方差σ表示:
[0096][0097]
其中,i代表第i个阈值电压分布态,n*为标准正态分布概率密度函数。
[0098][0099]
其中,v
i
为8个阈值分布态的编程决定(program verify)电压,为经过一段存储时间后,第i个阈值电压分布态的向左偏移的均值电压,δv
pp
为编程步进电压。由该公式可以看出,阈值电压分布态随着存储时间的流逝,阈值电压的位置是向左偏移的。
[0100][0101]
其中,σ
ini
为阈值电压分布态的初始方差,为经过一段存储时间后,第i个阈值电压分布态的向左偏移的方差。
[0102][0103]
其中,σ
e
,σ
p
和σ
w
为由闪存器件特性决定的常数。
[0104]
由于阈值电压分布态还受编程擦除次数pe和存储时间t的影响,因此,
[0105][0106]
[0107]
其中,v
s
为8个阈值分布态的编程决定(program verify)电压,s代表第s个阈值电压分布态,x0为阈值电压分布态v0,pe为编程擦除次数,t为存储时间,其余参数为tlc闪存器件的常数。由此公式可以看出,输入不同的存储时间与pe,可获得相应的阈值电压分布态的正态分布函数。
[0108]
其次,在获得阈值电压分布态的正态分布函数之后,之后就可以根据阈值电压分布态的正态分布函数计算数据保持错误的模型,可以用以下方式进行计算:
[0109]
参考图4所示,数据保持错误为两个相邻的阈值电压分布态跨过读取电压面积的积分,
[0110][0111]
其中,cell
num(i)
代表第i个阈值电压分布态的存储单元(cell)个数,p
i
(x)为第i个阈值电压分布态的正态分布函数,vref(i)为第i个阈值电压分布态的读取电压。
[0112]
参考图8所示,当删除tlc闪存器件中的一个分布态,使得tlc闪存器件作为7lc闪存器件继续进行使用后,high、middle和low三个页(page)的数据保持错误可以表示为:
[0113][0114]
最后,在建立阈值电压分布态的数据保持错误模型之后,建立优化函数,调整阈值电压分布态的电压位置μ
i
,使多个阈值电压分布态的数据保持错误最低,此时阈值电压分布态μ
i
之间的电压间隔,为将数据保持错误降到最低的冗余电压间隔的分配方案。
[0115]
参考图9所示,为本技术实施例提供的一种冗余电压间隔分配示意图。当删除tlc闪存器件中的一个分布态,使得tlc闪存器件作为7lc闪存器件继续进行使用后,两端的分布态的位置基于存储器的固定性能电压位置不变,可以调整可调分布态的5个阈值电压分布态的电压位置,即调整第i个阈值电压分布态的正态分布函数p
i
(x)中的μ
i
,i为1

5之间的正整数。
[0116]
f(μ
i
)=n1*mean(e
low
,e
mijdle
,e
upper
)+n2*m*variance(e
low
,e
middle
,e
upper
)
[0117]
μ
i
=argminf(μ
i
)
[0118]
其中,n1和n2为权重因子,n1+n2=1,权重因子的公式或数值本技术实施例不进行具体限定,例如,
[0119][0120][0121]
为了使得high、middle和low三个page的数据保持错误尽可能接近,建立f(μ
i
),mean(e
low
,e
middle
,e
upper
)为三个page的数据保持错误的均值,variance(e
low
,e
middle
,e
upper
)为三个page的数据保持错误的方差,通过设置不同的权重因子,例如修改θ的数值,来设置对均值和方差的不同权重,使用梯度下降,lm算法等最优化算法使f(μ
i
)函数最小,此时可以得到数据保持错误最低情况下的阈值电压分布态的电压位置μ
i
,继而得到数据保持错误
最低情况下的阈值电压分布态μ
i
之间的电压间隔,最终得到将数据保持错误降到最低的冗余电压间隔的分配方案。
[0122]
以上采用对tlc nand闪存器件删除p6分布态之后形成的冗余电压间隔进行优化分配的方案进行简单介绍,对于删除多个分布态之后形成的冗余电压,依旧可以按照上述优化方式进行分配,在此不再赘述。
[0123]
参考图10所示,为本技术实施例提供的数据保持错误与数据保持时间的关系图。由图可知,经过优化函数进行优化后的闪存器件,数据保持时间更长,数据保持错误更低。
[0124]
参考图11所示,为本技术实施例提供的数据保持错误与数据刷新(pe cycles)的关系图。图中所示的存储器差错控制编码纠错范围(ecc strength)为1280字节(b)

16千字节(kb),数据保持时间(retention time)为3天,图中圆形和虚线结合的线条为conv_7lc,代表删除p6分布态之后,剩余7个分布态的闪存器件的数据保持错误与pe cycles的关系,图中圆形和实线结合的线条为prop_7lc,代表删除p6分布态之后,经过冗余电压间隔优化后的剩余7个分布态的闪存器件的数据保持错误与pe cycles的关系。由此可以看出,在相同的数据保持时间下,经过优化函数进行优化后的闪存器件,能够进行更多的数据刷新,闪存器件的使用寿命更长。
[0125]
本技术实施例提供了一种存储器的纠错方法,确定阈值电压分布态的初始电压位置,所述阈值电压分布态的初始电压位置是数据在零时刻写入到所述存储器的存储单元中的阈值电压所形成的;确定所述阈值电压分布态的左移电压位置,所述阈值电压分布态的左移电压位置为经过一段存储时间后所述存储器的存储单元中的阈值电压向电压变小的方向偏移所形成的;根据所述阈值电压分布态的初始电压位置和左移电压位置,删除所述阈值电压分布态的至少一个分布态,以增大所述阈值电压分布态之间的电压间隔。
[0126]
由此可见,本技术实施例中通过确定阈值电压分布态的初始电压位置和左移电压位置,能够确定存储器是否发生了数据保持错误,当发生数据保持错误之后,删除阈值电压分布态的至少一个分布态,增大阈值电压分布态之间的电压间隔,以便降低数据保持错误,因此延长了存储单元的数据保持时间。
[0127]
基于上述实施例提供的存储器的纠错方法,本技术实施例还提供一种存储器的数据刷新方法,本技术实施例提供的数据刷新方法利用上述实施例提供的纠错方法中的存储器。
[0128]
存储器中包括多个块(block),不同blcok的数据保持特性不同,其数据刷新周期也不同,数据保持时间长的block刷新周期更长。参考图12所示,为现有技术中一种数据刷新队列的示意图。由图可知,现有技术中是按照数据刷新周期由长到短建立不同的刷新队列(refresh period)。对每个队列里的block依次对其进行数据刷新操作。随着刷新次数的增加,block被不断磨损,数据保持特性变差,当数据保持时间低于一定阈值时,将block移入下一个刷新时间更短的队列继续刷新。直到最终当其刷新时间低于某阈值时,将其归为bad block不再使用。
[0129]
在本技术的实施例中,当tlc闪存器件最终当其刷新时间低于某阈值时,不将其归为bad block,而是删除tlc闪存器件中的一个分布态,使得tlc闪存器件可以作为7lc闪存器件继续进行使用。参考图13所示,为本技术实施例提供的一种数据刷新队列的示意图。图中示出了按照数据刷新周期由长到短建立不同的刷新队列(refresh period),在block的
刷新时间低于某阈值,将其归为bad block不再使用之前,删除tlc闪存器件中多个阈值分布态中的一个分布态,以7lc闪存器件来进行数据刷新。
[0130]
在实际应用中,参考图14所示,在进行数据刷新时,在将block归为bad block不再使用之前,可以以7lc闪存器件来进行数据刷新,当7lc闪存器件的block刷新时间低于某阈值时,继续删除7lc闪存器件中的一个分布态,使得7lc闪存器件可以作为6lc闪存器件继续进行使用,以6lc闪存器件来继续进行数据刷新,可以一直重复删除分布态,降低block内分布态数量的方式延长数据保持时间,提高数据刷新次数,直至闪存器件内block的分布态数量变为两个后,若数据保持特性继续下降,则最终归为bad block不再使用。
[0131]
基于以上实施例提供的存储器的纠错方法,本技术实施例还提供了存储器的纠错装置150,参考图15所示,包括:
[0132]
第一确定单元151,用于确定阈值电压分布态的初始电压位置,所述阈值电压分布态的初始电压位置是数据在零时刻写入到所述存储器的存储单元中的阈值电压所形成的;
[0133]
第二确定单元152,用于确定所述阈值电压分布态的左移电压位置,所述阈值电压分布态的左移电压位置为经过一段存储时间后所述存储器的存储单元中的阈值电压向电压变小的方向偏移所形成的;
[0134]
删除单元153,用于根据所述阈值电压分布态的初始电压位置和左移电压位置,删除所述阈值电压分布态的至少一个分布态,以增大所述阈值电压分布态之间的电压间隔。
[0135]
可选地,所述阈值电压分布态包括固定分布态和可调分布态;
[0136]
所述删除单元具体用于:
[0137]
删除所述可调分布态中阈值电压值最大的分布态。
[0138]
可选地,所述阈值电压分布态包括固定分布态和可调分布态;
[0139]
所述删除单元具体用于:
[0140]
从所述可调分布态中阈值电压值最大的分布态开始,间隔删除所述可调分布态中的分布态。
[0141]
可选地,所述删除所述阈值电压分布态的至少一个分布态后,形成冗余电压间隔;
[0142]
所述装置还包括:
[0143]
分配单元,用于利用优化函数计算将所述冗余电压间隔分配至所述可调分布态中每个分布态的比例,根据所述比例将所述冗余电压间隔分配至所述可调分布态,以增大所述可调分布态中每个分布态的电压间隔。
[0144]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
[0145]
以上所述仅是本技术的优选实施方式,虽然本技术已以较佳实施例披露如上,然而并非用以限定本技术。任何熟悉本领域的技术人员,在不脱离本技术技术方案范围情况下,都可利用上述揭示的方法和技术内容对本技术技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本技术技术方案的内容,依据本技术的技术实质对以上实施例所做的任何的简单修改、等同变化及修饰,均仍属于本技术技术方案保护的范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1