Data reliability schemes for data storage systems
First Claim
Patent Images
1. A data storage system, comprising:
- a non-volatile memory array comprising a plurality of data pages; and
a controller configured to;
store a plurality of data units and intra page parity units in each data page of a first set of data pages of the plurality of data pages and a plurality of inter page parity units in each data page of a second set of data pages of the plurality of data pages;
in response to detecting an error using the intra page parity units of a first data page of the first set when a first data unit is read from the first data page, perform a recovery for data of the first data unit using corresponding data units from the data pages of the first set and corresponding inter page parity units from the data pages of the second set; and
in response to determining that the recovery did not result in successfully determining the data of the first data unit because a number of data pages from the first set for which data read errors are detected exceeds an error correction capability for inter data page error correction;
read one or more data units of the first set other than the first data unit using a modified read parameter or decode the one or more data units of the first set other than the first data unit using a modified decoding parameter, andin response to determining that the number of data pages from the first set for which the data read errors are detected no longer exceeds the error correction capability for inter data page error correction, successfully determine the data of the first data unit using the corresponding data units from the data pages of the first set and the corresponding inter page parity units from the data pages of the second set,wherein the controller is configured to perform the recovery without using all data units from the data pages of the first set and all inter page parity units from the data pages of the second set.
8 Assignments
0 Petitions
Accused Products
Abstract
A data storage system configured to implement a data reliability scheme is disclosed. In one embodiment, a data storage system controller detects uncorrectable errors using intra page parity when data units are read from a set of pages. When an uncorrectable error is detected, the data storage system controller attempts to recover user data using inter page parity without using all data from each page of the set of pages. Recovery of user data can thereby be performed without reading all data from each page. As a result, the amount of time needed to read data can be reduced in some cases and overall data storage system performance can be increased.
188 Citations
22 Claims
-
1. A data storage system, comprising:
-
a non-volatile memory array comprising a plurality of data pages; and a controller configured to; store a plurality of data units and intra page parity units in each data page of a first set of data pages of the plurality of data pages and a plurality of inter page parity units in each data page of a second set of data pages of the plurality of data pages; in response to detecting an error using the intra page parity units of a first data page of the first set when a first data unit is read from the first data page, perform a recovery for data of the first data unit using corresponding data units from the data pages of the first set and corresponding inter page parity units from the data pages of the second set; and in response to determining that the recovery did not result in successfully determining the data of the first data unit because a number of data pages from the first set for which data read errors are detected exceeds an error correction capability for inter data page error correction; read one or more data units of the first set other than the first data unit using a modified read parameter or decode the one or more data units of the first set other than the first data unit using a modified decoding parameter, and in response to determining that the number of data pages from the first set for which the data read errors are detected no longer exceeds the error correction capability for inter data page error correction, successfully determine the data of the first data unit using the corresponding data units from the data pages of the first set and the corresponding inter page parity units from the data pages of the second set, wherein the controller is configured to perform the recovery without using all data units from the data pages of the first set and all inter page parity units from the data pages of the second set. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. In a data storage system comprising a controller and a non-volatile memory array including a plurality of data pages, a method of performing data recovery, the method comprising:
-
storing a plurality of data units and intra page parity units in each data page of a first set of data pages of the plurality of data pages and a plurality of inter page parity units in each data page of a second set of data pages of the plurality of data pages; in response to detecting an error using the intra page parity units of a first data page of the first set when a first data unit is read from the first data page, performing a recovery for data of the first data unit using corresponding data units from the data pages of the first set and a-corresponding inter page parity units from the data pages of the second set; and in response to determining that the recovery did not result in successfully determining the data of the first data unit because a number of data pages from the first set for which data read errors are detected exceeds an error correction capability for inter data page error correction; reading one or more data units of the first set other than the first data unit using a modified read parameter or decoding the one or more data units of the first set other than the first data unit using a modified decoding parameter, and in response to determining that the number of data pages from the first set for which the data read errors are detected no longer exceeds the error correction capability for inter data page error correction, successfully determining the data of the first data unit using the corresponding data units from the data pages of the first set and the corresponding inter page parity units from the data pages of the second set, wherein the recovery is performed using less than all of the data units from the data pages of the first set and less than all inter page parity units from the data pages of the second set. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
Specification