掌桥专利:专业的专利平台
掌桥专利
首页

存储器装置中的电荷损失扫描操作管理

文献发布时间:2023-06-19 16:06:26



技术领域

本公开的实施例大体上涉及存储器子系统,且更确切地说,涉及存储器装置中的电荷损失扫描操作管理。

背景技术

一种存储器子系统可包含存储数据的一或多个存储器装置。存储器装置可以是例如非易失性存储器装置和易失性存储器装置。大体来说,主机系统可以利用存储器子系统将数据存储在存储器装置处且从存储器装置检索数据。

发明内容

在一方面中,本申请提供一种系统,其包括:存储器装置;以及处理装置,其以操作方式耦合到存储器装置以执行包括以下各项的操作:识别存储器装置的操作温度;确定操作温度满足温度条件;修改用于对存储器装置中的一组块中的代表性块执行扫描操作的扫描频率参数;以及在由扫描频率参数识别的频率下执行扫描操作。

在另一方面中,本申请进一步提供一种方法,其包括:通过处理装置识别多个温度范围,其中每一温度范围包括起始温度和结束温度;使每一温度范围与用于对存储器装置的一组块执行扫描操作的相应扫描条件相关联;识别存储器装置的操作温度;确定操作温度在多个温度范围中的特定温度范围内;以及响应于确定满足指定扫描条件,执行扫描操作,其中指定扫描条件对应于特定温度范围。

在另一方面中,本申请进一步提供一种方法,其包括:通过处理装置识别存储器装置的操作温度;确定操作温度满足温度条件;修改用于对存储器装置的一组块中的代表性块执行扫描操作的扫描频率参数;以及在由扫描频率参数识别的频率下执行扫描操作。

附图说明

根据下文给出的实施方式且根据本公开的一些实施例的附图将更加充分地理解本公开。

图1示出根据本公开的一些实施例的包含存储器子系统的实例计算系统。

图2示出根据本公开的一些实施例的至少部分地由三层级存储器单元所展现的缓慢电荷损失引起的时间电压移位。

图3为示出根据本公开的一些实施例的阈值电压偏移与编程后时间(即,从单元已被写入以来经过的时间)的相关性的实例曲线图。

图4A为示出根据实施例的块族如何存在于特定阈值电压偏移区间中的曲线图,所述特定阈值电压偏移区间取决于编程后时间(TAP)。

图4B为示出根据实施例的块族如何随着编程后时间(TAP)增加而向右移动的曲线图。

图5示意性地示出根据本公开的实施例的由存储器子系统控制器维持以用于使块与块族相关联的实例元数据。

图6示出根据本公开的实施例的基于存储器装置的操作温度的电荷损失扫描操作管理的实例。

图7为根据本公开的一些实施例的修改块族扫描频率参数的实例方法的流程图。

图8为根据本公开的一些实施例的基于存储器装置的操作温度管理块族扫描操作的实例方法的流程图。

图9为本公开的实施例可在其中操作的实例计算机系统的框图。

具体实施方式

本公开的实施例针对存储器装置中的电荷损失扫描操作管理。存储器子系统可以是存储装置、存储器模块或存储装置和存储器模块的混合。下文结合图1描述存储装置和存储器模块的实例。大体来说,主机系统可以利用包含一或多个组件的存储器子系统,所述一或多个组件例如存储数据的存储器装置。主机系统可提供待存储于存储器子系统处的数据,且可请求待从存储器子系统检索的数据。

存储器子系统可利用一或多个存储器装置(包含不同类型的非易失性存储器装置和/或易失性存储器装置的任何组合)存储由主机系统提供的数据。在一些实施例中,非易失性存储器装置可由与非(NAND)型快闪存储器装置提供。下文结合图1描述非易失性存储器装置的其它实例。非易失性存储器装置为一或多个裸片的封装。每一裸片可以由一或多个平面组成。平面可分组成逻辑单元(LUN)。对于一些类型的非易失性存储器装置(例如,NAND装置),每一平面由一组块组成。“块”在本文中指连续或不连续的一组存储器页。块的实例是可擦除块,其是存储器的最小可擦除单元,而页是存储器的最小可写入单元。每一页包含一组存储器单元(“单元”)。单元为存储信息的电子电路。

可由存储器子系统执行数据操作。数据操作可以是主机发起的操作。例如,主机系统可以在存储器子系统上发起数据操作(例如,写入、读取、擦除等)。主机系统可以将存取请求(例如,写入命令、读取命令)发送到存储器子系统,以便将数据存储在存储器子系统处的存储器装置上,且从存储器子系统上的存储器装置读取数据。如由主机请求指定的待读取或写入的数据在下文中被称作“主机数据”。主机请求可以包含用于主机数据的逻辑地址信息(例如,逻辑块地址(LBA)、名称空间),其为主机系统与主机数据相关联的位置。逻辑地址信息(例如,LBA、名称空间)可以是主机数据的元数据的部分。元数据还可以包含错误处理数据(例如,错误校正码(ECC)码字、奇偶检验码)、数据版本(例如,用于区分所写入数据的新旧)、有效位图(其LBA或逻辑传送单元具有有效数据)、块族信息及类似者。

存储器装置包含多个存储器单元,其中的每一者可取决于存储器单元类型存储一或多位信息。可通过将某一电压施加到存储器单元来编程存储器单元(向其写入),这使得存储器单元保持电荷,从而允许调制由存储器单元产生的电压分布。此外,精确地控制存储器单元所存储的电荷的量允许建立对应于不同逻辑电平的多个阈值电压电平,从而有效地允许单个存储器单元存储多位信息:以2

归因于被称为缓慢电荷损失(SCL)的现象,存储器单元的阈值电压随着单元的电荷降级而随着时间改变,其被称作“时间电压移位”(TVS),因为降级的电荷使得电压分布沿电压轴线朝较低电压电平移位。本文中的TVS将指随时间而变的单元的测得电压的变化。缓慢电荷损失随时间、温度、编程擦除循环(例如,对存储器进行擦除和重新编程)等而变。阈值电压首先快速改变(紧接在存储器单元被编程之后),且接着相对于从单元编程事件以来经过的时间以大致对数线性方式减慢。缓慢电荷损失还可随着存储器单元的温度升高、编程擦除循环增加、编程电压升高以及其它因素而增大。TVS可以包含不同分量,例如固有电荷损失、系统电荷损失、快速电荷损失等。替换栅极(RG)NAND通常比浮动栅极NAND呈现更多的TVS。TVS还显示出明显的裸片间变化。未能减轻由缓慢电荷损失引起的时间电压移位可能会使读取操作中的原始误码率(或RBER)增大。

