Namespace access control in NVM express PCIe NVM with SR-IOV
AssigneeFuturewei Technologies, Inc.
InventorJinshui Liu
Life of this patent
Estimating the term…
Abstract
A method implemented by a non-volatile memory (NVM) controller comprising obtaining a NVM express (NVMe) command comprising a namespace identifier (NSID) from a host memory via a peripheral component interconnect express (PCIe) function, determining a mapping between the PCIe function and a namespace identified by the NSID based on a data structure stored in a PCIe memory address space, and accessing the namespace based on the mapping between the PCIe function and the namespace.
Claims20
A method implemented by a non-volatile memory (NVM) controller comprising:
- obtaining a NVM express (NVMe) command comprising a namespace identifier (NSID) from a host memory via a peripheral component interconnect express (PCIe) function;
- determining a mapping between the PCIe function and a namespace identified by the NSID based on a data structure stored in a PCIe memory address space;
- and
- accessing the namespace based on the mapping between the PCIe function and the namespace.
An apparatus comprising:
- one or more non-volatile memory (NVM) devices having a total storage capacity represented by a plurality of namespaces;
- a NVM express (NVMe) peripheral component interconnect express (PCIe)-NVM (NVMe PCIe-NVM) controller coupled to the NVM devices;
- and
- a plurality of PCIe functions including a physical function (PF) and a number of virtual functions (VF) coupled to the NVMe PCIe-NVM controller,
- wherein the NVMe PCIe-NVM controller is configured to:
- getting a NVM express (NVMe) command comprising a namespace identifier (NSID) from a host memory via a PCIe function of the PCIe functions;
- determining a mapping between the PCIe function and a namespace identified by the NSID based on a data structure stored in a memory address space of the PF;
- and
- accessing the namespace based on the mapping between the PCIe function and the namespace.
A method implemented in a computer system comprising:
- dividing a storage capacity of one or more non-volatile memory (NVM) devices into a plurality of namespaces;
- and
- allocating a namespace in the plurality of namespaces to at least one peripheral component interconnect express (PCIe) function such that only the allocated namespace is accessible to the at least one PCIe function, wherein the at least one PCIe function belongs to a plurality of PCIe functions present in the computer system comprising a physical function (PF) and a number of virtual functions (VFs).
Dependencies are inferred from the claim text.