Scalable and area optimized method to implement command queues in SRIOV based NVM devices
First Claim
Patent Images
1. A method for dynamically allocating resources to command queues and response queues by a non-volatile memory (NVM) controller, the method comprising:
- mapping, by the NVM controller, first input queues associated with a first operating system (OS) running on a host system to first registers of an NVM device for creating first command queues and first response queues; and
mapping, by the NVM controller, second input queues associated with a second OS running on the same host system to the same first registers so that the second OS shares the created first command queues and first response queues,wherein the operating systems running on the host system communicate with at least one NVM controller independently.
1 Assignment
0 Petitions
Accused Products
Abstract
Provided are method for dynamically allocating resources to command queues and response queues by a non-volatile memory (NVM) controller. The method includes creating command queues and response queues for at least one operating system among a plurality of operating systems running on a host system and mapping the created command queues and response queues to a plurality of internal shared queue registers. The plurality of operating systems running on the host system communicate with at least one NVM controller independently.
25 Citations
19 Claims
-
1. A method for dynamically allocating resources to command queues and response queues by a non-volatile memory (NVM) controller, the method comprising:
-
mapping, by the NVM controller, first input queues associated with a first operating system (OS) running on a host system to first registers of an NVM device for creating first command queues and first response queues; and mapping, by the NVM controller, second input queues associated with a second OS running on the same host system to the same first registers so that the second OS shares the created first command queues and first response queues, wherein the operating systems running on the host system communicate with at least one NVM controller independently. - View Dependent Claims (2, 3, 4, 5, 18)
-
-
6. An apparatus for dynamically allocating resources to command queues and response queues, the apparatus comprising:
-
a non-volatile memory (NVM) controller configured to map first input queues associated with a first operating system (OS) running on a host system to first registers of a NVM device to create first command queues and first response queues, and map second input queues associated with a second OS running on the same host system to the same first registers so that the second OS shares the created first command queues and first response queues, wherein the operating systems running on the host system communicate with at least one NVM controller independently. - View Dependent Claims (7, 8, 9, 10, 19)
-
-
11. A system configured to manage a plurality of virtual machines, the system comprising:
-
a host computer comprising a host operating system, and a hypervisor configured to manage a first virtual machine comprising a first guest operating system and a first virtual function driver and a second virtual machine comprising a second guest operating system and a second virtual function driver; a non-volatile memory (NVM), wherein the NVM comprises a controller configured to create first queues using a plurality of registers of the NVM, and map the first virtual function driver and the second virtual function driver to the same first queues stored in the plurality of registers when creation of additional queues for the second quest operating system exceeds a number of queues supported by the NVM. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
Specification