IP Library Patent Application 13161211
Patent Application
App. No. 13/161,211

APPARATUS, SYSTEM, AND METHOD FOR PROVIDING ERROR CORRECTION

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
13/161,211
Abstract

An apparatus, system, and method are disclosed for providing error correction for a data storage device. A determination module determines a set of error-correcting code (“ECC”) characteristics for a data storage device. The set of ECC characteristics includes at least one attribute selected from a plurality of supported attributes. A decoder configuration module configures an ECC decoder to operate in compliance with the set of ECC characteristics. An ECC module validates requested data read from the data storage device using the ECC decoder.

Claims (38)

1 . A method for providing error correction for a data storage device, the method comprising:

determining a set of error-correcting code (“ECC”) characteristics for a data storage device, wherein the set of ECC characteristics includes at least one attribute selected from a plurality of supported attributes;

configuring an ECC decoder to operate in compliance with the set of ECC characteristics; and

validating requested data read from the data storage device using the ECC decoder.

2 . The method of claim 1 , wherein determining the set of ECC characteristics comprises determining the set of ECC characteristics in response to one or more data storage device characteristics.

3 . The method of claim 1 , further comprising adjusting an ECC encoder and the ECC decoder in accordance with an adjusted set of ECC characteristics, the adjusted set of ECC characteristics including at least one different attribute selected from the plurality of supported attributes.

4 . The method of claim 3 , further comprising,

determining which of an original set of ECC characteristics and the adjusted set of ECC characteristics was used to encode data identified in subsequent data read requests for the data storage device; and

validating data of the subsequent data read requests using an ECC decoder configured according to the determined set of ECC characteristics.

5 . The method of claim 3 , further comprising,

converting stored data on the data storage device from an ECC encoding compliant with the set of ECC characteristics to an ECC encoding compliant with the adjusted set of ECC characteristics, such that the data storage device stores data compliant with a single set of ECC characteristics; and

validating subsequent requested data read from the data storage device using the ECC decoder configured according to the adjusted set of ECC characteristics.

6 . The method of claim 3 , further comprising,

clearing stored data encoded with an ECC encoding compliant with the set of ECC characteristics from the data storage device, such that the data storage device stores data compliant with a single set of ECC characteristics; and

validating subsequent requested data read from the data storage device using the ECC decoder configured according to the adjusted set of ECC characteristics.

7 . The method of claim 1 , wherein determining the set of ECC characteristics comprises determining the set of ECC characteristics in response to one or more reliability characteristics of the data storage device.

8 . The method of claim 1 , further comprising,

determining a second set of ECC characteristics for a second data storage device, the second set of ECC characteristics providing a different level of ECC protection for the second data storage device than a level of ECC protection that the set of ECC characteristic provides for the data storage device; and

validating requested data read from the second data storage device using the ECC decoder configured according to the second set of ECC characteristic.

9 . The method of claim 1 , wherein the set of ECC characteristics comprises an ECC codeword size selected from a plurality of supported ECC codeword sizes to satisfy a predetermined ratio between a level of data protection and a minimum read size, wherein the level of data protection associated with the ECC codeword size and the minimum read size associated with the ECC codeword size each increase with an increase in ECC codeword size.

10 . An apparatus for providing error correction for a data storage device, the apparatus comprising:

a determination module that determines a set of error-correcting code (“ECC”) characteristics for a data storage device, wherein the set of ECC characteristics includes at least one attribute selected from a plurality of supported attributes;

a decoder configuration module that configures an ECC decoder to operate in compliance with the set of ECC characteristics; and

an ECC module that validates requested data read from the data storage device using the ECC decoder.

11 . The apparatus of claim 10 , wherein the determination module determines the set of ECC characteristics in response to one or more data storage device characteristics.

12 . The apparatus of claim 10 , further comprising an adjustment module that adjusts an ECC encoder and the ECC decoder in accordance with an adjusted set of ECC characteristics, the adjusted set of ECC characteristics including at least one different attribute selected from the plurality of supported attributes.

