Storing parity data separate from protected data
First Claim
Patent Images
1. A non-transitory storage device comprising:
- a primary storage array comprising a plurality of non-volatile memory devices;
one or more parity memory devices; and
a controller configured to store a block of data by at least;
writing the block of data to the primary storage array;
determining parity data for the block of data; and
selecting a size of parity data to determine for the block of data; and
when a combined size of the selected size of parity data and the block of data is larger than a size of a page of the primary storage array,writing at least a portion of the determined parity data to the one or more parity memory devices; and
when the combined size of the selected size of parity data and the block of data is smaller than or equal to the size of a page of the primary storage array,writing the at least a portion of the determined parity data to the primary storage array.
9 Assignments
0 Petitions
Accused Products
Abstract
A storage device may include a primary storage array comprising a plurality of memory devices, one or more parity memory devices, and a controller configured to store a block of data. The controller may be configured to store the block of data by at least: writing the block of data to the primary storage array, determining parity data for the block of data, and writing at least a portion of the determined parity data to the one or more parity memory devices.
-
Citations
15 Claims
-
1. A non-transitory storage device comprising:
-
a primary storage array comprising a plurality of non-volatile memory devices; one or more parity memory devices; and a controller configured to store a block of data by at least; writing the block of data to the primary storage array; determining parity data for the block of data; and selecting a size of parity data to determine for the block of data; and when a combined size of the selected size of parity data and the block of data is larger than a size of a page of the primary storage array, writing at least a portion of the determined parity data to the one or more parity memory devices; and when the combined size of the selected size of parity data and the block of data is smaller than or equal to the size of a page of the primary storage array, writing the at least a portion of the determined parity data to the primary storage array. - View Dependent Claims (2, 3, 4, 13)
-
-
5. A method comprising:
-
writing, by a controller of a storage device, a block of data to a primary storage array comprising a plurality of non-volatile memory devices; determining, by the controller, parity data for the block of data; selecting a size of parity data to determine for the block of data; and when a combined size of the selected size of parity data and the block of data is larger than a size of a page of the primary storage array, writing, by the controller, at least a portion of the determined parity data to one or more parity memory devices; and when the combined size of the selected size of parity data and the block of data is smaller than or equal to the size of a page of the primary storage array, writing, by the controller, the at least a portion of the determined parity data to the primary storage array. - View Dependent Claims (6, 7, 8)
-
-
9. A non-transitory computer-readable storage medium storing instructions that, when executed, cause one or more processors of a storage device to:
-
write a block of data to a primary storage array comprising a plurality of non-volatile memory devices; determine parity data for the block of data; select a size of parity data to determine for the block of data; when a combined size of the selected size of parity data and the block of data is larger than a size of a page of the primary storage array, write at least a portion of the determined parity data to one or more parity memory devices; and when the combined size of the selected size of parity data and the block of data is smaller than or equal to the size of a page of the primary storage array, write the at least a portion of the determined parity data to the primary storage array. - View Dependent Claims (10, 14)
-
-
11. A system comprising:
-
a primary storage array comprising a plurality of non-volatile memory devices; one or more parity memory devices, wherein the one or more parity memory devices are a different type of non-volatile memory device than the plurality of memory devices of the primary storage array; means for writing a block of data to the primary storage array; means for determining parity data for the block of data; means for selecting a size of parity data to determine for the block of data; means for, when a combined size of the selected size of parity data and the block of data is larger than a size of a page of the primary storage array, writing at least a portion of the determined parity data to one or more parity memory devices; and means for, when the combined size of the selected size of parity data and the block of data is smaller than or equal to the size of a page of the primary storage array, writing at least a portion of the determined parity data to the primary storage array. - View Dependent Claims (12, 15)
-
Specification