Pool-level solid state drive error correction
First Claim
1. A method for performing error correction for a plurality of storage devices, the method comprising:
- generating a first set of parity bits from a first set of data of at least one of the plurality of storage devices, the first set of parity bits capable of correcting a first maximum number of error bits of the first set of data;
generating a concatenated data set by concatenating the first set of data and a second set of data from at least another of the plurality of storage devices;
generating a second set of parity bits from the concatenated data set, the second set of parity bits capable of correcting a second maximum number of error bits of the first set of data, the second maximum number being greater than the first maximum number;
associating a logical block address of either the first set of data or the second set of data with the second set of parity bits;
correcting error bits within the first set of data with the first set of parity bits where a number of error bits is less than or equal to the first maximum number of error bits; and
correcting error bits within the first set of data with the second set of parity bits where the number of error bits is greater than the first maximum number.
5 Assignments
0 Petitions
Accused Products
Abstract
A method for performing error correction for a plurality of storage drives and a storage appliance comprising a plurality of storage devices is disclosed. In one embodiment, the method includes generating a first set of parity bits from a first set of data of at least one of the plurality of storage devices, the first set of parity bits capable of correcting a first number of error bits of the first set of data. The method further includes generating a second set of parity bits from a concatenated set of the first data and a second set of data from at least another of the plurality of storage devices, the second set of parity bits capable of correcting a second number of error bits of the first set of data, the second number being greater than the first number. The method further includes reading the first set of data and (i) correcting error bits within the first set of data with the first set of parity bits where a number of error bits is less than the first number of error bits; and (ii) correcting error bits within the first set of data with the second set of parity bits where the number of error bits is greater than the first number.
-
Citations
28 Claims
-
1. A method for performing error correction for a plurality of storage devices, the method comprising:
-
generating a first set of parity bits from a first set of data of at least one of the plurality of storage devices, the first set of parity bits capable of correcting a first maximum number of error bits of the first set of data; generating a concatenated data set by concatenating the first set of data and a second set of data from at least another of the plurality of storage devices; generating a second set of parity bits from the concatenated data set, the second set of parity bits capable of correcting a second maximum number of error bits of the first set of data, the second maximum number being greater than the first maximum number; associating a logical block address of either the first set of data or the second set of data with the second set of parity bits; correcting error bits within the first set of data with the first set of parity bits where a number of error bits is less than or equal to the first maximum number of error bits; and correcting error bits within the first set of data with the second set of parity bits where the number of error bits is greater than the first maximum number. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A storage appliance comprising:
-
a controller communicatively coupled to a plurality of storage devices, wherein at least one of the plurality of storage devices configured to correct a first maximum number of error bits of a first set of data on the one of the plurality of storage devices with a first set of parity bits when the first set of data is read by the controller, the first set of parity bits generated from the first set of data, and the controller is configured to; generate a concatenated data set by concatenating the first set of data and a second set of data of at least one other of the plurality of storage devices; generate a second set of parity bits from the concatenated data set; associate a logical block address of either the first set of data or the second set of data with the second set of parity bits; and correct a second maximum number of error bits greater than the first maximum number of the first set of data with the second set of parity bits when the number of error bits exceeds the first maximum number. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
Specification