可通过实施采用基于块族(“BF”)的错误避免策略的存储器子系统来减小时间电压移位,因此显著降低存储器子系统展现的误码率。根据本公开的实施例,针对由块族分组的一组经编程存储器单元选择性地跟踪时间电压移位。“读取电平”在本文中将指电压位置。“读取电平值”在本文中将指电压或表示出于读取所述单元的目的而施加到读取元件(通常为用于NAND单元的控制栅极)的电压的DAC值。“基础读取电平”在本文中将指紧接在编程之后或在预定义的编程后时间到期之后由存储器单元展现初始阈值电压电平。在一些实施方案中,基础读取电平可存储在存储器装置的元数据中。“读取电平偏移”在本文中将指确定读取电平值的等式的分量。将基于与某一块族的块隶属关系的适当电压读取电平偏移施加到基础读取电平以执行读取操作。“块族”在本文中将指可能不连续的一组存储器单元(其可驻存在一或多个完整和/或部分块中,后者在本文中被称作“分区”),其已经在指定时间窗口和规定温度窗口内编程且因此预期在其相应数据状态度量方面展现类似或相关改变。本文中的“数据状态度量”将指根据存储在存储器装置上的数据的状态测量或推断的量。具体来说,数据状态度量可反映时间电压移位的状态、读取干扰的程度和/或数据状态的其它可测量功能。复合数据状态度量为一组分量状态度量的函数(例如,加权和)。

可相对于块编程事件异步地创建块族。在说明性实例中,每当从创建最后一个块族以来已经过指定时间段(例如,预定义的分钟数)或存储器单元的参考温度的变化已大于指定阈值,就可创建新的块族。存储器子系统控制器可维持活动块族的识别符,活动块族在一或多个块被编程时与其相关联。

块族可以任何粒度制成,从而仅具有全部码字、全部页、全部超级页、或全部超级块或其任何组合。由于编程之后经过的时间和温度是影响时间电压移位的主要因素,所以推测单个块族内的所有块和/或分区在存储器单元中展现类似的阈值电压分布,且因此将需要将相同的电压偏移施加到基础读取电平以用于读取操作。此外,由于耗损均衡,块族内的块将具有类似数目个编程擦除循环(PEC)。

“区间”(或“电压区间”或“电压偏移区间”)在本文中将指施加到一组数据的一组读取电平偏移。区间偏移为影响区间内的块族的读取电平的读取电平偏移。旧的或较旧的区间为读取电平偏移针对在相对较早时间写入的数据的区间。新的或较新的区间为读取电平偏移针对相对近期写入的数据的区间。“区间选择”在本文中将指通过其存储器装置选择用于给定读取的区间的过程。每一块族与存储有块族的块的一组裸片相关联。块族和裸片与电压区间的关联可由一组区间指针表示,所述区间指针包含用于块族的每一裸片的区间指针。对于特定块族,每一特定裸片与识别(“指向”)电压区间的区间指针相关联,由此建立块族与用于特定裸片的电压区间之间的关联。可通过区间编号(例如,在N个电压区间架构中,在0到N-1之间的编号)识别区间编号。每一区间指针可因此为区间编号。块与块族以及块族和裸片与电压区间的关联可(例如,以元数据表中的区间编号的形式)存储在存储器子系统控制器所维持的相应元数据表中。

归因于块族随时间推移相对于阈值电压偏移值漂移的事实,控制器可定期执行存储器装置的存储器单元的“块族扫描”或“BF扫描”,以评估数据状态度量(例如,以测量TVS电平),且必要时执行校准过程以基于所测得TVS电平更新块族与区间之间的关联。BF扫描可涉及相对于正扫描的块族内指定数目个随机选择的代表性块而利用不同阈值电压偏移执行读取操作,以识别最小化读取操作的错误率的阈值电压偏移。

“校准”在本文中将指更改读取电平值(可能通过调整读取电平偏移或读取电平基数)以更好地匹配用于读取或读取集合的理想读取电平的过程。如果BF扫描指示有必要调整读取电平,那么校准过程可接着更新与裸片和块族相关联的区间指针以指向对应于数据状态度量的测得值的电压区间。每一电压区间与待施加用于读取操作的电压偏移相关联。举例来说,如果测得数据状态度量在与现有区间指针相关联的范围内,那么区间指针可保持相同,或如果测得数据状态度量在与早期区间相关联的范围内,那么区间指针可变为指向早期区间。

定期执行BF扫描以确保在任何给定时间通过足够频繁地执行扫描以识别将BF分配给新电压区间的适当时间来最小化读取误差。大体来说,用于较新块族(即,最近创建的块族)的时间电压移位比用于较旧块族(即,较早创建的块族)的时间电压移位更重要。存储器子系统控制器可基于块族的新旧针对每一块族定期执行BF扫描,所述新旧对应于与块族相关联的电压区间。举例来说,在N个电压区间架构中,新创建的块族可与电压区间0相关联,而最旧(即,最早创建的)块族与电压区间N-1相关联。由于SCL的对数线性性质,与当块族停留在较晚区间(例如,区间N-1等)中较长持续时间时相比,块族停留在较早区间(例如,区间0等)中较短持续时间。块族停留在区间中的时间越短,执行BF扫描以确定块族是否需要校准以移动到下一区间的速度就需要越快。因此,相比于针对较晚区间(例如,电压区间N-1)中的块族,存储器子系统控制器针对较早区间(例如,电压区间0)中的块族更频繁地执行BF扫描。

此外,随着块族变旧,时间上邻近的块族(即,在块族创建次序中邻近的块族)的时间电压移位可收敛。由于由存储器子系统控制器维持的元数据表用于存储与不同块族相关联的记录的空间量可能有限,因此存储器子系统控制器可将多个活动块族合并成单个块族。存储器子系统控制器可执行BF扫描以识别为用于组合的候选者的活动块族。

由于BF扫描涉及获得每一经扫描块族处的当前数据状态的测量值,且基于所测得状态数据执行计算,BF扫描可利用大量存储器子系统资源。BF扫描还涉及使用有价值的资源对代表性块执行读取操作。因此,当存储器子系统执行BF扫描时,可延迟主机请求,尤其是在正对主机读取请求涉及的相同块执行BF扫描时。因此,当BF扫描太频繁地执行时,其可增加存储器子系统的时延及电力消耗且降低总体系统性能。另一方面,BF扫描具有时间敏感性,因为当未及时更新与块族相关联的区间指针以补偿存储在与块族相关联的块中的数据的时间电压移位时,可发生错误校准。此类错误校准可产生可对存储器子系统的性能造成不利影响的读取误差。读取误差可达到足够高的速率,其中误差控制操作未能校正读取误差,使得需要采用误差恢复流来恢复发生的读取误差,这还使用额外计算资源且增加时延。因此,执行BF扫描太不频繁地也妨碍系统性能。

