OFFLOAD DEFRAG OPERATION FOR HOST-MANAGED STORAGE
First Claim
1. Memory device circuitry, comprising:
- a controller to control a non-volatile memory (“
NVM”
); and
a memory to store a mapping of a physical address of a contiguous block of memory within a source band of the NVM to a status of data contained in the contiguous block of memory, the status one of a valid status and an invalid status; and
the controller to defragment the source band to a target band separate from the source band based on the mapping, including to relocate data having the valid status from the contiguous block of memory within the source band to another contiguous block of memory within the target band.
1 Assignment
0 Petitions
Accused Products
Abstract
A host-managed storage device includes an offload capability that enables the host to offload all or a portion of a defrag operation to the storage device. Rather than issuing read, write or copy operations and commands to relocate data to the host'"'"'s DRAM, the host assembles a defrag operation command descriptor for the storage device controller. The command descriptor includes a defrag bitmap that can be directly accessed by the storage device controller to conduct the defrag operation entirely on the storage device at band granularity, without consuming host CPU cycles or host memory. The reduction in host operations/commands achieved by offloading defragmentation to the storage device is on the order of at least a thousand-fold reduction.
-
Citations
25 Claims
-
1. Memory device circuitry, comprising:
-
a controller to control a non-volatile memory (“
NVM”
); anda memory to store a mapping of a physical address of a contiguous block of memory within a source band of the NVM to a status of data contained in the contiguous block of memory, the status one of a valid status and an invalid status; and the controller to defragment the source band to a target band separate from the source band based on the mapping, including to relocate data having the valid status from the contiguous block of memory within the source band to another contiguous block of memory within the target band. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A storage system, comprising
non-volatile media; - and
logic coupled to the non-volatile media to; receive a request from a host managing the non-volatile media to defragment a band of contiguous data in the non-volatile media from a source band to a target band separate from the source band, and defragment the source band to the target band based on a status of data within the source band, the status one of a valid status and an invalid status tracked for data located at physical addresses within the band of contiguous data. - View Dependent Claims (14, 15, 16, 17, 18, 19)
- and
-
20. At least one machine-readable medium comprising a plurality of instructions executable by a system to cause the system to:
-
defragment a band of contiguous data in a non-volatile media from a source band to a target band separate from the source band responsive to a request from a host managing the non-volatile media; wherein the source band is defragmented to the target band based on a status of data within the source band, the status one of a valid status and an invalid status tracked for data located at physical addresses within the band of contiguous data. - View Dependent Claims (21, 22, 23, 24, 25)
-
Specification