非易失性存储器装置中的名称空间管理的块大小的选择制造方法及图纸

技术编号:36655082 阅读:12 留言:0更新日期:2023-02-18 13:20
本申请涉及用于非易失性存储器装置中的名称空间管理的块大小的选择。一种计算机存储装置,其具有主机接口、控制器、非易失性存储媒体和固件。所述固件指示所述控制器基于所述非易失性存储媒体的存储容量选择用于将块分配到名称空间的块大小。由主机提出的创建名称空间的各种请求由所述控制器经由所述主机接口接收。在接收到每一请求之后,所述控制器使用所选块大小将块分配到所请求名称空间。所述控制器可在初始制造或操作时选择所述块大小,和/或可在存储装置的操作期间动态选择各种块大小。所述块大小的动态选择可基于来自所述存储装置和/或主机的传感器的信令。储装置和/或主机的传感器的信令。储装置和/或主机的传感器的信令。

【技术实现步骤摘要】
非易失性存储器装置中的名称空间管理的块大小的选择


[0001]本文中所公开的至少一些实施例通常涉及计算机存储装置,且更确切地说,但不限于对非易失性存储装置中的名称空间块的块大小的选择。

技术介绍

[0002]典型的计算机存储装置,例如硬盘驱动器(HDD)、固态驱动器(SSD)和混合驱动器,具有控制器,这些控制器从主机计算机接收数据存取请求且执行经编程计算任务,以便以可能特定于存储装置中配置的媒体和结构(例如硬盘驱动器中涂有磁性材料的刚性旋转磁盘、固态驱动器中具有存储器单元的集成电路,以及混合驱动器中的这两者)的方式来实施请求。
[0003]标准化逻辑装置接口协议允许主机计算机以独立于存储装置的特定媒体实施方案的方式来寻址计算机存储装置。
[0004]例如,非易失性存储器主机控制器接口规范(NVMHCI)也被称为NVM快速(NVMe),它指定用于通过外围组件互连高速(PCI快速或PCIe)总线存取非易失性存储装置的逻辑装置接口协议。

技术实现思路