如上文中所提到,缓慢电荷损失(“SCL”)随时间和温度而变。SCL可随着温度升高而增大且随着温度降低而减小。当温度保持较低时,电荷损失也可较小。当温度较高时,电荷损失可随之较大。举例来说,如果一周内,存储器装置保持接近0℃,那么缓慢电荷损失可为约20毫伏(mV)到50毫伏,而如果存储器装置为约100℃,那么缓慢电荷损失可为约400mV,显著差异。因此,相比于在较高温度下,块族在较低温度下保持在特定电压区间中的时间更长,且进而较不频繁地执行校准过程以使块族移动到不同区间。然而,当在较低温度下使用设计用于在较高温度下使用的BF扫描频率时,存储器子系统则比及时校准所需的更频繁地执行BF扫描,针对BF扫描执行比所需的更多的读取操作,且从而导致性能降低。类似地,当在较高温度下使用设计用于在较低温度下使用的BF扫描频率时,存储器子系统则较不频繁地执行BF扫描且可未及时执行校准,从而产生较高错误率且导致性能降低。

本公开的各方面通过调整BF扫描操作以考虑存储器子系统的操作温度的变化来解决以上及其它不足。存储器子系统可识别预期存储器装置操作的标称温度。在一些实施方案中,可由范围的阈值起始温度和阈值结束温度限定阈值温度范围。存储器子系统可限定对应于标称温度和/或阈值温度范围的每一区间的初始BF扫描频率。存储器子系统可识别标称温度下块族停留在区间中的持续时间,其在本文中被称作“区间持续时间”。举例来说,区间持续时间可识别为用于特定区间(例如,区间0)的一小时。BF扫描在每个区间持续时间内执行的频率超过一次,以便确保在经过过长时间之前检测到区间改变为必要的测得数据状态度量的改变。举例来说,在用于区间0的区间持续时间为一小时的情况下,针对区间0执行BF扫描多于每小时一次,或至少每小时两次。

存储器子系统可定期检查存储器装置的操作温度。可使用一或多个温度传感器测量操作温度。存储器子系统可确定存储器装置的操作温度是否在阈值温度范围内。当操作温度低于阈值起始温度时,缓慢电荷损失减小。因此,存储器子系统可降低BF扫描频率。类似地,如果检测到操作温度高于阈值结束温度,那么缓慢电荷损失加速且需要更频繁的BF扫描。因此,存储器子系统可增大BF扫描频率。举例来说,可使用预定义函数,例如基于与阈值温度范围的温度偏差的函数修改BF扫描频率。

在一些实施方案中,除阈值温度范围之外,存储器子系统还可限定多个温度范围。举例来说,存储器子系统可识别包含存储器装置可实际上预期在其下操作的最高温度和最低温度的操作温度范围。可将操作温度范围划分成多个温度区。每一温度区可具有预定义的温度值范围,包含范围的起始温度和结束温度。温度范围不彼此重叠。在一些实例中,每一范围可具有相同大小,使得每一范围上的起始温度与结束温度之差是相同的。在一些实例中,范围可具有不同大小。存储器子系统可使每一温度范围与每一电压区间的预定义扫描频率值相关联。较高温度范围可与较高频率值相关联,且较低温度范围可与较低频率值相关联。可基于块族在所述温度范围内停留在电压区间的持续时间(例如,区间持续时间)选择频率值。存储器子系统可识别操作温度所处的特定范围。存储器子系统可随后根据对应于其中操作温度所处的特定温度范围的预定义扫描频率值修改BF扫描频率参数。

存储器子系统通过使用块族中的代表性块执行读取操作而以经修改频率值执行BF扫描操作。当存储器子系统识别出与代表性块相关联的数据状态度量指示不同读取偏移电平更适当时,可执行校准过程以将与裸片的块族相关联的区间指针改变到下一区间。

因此,根据本公开的一些实施例实施的系统和方法的优点包含但不限于通过调整块族扫描操作以考虑操作温度变化来提高系统性能和准确性。BF扫描涉及执行读取操作和各种计算,其可延迟主机请求且使用有价值的系统资源。因此,与所需相比更频繁的BF扫描可使性能降低。当区间指针未及时更新时,其可产生较高程度的读取误差,以及涉及解决错误处理的额外操作。因此,与所需相比,较不频繁的BF扫描可导致较高RBER方面的不准确性和性能降低。使用本文中所公开的温度自适应BF扫描操作,存储器子系统能够在较低温度下以低频率执行校准以维持适当读取电平,且在较高温度下的校准需求较高的时间期间以高频率(具有低时延)执行校准,使得区间指针可更准确地反映较高温度下的较快速率的电荷损失。因此,通过基于温度变化调整BF扫描频率,存储器子系统可在不需要高频扫描时减少BF扫描所使用的处理时间量,同时在需要时保持高频扫描的益处。由于在正执行主机请求时不扫描块,因此主机请求期间的中断减少。

图1示出根据本公开的一些实施例的包含存储器子系统110的实例计算系统100。存储器子系统110可包含媒体,如一或多个易失性存储器装置(例如,存储器装置140)、一或多个非易失性存储器装置(例如,存储器装置130)或其组合。

存储器子系统110可以是存储装置、存储器模块或存储装置和存储器模块的混合。存储装置的实例包含固态驱动器(SSD)、快闪驱动器、通用串行总线(USB)快闪驱动器、嵌入式多媒体控制器(eMMC)驱动器、通用快闪存储(UFS)驱动器、安全数字(SD)卡和硬盘驱动器(HDD)。存储器模块的实例包含双列直插式存储器模块(DIMM)、小型DIMM(SO-DIMM),和各种类型的非易失性双列直插式存储器模块(NVDIMM)。

计算系统100可以是计算装置,例如台式计算机、膝上型计算机、网络服务器、移动装置、运载工具(例如,飞机、无人机、火车、汽车或其它运输工具)、支持物联网(IoT)的装置、嵌入式计算机(例如,运载工具、工业设备或联网商业装置中包含的嵌入式计算机),或包含存储器和处理装置(例如,处理器)的此类计算装置。

计算系统100可包含耦合到一或多个存储器子系统110的主机系统120。在一些实施例中,主机系统120耦合到不同类型的存储器子系统110。图1示出耦合到一个存储器子系统110的主机系统120的一个实例。如本文所用,“耦合到”或“与...耦合”一般是指组件之间的连接,所述连接可以是间接通信连接或直接通信连接(例如,无中间组件),无论有线还是无线,包含例如电连接、光学连接、磁性连接等连接。

