BLOCK REUSE FOR MEMORY OPERATIONS
First Claim
1. An apparatus comprising:
- one or more storage elements; and
a controller configured to;
manage a metadata structure and a metadata change structure, wherein the metadata structure stores metadata relating to the one or more storage regions and the metadata change structure stores changes to be made to the metadata structure;
perform an availability check to determine if one or more presently allocated storage regions identified in the metadata change structure are reusable; and
allocate one of a storage region from one of the one or more presently allocated storage regions and a free storage region from a free memory group based on the availability check.
7 Assignments
0 Petitions
Accused Products
Abstract
Apparatuses, systems, and methods are disclosed for block reuse for memory operations. An apparatus may include one or more storage elements and a controller. A controller may be configured to manage a metadata structure and a metadata change structure. In certain embodiments, the metadata structure stores metadata relating to the one or more storage regions and the metadata change structure stores changes to be made to the metadata structure. A controller may be configured to perform an availability check to determine if one or more presently allocated storage regions identified in a metadata change structure are reusable. A controller may be configured to allocate one of a storage region from one or more presently allocated storage regions and a free storage region from a free memory group based on an availability check.
-
Citations
20 Claims
-
1. An apparatus comprising:
-
one or more storage elements; and a controller configured to; manage a metadata structure and a metadata change structure, wherein the metadata structure stores metadata relating to the one or more storage regions and the metadata change structure stores changes to be made to the metadata structure; perform an availability check to determine if one or more presently allocated storage regions identified in the metadata change structure are reusable; and allocate one of a storage region from one of the one or more presently allocated storage regions and a free storage region from a free memory group based on the availability check. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method comprising:
-
handling a plurality of memory requests, wherein changes to a metadata structure that stores metadata relating to the plurality of memory requests are stored in a metadata change structure; reallocating a presently allocated storage region in response to a first memory request in the plurality of memory requests, based on the presently allocated storage region satisfying a validity threshold and a reallocation threshold, wherein the presently allocated storage region is identified in the metadata change structure; and allocating a free storage region in one or more free storage regions in response to a second memory request in the plurality of memory requests based on a determination that no presently allocated storage regions satisfy the validity threshold and the reallocation threshold. - View Dependent Claims (13, 14, 15, 16, 17, 18)
-
-
19. An apparatus comprising:
-
means for comparing an amount of data stored on a previously allocated storage region against a validity threshold; means for wear leveling for the previously allocated storage region based on a reuse counter associated with the previously allocated storage region being less than a reallocation threshold, the reallocation threshold defining a limit for how many times a presently allocated storage region can be reallocated; and means for reallocating the presently allocated storage region based on the comparison of the presently allocated storage region against the validity threshold and the reallocation threshold. - View Dependent Claims (20)
-
Specification