Stripe-based memory operation
First Claim
Patent Images
1. A device, comprising:
- memory control circuitry configured to;
write data in a first stripe having a particular stripe size and being across a storage volume of a plurality of memory devices;
update a portion of the first stripe including;
write updated data in a portion of a second stripe, the second stripe having the particular stripe size and being across the storage volume of the plurality of memory devices; and
invalidate the portion of the first stripe; and
maintain the invalid portion of the first stripe and a remainder of the first stripe until the first stripe is reclaimed.
8 Assignments
0 Petitions
Accused Products
Abstract
The present disclosure includes methods and devices for stripe-based memory operation. One method embodiment includes writing data in a first stripe across a storage volume of a plurality of memory devices. A portion of the first stripe is updated by writing updated data in a portion of a second stripe across the storage volume of the plurality of memory devices. The portion of the first stripe is invalidated. The invalid portion of the first stripe and a remainder of the first stripe are maintained until the first stripe is reclaimed. Other methods and devices are also disclosed.
-
Citations
20 Claims
-
1. A device, comprising:
memory control circuitry configured to; write data in a first stripe having a particular stripe size and being across a storage volume of a plurality of memory devices; update a portion of the first stripe including; write updated data in a portion of a second stripe, the second stripe having the particular stripe size and being across the storage volume of the plurality of memory devices; and invalidate the portion of the first stripe; and maintain the invalid portion of the first stripe and a remainder of the first stripe until the first stripe is reclaimed. - View Dependent Claims (2, 3, 4, 5, 6)
-
7. A method, comprising:
-
writing original data in a first stripe across a storage volume of a plurality of memory devices; updating at least a fragment of the written original data, wherein updating includes writing updated data in a second stripe without reading or copying the written original data; calculating respective first level error correction data based on each fragment of the original data; calculating second level error correction data based on the original data; wherein writing the original data includes writing the original data and the first level error correction data in a first subset of the plurality of memory devices, and writing the second level error correction data in a second subset of the plurality of memory devices; detecting an error in a fragment of original data in the first stripe, wherein the error is uncorrectable with the first level error correction data; and correcting the error, wherein correcting the error includes; creating replacement data for the fragment of original data based on at least a remainder of the original data and the second level error correction data in the first stripe; writing the replacement data in a third stripe without writing the remainder of the original data in the third stripe; and writing unrelated data in the third stripe concurrent with writing the replacement data in the third stripe, wherein the unrelated data is unrelated to the original data in the first stripe or the replacement data in the third stripe. - View Dependent Claims (8, 9, 10)
-
-
11. A device, comprising:
memory control circuitry configured to; write data in a stripe across a storage volume provided by a plurality of solid state memory devices across a plurality of channels; read data from a portion of the stripe across one of the plurality of channels; and reclaim portions of the storage volume on a stripe-basis in response to one or more of the group including; all portions of the particular stripe having an invalid indication in a block table; and a garbage collection threshold amount of portions of the particular stripe having an invalid indication in the block table, wherein the threshold amount of portions is greater than one and less than all portions. - View Dependent Claims (12, 13, 14, 15)
-
16. A method, comprising:
-
writing data in a stripe across a storage volume provided by a plurality of solid state memory devices across a plurality of channels; reading data from a portion of the stripe across one of the plurality of channels; and reclaiming portions of the storage volume on a stripe-basis in response to one or more of the group including; all portions of the particular stripe having an invalid indication in a block table; and a garbage collection threshold amount of portions of the particular stripe having an invalid indication in the block table, wherein the threshold amount of portions is greater than one and less than all portions. - View Dependent Claims (17, 18, 19, 20)
-
Specification