用于非易失性存储器的用户可配置的耗损均衡的系统、方法和设备与流程

文档序号:17582854发布日期:2019-05-03 21:04阅读:182来源:国知局
用于非易失性存储器的用户可配置的耗损均衡的系统、方法和设备与流程

本申请是递交于2016年12月22日的申请号为15/388,892的美国非临时申请的国际申请,其根据35u.s.c.§119(e)要求递交于2016年10月03日的申请号为62/403,340的美国临时专利申请的权益,以上申请全部内容通过引用以其整体被并入本文用于所有目的。

本公开大体涉及非易失性存储器,且更具体地涉及与非易失性存储器相关联的耗损均衡。

背景

非易失性存储器设备包括存储器单元阵列,该存储器单元阵列可以被配置为存储数据值以供系统的各种其他部件访问的存储器部件。存储器单元可以包括存储器元件,当该单元经历在数目上增加的编程和擦除操作(pe周期)时,这些存储器元件可以由于保留有效数据时间更短而随时间劣化。这种存储器单元可以包括以物理扇区分组的物理储存位置,该物理扇区被映射到表示存储器单元阵列的存储空间的逻辑地址和扇区。耗损均衡可以被实现为改变数据的物理位置,并将pe周期的耗损分散到若干个物理扇区中。然而,这种耗损均衡也可能将不太频繁循环的数据移动到已经经历很多次pe周期的物理扇区。相应地,耗损均衡技术可能会不经意地减少很少经历pe周期的数据的保持(retention)时间。

附图简述

图1示出了根据一些实施例配置的包括多于一个尺寸的扇区的可配置的耗损均衡存储器设备的示例。

图2示出了根据一些实施例配置的包括统一扇区尺寸的可配置的耗损均衡存储器设备的示例。

图3示出了根据一些实施例配置的可配置的耗损均衡存储器设备的示例,其中在该可配置的耗损均衡存储器设备中,参数扇区被排除在耗损均衡之外,以及其他扇区以固定的分区尺寸被分组。

图4示出了根据一些实施例实现的用于配置存储器设备的耗损均衡的方法的示例的流程图。

图5示出了根据一些实施例实现的用于配置存储器设备的耗损均衡的方法的另一示例的流程图。

图6示出了根据一些实施例配置的可配置的耗损均衡存储器系统的示例。

详细描述

在以下的描述中,阐述了许多特定的细节,以便提供对所提出的概念的透彻理解。所提出的概念可以被实践,而无需这些特定细节的一些或全部。在其他实例中,没有详细描述众所周知的过程操作,以免不必要地模糊所描述的概念。虽然一些概念将结合特定示例进行描述,但要理解这些示例不旨在进行限制。

在各种实施例中,存储器设备关于这些存储器设备可能经历的编程和擦除(pe)周期的数目可被限制,因为存储器单元劣化到它们不能可靠地将数据保留足够的时间段的程度。随着pe周期(在本文中也称为耐久力)的数目的增加,数据被可靠保留的时间长度(在本文中也称为保持)被减小。在一些实施例中,耗损均衡技术可以被实现为将频繁修改的信息移动到存储器阵列的不同区域,以限制在任何一个区域中实现的pe周期的数目。这种耗损均衡技术可用于减少存储信息的逻辑块的存储器区域上的有效pe周期。然而,当应用于整个存储器阵列时,耗损均衡还增加了存储不频繁修改的信息的逻辑块的存储器区域上的有效pe周期,从而减少了不频繁修改的信息的保持期。此外,由于数据的移动而导致的保持期的这种减少可能在存储器的用户不知道的情况下发生。用户可以认为存储器阵列的低循环区域具有更长的保持期,但是耗损均衡技术通过将信息从低循环的物理扇区移动到更高循环的物理扇区实际上减少了保持期。在各种实施例中,扇区可以是擦除和/或编程或重写的单位。因此,扇区的尺寸可以由擦除、编程或重写操作中包括的存储器的一部分的尺寸来确定或定义。

如下文将更详细讨论的,耗损均衡技术可以包括将逻辑扇区映射到物理扇区并跟踪每个物理扇区的擦除计数的各种方法,使得当物理扇区达到pe周期阈值时,该扇区中的数据被移动到具有更少擦除周期的另一物理扇区,并且逻辑扇区到物理扇区的映射被更新。这使得逻辑扇区似乎支持比对于任何一个物理扇区可能支持的pe周期多得多的pe周期,从而将逻辑扇区的pe周期耗损分散到许多物理扇区,使得随着时间的推移,所有物理扇区具有大致相等数目的pe周期和耗损。