主机系统120可包含处理器芯片组和由处理器芯片组执行的软件栈。处理器芯片组可包含一或多个核心、一或多个高速缓存器、存储器控制器(例如,NVDIMM控制器)和存储协议控制器(例如,外围组件互连高速(Peripheral Component Interconnect Express,PCIe)控制器、串行高级技术附件(Serial Advanced Technology Attachment,SATA)控制器)。主机系统120使用存储器子系统110例如以将数据写入到存储器子系统110且从存储器子系统110读取数据。

主机系统120可经由物理主机接口耦合到存储器子系统110。物理主机接口的实例包含但不限于串行高级技术附件(SATA)接口、外围组件互连高速(PCIe)接口、通用串行总线(USB)接口、光纤通道、串行连接的SCSI(SAS)、双倍数据速率(DDR)存储器总线、小型计算机系统接口(SCSI)、双列直插式存储器模块(DIMM)接口(例如,支持双倍数据速率(DDR)的DIMM套接接口)、开放NAND快闪接口(ONFI)、双倍数据速率(DDR)、低电力双倍数据速率(LPDDR)等。物理主机接口可用以在主机系统120与存储器子系统110之间传输数据。当存储器子系统110通过PCIe接口与主机系统120耦合时,主机系统120可进一步利用非易失性存储器(Non-Volatile Memory,NVM)高速(NVMe)接口来存取组件(例如,存储器装置130)。物理主机接口可提供用于在存储器子系统110与主机系统120之间传送控制、地址、数据和其它信号的接口。图1将存储器子系统110示出为实例。一般来说,主机系统120可经由同一通信连接、多个独立通信连接和/或通信连接的组合来存取多个存储器子系统。

存储器装置130、140可以包含不同类型的非易失性存储器装置和/或易失性存储器装置的任何组合。易失性存储器装置(例如,存储器装置140)可以但不限于是随机存取存储器(RAM),例如动态随机存取存储器(DRAM)和同步动态随机存取存储器(SDRAM)。

非易失性存储器装置(例如,存储器装置130)的一些实例包含与非(NAND)型快闪存储器和就地写入存储器(write-in-place memory),例如三维交叉点(“3D交叉点”)存储器装置,其为非易失性存储器单元的交叉点阵列。非易失性存储器的交叉点阵列可结合可堆叠交叉网格化数据存取阵列基于体电阻的改变来执行位存储。另外,与许多基于快闪的存储器相比,交叉点非易失性存储器可执行就地写入操作,其中可在不预先擦除非易失性存储器单元的情况下对非易失性存储器单元进行编程。NAND型快闪存储器包含例如二维NAND(2D NAND)和三维NAND(3D NAND)。

每一存储器装置130可包含一或多个存储器单元阵列。一种类型的存储器单元,例如单层级单元(SLC)每单元可存储一个位。其它类型的存储器单元,例如多层级单元(MLC)、三层级单元(TLC)、四层级单元(QLC)和五层级单元(PLC)每单元可存储多个位。在一些实施例中,每一存储器装置130可包含一或多个存储器单元阵列,例如SLC、MLC、TLC、QLC或其任何组合。在一些实施例中,特定存储器装置可包含存储器单元的SLC部分,以及MLC部分、TLC部分或QLC部分。存储器装置130的存储器单元可分组为页,所述页可指用以存储数据的存储器装置的逻辑单元。对于一些类型的存储器(例如,NAND),页可分组以形成块。

虽然描述了例如非易失性存储器单元和NAND型快闪存储器(例如,2D NAND、3DNAND)的3D交叉点阵列的非易失性存储器装置,但存储器装置130可基于任何其它类型的非易失性存储器,例如只读存储器(ROM)、相变存储器(PCM)、自选存储器、其它基于硫属化物的存储器、铁电晶体管随机存取存储器(FeTRAM)、铁电随机存取存储器(FeRAM)、磁随机存取存储器(MRAM)、自旋转移力矩(STT)-MRAM、导电桥接RAM(CBRAM)、电阻性随机存取存储器(RRAM)、基于氧化物的RRAM(OxRAM)、或非(NOR)快闪存储器和电可擦除可编程只读存储器(EEPROM)。

存储器子系统控制器115(或简称为控制器115)可与存储器装置130通信以执行操作,例如在存储器装置130处执行的读取数据、写入数据或擦除数据和其它此类操作。存储器子系统控制器115可以包含硬件,例如一或多个集成电路和/或离散组件、缓冲存储器或其组合。硬件可包含具有专用(即,硬编码)逻辑的数字电路系统以执行本文所描述的操作。存储器子系统控制器115可以是微控制器、专用逻辑电路系统(例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)等)或其它合适的处理器。

存储器子系统控制器115可包含配置成执行存储在本地存储器119中的指令的处理器117(例如,处理装置)。在所示出的实例中,存储器子系统控制器115的本地存储器119包含配置成存储指令的嵌入式存储器,所述指令用于执行控制存储器子系统110的操作,包含处理存储器子系统110与主机系统120之间的通信的各种过程、操作、逻辑流程和例程。

在一些实施例中,本地存储器119可包含存储存储器指针、所提取数据等的存储器寄存器。本地存储器119还可包含用于存储微码的只读存储器(ROM)。虽然图1中的实例存储器子系统110已示出为包含控制器115,但在本公开的另一实施例中,存储器子系统110不包含控制器115,而是可替代地依靠外部控制(例如,由外部主机或由与存储器子系统分离的处理器或控制器提供)。

一般来说,存储器子系统控制器115可从主机系统120接收命令或操作,且可将所述命令或操作转换为指令或适当命令以实现对存储器装置130的所要存取。存储器子系统控制器115可负责其它操作,例如耗损均衡操作、垃圾收集操作、错误检测和错误校正码(ECC)操作、加密操作、高速缓存操作和与存储器装置130相关联的逻辑地址(例如,逻辑块地址(LBA)、名称空间)与物理地址(例如,物理块地址)之间的地址转译。存储器子系统控制器115可进一步包含主机接口电路系统以经由物理主机接口与主机系统120通信。主机接口电路系统可将从主机系统接收到的命令转换成命令指令以存取存储器装置130以及将与存储器装置130相关联的响应转换成用于主机系统120的信息。

在一些实施方案中,存储器子系统110可使用分条方案,根据此方案,每个数据有效负载(例如,用户数据)利用存储器装置130(例如,NAND型快闪存储器装置)的多个裸片,使得有效负载分布在整个裸片子组上,而其余的一或多个裸片用以存储错误校正信息(例如,奇偶校验位)。因此,本文将使用分条方案跨越存储器装置的一组裸片分布的一组块称为“超级块”。

存储器子系统110还可包含未示出的额外电路系统或组件。在一些实施例中,存储器子系统110可包含高速缓存器或缓冲器(例如,DRAM)和地址电路系统(例如,行解码器和列解码器),所述地址电路系统可从控制器115接收地址且对地址进行解码以存取存储器装置130。

在一些实施例中,存储器装置130包含本地媒体控制器135,所述本地媒体控制器结合存储器子系统控制器115操作以对存储器装置130的一或多个存储器单元执行操作。外部控制器(例如,存储器子系统控制器115)可在外部管理存储器装置130(例如,对存储器装置130执行媒体管理操作)。在一些实施例中,存储器装置130为受管理存储器装置,其为与本地控制器(例如,本地控制器135)组合以用于在同一存储器装置封装内进行媒体管理的原始存储器装置。受管理存储器装置的实例为受管理NAND(MNAND)装置。

根据本公开的实施例,存储器子系统110包含可用于实施电荷损失扫描操作管理的BF扫描管理器组件113。在一些实施例中,控制器115包含BF扫描管理器组件113的至少一部分。举例来说,控制器115可包含处理器117(处理装置),所述处理器配置成执行存储于本地存储器119中以用于执行本文所述操作的指令。在一些实施例中,BF扫描管理器组件113为主机系统120、应用程序或操作系统的部分。BF扫描管理器组件113可管理与存储器装置130的特定区间中的块族相关联的BF扫描频率,如下文更详细地描述。

图2为根据一些实施例的示出由三层级存储器单元展现的缓慢电荷损失引起的时间电压移位的一组曲线图。虽然图2的说明性实例利用三层级单元,可进行相同观测,且因此,相同补救措施适用于每单元可存储任何数目个位的其它类型的存储器单元,例如单层级单元(SLC)、四层级单元(QLC)、多层级单元(MLC)等,以便补偿缓慢电荷损失。

如本文在上文所述,可通过将某一电压施加到存储器单元来编程存储器单元(向其写入),这导致电荷由存储器单元保持,从而允许调制存储器单元所产生的电压分布。精确地控制存储器单元所存储的电荷的量允许建立对应于不同逻辑电平的多个阈值电压电平,从而有效地允许单个存储器单元存储多位信息:以2

在图2中,每一曲线图示出由相应写入电平(其可假定在分布的中点)编程以编码对应逻辑电平(在TLC的情况下,“000”到“111”)的存储器单元所产生的电压分布。为了区分邻近编程分布(对应于两个不同逻辑电平),限定读取阈值电压电平(由竖直虚线展示),使得低于阈值电平的任何测得电压与一对邻近分布中的一个分布相关联,而大于或等于阈值电平的任何测得电压与一对相邻分布中的另一分布相关联。

一组曲线图包含反映紧接在编程之后的时间段的第一曲线210图和反映编程之后的长时间的第二曲线图230。如通过比较第二曲线图230与第一曲线图210所见,电压分布由于缓慢电荷损失而随时间变化,这产生阈值电压电平的漂移值(通过竖直虚线展示)。在各种实施例中,针对由块族分组的经编程页或块选择性地跟踪时间电压移位(TVS),且将基于具有某一块族的页或块隶属的适当的电压偏移施加到基础读取电平,以便执行读取操作。

图3为根据一些实施例示出阈值电压偏移310与编程后时间320(例如,从单元已被写入(例如,编程)以来经过的时间段)的相关性的实例曲线图300。如通过图3示意性地示出,将存储器装置的页或块(或呈另一粒度的存储器单元群组)分组成块族330A到330N,使得每一块族包含已经在指定时间窗口(或时间的窗口)内编程的一或多个页或块,从而在块族打开时通过总体温度和/或PEC而潜在地改变。如上文中所提到,由于编程之后经过的时间和温度是影响时间电压移位的主要因素,所以推测单个块族内的所有页、块和/或分区在存储器单元中展现类似的阈值电压分布,且因此随着时间的推移将需要相同的电压偏移以用于读取操作。

可相对于页编程事件异步地创建块族。在说明性实例中,每当从创建最后一个块族以来已经过指定时间段(例如,预定义的分钟数),图1的存储器子系统控制器115就可创建新块族,在编程期间,所述时间段可取决于与页相关联的总体温度和/或PEC而显著变化。更确切地说,随着总体温度和/或PEC增加,图3中所示出的整个渐近曲线可移位以相对于时间具有更陡曲线。基于数模(DAC)转换的电压值(也被称作DAC),沿着用于第七谷值(V7)的垂直通道示出缓慢电荷损失。每个DAC可表示特定数目的毫伏(mV),此处举例来说约10mV。

新创建的块族可与区间0相关联,且每一随后创建的块族可与循序编号的块族相关联。接着,存储器子系统控制器可定期执行校准过程,以便使每一块族的每一裸片与预定义阈值电压偏移区间(例如,在图3的说明性实例中为区间0-7)中的一者相关联,所述预定义阈值电压区间又与待施加用于读取操作的电压偏移相关联。页、块和/或分区与块族以及块族和裸片与阈值电压偏移区间的关联可存储于由存储器子系统控制器115维持的相应元数据表中。

图4A为示出根据实施例的块族如何存在于特定阈值电压偏移区间中的曲线图400,所述特定阈值电压偏移区间取决于编程后时间(TAP)。图4B为示出根据实施例的块族如何随着编程后时间(TAP)增加而改变其相应电压偏移区间的曲线图400。在图4A的实例实施例中,块族(BF)在第一阈值电压偏移区间(简称为区间1)中创建,且随时间推移变旧以转变为与后续阈值电压偏移区间相关联。TVS中的漂移(其沿着曲线图400中的Y轴)相对于TAP更快速地开始,且因此起初具有更陡的曲线,且稍后减缓,从而调平此曲线。

如图4A中所示出,BF28被识别为区间1中最旧的(即,最早创建的)块族,因为BF28中的数据的至少一部分仍在由区间1限定的编程后时间(TAP)内。此外,BF30仅刚创建(例如,闭合为BF)且为区间1中最新的(即,最近创建的)块族。类似地,BF27被识别为第二阈值电压偏移区间(区间2)中最新的块族,且BF24被识别为区间2中最旧的块族。此外,BF22足够旧,如今可驻存在第三阈值电压偏移区间(区间3)中。虽然可存在许多阈值电压偏移区间,但图4A的实施例仅出于解释的目的示出三个区间,其中每一者与一或多个阈值电压偏移值相关联。

