具有可配置存储的NVMe直接虚拟化制造技术

技术编号:28118293 阅读:16 留言:0更新日期:2021-04-19 11:20
一种与一或多个存储器装置操作性耦接的系统控制器被配置成:提供多个虚拟存储器控制器,其中所述多个虚拟存储器控制器中的每个虚拟存储器控制器与所述一或多个存储器装置的不同部分相关联;并且提供多个物理功能,其中所述多个物理功能中的每个物理功能对应于所述多个虚拟存储器控制器中的不同虚拟存储器控制器。所述系统控制器进一步通过快速外围组件互连PCIe接口将所述多个物理功能呈现给主机计算系统,所述主机计算系统用于将所述多个物理功能中的每个物理功能分配给在所述主机计算系统上运行的不同虚拟机。计算系统上运行的不同虚拟机。计算系统上运行的不同虚拟机。

【技术实现步骤摘要】
【国外来华专利技术】具有可配置存储的NVMe直接虚拟化


[0001]本公开通常涉及存储器系统,并且更具体地,涉及具有可配置存储的NVMe直接虚拟化。

技术介绍

[0002]存储器子系统可以是存储系统,如固态驱动器(SSD)或硬盘驱动器(HDD)。存储器子系统可以是存储器模块,如双列直插式存储器模块(DIMM)、小外形DIMM(SO

DIMM)或非易失性双列直插式存储器模块(NVDIMM)。存储器子系统可以包含存储数据的一或多个存储器组件。存储器组件可以是例如非易失性存储器组件和易失性存储器组件。通常,主机系统可以利用存储器子系统来将数据存储在存储器组件处并从存储器组件中检索数据。
附图说明
[0003]根据下文给出的详细描述和本公开的各个实施例的附图,将更充分地理解本公开。
[0004]图1展示了根据本公开的一些实施例的用于NVMe直接虚拟化的示例计算环境。
[0005]图2展示了根据本公开的一些实施例的主机系统与实施NVMe直接虚拟化的存储器子系统之间的示例物理主机接口。
[0006]图3展示了根据本公开的一些实施例的用于NVMe直接虚拟化的存储器子系统中的存储器部分映射。
[0007]图4展示了根据本公开的一些实施例的用于具有NVMe直接虚拟化的存储器子系统的装置层级和拓扑。
[0008]图5展示了根据本公开的一些实施例的实施NVMe直接虚拟化的物理控制器。
[0009]图6展示了根据本公开的一些实施例的在存储器子系统中的NVMe直接虚拟化的方法。<br/>[0010]图7是本公开的实施例可以在其中操作的示例计算机系统的框图。
具体实施方式
[0011]本公开的各方面涉及在存储器子系统中具有可配置存储的快速非易失性存储器(NVMe)直接虚拟化。存储器子系统在下文中也被称为“存储器装置”。存储器子系统的实例是通过外围互连(例如,输入/输出总线、存储区域网络)耦接到中央处理单元(CPU)的存储装置。存储装置的实例包含固态驱动器(SSD)、闪存驱动器、通用串行总线(USB)闪存驱动器和硬盘驱动器(HDD)。存储器子系统的另一个实例是通过存储器总线耦接到CPU的存储器模块。存储器模块的实例包含双列直插式存储器模块(DIMM)、小外形DIMM(SO

DIMM)、非易失性双列直插式存储器模块(NVDIMM)等。在一些实施例中,存储器子系统可以是混合存储器/存储子系统。通常,主机系统可以利用包含一或多个存储器组件的存储器子系统。主机系统可以提供要存储在存储器子系统中的数据,并且可以请求从存储器子系统中检索数据。
[0012]某些常规存储器子系统利用单根输入/输出虚拟化(SR

IOV)规范。SR

IOV是一种规范,其出于可管理性和性能方面的原因,允许在各种硬件功能之间隔离快速外围组件互连(PCI)(PCIe)资源,同时还允许在虚拟环境中共享单个物理PCIe装置。SR

IOV为物理服务器机器上的不同虚拟组件(例如,网络适配器)提供了不同的虚拟功能。SR

IOV还允许虚拟环境中的不同虚拟机共享单个PCIe硬件接口。物理功能允许枚举许多虚拟功能并且管理程序然后可以将这些虚拟功能分配给一或多个虚拟机。此解决方案需要两组驱动器,包含用于枚举虚拟功能的物理功能驱动器,并且内核需要支持完整的支持SR

IOV的堆叠,并且然后虚拟功能需要另一个只能运行虚拟功能的驱动器。另外,大多数管理程序环境不支持SR

IOV,从而使得所述解决方案不适用于许多情况。
[0013]本公开的各方面通过具有一种存储器子系统来解决上述和其它缺陷,所述存储器子系统使用快速非易失性存储器(NVMe)虚拟化方案来允许动态地配置原本不支持SR

IOV的云计算服务。此解决方案提供对于主机操作系统或在其上运行的虚拟机自然可见的物理功能,并且不依赖于通过管理程序和PCIe执行的软件转换。在一个实施方案中,固件或其它逻辑(如存储器子系统中的NVMe虚拟化模块)生成多个虚拟NVMe控制器。每个虚拟NVMe控制器被分配了底层物理非易失性存储装置的区段、分片、部分等。每个虚拟NVMe控制器还具有对应的PCIe物理功能,从而使每个虚拟NVMe控制器呈现为连接到介于存储器子系统与主机系统之间的PCIe总线的可单独寻址的PCIe装置(例如,物理控制器)。因此,在存储器子系统中可能仅存在单个底层存储装置,凭借多个虚拟NVMe控制器,所述单个底层存储装置作为多个单独存储装置呈现给通过PCIe总线连接的主机系统。在另一个实施例中,在存储器子系统中可以存在多个底层存储装置,所述底层存储装置被呈现为由虚拟NVMe控制器代表的更多数量的存储装置。
[0014]本文所描述的NVMe虚拟化技术允许通常呈现为单个PCIe装置的连接到PCIe总线的存储器子系统将其自身呈现为多个可单独寻址的PCIe装置。使用各自具有对应的物理功能的虚拟NVMe控制器消除了对存储器子系统中另外的物理控制器和通常将与此类物理控制器相关联的另外硬件资源的需要。另外,NVMe虚拟化还可以实现与SR

IOV规范相关联的性能,包含在原本不支持SR

IOV的环境中,主机系统中的不同虚拟机与存储器子系统共享单个PCIe接口的能力。因此,代替主机系统中执行虚拟化的PCIe根复合体,存储器子系统本身可以实施虚拟化,而无需管理程序或主机系统的其它软件参与。主机系统将每个物理功能视为单独物理存储装置,所述单独物理存储装置可以分配给主机操作系统或在其上运行的多个虚拟机之一。以这种方式,单个底层存储资源可以以完全透明的方式被主机上的多个实体共享。下文中关于图1

7提供了这些NVMe虚拟化技术的另外的细节。
[0015]图1展示了根据本公开的一些实施例的包含存储器子系统110的示例计算环境100。存储器子系统110可以包含媒体,如存储器组件112A到112N。存储器组件112A到112N可以是易失性存储器组件、非易失性存储器组件或其组合。在一些实施例中,存储器子系统是存储系统。存储系统的实例是SSD。在一些实施例中,存储器子系统110是混合存储器/存储子系统。通常,计算环境100可以包含使用存储器子系统110的主机系统120。例如,主机系统120可以将数据写入存储器子系统110并且从存储器子系统110读取数据。
[0016]主机系统120可以是计算装置,如台式计算机、膝上型计算机、网络服务器、移动装置或包含存储器和处理装置的此类计算装置。主机系统120可以包含或耦接到存储器子系
统110,使得主机系统120可以从存储器子系统110读取数据或将数据写入所述存储器子系统。主机系统120可以通过物理主机接口耦接到存储器子系统110。如本文所使用的,“耦接到”通常是指组件之间的连接,所述连接可以是间接的通信连接或直接的通信连接(例如,无中间组件),无论是有线本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种存储器系统,其包括:一或多个存储器装置;以及与所述一或多个存储器装置操作性耦接的系统控制器,所述系统控制器用于:提供多个虚拟存储器控制器,其中所述多个虚拟存储器控制器中的每个虚拟存储器控制器与所述一或多个存储器装置的不同部分相关联;提供多个物理功能,其中所述多个物理功能中的每个物理功能对应于所述多个虚拟存储器控制器中的不同虚拟存储器控制器;并且通过快速外围组件互连PCIe接口将所述多个物理功能呈现给主机计算系统,所述主机计算系统用于将所述多个物理功能中的每个物理功能分配给在所述主机计算系统上运行的不同虚拟机。2.根据权利要求1所述的存储器系统,其中所述系统控制器进一步用于:将所述一或多个存储器装置划分为多个部分;并且将所述多个虚拟存储器控制器中的每个虚拟存储器控制器与所述多个部分之一相关联。3.根据权利要求1所述的存储器系统,其中所述多个虚拟存储器控制器中的每个虚拟存储器控制器用于接收并处理来自在所述主机计算系统上运行的所分配虚拟机的存储器存取请求,所述存储器存取请求与所述一或多个存储器装置的相关联部分有关。4.根据权利要求3所述的存储器系统,其中所述系统控制器进一步用于:确定所述所分配虚拟机和所述存储器存取请求是否满足与所述多个虚拟存储器控制器相关联的存取控制策略的一或多个条件;并且响应于所述所分配虚拟机和所述存储器存取请求满足所述存取控制策略的所述一或多个条件而授权对所述多个虚拟存储器控制器进行存取。5.根据权利要求1所述的存储器系统,其中所述多个物理功能中的每个物理功能用于在所述PCIe接口上将所述多个虚拟存储器控制器中的对应虚拟存储器控制器作为物理存储器控制器表示给所述主机计算系统。6.根据权利要求1所述的存储器系统,其中所述多个物理功能中的每个物理功能为所述多个虚拟存储器控制器中的对应虚拟存储器控制器提供配置空间,并且其中每个配置空间可通过知道唯一的总线、装置和功能BDF号来寻址。7.根据权利要求1所述的存储器系统,其中所述多个物理功能中的第一物理功能在特权模式下实施并且被配置成对所述多个物理功能中在正常模式下实施的其余物理功能执行管理操作。8.一种方法,其包括:由存储器系统控制器生成多个虚拟存储器控制器,其中所述多个虚拟存储器控制器中的每个虚拟存储器控制器与存储器系统中的一或多个存储器装置的不同部分相关联;由所述存储器系统控制器生成多个物理功能,其中所述多个物理功能中的每个物理功能对应于所述多个虚拟存储器控制器中的不同虚拟存储器控制器;以及由所述存储器系统控制器通过快速外围组件互连PCIe接口将所述多个物理功能呈现给主机计算系统,所述主机计算系统用于将所述多个物理功能中的每个物理功能分配给在所述主机计算系统上运行的不同虚拟机。
9.根据权利要求8所述的方法,其进一步包括:将所述一或多个存储器装置划分为多个部分;以及将所述多个虚拟存储器控制器中的每个虚拟存储器控制器与所述多个部分之一相关...

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

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

1