一些耗损均衡技术依然是受限的,因为它们没有提供关于存储器阵列的哪些部分被耗损均衡以增加循环能力,以及存储器阵列的哪些部分没有被耗损均衡以维持更长的数据保持的任何用户控制。例如,具有内部耗损均衡机制的一些存储器设备在耗损均衡操作中使用设备中的大部分或所有的物理扇区。在这种的实施例中,存储器设备不能控制哪些逻辑扇区可以被重新定位到物理扇区中,这些物理扇区已经接收的pe周期的数目高于逻辑扇区中当前使用的物理扇区的pe周期的数目。这会导致包含需要长保持时间的数据的逻辑扇区被移动到经历了更高数目的pe周期的物理扇区,从而在闪存设备用户不知道的情况下减少了保持时间。因此,需要高保持的存储器的区域(例如很少更新的代码)可以通过耗损均衡算法移动到高pe循环的扇区中,从而在用户不知情的情况下减少了对于该存储器区域的保持时间。

本文公开了被配置为提供实现用户可配置的耗损均衡的存储器设备的各种实施例。因此,存储器阵列的一些区域可能经历用于一些逻辑扇区的更高的明显耐久力的耗损均衡,而存储器阵列的其他区域没有经历耗损均衡以维持保持力(retention)。存储器阵列中经历耗损均衡的和没有经历耗损均衡的这些部分可以以本文公开的多种方式被明确定义。在一个示例中,地址指针可用于定义存储器阵列的分区(地址范围)之间的边界,并用于针对每个分区指示该分区是在耗损均衡中使用的扇区池内或者不在耗损均衡池内。逻辑地址范围的这种明确定义提供给存储器对哪些存储器区域接收较低的pe周期并因此具有较长的保持,以及哪些区域能够有效地具有比存储器的单个区域可能支持的pe周期更高的pe周期的用户控制。下文提供了这种可配置的耗损均衡的附加的细节。

图1示出了根据一些实施例配置的包括多于一个尺寸的扇区的可配置的耗损均衡存储器设备的示例。如下文将更详细讨论的,诸如存储器设备100的存储器设备可以被配置为使得用户能够明确地选择存储器的一些逻辑部分以包括在耗损均衡中使用的物理存储器部分的集合或池中,以及进一步使得用户能够明确地排除其他逻辑存储器部分在这种耗损均衡中的使用。一组连续的逻辑部分被称为分区,以及每个分区可以被选定用于耗损均衡或者被排除在耗损均衡之外。因此,本文公开的各种实施例为用户提供了灵活性,以选择哪些逻辑部分可能具有低pe周期且从而具有更长的数据保持,相对于哪些逻辑部分可能具有高pe周期持久力但具有较短保持。如下文将更详细讨论的,逻辑部分可以描述逻辑扇区,且物理部分可以描述物理扇区。然而,在各种实施例中,这些部分可能不与扇区对齐,以及一部分可能不直接与存储器空间中的扇区对应。

在各种实施例中,存储器设备100可以是包括存储器阵列(例如存储器阵列102)中的若干非易失性存储器元件的储存设备。因此,存储器阵列102可以包括可被分组到或分成扇区的存储器元件的许多列和行。在各种实施例中,这些扇区可以是一组数据单元,例如可以作为被擦除的单位的字(words)。在各种实施例中,图1所示的扇区是可以映射到物理扇区的逻辑扇区。在一些实施例中,逻辑扇区可以是由独立于存储器阵列内的数据的物理位置的存储器阵列地址引用的数据的扇区。因此,主机系统可将逻辑扇区视为驻留在特定地址(例如,从存储器阵列的零地址处开始)。在这个示例中,数据实际上可以位于存储器阵列地址空间的不同部位,位于不同的物理地址处。在各种实施例中,存储器设备100维护从数据的逻辑地址到对应的实际物理位置的映射表。以这种方式,存储器设备100可以包括可以映射到逻辑存储器扇区的各种物理存储器扇区。在各种实施例中,存储器阵列102可包括不同尺寸的存储器扇区。例如,存储器阵列102可包括监管存储器扇区130,其可具有第一尺寸,例如4千字节(kb),且还可包括第一存储器扇区104,其可以是大的存储器扇区且具有第二尺寸,例如256kb。在一些实施例中,存储器阵列102还可以包括第二存储器扇区106,其可以是存储器阵列102中的最后一个存储器扇区,并且也可以具有4kb的第一尺寸。

此外,可以将扇区分组为分区。因此,存储器阵列102可以包括各种存储器分区,这些存储器分区是可以由边界限定的逻辑扇区的连续组。例如,存储器阵列102可以包括第一边界110、第二边界112、第三边界114和第四边界116,其可以限定第一分区118、第二分区120、第三分区122、第四分区124和第五分区126。如下文将更详细讨论的,这些边界可以基于可以由用户指定的耗损均衡参数而可配置。因此,用户可以指定和选定与分区相关联的尺寸和边界。此外,耗损均衡参数还可以指示在耗损均衡中使用的物理扇区中是否包括特定的分区。如下文将更详细讨论的,分区的尺寸可以是灵活的,或者基于用户输入可配置。

如前所讨论,耗损均衡可以是用于提高存储器设备(例如,存储器设备100)中的逻辑扇区耐久力的扇区擦除管理技术。耗损均衡将应用于一个逻辑扇区的pe周期分散到存储器设备中的物理扇区的集合或池中的多个物理扇区中。物理扇区的池可用于逻辑扇区数据的重新定位。例如,当实现耗损均衡时,逻辑扇区可以映射到物理扇区,以及每个物理扇区的擦除计数可以被跟踪,使得当对于特定物理扇区达到或超过pe周期阈值时,物理扇区中的数据被移动到具有较少擦除周期的另一物理扇区,并且逻辑扇区到物理扇区的映射被更新。这种对物理扇区的pe周期的跟踪,以及逻辑扇区在物理扇区之上的移动,使得逻辑扇区似乎支持比对于任何一个物理扇区可能支持的pe周期多得多的pe周期。因此,逻辑扇区的pe周期耗损分散在许多物理扇区上,使得随着时间的推移,所有物理扇区具有大致相等数目的pe周期耗损。

在特定示例中,各种扇区可以利用耗损均衡的形式,该形式将一个较小的逻辑扇区放置在较大的物理扇区中,其中物理扇区的子部分可以被单独擦除。当较小的逻辑扇区使用的物理扇区的部分接收到一定数目的擦除周期时,逻辑扇区数据被移动到该较大的物理扇区的下一个子部分。较小的逻辑扇区当前未使用的所有的子部分被保持擦除,以使列泄漏最小化。逻辑扇区在物理扇区中的这种移动将pe周期耗损分散到整个较大的物理扇区中。在各种实施例中,较小的逻辑扇区数据保持在相同的较大的物理扇区内。

因此,耗损均衡基于逻辑扇区到物理扇区的映射。在诸如存储器设备100的存储器设备的生命期期间,随着逻辑扇区的内容从高pe周期的物理扇区移动到较低pe周期的物理扇区,该映射被改变。这在所有物理扇区上提供了pe周期的更均匀分布。逻辑到物理的映射信息被存储在专用存储器阵列中,当逻辑扇区数据从一个物理扇区移动到另一个物理扇区时,该逻辑到物理映射信息被更新。当由主机系统或诸如处理器的部件给出编程和/或擦除命令时,可能会发生扇区数据的移动。

如下文将更详细讨论的,诸如控制电路128的控制电路和诸如监管存储器扇区130的专用储存位置或寄存器可用于配置逻辑扇区到经历耗损均衡的物理扇区的映射。如本文所公开的,控制电路在本文中也可以称为耗损均衡控制电路。更具体地,耗损均衡参数可以被接收并用于明确标识哪些逻辑扇区应该映射到耗损均衡池中包括的并且确实经历耗损均衡的物理扇区。耗损均衡参数还可用于明确标识哪些逻辑扇区应该映射到不包括在耗损均衡池中且没有经历耗损均衡的物理扇区。如上所讨论,诸如存储器设备100的存储器设备可以包括被包括在耗损均衡池中并经历耗损均衡各种存储器扇区,以及还可以包括没有被包括在耗损均衡池中且没有经历耗损均衡的存储器扇区。以这种方式,耗损均衡参数可以被配置为标识哪些分区和相应的逻辑存储器扇区应该被包括在经历耗损均衡的物理扇区的池中,以及哪些分区和相应的逻辑存储器扇区应该被排除。

更具体地,监管存储器扇区130可以被配置为存储标识映射的一个或更多个数据值,该映射标识逻辑存储器扇区,还标识包括这种存储器扇区的分区,以及进一步标识与这样的分区相关联的耗损均衡设置。这种映射的表示的示例如以下的表1所示:

表1

因此,如表1所示,映射可以标识逻辑地址扇区及其相关联的分区。此外,映射还可以标识对于每个分区的耗损均衡设置。如上所讨论,这种耗损均衡设置或特征可以是用户指定的,并基于接收到的用户的输入来确定。以这种方式,用户可以明确地分配逻辑存储器扇区和分区,以被包括在物理存储器扇区的耗损均衡池中或从物理存储器扇区的耗损均衡池中排除。此外,如果在映射中没有标识分区,例如第五分区126,则可以为其分配默认值,例如“1”,指示应该包括该分区。类似地,这样的默认值可以是“0”。

本文考虑并公开了关于分配逻辑存储器扇区到耗损均衡池的各种实施例。例如,尽管前面已经描述了显式的分区标记,但也可以实施其他适合的技术。例如,诸如监管存储器扇区130的储存位置可以存储若干预定义的分区映射,以及配置参数或值可以用于选择所使用的映射。在一些实施例中,可以基于存储器阵列102的地址空间的不同视图来生成这种的预定义的映射。例如,预定义的映射可以包括第一映射,该第一映射将存储器地址空间的最低1/8地址排除在耗损均衡之外。预定义的映射还可以包括第二映射,该第二映射将地址空间的最低1/4排除在耗损均衡之外。预定义的映射还可以包括第三映射,该第三映射将地址空间的较低1/2排除在耗损均衡之外。在该示例中,用户可以提供包括配置参数的输入,并选择要应用的特定的预定义的映射。这种预定义的分区映射的示例在下面的表2、表3和表4中说明:

表2

如表2所示,地址空间的较低1/8被排除在耗损均衡之外。

表3

如表3所示,地址空间的较低1/4被排除在耗损均衡之外。

表4

如表4所示,地址空间的较低1/2被排除在耗损均衡之外。虽然以上示例说明了一些实施例,但本文也考虑和公开了各种其他实施例。例如,如果更多的存储器扇区被实现且可用,则可以以存储器空间的1/16或1/32的粒度来实现存储器空间分配。此外,存储器部分可以从存储器的任一侧来分配,例如从地址“0”或从存储器的末端或顶部来分配。因此,上述示例并不旨在限制本文公开的实施例的范围。

此外,分配逻辑存储器扇区给耗损均衡池可以通过利用地址指针来定义对于要被包括或排除在耗损均衡之外的分区的地址范围来实现。例如,地址指针对可以标识定义分区的地址范围的起点和终点,以及进一步标识与这种分区相关联的耗损均衡设置。如以下的表5所示,包括第一和第二地址指针的第一地址指针对可以标识分区0的起点和终点,且进一步标识耗损均衡设置,该耗损均衡设置指示分区0应该被排除在耗损均衡池之外。此外,包括第三和第四地址指针的第二地址指针对可以标识分区1的起点和终点,且进一步标识耗损均衡设置,该耗损均衡设置指示分区1应该被包括在耗损均衡池中。另外,包括第五和第六地址指针的第三地址指针对可以标识分区2的起点和终点,且进一步标识耗损均衡设置,该耗损均衡设置指示分区2应该被排除在耗损均衡池之外。在一些实施例中,地址指针对可以仅被提供给在耗损均衡池中包括的分区,并且其他分区可以被设置为默认值“0”且被排除在耗损均衡池之外。在各种实施例中,相反的情况可能是真的,并且地址指针对可以仅被提供给从耗损均衡池中排除的分区。

表5

此外,可以通过利用每个分区的单个地址指针来实现将逻辑存储器扇区分配到耗损均衡池。在一些实施例中,分区可以相对于参考地址或其他指针来定义。例如,第一分区(分区0)可以由第一指针(指针a)到基址所标识的地址范围来定义,该基址可以是存储器的起始地址。第二分区(分区1)可以由第二指针(指针b)到第一指针(指针a)所标识的地址范围来定义,或者更具体地,由第二指针(指针b)到第一指针(指针a+1)的增量所标识的地址范围来定义。此外,第三分区(分区2)可以由另一个参考地址(例如存储器阵列的地址空间的末端)到第二指针(指针b)所标识的地址范围来定义,或者更具体地,由该另一个参考地址到第一指针(指针b+1)的增量所标识的地址范围来定义。如以下的表6所示,映射还可以存储用于定义的分区的耗损均衡设置,以及用于地址指针的有效性的切换或标志位。

表6

虽然以上描述已经描述了耗损均衡的包含和排除,但如下面将更详细讨论的,也可以指定应用于扇区的耗损均衡的各种量。例如,耗损均衡参数可以包括耗损均衡特征或设置,该耗损均衡特征或设置指定或标识要应用于每个逻辑扇区和与这种逻辑扇区相关联的每个分区的耗损均衡的量。因此,除了表征耗损均衡中的包含的耗损均衡的量之外,该量还可以表征耗损均衡的数量或程度。例如,耗损均衡特征可以包括指示应该应用于第一分区的耗损均衡的第一限制的第一耗损均衡设置、指示应该应用于第二分区的耗损均衡的第二限制的第二耗损均衡设置、指示应该应用于第三分区的耗损均衡的第三限制的第三耗损均衡设置,以及指示应该应用于第四分区的没有耗损均衡的第四耗损均衡设置。

