CN113129983A - 标定阈值电压组的方法、装置及计算机存储介质 - Google Patents
标定阈值电压组的方法、装置及计算机存储介质 Download PDFInfo
- Publication number
- CN113129983A CN113129983A CN201911412072.6A CN201911412072A CN113129983A CN 113129983 A CN113129983 A CN 113129983A CN 201911412072 A CN201911412072 A CN 201911412072A CN 113129983 A CN113129983 A CN 113129983A
- Authority
- CN
- China
- Prior art keywords
- threshold voltage
- voltage group
- alternative
- group
- threshold
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3404—Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
Abstract
本申请公开了一种标定阈值电压组的方法、装置及计算机存储介质,属于计算机存储技术领域。本申请通过存储单元的使用状态确定一个起始搜索电压组,根据起始搜索电压组和预设搜索步长确定出一个错误比特数最小的阈值电压组,将该错误比特数最小的阈值电压组确定为标定后的阈值电压组。由于正确读取存储单元中存储的数据所需的阈值电压组中的阈值电压会随着存储单元的使用状态的变化而发生偏移,因此,根据存储单元的使用状态可以确定一个更加接近偏移后的阈值电压组的起始搜索电压组,如此可以有效减少从起始搜索电压组开始搜索到搜索出错误比特数最小的阈值电压组时所需的搜索次数,从而减小了搜索时长,也就提高了标定过程的效率。
Description
技术领域
本申请涉及计算机存储技术领域,特别涉及一种标定阈值电压组的方法、装置及计算机存储介质。
背景技术
存储介质通常包括多个存储单元,每个存储单元配置有一个阈值电压组,该阈值电压组包括一个或多个阈值电压,且这一个或多个阈值电压能够划分得到多个电压范围,每个电压范围对应一个比特值。在读取存储单元中的数据时,可以读取该存储单元两端的电压差,从前述多个电压范围中获取该电压差所处的电压范围,进而确定获取的电压范围对应的比特值,确定出的比特值即为从该存储单元读取到的数据。其中,阈值电压组中的阈值电压是预先标定的,而阈值电压组中阈值电压的准确性在一定程度上影响从存储单元中读取数据的准确性。
相关技术中,当需要标定阈值电压组中的阈值电压时,随机选择一个起始搜索电压组。基于起始搜索电压组,确定出起始搜索电压组中各个电压的搜索范围,按照各个电压的搜索范围确定出所有的备选阈值电压组。对于每个备选阈值电压组,根据该备选阈值电压组从存储单元中多次读取数据,确定多次读取数据的错误率,将该错误率作为该备选阈值电压组对应的错误率。之后,可以从所有备选阈值电压组中选择对应的错误率最低的备选阈值电压组,将最终选择的备选阈值电压组确定为标定后的阈值电压组。但这种标定方法耗费的搜索时长较长,从而导致标定过程的效率较低。
发明内容
本申请实施例提供了一种标定阈值电压组的方法、装置及计算机存储介质,可以减少标定阈值电压过程中的搜索次数。所述技术方案如下:
一方面,提供了一种标定阈值电压组的方法,所述方法包括:
根据存储单元的使用状态确定阈值电压组的起始搜索电压组,所述起始搜索电压组包括与所述阈值电压组中的各个阈值电压一一对应的各个起始搜索电压;
根据所述起始搜索电压组和预设搜索步长,查找错误比特数最小的阈值电压组,所述错误比特数是指按照阈值电压组读取数据时,读取的数据与原数据相比比特值发生翻转的数量;
将所述错误比特数最小的阈值电压组确定为标定后的阈值电压组。
可选地,所述根据存储单元的使用状态确定阈值电压组的起始搜索电压组,包括:
根据所述存储单元的使用状态确定一个或多个备选起始电压组,所述一个或多个备选起始电压组中每个备选起始电压组用于指示在所述存储单元的使用状态的影响下,初始阈值电压组中各个阈值电压偏移之后的电压组,所述初始阈值电压组是指在使用所述存储单元之前为所述存储单元配置的阈值电压组;
从所述一个或多个备选起始电压组中,确定从所述存储单元中读取数据时能够读取成功的一个备选起始电压组,将确定的备选起始电压组作为所述起始搜索电压组。
可选地,所述存储单元的使用状态包括与多个干扰因素一一对应的多个因素值,所述多个干扰因素是指在使用所述存储单元过程中能够使得所述存储单元的阈值电压组中的阈值电压发生偏移的因素;
所述根据所述存储单元的使用状态确定一个或多个备选起始电压组,包括:
对于所述阈值电压组中任一阈值电压,根据所述初始阈值电压组中与所述阈值电压对应的初始阈值电压、所述多个因素值、以及所述阈值电压的偏移范围与每个干扰因素之间的对应关系,确定每个因素值对应的偏移范围,得到针对所述阈值电压的多个偏移范围,所述多个偏移范围与所述多个因素值一一对应;
确定针对所述阈值电压的多个偏移范围中的重叠范围;
根据针对所述阈值电压组中每个阈值电压的重叠范围确定所述一个或多个备选起始电压组。
可选地,所述根据针对所述阈值电压组中每个阈值电压的重叠范围确定所述一个或多个备选起始电压组,包括:
对于所述阈值电压组中任一阈值电压,从针对所述阈值电压的重叠范围中获取多个备选阈值电压,得到与所述阈值电压对应的多个备选阈值电压;
将与所述阈值电压组中各个阈值电压对应的多个备选阈值电压进行组合,得到所述一个或多个备选起始电压组。
可选地,所述一个或多个备选起始电压组中的各个备选起始电压组按照重叠次数从大到小的顺序进行排序,任一备选起始电压组的重叠次数是指所述任一备选起始电压组中的备选阈值电压所属的重叠范围的重叠次数;
所述从所述一个或多个备选起始电压组中,确定从所述存储单元中读取数据时能够读取成功的一个备选起始电压组,包括:
基于各个备选起始电压组从前到后的排序,依次按照每个备选起始电压组从所述存储单元中读取数据,直至首次成功读取到数据,将首次读取数据成功时的备选起始电压组作为所述能够读取成功的备选起始电压组。
可选地,对于重叠次数相同的备选起始电压组按照命中概率从大到小的顺序进行排序,任一备选起始电压组的命中概率是指按照所述任一备选起始电压组读取数据成功的概率。
可选地,所述根据所述起始搜索电压组和预设搜索步长,查找错误比特数最小的阈值电压组,包括:
根据所述起始搜索电压组和所述预设搜索步长,获取多个备选阈值电压组、以及所述多个备选阈值电压组中每个备选阈值电压组的错误比特数,每个备选阈值电压组中存在一个或多个阈值电压和所述起始搜索电压组中相应阈值电压之间的差值为所述预设搜索步长,其他阈值电压和所述起始搜索电压组中相应阈值电压相同;
如果所述多个备选阈值电压组中存在错误比特数小于所述起始搜索电压组的错误比特数的备选阈值电压组,则将所述错误比特数小于所述起始搜索电压组的错误比特数的备选阈值电压组更新为起始搜索电压组;
根据更新后的起始搜索电压组和所述预设搜索步长,重新执行根据所述起始搜索电压组和所述预设搜索步长,获取多个备选阈值电压组的步骤,直至按照更新后的起始搜索电压组获取的多个备选阈值电压组中不存在错误比特数小于所述更新后的起始搜索电压组的错误比特数的备选阈值电压组,将最后一次更新后的起始搜索电压组作为所述错误比特数最小的备选阈值电压组。
可选地,所述根据更新后的起始搜索电压组和所述预设搜索步长,重新执行根据所述起始搜索电压组和所述预设搜索步长,获取多个备选阈值电压组的步骤之前,还包括:
根据更新后的起始搜索电压组的错误比特数和目标错误比特数之间的差值,对所述预设搜索步长进行调整,其中,调整后的预设搜索步长与所述差值之间呈现正相关关系;
相应地,所述根据更新后的起始搜索电压组和所述预设搜索步长,重新执行根据所述起始搜索电压组和所述预设搜索步长,获取多个备选阈值电压组的步骤,包括:
根据所述更新后的起始搜索电压组和更新后的预设搜索步长,获取多个备选阈值电压组。
可选地,所述多个干扰因素至少包括读次数、写次数、擦写次数以及使用时长中的一者或多者。
第二方面、提供了一种标定阈值电压组的装置,所述装置包括:
第一确定模块,用于根据存储单元的使用状态确定阈值电压组的起始搜索电压组,所述起始搜索电压组包括与所述阈值电压组中的各个阈值电压一一对应的各个起始搜索电压;
查找模块,用于根据所述起始搜索电压组和预设搜索步长,查找错误比特数最小的阈值电压组,所述错误比特数是指按照阈值电压组读取数据时,读取的数据与原数据相比比特值发生翻转的数量;
第二确定模块,用于将所述错误比特数最小的阈值电压组确定为标定后的阈值电压组。
可选地,所述第一确定模块包括:
第一确定子模块,用于根据所述存储单元的使用状态确定一个或多个备选起始电压组,所述一个或多个备选起始电压组中每个备选起始电压组用于指示在所述存储单元的使用状态的影响下,初始阈值电压组中各个阈值电压偏移之后的电压组,所述初始阈值电压组是指在使用所述存储单元之前为所述存储单元配置的阈值电压组;
第二确定子模块,用于从所述一个或多个备选起始电压组中,确定从所述存储单元中读取数据时能够读取成功的一个备选起始电压组,将确定的备选起始电压组作为所述起始搜索电压组。
可选地,所述存储单元的使用状态包括与多个干扰因素一一对应的多个因素值,所述多个干扰因素是指在使用所述存储单元过程中能够使得所述存储单元的阈值电压组中的阈值电压发生偏移的因素;所述第一确定子模块用于:
对于所述阈值电压组中任一阈值电压,根据所述初始阈值电压组中与所述阈值电压对应的初始阈值电压、所述多个因素值、以及所述阈值电压的偏移范围与每个干扰因素之间的对应关系,确定每个因素值对应的偏移范围,得到针对所述阈值电压的多个偏移范围,所述多个偏移范围与所述多个因素值一一对应;
确定针对所述阈值电压的多个偏移范围中的重叠范围;
根据针对所述阈值电压组中每个阈值电压的重叠范围确定所述一个或多个备选起始电压组。
可选地,所述第一确定子模块用于:
对于所述阈值电压组中任一阈值电压,从针对所述阈值电压的重叠范围中获取多个备选阈值电压,得到与所述阈值电压对应的多个备选阈值电压;
将与所述阈值电压组中各个阈值电压对应的多个备选阈值电压进行组合,得到所述一个或多个备选起始电压组。
可选地,所述一个或多个备选起始电压组中的各个备选起始电压组按照重叠次数从大到小的顺序进行排序,任一备选起始电压组的重叠次数是指所述任一备选起始电压组中的备选阈值电压所属的重叠范围的重叠次数;
所述第二确定子模块用于:
基于各个备选起始电压组从前到后的排序,依次按照每个备选起始电压组从所述存储单元中读取数据,直至首次成功读取到数据,将首次读取数据成功时的备选起始电压组作为所述能够读取成功的备选起始电压组。
可选地,对于重叠次数相同的备选起始电压组按照命中概率从大到小的顺序进行排序,任一备选起始电压组的命中概率是指按照所述任一备选起始电压组读取数据成功的概率。
可选地,所述查找模块包括:
获取子模块,用于根据所述起始搜索电压组和所述预设搜索步长,获取多个备选阈值电压组、以及所述多个备选阈值电压组中每个备选阈值电压组的错误比特数,每个备选阈值电压组中存在一个或多个阈值电压和所述起始搜索电压组中相应阈值电压之间的差值为所述预设搜索步长,其他阈值电压和所述起始搜索电压组中相应阈值电压相同;
更新子模块,用于如果所述多个备选阈值电压组中存在错误比特数小于所述起始搜索电压组的错误比特数的备选阈值电压组,则将所述错误比特数小于所述起始搜索电压组的错误比特数的备选阈值电压组更新为起始搜索电压组;
执行子模块,用于根据更新后的起始搜索电压组和所述预设搜索步长,重新执行根据所述起始搜索电压组和所述预设搜索步长,获取多个备选阈值电压组的步骤,直至按照更新后的起始搜索电压组获取的多个备选阈值电压组中不存在错误比特数小于所述更新后的起始搜索电压组的错误比特数的备选阈值电压组,将最后一次更新后的起始搜索电压组作为所述错误比特数最小的备选阈值电压组。
可选地,所述查找模块还包括:
调整子模块,用于根据更新后的起始搜索电压组的错误比特数和目标错误比特数之间的差值,对所述预设搜索步长进行调整,其中,调整后的预设搜索步长与所述差值之间呈现正相关关系;
相应地,所述执行子模块用于:
根据所述更新后的起始搜索电压组和更新后的预设搜索步长,获取多个备选阈值电压组。
可选地,所述多个干扰因素至少包括读次数、写次数、擦写次数以及使用时长中的一者或多者。
另一方面,提供了一种标定阈值电压组的装置,所述标定阈值电压组的装置包括处理器、通信接口、存储器和通信总线;
其中,所述处理器、所述通信接口和所述存储器通过所述通信总线完成相互间的通信;
所述存储器用于存放计算机程序;
所述处理器用于执行所述存储器上所存放的程序,以实现前述提供标定阈值电压组的方法。
另一方面,提供了一种计算机可读存储介质,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现前述提供的标定阈值电压组的方法的步骤。
本申请实施例提供的技术方案带来的有益效果至少包括:
本申请实施例通过存储单元的使用状态确定一个起始搜索电压组,根据起始搜索电压组和预设搜索步长确定出一个错误比特数最小的阈值电压组,将该错误比特数最小的阈值电压组确定为标定后的阈值电压组。由于正确读取存储单元中存储的数据所需的阈值电压组中的阈值电压会随着存储单元的使用状态的变化而发生偏移,因此,根据存储单元的使用状态可以确定一个更加接近偏移后的阈值电压组的起始搜索电压组,如此可以有效减少从起始搜索电压组开始搜索到搜索出错误比特数最小的阈值电压组时所需的搜索次数,从而减小了搜索时长,也就提高了标定过程的效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种标定阈值电压组的方法流程图;
图2是本申请实施例提供的一种确定特征点示意图;
图3是本申请实施例提供的一种标定阈值电压组的装置的结构示意图;
图4是根据本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在对本申请实施例进行详细的解释说明之前,先对本申请实施例涉及的应用场景予以介绍。
存储介质包括成千上万个存储单元(cell),其中,存储单元中储存的是电荷,不同类型的存储单元中储存的电荷数不同。存储单元类型有SLC(Single Level Cell,单层单元)、MLC(Multi Level Cell,多层单元)、TLC(Triple Level Cell,三层单元)等等之分。当存储单元的单元类型为SLC时,该存储单元用于存储1个比特的数据。当存储单元的单元类型为MLC,该存储单元用于存储2个比特的数据。当存储单元的单元类型为TLC,该存储单元用于存储3个比特的数据,依次类推。
由于存储单元的储存的电荷数使得存储单元两端呈现出一定的电压差,因此,在向某个存储单元进行读操作时,需要为该存储单元设置阈值电压组,该阈值电压组可以包括一个或多个阈值电压。根据该阈值电压组即可准确地读取存储单元中存储的数据。
对于存储1个比特的SLC存储单元而言,需要1个阈值电压即可判断该存储单元存储的数据是“0”还是“1”。对于存储2个比特的MLC存储单元而言,则需要3个阈值电压才能判断该存储单元存储的数据是“00”、“01”、“10”、“11”中的哪个。对于存储3个比特的TLC存储单元而言,需要7个阈值电压才能判断该存储单元存储的数据是“000”、“001”、“010”、“100”、“011”、“101”、“110”、“111”中的哪个。
比如,假设存储单元的单元类型为SLC,该存储单元的阈值电压组只包括一个阈值电压,该阈值电压为4V。当对该存储单元进行写操作时,向该存储单元中充入一定数量的电荷。在对该存储单元进行读操作时,如果该存储单元两端的电压差为4.5V。则判断该存储单元中存储的是数据“0”。
假设存储单元的单元类型为MLC,该存储单元的阈值电压组为{3.5,4.0,5.5},也即是该阈值电压组包括多个阈值电压,分别为3.5,4.0,5.5。比如,当执行读操作时,如果该存储单元两端的电压差小于3.5V,则判断该存储单元中存储的是数据“11”。当该存储单元两端的电压差在3.5V和4.0V之间时,则判断该存储单元中存储的是数据“10”。当该存储单元两端的电压差在4V和5.5V之间,则判断该存储单元中存储的是数据“01”,当该存储单元两端的电压差在5.5V以上,则判断该存储单元中存储的是数据“00”。
而在存储介质的使用过程中,对于任一存储单元,读干扰(read disturb)、写干扰(program disturb)、擦写次数(PE cycles)及数据保持(data retention)等干扰因素的影响,会导致存储单元中的电荷数发生变化,进而使得再按照之前设置的阈值电压组从该存储单元中读取数据时会发生较多的比特翻转,也即是从该存储单元中读取的数据同原始写入该存储单元的数据之间存在偏差,导致读操作失败。比如,存储单元上为“0”的比特值被读取成“1”。因此,在存储介质使用一段时间后,需要重新对针对存储单元预先设置的阈值电压组进行标定操作,以保证在读取数据时,读取的数据和原始写入的数据相同。本申请实施例提供的标定阈值电压组的方法就应用于前述需要重新标定阈值电压组的场景中。
图1是本申请实施例提供的一种标定阈值电压组的方法流程图,该标定阈值电压组的方法可以包括如下几个步骤:
步骤101:根据存储单元的使用状态确定阈值电压组的起始搜索电压组,该起始搜索电压组包括与阈值电压组中的各个阈值电压一一对应的各个起始搜索电压。
其中,该阈值电压组包括的阈值电压可以为一个也可以为多个。为了后续便于说明,将读取存储单元中的数据时能够读取准确所需的阈值电压组称为最佳阈值电压组。因此,在本申请实施例中,标定阈值电压组也即是搜索出最佳阈值电压组。
随着存储单元的使用,存储单元中的电荷数发生变化,也即是,存储单元的最佳阈值电压组中的阈值电压随着存储单元的使用状态的变化而发生偏移。进而使得再按照之前设置的阈值电压组从该存储单元中读取数据时会发生较多的比特翻转。因此,在步骤101中,通过存储单元的使用状态确定的起始搜索电压组能够更接近最佳阈值电压组,从而有效减小搜索次数。
在一种可能的实现方式中,步骤101的实现过程包括以下两个步骤:
步骤(1):根据该存储单元的使用状态确定一个或多个备选起始电压组,该一个或多个备选起始电压组中每个备选起始电压组用于指示在该存储单元的使用状态的影响下,初始阈值电压组中各个阈值电压偏移之后的电压组,该初始阈值电压组是指在使用该存储单元之前为该存储单元配置的阈值电压组。
上述初始阈值电压组也即在初始化状态时为该存储单元标定的阈值电压组。随着存储单元的使用状态的变化,最佳阈值电压组不再是初始阈值电压组,而是在初始阈值电压组的基础上发生偏移后的阈值电压组,因此需要通过本申请实时提供的方法重新标定阈值电压组。
在本申请实施例中,将存储单元使用过程中导致存储单元中的电荷数发生变化的因素称之为干扰因素,也即是,干扰因素是指在存储单元的使用过程中能够使得存储单元的阈值电压组中的阈值电压发生偏移的因素。
其中,在存储单元的使用过程中,随着读次数的增多,会对当前的存储单元造成读干扰;随着写次数的增多,会对当前的存储单元造成写干扰;随着擦写次数的增多,会对当前的存储单元造成擦写干扰;随着存储单元存储数据的时长的增长,对当前的存储单元造成数据保持干扰。因此,该多个干扰因素可以包括读次数、写次数、擦写次数以及使用时长等因素中的一个或多者。相应地,存储单元的使用状态可以包括与多个干扰因素一一对应的多个因素值。比如,这多个干扰因素包括读次数、写次、擦写次数以使用时长,则该存储单元的使用状态包括该存储单元的历史总读次数、历史总写次数,历史总擦写次数,历史总使用时长。
此时,根据存储单元的使用状态确定一个或多个备选起始电压组的可能的实现方式为:对于该阈值电压组中任一阈值电压,根据该初始阈值电压组中与该阈值电压对应的初始阈值电压、该多个因素值、以及该阈值电压的偏移范围与每个干扰因素之间的对应关系,确定每个因素值对应的偏移范围,得到针对该阈值电压的多个偏移范围,该多个偏移范围与该多个因素值一一对应;确定针对该阈值电压的多个偏移范围中的重叠范围;根据针对该阈值电压组中每个阈值电压的重叠范围确定一个或多个备选起始电压组。
下面以阈值电压组包括两个阈值电压、多个因素值包括历史总读次数、历史总写次数、历史总擦写次数以及历史总使用时长为例来进一步详细说明上述实现方式。为了便于说明,将阈值电压组包括的两个阈值电压分别称为阈值电压A和阈值电压B。
对于阈值电压A,获取阈值电压A的偏移范围与读次数之间的对应关系,根据该存储单元的历史总读次数以及阈值电压A对应的初始阈值电压,确定出阈值电压A的偏移范围。其中,阈值电压A的偏移范围与读次数之间的对应关系可以通过大数据统计得到。示例地,对于当前待标定的存储单元,预先获取一个与当前待标定的存储单元属于同一类型的多个存储单元,这多个存储单元的初始阈值电压组中的阈值电压A和待标定的存储单元的初始阈值电压组中的阈值电压A相同。配置多个不同的读次数,这多个读次数和前述多个存储单元一一对应。对于这多个存储单元中任一存储单元,对该存储单元多次执行读数据操作,以使该存储单元的读次数达到预先配置的读次数。然后通过人工方式标定出该存储单元的最佳的阈值电压组。对于其他的存储单元也执行上述操作,即可得到每个存储单元在配置的读次数下的最佳的阈值电压组,相当于确定出不同的读次数中每个读次数对应的最佳的阈值电压组。然后根据不同的读次数中每个读次数对应的最佳的阈值电压组即可确定出阈值电压组中该阈值电压A的偏移范围和读次数之间的对应关系。
需要说明的是,上述确定阈值电压A的偏移范围与读次数之间的对应关系仅仅用于举例说明,本申请实施例并不限定该对应关系的具体实现方式。另外,阈值电压A的偏移范围与读次数之间的对应关系具体可以是一个计算模型,向该计算模型中输入该存储单元的历史总读次数以及阈值电压A对应的初始阈值电压,该计算模型即可输出阈值电压A的偏移范围。
按照上述同样的方式可以根据阈值电压A的偏移范围与写次数之间的对应关系,确定阈值电压A的另一个偏移范围。根据阈值电压A的偏移范围与擦写次数之间的对应关系,确定阈值电压A的另一个偏移范围。根据阈值电压A的偏移范围与使用时长之间的对应关系,确定阈值电压A的另一个偏移范围。如此,便可确定出阈值电压A的四个偏移范围,这四个偏移范围是针对历史总读次数的偏移范围、针对历史总写次数的偏移范围、针对历史总擦写次数的偏移范围、针对历史使用时长的偏移范围。确定这四个偏移范围之中的重叠范围,便可得到阈值电压A的重叠范围。其中,阈值电压A的重叠范围可以是一个,也可以是多个,本申请实施例并不限定。
对于阈值电压B,可以根据上述同样的方式确定阈值电压B的重叠范围。根据阈值电压A的重叠范围和阈值电压B的重叠范围,便可确定出一个或多个备选起始电压组。每个备选起始电压组中包括从阈值电压A的重叠范围中确定的一个阈值电压、以及从阈值电压B的重叠范围中确定的一个阈值电压。
当阈值电压组中包括更多数量的阈值电压、和/或、干扰因素中包括其他的干扰因素时,同样可以参考上述方式确定出阈值电压组中每个阈值电压的重叠范围,进而确定出一个或多个备选起始电压组。
其中,根据阈值电压组中每个阈值电压的重叠范围,确定一个或多个备选起始电压组的实现方式可以为:对于该阈值电压组中任一阈值电压,从针对该阈值电压的重叠范围中获取多个备选阈值电压,得到与该阈值电压对应的多个备选阈值电压;将与该阈值电压组中各个阈值电压对应的多个备选阈值电压进行组合,得到该一个或多个备选起始电压组。
由于重叠范围是一个连续的数值区间,因此,从针对该阈值电压的重叠范围中获取多个备选阈值电压的方式可以为:按照预设采样间隔来获取备选阈值电压。
比如,阈值电压A的重叠范围为1V(伏特)至10V,阈值电压B的重叠范围为12V至20V。按照每1V作为一个采样间隔的方式,可以确定出阈值电压A的11个备选阈值电压,分别为1V、2V、3V、4V、5V、6V、7V、8V、9V、10V。以及阈值电压B的9个备选阈值电压,分别为12V、13V、14V、15V、16V、17V、18V、19V、20V。将阈值电压A的11个备选阈值电压和阈值电压B的9个备选阈值电压进行随机的排列组合,便可得到99个备选起始电压组。
在通过步骤(1)确定出一个或多个备选起始电压组之后,还可以对这一个或备选起始电压组进行排序。其中,排序的目的是为了让排序后位置靠前的备选起始电压组能够更接近最佳阈值电压组,以便于后续可以根据排序后的备选起始电压组快速确定出起始搜索电压组。
由于上述各个备选阈值电压中重叠次数越大的备选阈值电压更接近最终标定出的阈值电压组中的阈值电压,因此,在一种可能的实现方式中,这一个或多个备选起始电压组中的各个备选起始电压组可以按照重叠次数从大到小的顺序进行排序,任一备选起始电压组的重叠次数是指该备选起始电压组中的备选阈值电压所属的重叠范围的重叠次数。
其中,备选起始电压组中的备选阈值电压所属的重叠范围的重叠次数可以是指备选起始电压组中各个阈值电压所属的重叠范围的重叠次数的平均值,也可以是指备选起始电压组中各个阈值电压所属的重叠范围的重叠次数的最大值,本申请实施例对此不做具体限定。
上述按照重叠次数从大到小的顺序进行排序之后,对于重叠次数相同的备选起始电压组可以随机排序。进一步地,对于重叠次数相同的备选起始电压组还可以继续按照命中概率从大到小的顺序进行排序,以提高后续搜索的成功率。其中,任一备选起始电压组的命中概率是指按照该备选起始电压组读取数据成功的概率。
按照该备选起始电压组读取数据成功的概率可以预先通过大数据统计得到。示例地,对于当前待标定的存储单元,预先获取一个与当前待标定的存储单元属于同一类型的多个存储单元。按照该备选起始电压组,从这多个存储单元中分别读取数据。对于这多个存储单元中任一存储单元,确定从该存储单元读取的数据和该存储单元中存储的数据是否一致。如果一致,则将该存储单元标记为1,如果不一致,则将该存储单元标记为0。获取这多个存储单元中标记为1的存储单元的数量和这多个存储单元的总数量之间的比值,该比值即为按照该备选起始电压组读取数据成功的概率。
需要说明的是,上述确定按照该备选起始电压组读取数据成功的概率仅仅用于举例说明,本申请实施例对如何确定按照该备选起始电压组读取数据成功的概率的实现方式不做限定。
上述排序后的一个或多个备选阈值电压组还可以称为静态特征表。
为了进一步清楚地说明上述实现方式,可以引入一个坐标系对上述步骤(1)进行解释说明。具体地,可以根据阈值电压组中包括的阈值电压的数量构建一个N维坐标系,N维坐标系中的每个特征点代表一个阈值电压组,每个特征点的每一维坐标用于指示相应阈值电压组中的一个阈值电压。如此,先根据初始阈值电压组确定一个初始区域,该初始区域的中心点为用于指示初始阈值电压组,该初始区域的半径为参考半径。该参考半径可以是由大量历史数据确定得到一个半径值。在一种可能的实现方式中,获取多个历史使用的存储单元的最佳阈值电压组,将这多个历史使用的存储单元的最佳阈值电压组中每个最佳阈值电压组映射到N维坐标系,得到N维坐标系中与各个最佳阈值点集对应的各个点,统计这各个点的覆盖范围,该覆盖范围的半径即可作为上述参考半径。
上述多个干扰因素可以包括擦写次数、写次数、读次数、使用时长,分别标记为PE、PD、RD、DR。对PE,PD,RD,DR中任一干扰因素,确定存储单元的使用状态中与该干扰因素对应的因素值,获取偏移区域和该干扰因素之间的变化规律,根据偏移区域和该干扰因素之间的变化规律、以及该因素值和初始区域,即可确定该因素值对应的偏移区域。该因素值对应的偏移区域相当于在该因素值的影响下上述各个阈值电压的偏移范围在该N维坐标系中的映射区域。
例如,当N维坐标系为一个二维坐标系时,假设初始阈值电压组所指示的点为坐标原点,此时以初始阈值电压组确定的初始区域是指:以坐标原点为中心点,以参考半径划定的一个初始区域Q0,当因素值为PE=1k(1k表示1000)时,也即当前存储单元的使用状态为擦写次数为1k次。根据擦写次数与偏移区域之间的变化规律、以及初始区域Q0,确定出PE=1k时对应的偏移区域为偏移区域Q1。该偏移区域Q1为擦写次数为1000次所对应的偏移区域。
当因素值为DR=1kk时,也即当前存储单元的使用状态为存储数据的时长为1kk倍单位时间,根据数据保持干扰与偏移区域之间的变化规律、以及初始区域Q0,确定出DR=1kk时,对应的偏移区域为偏移区域Q2。该偏移区域Q2为数据保持的时长为1kk倍单位时间时所对应的偏移区域。其中,单位时间为预先设置的时间,在此不做具体限定。
当因素值为RD=1Y(1Y表示1亿次)时,也即当前存储单元的使用状态为读次数为1Y次,根据读次数与偏移区域之间的变化规律、以及初始区域Q0,确定出RD=1Y时对应的偏移区域为偏移区域Q3。该偏移区域Q3为读次数为1Y次所对应的偏移区域.
当因素值为PD=1k时,也即当前存储单元的使用状态为写次数为1k次,根据写次数与偏移区域变化规律、以及初始区域Q0,确定出PD=1k时,对应的偏移区域为偏移区域Q4。该偏移区域Q4为写次数为1k次所对应的偏移区域。
如图2所示,通过上述方式便可获取到四个偏移区域以及这四个偏移区域之间的重叠区域,也即是得到多个不同的重叠区域。每个重叠区域投射到二维坐标系的两个坐标轴上得到的数值区间便是阈值电压组中的两个阈值电压的一个重叠范围。
此时,上述确定备选起始电压组的过程相当于:对于上述N维坐标系中的多个重叠区域中的每个重叠区域,假设为第一重叠区域,从第一重叠区域中确定一个或多个特征点。基于多个重叠区域确定的所有特征点中每个特征点对应的N维坐标相当于上述一个备选起始电压组。
其中,从第一重叠区域中确定一个或多个特征点可以按照固定步长采样的方式进行,也可以按照其他采样的方式进行,本申请实施例对此不做具体限定。
此时,上述对备选起始电压组进行排序的过程相当于:将得到的特征点按照重叠次数从大到小的顺序进行排序,对于重叠次数相同的特征点按照命中概率从大到小的顺序进行排序,任一特征点的重叠次数是指该特征点所在的重叠区域的重叠次数,任一特征点的命中概率是指按照该特征点所指示的阈值电压组读取数据成功的概率。
例如,根据图2中得到的多个重叠区域,从多个重叠区域中确定出多个特征点,这多个特征点在二维坐标系中分别对应特征点1、特征点2、特征点3。特征点1重叠次数为3,特征点2重叠次数为3,特征点3重叠次数2,依据该特征点的重叠次数对该特征点进行排序可以得到如下静态特征表:
{特征点1、特征点2;
特征点3}
而特征点1与特征点2相比,特征点1与特征点2相比命中概率较低,因此将特征点1排到特征点2之前,得到最终的静态表特征表:
{特征点1;
特征点2;
特征点3}
步骤(2):从上述一个或多个备选起始电压组中,确定从该存储单元中读取数据时能够读取成功的一个备选起始电压组,将确定的备选起始电压组作为起始搜索电压组。
由于备选起始电压组对于当前待标定的存储单元不一定适用,因此,为了保证后续标定出的阈值电压组能够成功用于读取数据,需要从一个或多个备选起始电压组中,依次从存储单元中读取数据,将从存储单元中读取数据时能够读取成功的一个备选起始电压组作为起始搜索电压组。
在一种可能的实现方式中,在一个或多个备选起始电压组按照步骤(1)中的方式进行排序情况下,步骤(2)可能的实现方式为:基于排序后的各个备选起始电压组从前到后的排序,依次按照每个备选起始电压组从该存储单元中读取数据,直至首次成功读取到数据,将首次读取数据成功时的备选起始电压组作为该能够读取成功的备选起始电压组。。
确定出的第一个能够读取成功的备选起始电压组为统计出的最接近待标定阈值电压组的备选起始电压组,这样当将第一个能够读取成功的备选起始电压组作为起始搜索电压组搜索待标定的阈值电压组时,可以最大程度上减少搜索次数。
步骤102:根据该起始搜索电压组和预设搜索步长,查找错误比特数最小的阈值电压组,该错误比特数是指按照阈值电压组读取数据时,读取的数据与原数据相比比特值发生翻转的数量。
在一种可能的实现方式中,步骤102可能的实现方式为:
根据该起始搜索电压组和该预设搜索步长,获取多个备选阈值电压组、以及该多个备选阈值电压组中每个备选阈值电压组的错误比特数,每个备选阈值电压组中存在一个或多个阈值电压和该起始搜索电压组中相应阈值电压之间的差值为该预设搜索步长,其他阈值电压和该起始搜索电压组中相应阈值电压相同。
如果该多个备选阈值电压组中存在错误比特数小于该起始搜索电压组的错误比特数的备选阈值电压组,则将该错误比特数小于该起始搜索电压组的错误比特数的备选阈值电压组更新为起始搜索电压组。
根据更新后的起始搜索电压组和该预设搜索步长,重新执行根据该起始搜索电压组和该预设搜索步长,获取多个备选阈值电压组的步骤,直至按照更新后的起始搜索电压组获取的多个备选阈值电压组中不存在错误比特数小于该更新后的起始搜索电压组的错误比特数的备选阈值电压组,将最后一次更新后的起始搜索电压组作为该错误比特数最小的备选阈值电压组。。
其中,错误比特数与阈值电压组之间存在一个对应关系。因此,当获取到多个备选阈值电压组时,根据该对应关系确定出该多个备选阈值电压组中每个备选阈值电压组的错误比特数。其中,在该对应关系中,当备选阈值电压组越接近最佳阈值电压组时,该备选阈值电压组对应的错误比特数越小。也即任一备选阈值电压组为最佳阈值电压组时,该备选阈值电压组对应的错误比特数最小。因此,在本申请实施例,可以将错误比特数作为标定阈值电压组过程中的一个指标。
上述错误比特数与阈值电压组之间的对应关系可以通过历史大数据统计得到。示例地,对于当前待标定的存储单元,预先获取一个与当前待标定的存储单元属于同一类型的多个存储单元。配置多个不同的阈值电压组,对于这多个存储单元中任一存储单元,按照这多个不同的阈值电压组分别读取该存储单元中存储的数据,并确定每次读取数据时的错误比特数,得到这多个不同阈值电压组对应的错误比特数。对每个存储单元均执行上述操作,即可得到这多个阈值电压组中每个阈值电压组的对应的多个错误比特数,对多个阈值电压组中每个阈值电压组的对应的多个错误比特数进行统计,即可得到错误比特数与阈值电压组之间的对应关系。
同样需要说明的是,上述确定错误比特数与阈值电压组之间的对应关系仅仅用于举例说明,本申请实施例对如何确定错误比特数与阈值电压组之间的对应关系的实现方式不做限定。
下面同样可以以根据阈值电压组中包括的阈值电压的数量构建的N维坐标系为例来说明上述步骤102的实现方式:
示例地,当N维坐标系为二维坐标系时,以起始搜索电压组对应的点为起始搜索点,以起始搜索点为中心点,二倍的预设搜索步长为边长获取一个正方形区域,获取该区域边界上位于起始搜索点十字方向的搜索点,得到四个搜索点,这四个搜索点中任一搜索点对应的阈值电压组中的一个阈值电压和起始搜索电压组中的一个阈值电压相同,另一个阈值电压和起始搜索电压组中的另一个阈值电压之间的差值为预设搜索步长。将该十字方向的四个搜索点作为候选搜索点,对于这四个候选搜索点中任一候选搜索点,根据错误比特数与阈值电压组之间的对应关系,确定该候选搜索点对应的阈值电压组的错误比特数,得到这四个候选搜索点中每个候选搜索点对应的错误比特数。同时确定起始搜索电压组的错误比特数,得到起始搜索点对应的错误比特数。后续可以在该十字方向的四个候选搜索点中获取错误比特数比起始搜索点对应的错误比特数更小的候选搜索点。如果没有获取到错误比特数更小的候选搜索点,则将起始搜索点对应的阈值电压组作为最终标定出的阈值电压组。如果获取到错误比特数更小的候选搜索点,则将错误比特数更小的候选搜索点更新为起始搜索点,并返回执行以起始搜索点为中心点,二倍的预设搜索步长为边长获取一个正方形区域的操作。
另外,如果获取到错误比特数更小的候选搜索点,还可以先将该错误比特数更小的搜索点作为待定的起始搜索点,然后对该待定的起始搜索点进行校验,在检验通过之后,再将该待定的起始搜索点作为更新后的起始搜索点。
上述校验过程可以为:获取正方形区域边界上位于起始搜索点X方向的搜索点,得到四个搜索点,这四个搜索点中任一搜索点对应的阈值电压组中的每个阈值电压和起始搜索电压组中的相应阈值电压之间的差值均为预设搜索步长。对于这X方向的四个搜索点中任一搜索点,根据错误比特数与阈值电压组之间的对应关系,确定该搜索点对应的阈值电压组的错误比特数,得到这X方向的四个搜索点中每个搜索点对应的错误比特数。在该X字方向的四个搜索点中获取错误比特数比待定的起始搜索点的错误比特数更小的搜索点。若在该X字方向的四个搜索点中没有获取到错误比特数比待定的起始搜索点的错误比特数更少的搜索点,则校验成功。
如果在该X字方向的四个搜索点中获取到错误比特数比待定的起始搜索点的错误比特数更少的搜索点,则校验失败。此时,可以将该X方向中错误比特数更小的搜索点作为更新后的起始搜索点。
例如,阈值电压组包括的阈值电压为2个,该N维坐标系为一个二维坐标系,因此可以将每个坐标点看做一个搜索点。当以搜索点S1为起始搜索点,以步长大小为1在二维坐标系中以十字形方向获取四个搜索点,分别为S2、S3、S4、S5,并计算出该多个搜索点对应的错误比特数分别为3、5、7、4。而起始搜索点对应的错误比特数为5。则搜索点S2和S5对应的错误比特数小于起始搜索点的错误比特数,且搜索点S2的错误比特数与起始搜索点S1的错误比特数的差值为2,搜索点S5的错误比特数与起始搜索点S1的错误比特数的差值为1,将差值更大的搜索点S2作为待定的的起始搜索点。继续以“X”字方向进行搜索,获取四个邻近搜索点S6、S7、S8、S9,并计算出该四个搜索点对应的错误比特数分别为6、8、7、9,而待定的的起始搜索点对应的错误比特数为3。没有比待定的的起始搜索点对应的错误比特数更小的搜索点,因此将S2作为更新后的起始搜索点。并继续以S2为起始搜索点重新执行上述搜索过程。
另外,在更新起始搜索电压组之后,还可以根据更新后的起始搜索电压组的错误比特数和目标错误比特数之间的差值,对该预设搜索步长进行调整。其中,调整后的预设搜索步长与该差值之间呈现正相关关系,以使得搜索步长为一个自适应步长。此时,根据更新后的起始搜索电压组和预设搜索步长,获取多个备选阈值电压组的步骤的实现方式可以为:根据该更新后的起始搜索电压组和更新后的预设搜索步长,获取多个备选阈值电压组。
上述调整后的预设搜索步长与该差值之间呈现正相关关系是指:若更新后的起始搜索电压组对应的错误比特数与目标错误比特数之间的差值较大,则将搜索步长变大;若更新后的起始搜索电压组对应的错误比特数与目标错误比特数之间的差值较小,则将搜索步长变小。该目标错误比特数可以是服务器预先设置的,也可以是人为设置的。比如该目标错误比特数可以为0.01。
另外,上述自适应调整搜索步长中的步长增量由梯度下降算法来确定,该梯度下降算法建立了搜索步长和错误比特数之间的函数关系,可以根据任一错误比特数以及梯度下降算法确定出该任一错误比特数对应的步长增量。梯度下降算法可以是服务器预先从数据库中获取的。
在根据起始搜索电压组搜索过程中,如果搜索步长过小可能导致搜索路径变长,也可能导致标定后的阈值电压组只是一个局部的较优的阈值电压组,并不是整体较优的阈值电压组。如果搜索步长过大可能导致局部震荡。局部震荡是指:当步长过大时,有可能越过最佳阈值电压组而只是找到一个较优的阈值电压组,这样就需要返回重新搜索,返回重新搜索会造成局部震荡。而本申请实施例中提供的自适应调整搜索步长可以解决上述问题。
步骤103:将该错误比特数最小的阈值电压组确定为标定后的阈值电压组。
同样地,以根据阈值电压组中包括的阈值电压的数量构建的N维坐标系为例来说明上述步骤103的实现方式。示例地,当N维坐标系为二维坐标系时,我们可以将错误比特数最小的搜索点对应的二维坐标[2,3]确定为标定后的阈值电压组包括的2个阈值电压,这两个阈值电压分别是2V和3V。
本申请实施例通过存储单元的使用状态确定一个起始搜索电压组,根据起始搜索电压组和预设搜索步长确定出一个错误比特数最小的阈值电压组,将该错误比特数最小的阈值电压组确定为标定后的阈值电压组。由于正确读取存储单元中存储的数据所需的阈值电压组中的阈值电压会随着存储单元的使用状态的变化而发生偏移,因此,根据存储单元的使用状态可以确定一个更加接近偏移后的阈值电压组的起始搜索电压组,如此可以有效减少从起始搜索电压组开始搜索到搜索出错误比特数最小的阈值电压组时所需的搜索次数,从而减小了搜索时长,也就提高了标定过程的效率。
上述所有可选技术方案,均可按照任意结合形成本申请的可选实施例,本申请实施例对此不再一一赘述。
图3是本申请实施例提供的一种标定阈值电压组的装置的结构示意图,标定阈值电压的装置可以由软件、硬件或者两者的结合实现。标定阈值电压的装置可以包括:
第一确定模块301,用于用于根据存储单元的使用状态确定阈值电压组的起始搜索电压组,起始搜索电压组包括与阈值电压组中的各个阈值电压一一对应的各个起始搜索电压;
查找模块302,用于根据起始搜索电压组和预设搜索步长,查找错误比特数最小的阈值电压组,错误比特数是指按照阈值电压组读取数据时,读取的数据与原数据相比比特值发生翻转的数量;
第二确定模块303,用于将错误比特数最小的阈值电压组确定为标定后的阈值电压组。
第一确定模块包括:
第一确定子模块,用于根据存储单元的使用状态确定一个或多个备选起始电压组,一个或多个备选起始电压组中每个备选起始电压组用于指示在存储单元的使用状态的影响下,初始阈值电压组中各个阈值电压偏移之后的电压组,初始阈值电压组是指在使用存储单元之前为存储单元配置的阈值电压组;
第二确定子模块,用于从一个或多个备选起始电压组中,确定从存储单元中读取数据时能够读取成功的一个备选起始电压组,将确定的备选起始电压组作为起始搜索电压组。
可选地,存储单元的使用状态包括与多个干扰因素一一对应的多个因素值,多个干扰因素是指在使用存储单元过程中能够使得存储单元的阈值电压组中的阈值电压发生偏移的因素;第一确定子模块用于:
对于阈值电压组中任一阈值电压,根据初始阈值电压组中与阈值电压对应的初始阈值电压、多个因素值、以及阈值电压的偏移范围与每个干扰因素之间的对应关系,确定每个因素值对应的偏移范围,得到针对阈值电压的多个偏移范围,多个偏移范围与多个因素值一一对应;
确定针对阈值电压的多个偏移范围中的重叠范围;
根据针对阈值电压组中每个阈值电压的重叠范围确定一个或多个备选起始电压组。
可选地,第一确定子模块用于:
对于阈值电压组中任一阈值电压,从针对阈值电压的重叠范围中获取多个备选阈值电压,得到与阈值电压对应的多个备选阈值电压;
将与阈值电压组中各个阈值电压对应的多个备选阈值电压进行组合,得到一个或多个备选起始电压组。
可选地,一个或多个备选起始电压组中的各个备选起始电压组按照重叠次数从大到小的顺序进行排序,任一备选起始电压组的重叠次数是指任一备选起始电压组中的备选阈值电压所属的重叠范围的重叠次数;
第二确定子模块用于:
基于各个备选起始电压组从前到后的排序,依次按照每个备选起始电压组从存储单元中读取数据,直至首次成功读取到数据,将首次读取数据成功时的备选起始电压组作为能够读取成功的备选起始电压组。
可选地,对于重叠次数相同的备选起始电压组按照命中概率从大到小的顺序进行排序,任一备选起始电压组的命中概率是指按照任一备选起始电压组读取数据成功的概率。
可选地,查找模块包括:
获取子模块,用于根据起始搜索电压组和预设搜索步长,获取多个备选阈值电压组、以及多个备选阈值电压组中每个备选阈值电压组的错误比特数,每个备选阈值电压组中存在一个或多个阈值电压和起始搜索电压组中相应阈值电压之间的差值为预设搜索步长,其他阈值电压和起始搜索电压组中相应阈值电压相同;
更新子模块,用于如果多个备选阈值电压组中存在错误比特数小于起始搜索电压组的错误比特数的备选阈值电压组,则将错误比特数小于起始搜索电压组的错误比特数的备选阈值电压组更新为起始搜索电压组;
执行子模块,用于根据更新后的起始搜索电压组和预设搜索步长,重新执行根据起始搜索电压组和预设搜索步长,获取多个备选阈值电压组的步骤,直至按照更新后的起始搜索电压组获取的多个备选阈值电压组中不存在错误比特数小于更新后的起始搜索电压组的错误比特数的备选阈值电压组,将最后一次更新后的起始搜索电压组作为错误比特数最小的备选阈值电压组。
可选地,查找模块还包括:
调整子模块,用于根据更新后的起始搜索电压组的错误比特数和目标错误比特数之间的差值,对预设搜索步长进行调整,其中,调整后的预设搜索步长与差值之间呈现正相关关系;
相应地,执行子模块用于:
根据更新后的起始搜索电压组和更新后的预设搜索步长,获取多个备选阈值电压组。
可选地,多个干扰因素包括读次数、写次数、擦写次数以及使用时长。
本申请实施例通过存储单元的使用状态确定一个起始搜索电压组,根据起始搜索电压组和预设搜索步长确定出一个错误比特数最小的阈值电压组,将该错误比特数最小的阈值电压组确定为标定后的阈值电压组。由于正确读取存储单元中存储的数据所需的阈值电压组中的阈值电压会随着存储单元的使用状态的变化而发生偏移,因此,根据存储单元的使用状态可以确定一个更加接近偏移后的阈值电压组的起始搜索电压组,如此可以有效减少从起始搜索电压组开始搜索到搜索出错误比特数最小的阈值电压组时所需的搜索次数,从而减小了搜索时长,也就提高了标定过程的效率。
需要说明的是:上述实施例提供的标定阈值电压组的装置在标定阈值电压组时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的标定阈值电压组的装置与标定阈值电压组的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图4是根据本申请实施例提供的一种服务器结构示意图。该服务器可以是后台服务器集群中的服务器。具体来讲:
服务器400包括中央处理单元(CPU)401、包括随机存取存储器(RAM)402和只读存储器(ROM)403的系统存储器404,以及连接系统存储器404和中央处理单元401的系统总线405。服务器400还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)406,和用于存储操作系统414、应用程序414和其他程序模块415的大容量存储设备407。
基本输入/输出系统406包括有用于显示信息的显示器408和用于用户输入信息的诸如鼠标、键盘之类的输入设备409。其中显示器408和输入设备409都通过连接到系统总线405的输入输出控制器410连接到中央处理单元401。基本输入/输出系统406还可以包括输入输出控制器410以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器410还提供输出到显示屏、打印机或其他类型的输出设备。
大容量存储设备407通过连接到系统总线405的大容量存储控制器(未示出)连接到中央处理单元401。大容量存储设备407及其相关联的计算机可读介质为服务器400提供非易失性存储。也就是说,大容量存储设备407可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知计算机存储介质不局限于上述几种。上述的系统存储器404和大容量存储设备407可以统称为存储器。
根据本申请的各种实施例,服务器400还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器400可以通过连接在系统总线405上的网络接口单元411连接到网络412,或者说,也可以使用网络接口单元411来连接到其他类型的网络或远程计算机系统(未示出)。
上述存储器还包括一个或者一个以上的程序,一个或者一个以上程序存储于存储器中,被配置由CPU执行。所述一个或者一个以上程序包含用于进行本申请实施例提供的如下所述的标定阈值电压组的方法的指令。
本申请实施例还提供了一种非临时性计算机可读存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行上述实施例提供的标定阈值电压组的方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在服务器上运行时,使得服务器执行上述标定阈值电压组的方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (15)
1.一种标定阈值电压组的方法,其特征在于,所述方法包括:
根据存储单元的使用状态确定阈值电压组的起始搜索电压组,所述起始搜索电压组包括与所述阈值电压组中的各个阈值电压一一对应的各个起始搜索电压;
根据所述起始搜索电压组和预设搜索步长,查找错误比特数最小的阈值电压组,所述错误比特数是指按照阈值电压组读取数据时,读取的数据与原数据相比比特值发生翻转的数量;
将所述错误比特数最小的阈值电压组确定为标定后的阈值电压组。
2.如权利要求1所述的方法,其特征在于,所述根据存储单元的使用状态确定阈值电压组的起始搜索电压组,包括:
根据所述存储单元的使用状态确定一个或多个备选起始电压组,所述一个或多个备选起始电压组中每个备选起始电压组用于指示在所述存储单元的使用状态的影响下,初始阈值电压组中各个阈值电压偏移之后的电压组,所述初始阈值电压组是指在使用所述存储单元之前为所述存储单元配置的阈值电压组;
从所述一个或多个备选起始电压组中,确定从所述存储单元中读取数据时能够读取成功的一个备选起始电压组,将确定的备选起始电压组作为所述起始搜索电压组。
3.如权利要求2所述的方法,其特征在于,所述存储单元的使用状态包括与多个干扰因素一一对应的多个因素值,所述多个干扰因素是指在使用所述存储单元过程中能够使得所述存储单元的阈值电压组中的阈值电压发生偏移的因素;
所述根据所述存储单元的使用状态确定一个或多个备选起始电压组,包括:
对于所述阈值电压组中任一阈值电压,根据所述初始阈值电压组中与所述阈值电压对应的初始阈值电压、所述多个因素值、以及所述阈值电压的偏移范围与每个干扰因素之间的对应关系,确定每个因素值对应的偏移范围,得到针对所述阈值电压的多个偏移范围,所述多个偏移范围与所述多个因素值一一对应;
确定针对所述阈值电压的多个偏移范围中的重叠范围;
根据针对所述阈值电压组中每个阈值电压的重叠范围确定所述一个或多个备选起始电压组。
4.如权利要求3所述的方法,其特征在于,所述根据针对所述阈值电压组中每个阈值电压的重叠范围确定所述一个或多个备选起始电压组,包括:
对于所述阈值电压组中任一阈值电压,从针对所述阈值电压的重叠范围中获取多个备选阈值电压,得到与所述阈值电压对应的多个备选阈值电压;
将与所述阈值电压组中各个阈值电压对应的多个备选阈值电压进行组合,得到所述一个或多个备选起始电压组。
5.如权利要求4所述的方法,其特征在于,所述一个或多个备选起始电压组中的各个备选起始电压组按照重叠次数从大到小的顺序进行排序,任一备选起始电压组的重叠次数是指所述任一备选起始电压组中的备选阈值电压所属的重叠范围的重叠次数;
所述从所述一个或多个备选起始电压组中,确定从所述存储单元中读取数据时能够读取成功的一个备选起始电压组,包括:
基于各个备选起始电压组从前到后的排序,依次按照每个备选起始电压组从所述存储单元中读取数据,直至首次成功读取到数据,将首次读取数据成功时的备选起始电压组作为所述能够读取成功的备选起始电压组。
6.如权利要求5所述的方法,其特征在于,对于重叠次数相同的备选起始电压组按照命中概率从大到小的顺序进行排序,任一备选起始电压组的命中概率是指按照所述任一备选起始电压组读取数据成功的概率。
7.如权利要求1至6任一所述的方法,其特征在于,所述根据所述起始搜索电压组和预设搜索步长,查找错误比特数最小的阈值电压组,包括:
根据所述起始搜索电压组和所述预设搜索步长,获取多个备选阈值电压组、以及所述多个备选阈值电压组中每个备选阈值电压组的错误比特数,每个备选阈值电压组中存在一个或多个阈值电压和所述起始搜索电压组中相应阈值电压之间的差值为所述预设搜索步长,其他阈值电压和所述起始搜索电压组中相应阈值电压相同;
如果所述多个备选阈值电压组中存在错误比特数小于所述起始搜索电压组的错误比特数的备选阈值电压组,则将所述错误比特数小于所述起始搜索电压组的错误比特数的备选阈值电压组更新为起始搜索电压组;
根据更新后的起始搜索电压组和所述预设搜索步长,重新执行根据所述起始搜索电压组和所述预设搜索步长,获取多个备选阈值电压组的步骤,直至按照更新后的起始搜索电压组获取的多个备选阈值电压组中不存在错误比特数小于所述更新后的起始搜索电压组的错误比特数的备选阈值电压组,将最后一次更新后的起始搜索电压组作为所述错误比特数最小的备选阈值电压组。
8.如权利要求7所述的方法,其特征在于,所述根据更新后的起始搜索电压组和所述预设搜索步长,重新执行根据所述起始搜索电压组和所述预设搜索步长,获取多个备选阈值电压组的步骤之前,还包括:
根据更新后的起始搜索电压组的错误比特数和目标错误比特数之间的差值,对所述预设搜索步长进行调整,其中,调整后的预设搜索步长与所述差值之间呈现正相关关系;
相应地,所述根据更新后的起始搜索电压组和所述预设搜索步长,重新执行根据所述起始搜索电压组和所述预设搜索步长,获取多个备选阈值电压组的步骤,包括:
根据所述更新后的起始搜索电压组和更新后的预设搜索步长,获取多个备选阈值电压组。
9.如权利要求3所述的方法,其特征在于,所述多个干扰因素至少包括读次数、写次数、擦写次数以及使用时长中的一者或多者。
10.一种标定阈值电压组的装置,其特征在于,所述装置包括:
第一确定模块,用于根据存储单元的使用状态确定阈值电压组的起始搜索电压组,所述起始搜索电压组包括与所述阈值电压组中的各个阈值电压一一对应的各个起始搜索电压;
查找模块,用于根据所述起始搜索电压组和预设搜索步长,查找错误比特数最小的阈值电压组,所述错误比特数是指按照阈值电压组读取数据时,读取的数据与原数据相比比特值发生翻转的数量;
第二确定模块,用于将所述错误比特数最小的阈值电压组确定为标定后的阈值电压组。
11.如权利要求10所述的装置,其特征在于,所述第一确定模块包括:
第一确定子模块,用于根据所述存储单元的使用状态确定一个或多个备选起始电压组,所述一个或多个备选起始电压组中每个备选起始电压组用于指示在所述存储单元的使用状态的影响下,初始阈值电压组中各个阈值电压偏移之后的电压组,所述初始阈值电压组是指在使用所述存储单元之前为所述存储单元配置的阈值电压组;
第二确定子模块,用于从所述一个或多个备选起始电压组中,确定从所述存储单元中读取数据时能够读取成功的一个备选起始电压组,将确定的备选起始电压组作为所述起始搜索电压组。
12.如权利要求11所述的装置,其特征在于,所述存储单元的使用状态包括与多个干扰因素一一对应的多个因素值,所述多个干扰因素是指在使用所述存储单元过程中能够使得所述存储单元的阈值电压组中的阈值电压发生偏移的因素;所述第一确定子模块用于:
对于所述阈值电压组中任一阈值电压,根据所述初始阈值电压组中与所述阈值电压对应的初始阈值电压、所述多个因素值、以及所述阈值电压的偏移范围与每个干扰因素之间的对应关系,确定每个因素值对应的偏移范围,得到针对所述阈值电压的多个偏移范围,所述多个偏移范围与所述多个因素值一一对应;
确定针对所述阈值电压的多个偏移范围中的重叠范围;
根据针对所述阈值电压组中每个阈值电压的重叠范围确定所述一个或多个备选起始电压组。
13.如权利要求10至12任一所述的装置,其特征在于,所述查找模块包括:
获取子模块,用于根据所述起始搜索电压组和所述预设搜索步长,获取多个备选阈值电压组、以及所述多个备选阈值电压组中每个备选阈值电压组的错误比特数,每个备选阈值电压组中存在一个或多个阈值电压和所述起始搜索电压组中相应阈值电压之间的差值为所述预设搜索步长,其他阈值电压和所述起始搜索电压组中相应阈值电压相同;
更新子模块,用于如果所述多个备选阈值电压组中存在错误比特数小于所述起始搜索电压组的错误比特数的备选阈值电压组,则将所述错误比特数小于所述起始搜索电压组的错误比特数的备选阈值电压组更新为起始搜索电压组;
执行子模块,用于根据更新后的起始搜索电压组和所述预设搜索步长,重新执行根据所述起始搜索电压组和所述预设搜索步长,获取多个备选阈值电压组的步骤,直至按照更新后的起始搜索电压组获取的多个备选阈值电压组中不存在错误比特数小于所述更新后的起始搜索电压组的错误比特数的备选阈值电压组,将最后一次更新后的起始搜索电压组作为所述错误比特数最小的备选阈值电压组。
14.如权利要求13所述的装置,其特征在于,所述查找模块还包括:
调整子模块,用于根据更新后的起始搜索电压组的错误比特数和目标错误比特数之间的差值,对所述预设搜索步长进行调整,其中,调整后的预设搜索步长与所述差值之间呈现正相关关系;
相应地,所述执行子模块用于:
根据所述更新后的起始搜索电压组和更新后的预设搜索步长,获取多个备选阈值电压组。
15.一种标定阈值电压组的装置,其特征在于,所述装置包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述权利要求1至权利要求9中的任一项权利要求所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911412072.6A CN113129983B (zh) | 2019-12-31 | 2019-12-31 | 标定阈值电压组的方法、装置及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911412072.6A CN113129983B (zh) | 2019-12-31 | 2019-12-31 | 标定阈值电压组的方法、装置及计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113129983A true CN113129983A (zh) | 2021-07-16 |
CN113129983B CN113129983B (zh) | 2022-09-06 |
Family
ID=76770198
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911412072.6A Active CN113129983B (zh) | 2019-12-31 | 2019-12-31 | 标定阈值电压组的方法、装置及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113129983B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114067893A (zh) * | 2021-11-04 | 2022-02-18 | 北京得瑞领新科技有限公司 | Ssd设备的读电压优化处理方法、装置及ssd设备 |
CN116580751A (zh) * | 2023-06-01 | 2023-08-11 | 广东工业大学 | 一种适用于pim系统的读写电压自动标定方法及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006085373A1 (ja) * | 2005-02-10 | 2006-08-17 | Renesas Technology Corp. | 不揮発性半導体メモリ及び半導体装置 |
US20100296350A1 (en) * | 2009-05-20 | 2010-11-25 | Samsung Electronics Co., Ltd. | Method of setting read voltage minimizing read data errors |
US20140365836A1 (en) * | 2013-06-11 | 2014-12-11 | Sandisk Enterprise Ip Llc | Device and Method for Resolving an LM Flag Issue |
CN108761170A (zh) * | 2018-05-18 | 2018-11-06 | 广东工业大学 | 一种nand参考电压测量方法、系统、设备及存储介质 |
CN109215716A (zh) * | 2017-07-05 | 2019-01-15 | 北京兆易创新科技股份有限公司 | 提高nand型浮栅存储器可靠性的方法及装置 |
CN110120234A (zh) * | 2018-02-07 | 2019-08-13 | 北京忆芯科技有限公司 | 固态存储设备及其最优读出阈值电压的搜索方法 |
US20190303240A1 (en) * | 2018-03-28 | 2019-10-03 | SK Hynix Inc. | Controller and operating method thereof |
CN110364197A (zh) * | 2018-04-11 | 2019-10-22 | 深圳大心电子科技有限公司 | 解码方法以及存储控制器 |
-
2019
- 2019-12-31 CN CN201911412072.6A patent/CN113129983B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006085373A1 (ja) * | 2005-02-10 | 2006-08-17 | Renesas Technology Corp. | 不揮発性半導体メモリ及び半導体装置 |
US20100296350A1 (en) * | 2009-05-20 | 2010-11-25 | Samsung Electronics Co., Ltd. | Method of setting read voltage minimizing read data errors |
US20140365836A1 (en) * | 2013-06-11 | 2014-12-11 | Sandisk Enterprise Ip Llc | Device and Method for Resolving an LM Flag Issue |
CN109215716A (zh) * | 2017-07-05 | 2019-01-15 | 北京兆易创新科技股份有限公司 | 提高nand型浮栅存储器可靠性的方法及装置 |
CN110120234A (zh) * | 2018-02-07 | 2019-08-13 | 北京忆芯科技有限公司 | 固态存储设备及其最优读出阈值电压的搜索方法 |
US20190303240A1 (en) * | 2018-03-28 | 2019-10-03 | SK Hynix Inc. | Controller and operating method thereof |
CN110364197A (zh) * | 2018-04-11 | 2019-10-22 | 深圳大心电子科技有限公司 | 解码方法以及存储控制器 |
CN108761170A (zh) * | 2018-05-18 | 2018-11-06 | 广东工业大学 | 一种nand参考电压测量方法、系统、设备及存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114067893A (zh) * | 2021-11-04 | 2022-02-18 | 北京得瑞领新科技有限公司 | Ssd设备的读电压优化处理方法、装置及ssd设备 |
CN116580751A (zh) * | 2023-06-01 | 2023-08-11 | 广东工业大学 | 一种适用于pim系统的读写电压自动标定方法及系统 |
CN116580751B (zh) * | 2023-06-01 | 2024-03-12 | 广东工业大学 | 一种适用于pim系统的读写电压自动标定方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113129983B (zh) | 2022-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8453022B2 (en) | Apparatus and methods for generating row-specific reading thresholds in flash memory | |
US11721399B2 (en) | Memory system with dynamic calibration using a trim management mechanism | |
US8467249B2 (en) | Systems and methods for storing, retrieving, and adjusting read thresholds in flash memory storage system | |
JP5629391B2 (ja) | 半導体記憶装置及び半導体記憶装置の制御方法 | |
CN113129983B (zh) | 标定阈值电压组的方法、装置及计算机存储介质 | |
US9299459B2 (en) | Method and apparatus of measuring error correction data for memory | |
CN106919957B (zh) | 处理数据的方法及装置 | |
CN111192620B (zh) | 一种SSD中优化NAND Flash读参考电压的方法 | |
CN110827907A (zh) | 包括非易失性存储器器件的储存设备及其操作方法 | |
US10811075B1 (en) | Method for performing access control regarding quality of service optimization of memory device with aid of machine learning, associated memory device and controller thereof | |
CN113574475A (zh) | 确定用于控制环境的因果模型 | |
US9036413B2 (en) | Flash memory reference voltage detection with tracking of cross-points of cell voltage distributions using histograms | |
CN110473581B (zh) | 固态储存装置及其相关控制方法 | |
CN111833948A (zh) | Nand闪存的擦写能力测试方法、装置、设备及介质 | |
US9007843B2 (en) | Internal data compare for memory verification | |
CN114005481B (zh) | 闪存的擦写能力测试方法、装置、计算机设备和存储介质 | |
CN110689914A (zh) | 一种固态硬盘的读纠错方法、装置、设备及存储介质 | |
CN105302474A (zh) | 控制闪存的写操作的方法和闪存的控制器 | |
US11482287B2 (en) | Memory system and method of controlling memory system | |
CN109215716B (zh) | 提高nand型浮栅存储器可靠性的方法及装置 | |
CN110908825B (zh) | 一种数据读取方法、装置、存储设备及存储介质 | |
RU2640294C1 (ru) | Способ записи и записывающий аппарат для запоминающего устройства | |
CN112669893B (zh) | 确定待使用读电压的方法、系统、装置及设备 | |
CN110334277B (zh) | 用户搜索行为的识别方法及装置 | |
CN110969256A (zh) | 训练人工智能更正存储装置的对数概度比的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |