VM-AWARE FTL DESIGN FOR SR-IOV NVME SSD
First Claim
Patent Images
1. A mass storage device, comprising:
- a flash memory comprising a plurality of physical blocks, each of the physical blocks comprising a plurality of physical pages, the plurality of physical blocks comprising;
a first set of physical blocks; and
a second set of physical blocks,the first set of physical blocks and the second set of physical blocks being disjoint; and
a controller configured to implement a first virtual flash translation layer instance and a second virtual flash translation layer instance,the first virtual flash translation layer instance being configured to receive storage access requests directed to logical page numbers and to generate storage access requests directed to physical page numbers within the first set of physical blocks, andthe second virtual flash translation layer instance being configured to receive storage access requests directed to logical page numbers and to generate storage access requests directed to physical page numbers within the second set of physical blocks.
1 Assignment
0 Petitions
Accused Products
Abstract
A mass storage device for providing persistent storage. The system includes a plurality of instances of virtual flash translation layers, each associated with a namespace and configured to provide, to one or more virtual machines executing in a host connected to the mass storage device, access to read and write operations in the persistent storage.
-
Citations
18 Claims
-
1. A mass storage device, comprising:
-
a flash memory comprising a plurality of physical blocks, each of the physical blocks comprising a plurality of physical pages, the plurality of physical blocks comprising; a first set of physical blocks; and a second set of physical blocks, the first set of physical blocks and the second set of physical blocks being disjoint; and a controller configured to implement a first virtual flash translation layer instance and a second virtual flash translation layer instance, the first virtual flash translation layer instance being configured to receive storage access requests directed to logical page numbers and to generate storage access requests directed to physical page numbers within the first set of physical blocks, and the second virtual flash translation layer instance being configured to receive storage access requests directed to logical page numbers and to generate storage access requests directed to physical page numbers within the second set of physical blocks. - View Dependent Claims (2, 3, 4)
-
-
5. A system comprising:
-
a host comprising; a first virtual machine associated with a first namespace; and a second virtual machine associated with a second namespace, the first virtual machine being configured to send storage access requests to a first virtual flash translation layer instance instantiated in a mass storage device, and the second virtual machine being configured to send storage access requests to a second virtual flash translation layer instance instantiated in the mass storage device. - View Dependent Claims (6, 7, 8, 9, 10, 11)
-
-
12. A method, comprising:
-
receiving, by a first virtual flash translation layer instance in a mass storage device comprising a plurality of physical blocks, a first storage access request directed to a first logical page number; generating, by the first virtual flash translation layer instance, a storage access request directed to a physical page number within a first subset of the plurality of physical blocks; receiving, by a second virtual flash translation layer instance in the mass storage device, a second storage access request directed to a second logical page number; and generating, by the second virtual flash translation layer instance, a storage access request directed to a physical page number within a second subset of the plurality of physical blocks, the first subset and the second subset being disjoint. - View Dependent Claims (13, 14, 15, 16, 17, 18)
-
Specification