在各种实施例中,耗损均衡特征可以基于耗损均衡参数中包括的一种或更多种附加类型的信息或参数来确定。例如,耗损均衡参数可以指定与存储器扇区相关联的pe周期的数目。在各种实施例中,这种数目可以是用户指定的,并且可以表征pe周期的预期的数目。在一些实施例中,诸如控制电路128的部件可以被配置为基于pe周期的指定数目来标识应用到存储器扇区的耗损均衡的量。例如,如果该数目高于pe周期的阈值,则存储器扇区可以包括在耗损均衡池中。此外,如果该数目低于pe周期的阈值,则可以从耗损均衡池中排除存储器扇区。

如上所讨论,耗损均衡参数可以指定分区的逻辑尺寸。在一些实施例中,诸如控制电路128的部件可以被配置为基于分区的尺寸来标识应用到存储器扇区的耗损均衡的量。例如,如果所标识的尺寸大于选定的尺寸,则存储器扇区可以包括在耗损均衡池中。此外,如果该数目小于选定的尺寸,则存储器扇区可以从耗损均衡池中排除。在此示例中,选定的尺寸可以是默认值,或者也可以是用户指定的。下面将参考图3、图4、图5和图6更详细地讨论这种耗损均衡配置的附加细节。

图2示出了根据一些实施例配置的包括统一扇区尺寸的可配置的耗损均衡存储器设备的示例。如上所讨论,诸如存储器设备200的存储器设备可以被配置为使得用户能够明确地选择存储器的一些逻辑扇区以包括在耗损均衡中使用的物理存储器扇区的集合或池中,以及进一步被配置为使得用户能够明确地排除其他逻辑存储器扇区在这种耗损均衡中的使用。还如上所讨论,诸如存储器阵列102的存储器阵列可以包括由各种边界限定的各种分区,以及可以与控制电路128通信地耦合。例如,存储器阵列102可以包括第一边界110、第二边界112、第三边界114和第四边界116,其可以限定第一分区118、第二分区120、第三分区122、第四分区124和第五分区126。如上所讨论,这些边界可以基于可以由用户指定的耗损均衡参数而可配置。因此,用户可以指定和选定与分区相关联的尺寸和边界。此外,耗损均衡参数还可以指示从经历耗损均衡的物理扇区的集合或池中包括或排除分区,这可以由控制电路128和监管存储器扇区130管理。

如图2所示,存储器阵列102可以包括尺寸一致的存储器扇区。例如,包括在存储器阵列102中的所有逻辑存储器扇区可以具有相同的尺寸,并且可以包括在固定尺寸的分区中。在此示例中,第一存储器扇区104(其可以是存储器阵列102中的第一存储器扇区)可与另一存储器扇区(例如,存储器阵列102中的最后存储器扇区)尺寸相同。更具体地,这样的存储器扇区可以具有256kb的尺寸。以这种方式,本文公开的实施例可以利用具有统一扇区尺寸的存储器设备来实现。

图3示出了根据一些实施例配置的可配置的耗损均衡存储器设备的示例,其中在该可配置的耗损均衡存储器设备中,参数扇区被排除在耗损均衡之外,以及其他扇区以固定的分区尺寸被分组。图3还示出了存储器阵列102的配置的示例,其中在存储器阵列102的顶部和底部处有小的存储器扇区,在存储器阵列102的中部有大的存储器扇区。如上所讨论,诸如存储器设备300的存储器设备可以包括诸如存储器阵列102的存储器阵列,诸如存储器阵列102的存储器阵列可以包括由各种边界限定的各种分区,以及可以与控制电路128通信地耦合。例如,存储器阵列102可以包括第一边界110、第二边界112、第三边界114和第四边界116,其可以限定第一分区118、第二分区120、第三分区122、第四分区124和第五分区126。在各种实施例中,第五分区126的末端可由可提供第五边界的存储器阵列102的末端限定。如上所讨论的,这样的分区可以包括存储器扇区,例如第一存储器扇区104,其可以是存储器阵列102中的第一存储器扇区104,以及第二存储器扇区106,其可以是存储器阵列102中的最后一个存储器扇区。此外,存储器阵列102还可包括监管存储器扇区130。

在各种实施例中,存储器阵列102可被配置为具有固定尺寸的分区。因此,分区的尺寸可以由硬件制造商指定,或者可以基于存储器设备100的硬件属性(例如存储器阵列102的尺寸)来确定。此外,在一些实施例中,这种分区的尺寸可以是统一的。如上所讨论,包括在分区中的逻辑存储器扇区的包括和排除可以基于存储在监管存储器扇区130中的耗损均衡参数来确定。如下文将参考图4和图5更详细讨论的,这种耗损均衡参数可以是用户指定的,并且可以经由通信接口从用户接收。

图4示出了根据一些实施例实现的用于配置存储器设备的耗损均衡的方法的示例的流程图。如上所类似讨论的,存储器设备可以用于使得用户能够明确地选择存储器的一些逻辑扇区以用于包括在耗损均衡中使用的物理存储器扇区的集合或池中,以及进一步使得用户能够明确地排除其他逻辑存储器扇区在这种耗损均衡中的使用。如下文将更详细讨论的,当实现耗损均衡时,这种可配置性可以为用户提供增加的灵活性。

