Majority voting scheme for hard error sites
Abstract
A data recovery scheme is disclosed wherein a majority voting scheme arrives at the correct data and resolves ties with a minimum number of reads. The method includes reading at least one instance of data including a first set of ECC checkbytes from a media, each instance of data and ECC checkbytes comprising a string of bits, forming a voting data string from a majority value for each bit position in the string of bits, generating a second set of ECC checkbytes using the voted data string and returning the voted data sting to a host if the second set of ECC checkbytes is equal to the first set of ECC checkbytes.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. A method of error recovery when retrieving data in a data storage system, the system storing data with ECC checkbytes generated from the data, comprising the steps of: reading at least one instance of data including ECC checkbytes from a media, each instance of data and ECC checkbytes comprising a string of bits; forming a voted data string and voted ECC checkbytes from a majority value for each bit position in the string of bits; generating a second set of ECC checkbytes using the voted data string; and returning the voted data string to a host if the second set of ECC checkbytes is equal to the voted ECC checkbytes.
2. The method of claim 1 wherein the step of reading at least one instance of data further comprising the steps of setting a pass value representing the number of times data is read to a value of zero and incrementing the pass value by one each time data is read.
3. The method of claim 2 wherein the step of returning the voted data string further comprises the step of comparing the pass value to a limit if the second set of ECC checkbytes is not equal to the first set of ECC checkbytes, the limit representing a maximum number of reads.
4. The method of claim 3 wherein the step of comparing the pass value further comprises the step of returning to the step of reading at least one instance of data if the pass value is not greater than the limit.
5. The method of claim 3 wherein the step of comparing the pass value further comprises the step of indicating that the data was not retrieved if the pass value is less than or equal to the limit.
6. A method of retrieving data in a digital data system, comprising the steps of: (a) reading data from a digital data system, the data comprising a string of digital data bits; (b) deriving a voted data string from the read data using a majority voting process; (c) checking for a valid data match between a ECC checkbyte calculated from the voted data string and a ECC checkbyte associated with data being read; and (d) accepting the voted data string as correct in response to detecting a valid data match.
7. The method of claim 6 wherein the step of reading data further comprising the steps of setting a pass value representing the number of times data is read to a value of zero and incrementing the pass value by one each time data is read.
8. The method of claim 7 wherein the step of checking for a valid data match further comprises the step of comparing the pass value to a limit if a match does not exist, the limit representing a maximum number of reads.
9. The method of claim 8 wherein the step of comparing the pass value further comprises the step of returning to step (a) if the pass value is not greater than the limit.
10. The method of claim 8 wherein the step of comparing the pass value further comprises the step of indicating that the data was not received if the pass value is less than or equal to the limit.
11. The method of claim 6 wherein the step of deriving a voted data sting further comprises the step of comparing the pass value to a limit if a tie exists, the limit representing a maximum number of reads.
12. The method of claim 11 wherein the step of comparing the pass value further comprises the step of returning to step (a) if the pass value is not greater than the limit.
13. The method of claim 11 wherein the step of comparing the pass value further comprises the step of indicating that the data was not received if the pass value is less than or equal to the limit.
14. A storage system, comprising: storage media for storing data for later retrieval; a host interface processor for issuing store and read requests; and a channel processor for accessing the storage media to complete the store and read requests by the host interface processor, the channel processor reading at least one instance of data including ECC checkbytes from the media, each instance of data and ECC checkbytes comprising a string of bits, forming a voted data string and voted ECC checkbytes from a majority value for each bit position in the string of bits, generating a second set of ECC checkbytes using the voted data string and returning the voted data string to a host if the second set of ECC checkbytes is equal to the voted of ECC checkbytes.
15. A method of error recovery when retrieving data in a data storage system, the system storing data with ECC checkbytes generated from the data, comprising the steps of: reading at least one instance of data including ECC checkbytes from a media, each instance of data and ECC checkbytes comprising a string of bits; performing voting to create a voted data string and voted ECC checkbytes; determining whether a tie for bits in the voted data string occurs; making an assumption for tied bits; generating a second set of ECC checkbytes from the voted, untied bits and the assumed bits; and returning the voted data string to a host if the second set of ECC checkbytes is equal to the voted ECC checkbytes.
16. The method of claim 15 wherein the step of reading at least one instance of data further comprising the steps of setting a pass value representing the number of times data is read to a value of zero and incrementing the pass value by one each time data is read.
17. The method of claim 16 further comprising the step of comparing the pass value to a limit.
18. The method of claim 17 wherein the step of comparing the pass value further comprises the step of indicating that the data was not retrieved if the pass value is less than or equal to the limit.Join the waitlist — get patent alerts
Track US6044487A — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.