13 . The apparatus of claim 12 , wherein the determination module determines which of an original set of ECC characteristics and the adjusted set of ECC characteristics was used to encode data identified in subsequent data read requests for the data storage device and the ECC module validates data of the subsequent data read requests using an ECC decoder configured according to the determined set of ECC characteristics.

14 . The apparatus of claim 12 , further comprising an ECC conversion module that converts stored data on the data storage device from an ECC encoding compliant with the set of ECC characteristics to an ECC encoding compliant with the adjusted set of ECC characteristics, such that the data storage device stores data compliant with a single set of ECC characteristics, wherein the ECC module validates subsequent requested data read from the data storage device using the ECC decoder configured according to the adjusted set of ECC characteristics.

15 . The apparatus of claim 12 , further comprising an ECC clearing module that clears stored data encoded with an ECC encoding compliant with the set of ECC characteristics from the data storage device, such that the data storage device stores data compliant with a single set of ECC characteristics, wherein the ECC module validates subsequent requested data read from the data storage device using the ECC decoder configured according to the adjusted set of ECC characteristics.

16 . The apparatus of claim 10 , wherein the determination module determines the set of ECC characteristics in response to one or more reliability characteristics of the data storage device.

17 . The apparatus of claim 10 , wherein the determination module determines a second set of ECC characteristics for a second data storage device, the second set of ECC characteristics providing a different level of ECC protection for the second data storage device than a level of ECC protection that the set of ECC characteristic provides for the data storage device, wherein the ECC module validates requested data read from the second data storage device using the ECC decoder configured according to the second set of ECC characteristic.

18 . The apparatus of claim 10 , wherein the set of ECC characteristics comprises an ECC codeword size selected from a plurality of supported ECC codeword sizes to satisfy a predetermined ratio between a level of data protection and a minimum read size, wherein the level of data protection associated with the ECC codeword size and the minimum read size associated with the ECC codeword size each increase with an increase in ECC codeword size.

19 . A system for providing error correction for a data storage device, the system comprising:

a data storage device;

a determination module that determines a set of error-correcting code (“ECC”) characteristics for the data storage device, wherein the set of ECC characteristics includes at least one attribute selected from a plurality of supported attributes;

a decoder configuration module that configures an ECC decoder to operate in compliance with the set of ECC characteristics; and

an ECC module that validates requested data read from the data storage device using the ECC decoder.

20 . The system of claim 19 , further comprising a host device, wherein one or more of the determination module, the decoder configuration module, and the ECC module are installed on the host device and the host device is in communication with the data storage device.

Assignments (6)
CHANGE OF NAME Recorded May 25, 2016
From: SANDISK TECHNOLOGIES INC
To: SANDISK TECHNOLOGIES LLC
Reel/Frame 038809/0672 →
CORRECTIVE ASSIGNMENT TO REMOVE APPL. NO'S 13/925,410 AND 61/663,464 PREVIOUSLY RECORDED AT REEL: 035168 FRAME: 0366. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Apr 30, 2015
From: FUSION-IO, LLC
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 035603/0582 →
CORRECTIVE ASSIGNMENT TO REMOVE APPL. NO'S 13/925,410 AND 61/663,464 PREVIOUSLY RECORDED AT REEL: 034838 FRAME: 0091. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME. Recorded Apr 30, 2015
From: FUSION-IO, INC
To: FUSION-IO, LLC
Reel/Frame 035603/0748 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 9, 2015
From: FUSION-IO, LLC
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 035168/0366 →
CHANGE OF NAME Recorded Jan 28, 2015
From: FUSION-IO, INC
To: FUSION-IO, LLC
Reel/Frame 034838/0091 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 29, 2011
From: FILLINGIM, JEREMY
To: FUSION-IO, INC.
Reel/Frame 026823/0821 →