方法400可以从操作402开始,在该操作402期间,与存储器阵列相关联的分区标识符可被设置为选定的值。如上参考图1、图2和图3所讨论的,存储器阵列的逻辑扇区可以表示为分区。因此,在方法400期间,可以配置和定义这种分区。在各种实施例中,方法400可以从配置初始分区开始,并且可以通过将标识分区的选定的值设置为默认值开始,该默认值可以是分区号,例如0。

方法400可进行到操作404,在该操作404期间,可以生成分区边界标识符和耗损均衡标识符。在各种实施例中,分区边界标识符可以是标识正被配置和定义的分区的边界的一个或更多个数据值。因此,分区边界标识符可以包括表征地址指针的数据值,或者上文参考图1讨论的任何其他适合的标识符。以这种方式,在操作404期间,可以为存储器阵列的逻辑存储器空间内的特定分区限定边界。如上所讨论,这种边界标识符可以是用户指定的,并且基于接收到的用户输入。更具体地,分区边界标识符和耗损均衡标识符可以基于接收到的耗损均衡参数来生成。

因此,诸如控制电路的部件可以基于接收到的包括耗损均衡参数的输入来生成边界标识符。此外,耗损均衡标识符也可以基于接收到的输入来生成。这种耗损均衡标识符在本文中也可称为耗损均衡特征或设置。因此,在操作404期间,可以生成耗损均衡标识符,该标识符标识分区是否应该包括在耗损均衡池中。在一些实施例中,如果分区被包括在耗损均衡池中,耗损均衡标识符可以进一步标识应用于分区的耗损均衡的量或限制。

方法400可以进行到操作406,在该操作406期间可以确定是否应该生成附加的分区。如上所讨论的,存储器阵列的存储器空间可以被划分成许多分区,并且操作404的各种迭代可以被实现以对于每个分区生成分区边界标识符和耗损均衡标识符。如果确定不应生成附加的分区,则方法400可以终止。然而,如果确定应生成附加的分区,则方法400可以进行到操作408。在各种实施例中,这种确定可以基于用户输入来做出。例如,用户可以指定应该生成附加的分区,并且方法400可以进行到操作408。在一些实施例中,这种确定也可以基于在操作404期间限定的分区边界和存储器阵列的存储器空间中的特定地址的比较来做出。例如,如果在操作404期间限定的分区的限定的边界(其可以是地址指针)不是存储器阵列中的最后一个地址,并且某个存储器空间保持未定义,则方法400可以进行到操作408。

因此,在操作408期间,可以使分区标识符增加。以这种方式,分区标识符可以被修改或调整以标识新的和不同的分区,以及方法400可以返回到操作404,在操作404期间可以针对新的分区生成分区边界标识符和耗损均衡标识符。例如,如果先前定义的分区标识符是“0”,则分区标识符可以增加到“1”,以及在操作404的另一次迭代期间,可以针对分区1生成分区边界标识符和耗损均衡标识符。以这种方式,可以限定许多分区,并且还可以定义与这些分区相关联的耗损均衡标识符,使得对于每个限定的分区指定耗损均衡的量或限制,或者根本不指定耗损均衡。

图5示出了根据一些实施例实现的用于配置存储器设备的耗损均衡的方法的另一示例的流程图。如上类似讨论的,存储器设备可以用于使得用户能够明确地选择存储器的一些逻辑扇区以包括在耗损均衡中使用的物理存储器扇区的集合或池中,以及进一步使得用户能够明确地排除其他逻辑存储器扇区在这种耗损均衡中的使用。此外,这种选择可以形成逻辑扇区/物理扇区映射的基础,逻辑扇区/物理扇区映射是后续耗损均衡操作的基础。以这种方式,可以向用户提供配置哪些逻辑扇区经历多少耗损均衡的能力。

方法500可以从操作502开始,在操作502期间,可以生成多个分区边界标识符和多个耗损均衡标识符。如以上参考图4所讨论的,可以为存储器阵列的逻辑存储器空间的各种不同分区生成分区边界标识符和耗损均衡标识符。同样如上所述,当若干分区由分区边界标识符(其可以是地址指针)限定时,这些标识符可以迭代地生成,以及基于耗损均衡标识符的选定,针对每个分区定义耗损均衡特征。此外,这种分区边界标识符和耗损均衡标识符可以基于作为耗损均衡参数接收的用户输入来生成。因此,标识符可以是用户可配置的,从而实现分区的尺寸和数目的用户配置,以及实现对于每个分区所允许的耗损均衡的量。

