使用虚设虚拟功能的NVMe简单复制命令支持制造技术

技术编号:32616058 阅读:24 留言:0更新日期:2022-03-12 17:44
本发明专利技术题为“使用虚设虚拟功能的NVMe简单复制命令支持”。本公开整体涉及数据存储设备,诸如固态驱动器。该数据存储设备包括易失性存储器、非易失性存储单元以及控制器。该数据存储设备还包括多个虚拟功能,其中这些虚拟功能中的至少一个虚拟功能仅能够由该数据存储设备访问,并且这些虚拟功能中的其余虚拟功能能够由该数据存储设备和主机设备两者访问。这些虚拟功能中的至少一个虚拟功能可专用于完成数据存储设备存储管理操作。数据存储设备存储管理操作。数据存储设备存储管理操作。

【技术实现步骤摘要】
使用虚设虚拟功能的NVMe简单复制命令支持
[0001]相关申请的交叉引用
[0002]本申请要求2020年9月10日提交的美国临时专利申请序列号63/076,780的权益,该美国临时专利申请以引用方式并入本文。

技术介绍


[0003]本公开的实施方案整体涉及数据存储设备,诸如固态驱动器(SSD)。
[0004]相关领域的描述
[0005]数据存储设备诸如SSD可用于需要相对低延迟和高容量存储的应用中的计算机中。例如,SSD可表现出比硬盘驱动器(HDD)更低的延迟,尤其是对于随机读取和写入而言。通常,SSD的控制器接收将数据从主机设备读取或写入到存储器设备的命令。根据命令是读取还是写入命令,从存储器设备中的一个或多个块读取数据或将数据写入到存储器设备中的一个或多个块。
[0006]数据存储设备利用存储管理操作诸如垃圾回收来释放宝贵的空间。当更新的数据被写入到存储设备的该一个或多个块时,可能不再需要该更新的数据的先前版本。垃圾回收可以将一个或多个块、已擦除的块重新分配给空块的可用池。此外,可将先前存储在该一个或多个块上的相关数据顺序地重新写入到一个或多个块。可能由于主机设备命令或内部决策而发生的数据复制可利用一个或多个缓冲器和硬件引擎,这可引起完成从主机接收的读取/写入命令的延迟。
[0007]因此,需要一种改进的方法来同时完成主机命令和数据存储设备操作。

技术实现思路

[0008]本公开整体涉及数据存储设备,诸如固态驱动器。该数据存储设备包括易失性存储器、非易失性存储单元以及控制器。该数据存储设备还包括多个虚拟功能,其中这些虚拟功能中的至少一个虚拟功能仅能够由该数据存储设备访问,并且这些虚拟功能中的其余虚拟功能能够由该数据存储设备和主机设备两者访问。这些虚拟功能中的至少一个虚拟功能可专用于完成数据存储设备存储管理操作。
[0009]在一个实施方案中,数据存储设备包括非易失性存储单元和易失性存储器单元,该易失性存储器单元包括一个或多个第一易失性存储器位置、一个或多个第二易失性存储器位置以及控制器存储器缓冲器(CMB)。数据存储设备还包括耦接到非易失性存储单元和易失性存储器单元的控制器。控制器被配置为从主机接收一个或多个主机命令,诸如包括作为主机命令的子部分的读取和写入命令两者的简单复制命令,以从非易失性存储单元读取数据或将数据写入非易失性存储单元,将所接收的一个或多个读取或写入命令路由到一个或多个第一虚拟功能位置,并且利用CMB将数据从非易失性存储单元的第一位置复制到非易失性存储单元的第二位置,其中将数据从第一位置复制到第二位置利用一个或多个第
二虚拟功能位置。控制器还被配置为发起垃圾回收命令。
[0010]在另一个实施方案中,数据存储设备包括非易失性存储单元和易失性存储器单元,该易失性存储器单元包括一个或多个第一易失性存储器位置、一个或多个第二易失性存储器位置以及控制器存储器缓冲器(CMB)。数据存储设备还包括入站多路复用器(mux),诸如高级可扩展接口(AXI)mux,以及耦接到非易失性存储单元、易失性存储器单元和AXI入站mux的控制器。数据存储设备还包括耦接到控制器的中央处理单元(CPU),其中CPU被配置为从控制器接收复制命令或自生垃圾回收决策、生成多个读取命令、将该多个读取命令写入到CMB、针对指向CMB的该多个读取命令生成物理区页面(PRP)或分散收集列表(SGL)、针对该多个读取命令发出第一门铃、生成第一写入命令、针对指向CMB的第一写入命令生成PRP、针对第一写入命令发出第二门铃,以及将与第一写入命令相关联的数据编程到非易失性存储装置。
[0011]在另一个实施方案中,数据存储设备包括非易失性存储单元、包括一个或多个第一易失性存储器位置和一个或多个第二易失性存储器位置的易失性存储器单元、用于将从主机接收的一个或多个读取或写入命令路由到一个或多个第一虚拟功能位置的装置,其中该一个或多个第一虚拟功能位置完成接收的该一个或多个读取或写入命令,以及用于将数据从易失性存储单元的第一位置复制到非易失性存储单元的第二位置的控制器存储器缓冲器(CMB),其中将数据从第一位置复制到第二位置利用一个或多个第二虚拟功能位置。
附图说明
[0012]因此,通过参考实施方案,可以获得详细理解本公开的上述特征的方式、本公开的更具体描述、上述简要概述,所述实施方案中的一些在附图中示出。然而,应当注意的是,附图仅示出了本公开的典型实施方案并且因此不应视为限制其范围,因为本公开可以允许其他同等有效的实施方案。
[0013]图1是示出根据所公开实施方案的存储系统的示意性框图,其中数据存储设备可用作主机设备的存储设备。
[0014]图2A是根据所公开实施方案的存储管理操作的图示。
[0015]图2B是示出根据所公开实施方案的数据存储设备中的存储管理操作的示意性框图。
[0016]图3A是根据所公开实施方案的写入命令流的示意图。
[0017]图3B是根据所公开实施方案的具有控制器存储缓冲器的写入命令流的示意图。
[0018]图4是根据所公开实施方案的虚拟化资源的主机设备视图和数据存储设备视图的示意图。
[0019]图5是示出根据所公开实施方案的包括本地虚拟功能协议的数据存储设备的示意性框图。
[0020]图6A至图6C示出了根据所公开实施方案的用于复制命令流的方法。
[0021]为了有助于理解,在可能的情况下,使用相同的参考标号来表示附图中共有的相同元件。可以设想是,在一个实施方案中公开的元件可以有利地用于其他实施方案而无需具体叙述。
具体实施方式
[0022]在下文中,参考本公开的实施方案。然而,应当理解的是,本公开不限于具体描述的实施方案。相反,思考以下特征和元件的任何组合(无论是否与不同实施方案相关)以实现和实践本公开。此外,尽管本公开的实施方案可以实现优于其他可能解决方案和/或优于现有技术的优点,但是否通过给定实施方案来实现特定优点不是对本公开的限制。因此,以下方面、特征、实施方案和优点仅是说明性的,并且不被认为是所附权利要求书的要素或限制,除非在权利要求书中明确地叙述。同样地,对“本公开”的引用不应当被解释为本文公开的任何专利技术主题的概括,并且不应当被认为是所附权利要求书的要素或限制,除非在权利要求书中明确地叙述。
[0023]本公开整体涉及数据存储设备,诸如固态驱动器。该数据存储设备包括易失性存储器、非易失性存储单元以及控制器。该数据存储设备还包括多个虚拟功能,其中这些虚拟功能中的至少一个虚拟功能仅能够由该数据存储设备访问,并且这些虚拟功能中的其余虚拟功能能够由该数据存储设备和主机设备两者访问。这些虚拟功能中的至少一个虚拟功能可专用于完成数据存储设备存储管理操作。
[0024]应当理解,虽然本文的描述将参考写入命令和读取命令以支持复制命令,但本文的公开内容不限于此类命令。相反,本文的公开内容应理解为涵盖其他命令,诸如验证命令或比较命令。另外,还设想了需要从存储器设备诸本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据存储设备,所述数据存储设备包括:非易失性存储单元;易失性存储器单元,所述易失性存储器单元包括一个或多个第一易失性存储器位置、一个或多个第二易失性存储器位置以及控制器存储器缓冲器(CMB);和控制器,所述控制器耦接到所述非易失性存储单元和所述易失性存储器单元,并且所述控制器被配置为:从主机接收一个或多个读取、写入或复制命令以从所述非易失性存储单元读取数据、将数据写入所述非易失性存储单元或两者;将所接收的一个或多个读取或写入命令路由到一个或多个第一虚拟功能位置;以及利用所述CMB将所述数据从所述非易失性存储单元的第一位置复制到所述非易失性存储单元的第二位置,其中将所述数据从所述第一位置复制到所述第二位置利用一个或多个第二虚拟功能位置。2.根据权利要求1所述的数据存储设备,还包括高级可扩展接口(AXI)入站多路复用器(mux)模块,其中所述AXI入站mux模块被配置为过滤到所述控制器的一个或多个入站主机读取或写入命令。3.根据权利要求2所述的数据存储设备,还包括中央处理单元(CPU),其中所述CPU被配置为利用所述入站mux模块来访问所述一个或多个第二易失性存储器位置。4.根据权利要求1所述的数据存储设备,其中所述一个或多个第一虚拟功能位置能够由所述主机访问。5.根据权利要求1所述的数据存储设备,其中所述一个或多个第二虚拟功能位置对于所述主机是隐藏的。6.根据权利要求1所述的数据存储设备,其中复制所述数据还包括针对存储在所述非易失性存储单元中的多个数据执行多个读取命令,以及执行第一写入命令以将与所述多个读取命令相关联的所述多个数据写入到所述非易失性存储单元的连续区域中。7.一种数据存储设备,所述数据存储设备包括:非易失性存储单元;易失性存储器单元,所述易失性存储器单元包括一个或多个第一易失性存储器位置、一个或多个第二易失性存储器位置以及控制器存储器缓冲器(CMB);高级可扩展接口(AXI)入站多路复用器(mux);控制器,所述控制器耦接到所述非易失性存储单元、所述易失性存储器单元以及所述AXI入站mux;和中央处理单元(CPU),所述中央处理单元耦接到所述控制器,其中所述CPU被配置为:从所述控制器接收复制命令或自生垃圾回收决策;生成多个读取命令;将所述多个读取命令写入到所述CMB;针对指向所述CMB的所述多个读取命令生成物理区页面(PRP)或分散收集列表(SGL);发出针对所述多个读取命令的第一门铃;生成第一写入命令;针对指向所述CMB的所述第一写入命令生成PRP;
发出针对所述第一写入命令的第二门铃;以及将与所述第一写入命令相关联的所述数据编程到所述非易失性存储装置。8.根据权利要求7所述的数据存储设备,其中所述CPU在发出第一门铃之后被进一步配置为等待来自所述控制器的第一中断到达。9....

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

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

1