Write amplification reduction by delaying read access to data written during garbage collection
First Claim
Patent Images
1. A method of garbage collection in a storage system, the method comprising:
- performing a garbage collection operation, including;
writing data, for the garbage collection operation, to a sequence of write units of a non-volatile storage medium block that was erased prior to writing data to the sequence of write units, including;
writing data to a first write unit of the storage medium block; and
after writing data to the first write unit, writing data to at least N write units of the storage medium block, the at least N write units of the storage medium block including a second write unit of the storage medium block, wherein N is a positive integer;
after writing data to the at least N write units,enabling read access to the first write unit;
writing data to a subsequent write unit of the storage medium block; and
after writing data to the subsequent write unit, enabling read access to the second write unit.
3 Assignments
0 Petitions
Accused Products
Abstract
The various implementations described herein include systems, methods and/or devices used to enable write amplification reduction by delaying read access to data written during garbage collection. In one aspect, read access to a write unit to which data was written during garbage collection is delayed until a predefined subsequent operation has been completed.
394 Citations
15 Claims
-
1. A method of garbage collection in a storage system, the method comprising:
performing a garbage collection operation, including; writing data, for the garbage collection operation, to a sequence of write units of a non-volatile storage medium block that was erased prior to writing data to the sequence of write units, including; writing data to a first write unit of the storage medium block; and after writing data to the first write unit, writing data to at least N write units of the storage medium block, the at least N write units of the storage medium block including a second write unit of the storage medium block, wherein N is a positive integer; after writing data to the at least N write units, enabling read access to the first write unit; writing data to a subsequent write unit of the storage medium block; and after writing data to the subsequent write unit, enabling read access to the second write unit. - View Dependent Claims (2, 3, 4, 13)
-
5. A device operable to perform garbage collection for a storage medium, the device comprising:
-
a storage medium interface for coupling the device to the storage medium; and one or more modules, including a memory management module that includes one or more processors and memory storing one or more programs configured for execution by the one or more processors, the one or more modules coupled to the storage medium interface and configured to; perform a garbage collection operation, including; writing data, for the garbage collection operation, to a sequence of write units of a non-volatile storage medium block that was erased prior to writing data to the sequence of write units, including; writing data to a first write unit of the storage medium block; and after writing data to the first write unit, writing data to at least N write units of the storage medium block, the at least N write units of the storage medium block including a second write unit of the storage medium block, wherein N is a positive integer; after writing data to the at least N write units, enabling read access to the first write unit; writing data to a subsequent write unit of the storage medium block; and after writing data to the subsequent write unit, enabling read access to the second write unit. - View Dependent Claims (6, 7, 8, 14)
-
-
9. A non-transitory computer readable storage medium storing one or more programs configured for execution by a device coupled to a storage medium, the one or more programs comprising instructions for causing the device to:
perform a garbage collection operation, including; writing data, for the garbage collection operation, to a sequence of write units of a non-volatile storage medium block that was erased prior to writing data to the sequence of write units, including; writing data to a first write unit of the storage medium block; and after writing data to the first write unit, writing data to at least N write units of the storage medium block, the at least N write units of the storage medium block including a second write unit of the storage medium block, wherein N is a positive integer; after writing data to the at least N write units, enabling read access to the first write unit; writing data to a subsequent write unit of the storage medium block; and after writing data to the subsequent write unit, enabling read access to the second write unit. - View Dependent Claims (10, 11, 12, 15)
Specification