在一些实施例中,诸如控制电路的部件可以在一个或更多个数据结构中生成、存储和维护分区边界标识符和耗损均衡标识符。例如,控制电路可以生成第一数据结构,该第一数据结构标识逻辑扇区地址到分区及其相关联的分区标识符的映射。此外,控制电路可以生成并存储第二数据结构,该第二数据结构标识逻辑扇区和分区,并将逻辑扇区和分区映射到耗损均衡池,如由标记或位(bit)所指示,以及将逻辑扇区和分区映射到它们相关联的耗损均衡特征或设置。此外,如下文将更详细讨论的,控制电路还可以生成存储逻辑地址到物理地址的地址映射的第三数据结构,并且这种地址映射可以至少部分地基于多个分区边界标识符和多个耗损均衡标识符来生成。

方法500可以进行到操作504,在操作504期间,可以接收擦除命令。在各种实施例中,擦除命令可以与包括在逻辑扇区中的逻辑地址相关联。因此,可以从诸如存储器的处理器的部件接收这种擦除命令,并且可以在存储器设备的操作期间接收这种擦除命令。因此,操作502可在存储器设备的配置阶段期间实施,且操作504可以随后发生并且在存储器设备本身的操作期间发生。

方法500可以进行到操作506,在操作506期间可以确定与擦除命令相关联的逻辑地址是否包括在耗损均衡池中。如果确定与擦除命令相关联的逻辑地址没有包括在耗损均衡池中,则方法500可以进行到操作512。然而,如果确定与擦除命令相关联的逻辑地址包括在耗损均衡池中,则方法500可以进行到操作508。在各种实施例中,这种确定可以基于逻辑地址与上文参考操作502讨论的生成的分区边界标识符和耗损均衡标识符的比较来做出。因此,与擦除命令相关联的逻辑地址可以与由分区边界标识符指定的地址范围进行比较,并且可以标识包括逻辑地址的分区。此外,可以基于所标识的分区来查找耗损均衡标识符,以及可以标识耗损均衡特征或设置。例如,耗损均衡标识符可以指示包括与擦除命令相关联的逻辑地址的所标识的分区被包括在耗损均衡池中并且应该潜在地被耗损均衡。

如果确定逻辑地址包括在耗损均衡池中,则方法500可以进行到操作508,在操作508期间,可以确定与逻辑地址相关联的物理扇区是否应该被耗损均衡。如果确定与逻辑地址相关联的物理扇区不应被耗损均衡,则方法500可以进行到操作512。然而,如果确定与逻辑地址相关联的物理扇区应该被耗损均衡,则方法500可以进行到操作510。

在各种实施例中,这种确定可以基于与物理扇区相关联的pe周期的数目和选定的阈值的比较来做出。在各种实施例中,诸如处理器或控制电路的部件可以对在存储器设备的操作期间应用于每个物理扇区的pe周期的数目保持跟踪和进行计数。在一些实施例中,可以查找与在操作504和506期间标识的物理扇区相关联的pe周期计数,以及可以将pe周期计数与阈值进行比较。在各种实施例中,阈值可以是由用户指定的选定的值。如前所讨论,用户可以为分区指定阈值,以标识耗损均衡何时应用于该分区中包括的扇区。此外,如上所讨论的,可以利用不同的阈值以使得不同量的耗损均衡应用于不同的分区。在一些实施例中,阈值可以是由制造商设置的默认值。因此,如果确定pe周期计数没有超过阈值,则可以确定不应该应用耗损均衡,方法500可以进行到操作512。此外,如果确定pe周期计数确实超过阈值,则可以确定应该应用耗损均衡,方法500可以进行到操作510。

因此,如果确定逻辑地址包括在耗损均衡池中以及应该应用耗损均衡,则方法500可以进行到操作510,在操作510期间可以实施一个或更多个耗损均衡操作。在各种实施例中,这种耗损均衡操作可包括将物理扇区与耗损均衡池中的当前具有pe周期的最低数目的另一物理扇区交换。如下文更详细讨论的,这种交换可包括物理扇区之间的数据交换,以及与其相关联的逻辑地址的映射的更新。以这种方式,在存储器设备的操作期间,可以跟踪存储器设备中包括的物理扇区(包括所有经历耗损均衡的扇区)的pe周期,以及当满足pe周期阈值时可以移动数据。如前所讨论的,在这种耗损均衡操作期间,数据的物理地址被改变,通常被改变到经历较少pe周期的位置,并且逻辑地址保持相同。