[0005]本公开的一方面提供一种装置,其包括:主机接口;控制器;具有存储容量的非易失性存储媒体;以及含有指令的固件,所述指令在由控制器执行时指示控制器至少:基于存储容量选择用于将块分配到名称空间的块大小;经由主机接口从主机接收创建第一名称空间的请求;以及将块的至少一部分分配到第一名称空间。
[0006]本公开的另一方面提供一种装置,其包括:主机接口;控制器;非易失性存储媒体;以及含有指令的固件,所述指令在由控制器执行时指示控制器至少:经由主机接口从主机接收创建名称空间的请求;将第一块大小的块分配到名称空间;增大非易失性存储媒体的存储容量;基于增大的存储容量选择用于将块分配到名称空间的第二块大小,其中第二块大小大于第一块大小;以及将第二块大小的块分配到名称空间。
[0007]本公开的另一方面提供一种方法,其包括:从主机接收创建名称空间的请求;将第一块大小的块分配到名称空间;将非易失性存储媒体的存储容量改变为新存储容量;响应于改变存储容量,选择用于将块分配到名称空间的第二块大小,其中第二块大小不同于第一块大小;以及将第二块大小的块分配到名称空间。
[0008]本公开的另一方面提供一种存储指令的非暂时性计算机可读存储媒体,所述指令在由计算机存储装置的控制器执行时使得控制器:从主机接收创建名称空间的请求;将第一块大小的块分配到名称空间;将非易失性存储媒体的存储容量改变为新存储容量;基于新存储容量选择用于将块分配到名称空间的第二块大小,其中第二块大小不同于第一块大小;以及将第二块大小的块分配到名称空间。
附图说明
[0009]在附图的图式中作为实例而非限制示出实施例,在附图中,相同的参考标号指示类似元件。
[0010]图1展示其中可实施本文中所公开的实施例的计算机系统。
[0011]图2示出根据名称空间的所请求大小直接分配多个名称空间的实例。
[0012]图3示出经由映射逻辑地址的块分配名称空间的实例。
[0013]图4示出用于名称空间映射的数据结构的实例。
[0014]图5示出用以转换非易失性存储器装置中的地址以支持名称空间管理的系统。
[0015]图6示出基于逻辑地址的块管理名称空间的方法。
[0016]图7示出其中名称空间不与块边界对准且可使用图8至10的技术实施的实例图式。
[0017]图8示出用以实施不与块边界对准的名称空间的名称空间映射的实例框图。
[0018]图9示出可用以实施图8的名称空间映射的实例部分块标识符。
[0019]图10示出使用图8的技术管理可用于名称空间分配的空闲块池的实例数据结构。
[0020]图11示出了使用部分块分配名称空间的实例。
[0021]图12示出根据一个实施例的分配存储装置上的名称空间的方法。
[0022]图13示出根据一个实施例的确定分配到名称空间的下一块的实例。
[0023]图14至16示出根据各种实施例的使用选自空闲块池的完整和部分块将下一块分配到名称空间的实例。
[0024]图17示出根据一个实施例的从空闲块池选择块以用于分配到存储装置上的名称空间的方法。
[0025]图18示出根据一个实施例的确定分配到存储装置上的名称空间的下一块的方法。
[0026]图19示出用于名称空间映射的块大小改变。
[0027]图20至23示出在实施块大小改变时的名称空间映射调整。
[0028]图24示出调整用于名称空间映射的块大小的方法。
[0029]图25示出根据一个实施例的具有用以选择用于名称空间管理的块大小的控制器的存储装置。
[0030]图26示出根据一个实施例的在选择用于名称空间管理的块大小时使用来自一或多个传感器的信令的存储装置。
[0031]图27示出根据一个实施例的具有控制器的存储装置,所述控制器用以至少部分地基于来自计算机模型的输出选择块大小。
[0032]图28示出根据一个实施例的选择用于将块分配到一或多个名称空间的新块大小的方法。
具体实施方式
[0033]本文所公开的至少一些实施例提供在存储装置中实施逻辑存储分配和管理的高效且灵活的方式。
[0034]存储装置的物理存储器元件可布置为经由逻辑块寻址(LBA)寻址的逻辑存储器块。逻辑存储器块为最小LBA可寻址存储器单元;且每一LBA地址标识可映射到存储装置中的存储器单元的特定物理地址的单个逻辑存储器块。
[0035]存储装置的名称空间的概念与硬盘驱动器中用于创建逻辑存储装置的分区的概念类似。存储装置的不同部分可分配到不同的名称空间,且因此可具有在其相应名称空间内彼此独立配置的LBA地址。每一名称空间标识可经由LBA寻址的存储装置的存储器数量。同一LBA地址可在不同名称空间中用于标识存储装置的不同部分中的不同存储器单元。举例来说,分配在存储装置的具有n个存储器单元的第一部分上的第一名称空间可具有在0到n

1范围内的LBA地址;且分配在存储装置的具有m个存储器单元的第二部分上的第二名称空间可具有在0到m

1范围内的LBA地址。
[0036]存储装置的主机计算机可将创建、删除或保留名称空间的请求发送到存储装置。在将存储装置的存储容量的一部分分配到名称空间之后,相应名称空间中的LBA地址在逻辑上表示存储媒体中的特定存储器单元,尽管由名称空间中的LBA地址在逻辑上表示的特定存储器单元可在不同时间实例(例如,如在SSD中)在物理上对应于不同存储器单元。
[0037]在有效地将多个名称空间中限定的LBA地址映射到存储装置中的物理存储器元件,以及有效地使用存储装置的存储容量方面存在挑战,尤其是在需要在存储装置上动态地分配、删除和进一步分配具有不同、变化大小的多个名称空间时。举例来说,分配到删除的名称空间的存储容量的部分可能不足以提供具有大小大于删除的名称空间的后续名称空间的分配;且分配和删本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种装置,其包括:主机接口;控制器;具有存储容量的非易失性存储媒体;以及含有指令的固件,所述指令在由所述控制器执行时指示所述控制器至少:基于所述存储容量选择用于将块分配到名称空间的块大小;经由所述主机接口从主机接收创建第一名称空间的请求;以及将所述块的至少一部分分配到所述第一名称空间。2.根据权利要求1所述的装置,其中所述块大小为第一块大小,且选择所述第一块大小包括:基于所述存储容量选择块数;基于所述存储容量除以所述块数确定初步块大小;以及将所述初步块大小向上舍入到最接近的二的幂以得到所述第一块大小。3.根据权利要求2所述的装置,其中基于所述存储容量除以所述第一块大小而确定的粒度在限定范围内。4.根据权利要求2所述的装置,其中所述指令进一步指示所述控制器:确定与地址映射相关联的资源使用;其中进一步基于所述资源使用选择所述块数。5.根据权利要求1所述的装置,其中所述请求包含所述第一名称空间的所请求大小,且所述块的所分配部分的总大小大于所述所请求大小。6.根据权利要求1所述的装置,其中所述指令进一步指示所述控制器:确定与所述第一名称空间相关联的至少一个使用特性;其中进一步基于所述使用特性选择所述块大小。7.根据权利要求6所述的装置,其中所述使用特性为在所述主机上执行的应用程序的特性,且由所述应用程序使用的数据存储于所述第一名称空间中。8.根据权利要求1所述的装置,其中所述指令进一步指示所述控制器:确定所述第一名称空间的映射效率;其中进一步基于所确定映射效率选择所述块大小。9.根据权利要求8所述的装置,其中基于与从所述非易失性存储媒体读取数据或将数据写入所述非易失性存储媒体中的至少一者相关联的处理资源的使用确定所述映射效率。10.根据权利要求1所述的装置,其进一步包括计数器,所述计数器配置成对数据数量进行计数,其中进一步基于所述数据数量选择所述块大小。11.根据权利要求1所述的装置,其中所述数据数量为写入所述非易失性存储媒体的存储器单元中的数据数量。12.根据权利要求1所述的装置,其中所述指令进一步指示所述控制器:确定所述第一名称空间的使用,所述使用基于存储于所述非易失性存储媒体中的数据数量而确定;其中进一步基于所述使用选择所述块大小。13.一种装置,其包括:
主机接口;控制器;非易失性存储媒体;以及含有指令的固件,所述指令在由所述控制器执行时指示所述控制器至少:经由所述主机接口从主机接收创建名称空间的请求;将第一块大小的块分配到所述名称空间;增大所述非易失性存储媒体的存储容量;基于增大的存储容量选择用于将块分配到所述名称空间的第二块大小,其中所述第二块大小大于所述第一块大小;以及将所述第二块大小的块分配到所述名称空间。14.根据权利要求13所述的装置,其中所述指令进一步指示所述控制器:确定与所述名称空间相关联的至少一个特性;其中进一步基于所确定特性选择所述第二块大小。15.根据权利要求13所述的装置,其进一步包括计数器,所述计数器配置成对从所述非易失性存储媒体读取的数据或写入所述非易失性存储媒体中的数据中的至少一者的数量进行计数,其中进一步基于所述数量选择所述第二块大小。16.根据权利要求13所述的装置,其中选择所述第二块大小包括:基于所述增大的存储容量选择块数;基于所述增大的存储容量除以所述块数确定初步块大小;以及将所述初步块大小向上舍入到最接近的二的幂以得到所述第二块大小。17.根据权利要求16所述的装置,其中所述指令进一步指示所述控制器:确定与所述非易失性存储媒体相关联的资源使用;其中进一步基于所述资源使用选择所述块数。18.根据权利要求13所述的装置,其中所述第二块大小为所述第一块大小的倍数。19.根据权利要求13所述的装置,其中增大所述存储容...

【专利技术属性】
技术研发人员:A
申请(专利权)人:美光科技公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1