Sub-block garbage collection
First Claim
1. A method of garbage collection for a storage medium in a storage device, the method comprising:
- determining a first trigger parameter in accordance with one or more operating conditions of a first sub-block of a first erase block in the storage medium, the storage medium having a plurality of erase blocks that include the first erase block, where erase blocks are minimum size erasable units in the storage device and sub-blocks are sub-portions of corresponding erase blocks;
determining a second trigger parameter in accordance with one or more operating conditions of a second sub-block of the first erase block in the storage medium;
in accordance with a determination that the first trigger parameter meets a first vulnerability criterion, enabling sub-block garbage collection of the first sub-block; and
in accordance with a determination that the second trigger parameter meets a second vulnerability criterion, enabling sub-block garbage collection of the second sub-block, wherein the first vulnerability criterion is distinct from the second vulnerability criterion, wherein the first vulnerability criterion is a first read-disturb threshold and the second vulnerability criterion is a second read-disturb threshold, distinct from the first read-disturb threshold, and wherein sub-block garbage collection of a particular sub-block of the first erase block is distinct from garbage collection of the first erase block, and sub-block garbage collection of the particular sub-block of the first erase block includes;
writing a copy of valid data from the particular sub-block to a second erase block in the storage medium, wherein the second erase block is distinct from the first erase block; and
invalidating the particular sub-block in the first erase block.
3 Assignments
0 Petitions
Accused Products
Abstract
Systems, methods and/or devices are used to enable garbage collection of a sub-block of an individually erasable block of a storage medium in a storage device. In one aspect, the method includes determining a first trigger parameter in accordance with one or more operating conditions of a first sub-block of an erase block in the storage medium, and determining a second trigger parameter in accordance with one or more operating conditions of a second sub-block of the erase block in the storage medium. In accordance with a determination that the first trigger parameter meets a first vulnerability criterion, garbage collection of the first sub-block is enabled. Furthermore, in accordance with a determination that the second trigger parameter meets a second vulnerability criterion, garbage collection of the second sub-block is enabled.
539 Citations
24 Claims
-
1. A method of garbage collection for a storage medium in a storage device, the method comprising:
-
determining a first trigger parameter in accordance with one or more operating conditions of a first sub-block of a first erase block in the storage medium, the storage medium having a plurality of erase blocks that include the first erase block, where erase blocks are minimum size erasable units in the storage device and sub-blocks are sub-portions of corresponding erase blocks; determining a second trigger parameter in accordance with one or more operating conditions of a second sub-block of the first erase block in the storage medium; in accordance with a determination that the first trigger parameter meets a first vulnerability criterion, enabling sub-block garbage collection of the first sub-block; and in accordance with a determination that the second trigger parameter meets a second vulnerability criterion, enabling sub-block garbage collection of the second sub-block, wherein the first vulnerability criterion is distinct from the second vulnerability criterion, wherein the first vulnerability criterion is a first read-disturb threshold and the second vulnerability criterion is a second read-disturb threshold, distinct from the first read-disturb threshold, and wherein sub-block garbage collection of a particular sub-block of the first erase block is distinct from garbage collection of the first erase block, and sub-block garbage collection of the particular sub-block of the first erase block includes; writing a copy of valid data from the particular sub-block to a second erase block in the storage medium, wherein the second erase block is distinct from the first erase block; and invalidating the particular sub-block in the first erase block. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method of garbage collection for a storage medium in a storage device, the method comprising:
-
determining a first trigger parameter in accordance with one or more operating conditions of a first sub-block of a first erase block in the storage medium, the storage medium having a plurality of erase blocks that include the first erase block, where erase blocks are minimum size erasable units in the storage device and sub-blocks are sub-portions of corresponding erase blocks; in accordance with a determination that the first trigger parameter meets a first vulnerability criterion, enabling sub-block garbage collection of the first sub-block, wherein the first vulnerability criterion includes a first read-disturb threshold for the first sub-block; subsequent to enabling sub-block garbage collection of the first sub-block, determining whether the first erase block meets predefined garbage collection scheduling criteria, wherein the garbage collection scheduling criteria is distinct from the first vulnerability criterion and includes a criterion with respect to amount of valid data remaining in the first erase block; and in accordance with a determination that the first erase block meets said garbage collection scheduling criteria, enabling garbage collection of the first erase block, wherein garbage collection of the first erase block is distinct from sub-block garbage collection of the first sub-block. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A storage device, comprising:
-
a non-transitory storage medium; one or more processors; and memory storing one or more programs to be executed by the one or more processors, the one or more programs comprising instructions for; determining a first trigger parameter in accordance with one or more operating conditions of a first sub-block of a first erase block in the storage medium, the storage medium having a plurality of erase blocks that include the first erase block, where erase blocks are minimum size erasable units in the storage device and sub-blocks are sub-portions of corresponding erase blocks; determining a second trigger parameter in accordance with one or more operating conditions of a second sub-block of the first erase block in the storage medium; in accordance with a determination that the first trigger parameter meets a first vulnerability criterion, enabling sub-block garbage collection of the first sub-block; and in accordance with a determination that the second trigger parameter meets a second vulnerability criterion, enabling sub-block garbage collection of the second sub-block, wherein the first vulnerability criterion is distinct from the second vulnerability criterion, wherein the first vulnerability criterion is a first read-disturb threshold and the second vulnerability criterion is a second read-disturb threshold, distinct from the first read-disturb threshold, and wherein sub-block garbage collection of a particular sub-block of the first erase block is distinct from garbage collection of the first erase block, and sub-block garbage collection of the particular sub-block of the first erase block includes; writing a copy of valid data from the particular sub-block to a second erase block in the storage medium, wherein the second erase block is distinct from the first erase block; and invalidating the particular sub-block in the first erase block. - View Dependent Claims (14, 15, 16, 17, 18)
-
-
19. A storage system, comprising:
-
a non-transitory storage medium; one or more processors; and memory storing one or more programs to be executed by the one or more processors, the one or more programs comprising instructions for; determining a first trigger parameter in accordance with one or more operating conditions of a first sub-block of a first erase block in the storage medium, the storage medium having a plurality of erase blocks that include the first erase block, where erase blocks are minimum size erasable units in the storage device and sub-blocks are sub-portions of corresponding erase blocks; in accordance with a determination that the first trigger parameter meets a first vulnerability criterion, enabling sub-block garbage collection of the first sub-block, wherein the first vulnerability criterion includes a first read-disturb threshold for the first sub-block; subsequent to enabling sub-block garbage collection of the first sub-block, determining whether the first erase block meets predefined garbage collection scheduling criteria, wherein the garbage collection scheduling criteria is distinct from the first vulnerability criterion and includes a criterion with respect to amount of valid data remaining in the first erase block; and in accordance with a determination that the first erase block meets said garbage collection scheduling criteria, enabling garbage collection of the first erase block, wherein garbage collection of the first erase block is distinct from sub-block garbage collection of the first sub-block. - View Dependent Claims (20, 21, 22, 23, 24)
-
Specification