因此,在操作510期间,可以更新逻辑地址到物理地址的地址映射。在各种实施例中,控制电路可以预先生成第三数据结构,该第三数据结构包括逻辑扇区和/或分区到物理扇区的映射。这种映射可能在操作502期间已经生成,以及也可能已经基于所标识的耗损均衡特征生成,所标识的耗损均衡特征指定逻辑扇区是否包括在耗损均衡池中。例如,如果逻辑地址和相关联的分区具有指示其应该经历耗损均衡的耗损均衡标识符或特征,则该分区以及包括在该分区中的逻辑扇区被映射到被标识为包括在耗损均衡池中的物理扇区。这种映射可以将逻辑扇区随机分配给物理扇区,或者这种分配可以依次地发生。对于没有经历耗损均衡的分区和逻辑扇区,也可以实现类似的映射。以这种方式,诸如控制电路的部件可以存储和维护逻辑地址到物理地址的映射,并且这种映射符合用户最初指定的耗损均衡特征。

因此,如上所述,该映射可以基于一个或更多个耗损均衡操作来更新。更具体地说,在操作502期间生成的逻辑扇区到物理扇区的映射可以在存储器设备使用时,作为耗损均衡过程的一部分每次移动数据时被更新。以这种方式,存储器设备可以精确地跟踪与特定逻辑地址相关联的数据的物理储存位置。

方法500可以进行到操作512,在操作512期间,可以实施擦除操作。因此,诸如处理器的部件可以在操作504期间标识的逻辑扇区及其相关联的物理扇区上实施擦除操作。在耗损均衡后实施操作512的示例中,对应的物理扇区可以是在耗损均衡期间选择的新物理扇区。此外,可以更新与物理扇区相关联的计数器,以准确标识已经应用于该物理扇区的多个pe周期。

方法500可进行到操作514,在操作514期间可确定存储器设备是否应等待附加的擦除命令。在一些实施例中,这种附加的擦除命令可在存储器设备的操作期间发生。因此,如果确定存储器设备应该等待附加的擦除命令,那么如果是存储器设备继续使用的这种情况,则方法500可以返回到操作504。如果确定存储器设备不应等待附加的擦除命令,那么如果是存储器设备的使用已经停止的情况,则方法500可以终止。

图6示出了根据一些实施例配置的可配置的耗损均衡存储器系统的示例。根据特定示例性实施例,系统600可适用于实现上述各种部件,例如存储器设备100。在各种实施例中,系统600可以包括处理器601,其可以被配置为实施一个或更多个处理操作。举例来说,处理器601可被配置为实施与存储器阵列102相关联的耗损均衡操作,且可进一步被配置为实施与存储器阵列102相关联的读取和写入操作。系统600还可以包括总线615,该总线615可以被配置为实现系统600的各种部件之间的通信。

在各种实施例中,系统600可以进一步包括存储器阵列102和控制电路128,其可以被配置为实施上文讨论的可配置的耗损均衡。在各种实施例中,控制电路128可以包括一个或更多个处理器和专用存储器,该专用存储器可以被配置为实现先前描述的数据结构和映射的生成。以这种方式,系统600可以具有专用处理单元,例如控制电路128,其可以被配置为实施先前描述的可配置的耗损均衡。此外,在一些实施例中,控制电路128可以在专用集成电路(asic)中实现,或者可以在现场可编程门阵列的可重编程逻辑中实现。在一些实施例中,控制电路128可以在进一步包括非易失性存储器的可编程系统或控制器中实现,其中,可编程系统或控制器例如是可从加利福尼亚州圣何塞的cypresssemiconductor商购的可编程片上系统或psoctm控制器。在各种实施例中,系统600的一个或更多个部件可以在相同的电路管芯上和相同的封装中实现。例如,控制电路128和存储器102可以在同一电路管芯上实现。在一些实施例中,控制电路128和存储器102可以在不同的管芯上和不同的封装中实现。

在各种实施例中,通信接口611可以被配置为向其他系统部件发送数据以及从其他系统部件接收数据,或者可以被配置为通过网络发送和接收数据包或数据段。例如,通信接口611可以经由诸如总线615的总线或经由通信网络通信地耦合到用户接口设备。如上所讨论,通信接口611可以被配置为从可以包括在数据处理系统或计算机系统中的这种用户接口设备接收数据。在各种实施例中,这样的数据可以包括标识来自用户的耗损均衡参数的输入。在各种实施例中,通信接口611可以是支持以太网接口、帧中继接口、电缆接口和dsl接口的设备。此外,可以提供各种十分高速的接口,例如快速以太网接口、千兆以太网接口、hssi接口、pos接口、fddi接口等。通常,这些接口可以包括适于与适当的介质通信的端口。在某些情况下,它们还可以包括独立的处理器,以及在某些情况下,还可以包括易失性ram。

虽然前述的概念出于理解清楚的目的已经通过一些细节进行了描述,但明显的是,某些改变和修改可在所附的权利要求范围内实践。需要注意的是,有许多实现过程、系统和设备的替代的方式。因此,本示例视为说明性而非限制性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1