如在图4B中所证明,块族的阈值电压偏移通常随时间推移而漂移,其中BF28和BF30两者现在都在区间2中,BF25在区间3中,且新块族BF31和较新的BF位于区间1中。由于块族随时间推移而相对于阈值电压偏移值漂移的事实,控制器可执行存储器装置的存储器单元的扫描(例如,以测量TVS电平)且基于所测得TVS电平执行块族的指针的再同步。扫描可被称为块族扫描或BF扫描。扫描可涉及相对于正扫描的块族内指定数目个随机选择的块而利用不同阈值电压偏移执行读取操作,以选择最小化读取操作的错误率的阈值电压偏移。随机选择的块可表示块族中的块。扫描可限于存在于阈值电压偏移区间(例如,如在图4A中查看的BF24与BF28)之间的边界处的块族(例如,最旧块族),且因此预期首先移动到新区间中。取决于扫描的频率,还可测量最近过渡到新区间中的一或多个BF,且使其区间指针再同步。

可定期执行校准过程以使区间指针再同步。“校准”在本文中将指更改读取电平值(可能通过调整读取电平偏移或读取电平基数)以更好地匹配用于读取或一组读取的理想读取电平。指针的再同步是指更新元数据表之间的指针,所述指针告知控制器115针对哪一块族使用哪一阈值电压偏移区间,且因此最后哪一阈值电压偏移值适用于哪一块族。在比对平均每个区间执行校准过程的频率高的频率下执行BF扫描,使得在从TVS电平已发生改变以来经过过长时间之前可以检测到移动到新区间所需的TVS电平的改变。BF扫描频率可基于块族平均停留在每一区间中的时长来限定。块族平均停留在特定区间中的持续时间在本文中被称作“区间持续时间”。BF扫描在每个区间持续时间内执行的频率超过一次。存储器子系统可使用BF扫描频率参数定期执行BF扫描操作。可修改BF扫描频率参数以在必要时改变BF扫描操作的频率。

图5示意性地示出根据本公开的实施例的由存储器子系统控制器维持以用于使块与块族相关联的实例元数据。如图5示意性地示出,存储器子系统控制器可维持超级块表510、族表520和偏移表530。

超级块表510的每一记录指定与指定超级块和分区组合相关联的块族。在一些实施方案中,超级块表记录可另外包含与指定超级块和分区组合相关联的时间和温度值。

族表520由块族编号索引,使得族表520的每一记录为记录的索引所参考的块族指定与块族的相应裸片相关联的一组阈值电压偏移区间。换句话说,族表520的每一记录包含向量,其每个元素指定与所述向量元素的索引所参考的裸片相关联的阈值电压偏移区间。可通过校准过程确定将与块族裸片相关联的阈值电压偏移区间,如上文更详细地描述。

最后,偏移表530由区间编号索引。偏移表530的每一记录(例如,针对TLC、MLC和/或SLC)指定与阈值电压偏移区间相关联的一组阈值电压偏移。

元数据表510至530可存储在图1的一或多个存储器装置130上。在一些实施方案中,元数据表的至少一部分可高速缓存在图1的存储器子系统控制器115的本地存储器119中。

在操作中,在接收到读取命令后,存储器子系统控制器确定对应于读取命令所指定的逻辑块地址(LBA)的物理地址。例如物理块编号和裸片识别符的物理地址分量用于执行元数据表遍历:首先,超级块表510用于识别对应于物理块编号的块族识别符;接着,块族识别符用作族表520的索引以便确定与块族和裸片相关联的阈值电压偏移区间;最终,所识别的阈值电压偏移区间用作偏移表530的索引以便确定对应于区间的阈值电压偏移。存储器子系统控制器可接着将所识别的阈值电压偏移叠加地施加到基础电压读取电平,以便执行所请求的读取操作。

在图5的说明性实例中,超级块表510将超级块0的分区0映射到块族4,所述块族用作族表520的索引以便确定裸片0被映射到区间3。将后一值用作偏移表的索引,以便确定区间3的阈值电压偏移值。

图6示出根据本公开的实施例的基于存储器子系统600的存储器装置的操作温度的电荷损失扫描操作管理的实例。一般来说,存储器子系统200可对应于图1的存储器子系统110。举例来说,存储器子系统600可包含图1的存储器子系统控制器115、存储器装置130/140和BF扫描管理器组件113。

在一些实施方案中,存储器子系统600可识别与存储器子系统600相关联的操作温度。操作温度可以是存储器子系统600操作所处的当前温度。可以若干方式获得与存储器子系统600相关联的温度测量值。举例来说,温度测量值可包含来自位于存储器装置130/140中和/或周围的一或多个温度传感器610的操作温度T

存储器子系统600可选择存储器装置预期在其下操作的标称温度Tn 622作为阈值温度。可基于例如历史数据、存储器装置使用统计数据、知识数据库、室温、任意值、假设等选择标称温度(例如,T40)。举例来说,标称温度可选为40℃。在一些实施方案中,可使用阈值起始温度(例如,T

在实施方案中,存储器子系统600可使用BF扫描频率参数652来定期执行BF扫描操作650。可修改BF扫描频率参数652以在必要时改变BF扫描操作650的频率。存储器子系统可限定对应于标称温度Tn 622和/或阈值温度范围624的每一电压区间的初始BF扫描频率值。可基于块族平均停留在每一区间中的时长(例如,区间持续时间)来限定初始BF扫描频率。BF扫描在每个区间持续时间内执行的频率超过一次,以便确保在经过过长时间之前检测到区间改变为必要的测得数据状态度量的改变。举例来说,如果确定块族在区间0中停留两小时,也就是说,区间持续时间为两小时,那么初始BF扫描频率可设定为每两小时多于一次,或每两小时至少两次(或每小时一次)。

在实施方案中,存储器子系统600可确定存储器子系统600的操作温度是否满足温度条件。举例来说,温度条件可被限定为操作温度高于或低于阈值温度Tn 622,或在一些实例中被限定为操作温度在阈值温度范围624之外。举例来说,当操作温度低于阈值起始温度(例如,T

图6示出在一个时间点从温度传感器610获得的所识别的操作温度T

举例来说,可使用预定义函数修改BF扫描频率。举例来说,函数可基于操作温度与标称温度的温度偏差。举例来说,BF扫描频率的减小可与所述偏差成比例。可基于实验、使用数据和关于温度变化对SCL的影响的其它统计数据导出函数。举例来说,区间0的初始BF扫描频率被限定为每小时一次。当确定操作温度T

类似地,存储器子系统600可比较阈值温度Tn 622与所识别的操作温度T

在一些实施方案中,除阈值温度范围之外,存储器子系统600还可限定多个温度范围。举例来说,存储器子系统600可识别存储器装置可实际上在其下操作的最高温度(例如,T

存储器子系统600可使每一温度范围与用于针对每一电压区间执行BF扫描操作650的相应扫描条件相关联。在一个实施方案中,存储器子系统600可使每一温度范围与预定义扫描频率值相关联。可基于与相应温度范围相关联的预定义扫描频率值导出对应于每一温度范围的每一扫描条件。举例来说,当特定时间发生时,可满足温度范围的特定扫描条件。可基于温度范围的预定义扫描频率值导出特定时间的发生。举例来说,如果针对温度范围将预定义扫描频率值设定为每小时一次,那么存储器子系统可确定何时已从执行最后一次BF扫描以来经过一个小时。当特定时间(例如,距离最后一次扫描一个小时)发生时,可满足扫描条件。预定义扫描频率值可基于实验或其它统计数据设定,且基于相关联温度范围变化。温度范围越大,频率值就越高,且温度范围越小,频率值就越低。可基于块族在所述温度范围内停留在电压区间的持续时间来选择频率值。举例来说,区R3可与每2小时一次的频率值相关联,区R2可与每四小时一次的频率值相关联等。

存储器子系统600可识别所识别的操作温度所处的特定温度范围。存储器子系统可随后根据对应于操作温度所处的特定温度范围的预定义扫描频率值来修改BF扫描频率参数652。举例来说,当识别T

在实施方案中,当满足对应于特定温度范围的指定扫描条件时,存储器子系统可执行BF扫描操作650。举例来说,给定扫描条件在指定时间发生时被满足。在实施方案中,基于与特定温度范围相关联的相应扫描频率参数导出指定时间。也就是说,如果频率值指示每一小时执行一次扫描,那么存储器子系统可确定何时已从执行最后一次BF扫描以来经过一个小时且指示满足扫描条件。

在实施方案中,存储器子系统600通过使用块族中的代表性块执行读取操作而在对应于频率参数652的经修改频率值下执行BF扫描操作650。当存储器子系统识别出与代表性块相关联的数据状态度量指示不同读取偏移电平更适当时,可执行校准过程以将与裸片的块族相关联的区间指针改变到下一区间。BF扫描操作650还用于组合或合并块族,因为块族变旧和时间上邻近的块族的时间电压移位开始收敛。存储器子系统控制器可执行BF扫描以识别为用于组合的候选者的活动块族。相比于针对校准过程进行的测量(例如,RBER),经执行以确定是否应合并块族的测量在更高的粒度水平(例如,实际电压偏移)下进行。

在操作中,在接收到读取命令后,存储器子系统控制器可识别与由读取命令所指定的逻辑块地址(LBA)识别的块相关联的块族,识别与块族和其上驻存有块的裸片相关联的阈值电压偏移区间,通过将与阈值电压偏移区间相关联的阈值电压偏移叠加地施加到基础读取电平来计算新的阈值电压,且使用新的阈值电压执行读取操作。每一读取对应于特定页类型,且每一页类型对应于特定谷值。对于每一页读取,每一谷值应用适当偏移。

图7为根据本公开的一些实施例的修改块族扫描频率参数的实例方法的流程图。方法700可由可包含硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,在处理装置上运行或执行的指令)或其组合的处理逻辑执行。在一些实施例中,方法700由图1的BF扫描管理器组件113执行。尽管以特定顺序或次序展示,但除非另外规定,否则可修改操作的次序。因此,示出的实施例应仅作为实例理解,且示出的操作可以不同次序执行,且一些操作可并行执行。另外,可在一些实施例中省略一或多个操作。因此,并非在每个实施例中都需要所有所示出的操作,且其它过程流程是可能的。

在操作710处,处理逻辑可识别存储器装置的操作温度。在一些实例中,一或多个温度传感器可用于测量存储器装置的操作温度。

在操作720处,处理逻辑可确定操作温度满足温度条件。举例来说,确定操作温度满足温度条件可包含确定操作温度在阈值温度范围之外。阈值温度范围可包含阈值起始温度和阈值结束温度。举例来说,确定操作温度在阈值温度范围之外可包含确定操作温度低于阈值起始温度或高于阈值结束温度。

在操作730处,处理逻辑可修改用于对存储器装置的一组块中的代表性块执行扫描操作的扫描频率参数。在一些实施例中,一组块可由块族表示。举例来说,如果确定操作温度低于阈值起始温度,那么可通过减小扫描频率参数来修改扫描频率参数。在另一实例中,如果确定操作温度高于阈值结束温度,那么可通过增大扫描频率参数来修改扫描频率参数。在一些实例中,可通过基于操作温度与阈值温度范围的偏差的函数修改扫描参数来修改扫描频率参数。

在一些实例中,处理逻辑可使多个预定义温度范围中的每一温度范围与多个预定义扫描频率值中的相应扫描频率值相关联。处理逻辑可识别多个预定义温度范围中的特定温度范围,其中操作温度处于特定温度范围内。处理逻辑可通过将扫描频率参数设定为多个预定义扫描频率值中的特定扫描频率值来修改扫描频率参数。特定扫描频率值对应于特定温度范围。在操作740处,处理逻辑可在由扫描频率参数识别的频率下执行扫描操作。

图8为根据本公开的一些实施例的基于存储器装置的操作温度管理块族扫描操作的实例方法的流程图。方法800可由可包含硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,在处理装置上运行或执行的指令)或其组合的处理逻辑执行。在一些实施例中,方法800由图1的BF扫描管理器组件113执行。尽管以特定顺序或次序展示,但除非另外规定,否则可修改操作的次序。因此,示出的实施例应仅作为实例理解,且示出的操作可以不同次序执行,且一些操作可并行执行。另外,可在一些实施例中省略一或多个操作。因此,并非在每个实施例中都需要所有所示出的操作,且其它过程流程是可能的。

在操作810处,处理逻辑识别多个温度范围。举例来说,每一温度范围包含起始温度和结束温度。举例来说,多个温度范围不彼此重叠。在一些实例中,每一温度范围的大小对应于相应温度范围中的结束温度与起始温度之差。在一些实例中,大小是可配置的。在一些实例中,多个温度范围中的每一范围上的大小是相同的。在一些实例中,可通过修改温度范围的大小来修改开始温度和结束温度。

在操作820处,处理逻辑使每一温度范围与用于对存储器装置的一组块执行扫描操作的相应扫描条件相关联。在一些实施例中,一组块可由块族表示。举例来说,对应于每一温度范围的每一扫描条件是基于与相应温度范围相关联的扫描频率参数。

在操作830处,处理逻辑识别存储器装置的操作温度。在操作840处,处理逻辑确定操作温度在多个温度范围中的特定温度范围内。

在操作850处,响应于确定满足指定扫描条件,处理逻辑执行BF扫描操作,其中指定扫描条件对应于特定温度范围。举例来说,给定扫描条件在指定时间发生时被满足,其中指定时间是基于相应扫描频率参数导出的。

图9示出计算机系统900的实例机器,在所述机器内可执行一组指令以用于使机器执行本文中所论述的方法中的任何一或多种。在一些实施例中,计算机系统900可对应于主机系统(例如,图1或2的主机系统120),所述主机系统包含、耦合到或利用存储器子系统(例如,图1或2的存储器子系统110)或可用于执行控制器的操作(例如,运行操作系统以执行对应于图1或2的BF扫描管理器组件113的操作)。在替代性实施例中,机器可连接(例如,联网)到局域网(Local Area Network,LAN)、内联网、外联网和/或互联网中的其它机器。机器可作为对等(或分散式)网络环境中的对等机器或作为云计算基础设施或环境中的服务器或客户端机器在客户端-服务器网络环境中的服务器或客户端机器的容量中操作。

机器可以是个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂窝电话、网络设备、服务器、网络路由器、交换机或桥接器,或能够(依序或以其它方式)执行指定待由机器采取的动作的一组指令的任何机器。此外,虽然示出了单个机器,但还应认为术语“机器”包含单独地或共同地执行一组(或多组)指令以执行本文所论述的方法中的任何一或多种的机器的任何集合。

实例计算机系统900包含经由总线930彼此通信的处理装置902、主存储器904(例如,只读存储器(ROM)、快闪存储器、动态随机存取存储器(DRAM),例如同步DRAM(SDRAM)或Rambus DRAM(RDRAM)等)、静态存储器908(例如,快闪存储器、静态随机存取存储器(SRAM)等)以及数据存储系统918。

处理装置902表示一或多个通用处理装置,例如微处理器、中央处理单元或类似者。更确切地说,处理装置可以是复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、超长指令字(VLIW)微处理器或实施其它指令集的处理器或实施指令集的组合的处理器。处理装置902还可以是一或多个专用处理装置,例如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、网络处理器或类似者。处理装置902配置成执行指令928以用于执行本文所论述的操作和步骤。计算机系统900可进一步包含网络接口装置912以在网络920上通信。

数据存储系统918可包含机器可读存储媒体924(也称为计算机可读媒体),所述机器可读存储媒体上存储有一或多组指令928或体现本文所描述的方法或功能中的任何一或多种的软件。指令928还可在由计算机系统900执行其期间完全或至少部分地驻存于主存储器904内和/或处理装置902内,所述主存储器904和所述处理装置902还构成机器可读存储媒体。机器可读存储媒体924、数据存储系统918和/或主存储器904可对应于图1或2的存储器子系统110。

在一个实施例中,指令928包含用以实施对应于图1或2的BF扫描管理器组件113的功能的指令。虽然在实例实施例中将机器可读存储媒体924展示为单个媒体,但术语“机器可读存储媒体”应被认为包含存储一或多组指令的单个媒体或多个媒体。术语“机器可读存储媒体”还应被认为包含能够存储由机器执行的一组指令或对其进行编码且使机器执行本公开的方法中的任何一或多种的任何媒体。因此,应认为术语“机器可读存储媒体”包含但不限于固态存储器、光学媒体和磁性媒体。

已就对计算机存储器内的数据位的操作的算法和符号表示而言呈现了先前详细描述的一些部分。这些算法描述和表示是数据处理领域的技术人员用于将其工作的主旨最有效地传达给本领域其它技术人员的方式。算法在本文中且一般被认为是产生所要结果的操作的自洽序列。操作是要求对物理量进行物理操控的那些操作。这些量通常但未必呈能够被存储、组合、比较和以其它方式操控的电信号或磁信号的形式。主要出于常用的原因,已证明将这些信号称为位、值、元素、符号、字符、术语、编号或类似者有时是方便的。

然而,应牢记,所有这些和类似术语应与适当物理量相关联,且仅是应用于这些量的方便标记。本公开可涉及将表示为计算机系统的寄存器和存储器内的物理(电子)量的数据操控且变换成类似地表示为计算机系统的存储器或寄存器或其它此类信息存储系统内的物理量的其它数据的计算机系统或类似电子计算装置的动作和过程。

本公开还涉及一种用于执行本文中的操作的设备。此设备可出于预期目的而专门构建,或其可包含由存储于计算机中的计算机程序选择性地激活或重新配置的通用计算机。此类计算机程序可存储于计算机可读存储媒体中,例如但不限于任何类型的盘(包含软盘、光盘、只读光盘存储器(Compact Disc Read-Only Memory,CD-ROM)和磁性光盘)、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁卡或光卡或适合于存储电子指令的任何类型的媒体,其各自耦合到计算机系统总线。

本文中呈现的算法和显示本质上并不与任何特定计算机或其它设备相关。各种通用系统可根据本文中的教示与程序一起使用,或其可以证明构造更专用的设备来执行方法是方便的。将如下文描述中所阐述的那样呈现用于各种这些系统的结构。另外,并不参考任何特定编程语言来描述本公开。应了解,可使用多种编程语言来实施如本文所描述的本公开的教示。

本公开可提供为计算机程序产品或软件,所述计算机程序产品或软件可包含其上存储有可用以对计算机系统(或其它电子装置)进行编程以执行根据本公开的过程的指令的机器可读媒体。机器可读媒体包含用于存储呈机器(例如,计算机)可读形式的信息的任何机构。在一些实施例中,机器可读(例如,计算机可读)媒体包含机器(例如,计算机)可读存储媒体,如只读存储器(“ROM”)、随机存取存储器(“RAM”)、磁盘存储媒体、光学存储媒体、快闪存储器装置等。本文中使用的词语“实例”或“示例性”意味着充当实例、例子或说明。本文中描述为“实例”或“示例性”的任何方面或设计未必应解释为比其它方面或设计更佳或有利。实际上,使用词语“实例”或“示例性”旨在以具体方式呈现概念。如本申请中所使用,术语“或”旨在意味着包含性的“或”而非排它性的“或”。也就是说,除非另有说明或从上下文可知,否则“X包括A或B”旨在意味着任何自然的包含性排列。也就是说,如果X包含A;X包含B;或X包含A和B,则在任何前述例子下满足“X包含A或B”。另外,如在本申请及所附权利要求书中使用的冠词“一(a/an)”大体上可以解释为意味着“一或多个”,除非另外规定或从上下文可知表示单数形式。此外,在整篇中使用术语“实施例”或“一个实施例”或“实施方案”或“一个实施方案”或类似者可意味着或可能不意味着相同实施例或实施方案。本文中所描述的一或多个实施例或实施方案可在特定实施例或实施方案中组合。如本文所使用的术语“第一”、“第二”、“第三”、“第四”等意图作为标记来区分不同元件,且可能未必具有根据其数字标号的序数含义。

在前述说明书中,已参考本公开具体实例实施例描述了本公开的实施例。将显而易见的是,可以在不脱离如所附权利要求书中阐述的本公开实施例的更广精神和范围的情况下对本公开进行各种修改。因此,说明书和图式应被视为说明性的而非限制性的。

技术分类

06120114707176