Patent ID: 9021333
Filing Date: 2015-04-28
Classification: G06F

Abstract:
1. A method of recovering data from a failed page of flash memory, the method comprising: reading contents of flash pages of a page grid containing the failed page, wherein tertiary parity symbols are distributed among the pages of a last page stripe of the page grid, wherein each of the pages of the page grid have ECC codewords stored therein; (a) performing error correction on each page stripe of the page grid according to a gear with which the page stripe was encoded; (b) arranging the data of the page grid to form tertiary codewords; (c) marking symbols of the tertiary codewords that are associated with the failed page as erasures; (d) performing error correction decoding using mixed error and erasure decoding on the tertiary codewords to update the tertiary codewords; (e) arranging the updated tertiary codewords to generate corrected versions of the page stripes; (f) performing error correction on page stripes of the page grid according to the gear with which each page stripe was encoded; performing one or more iterations of (b) through (f) until a stopping criterion is reached or a determination that the recovered data has been recovered without error; and releasing the recovered data to a requester based at least partly on the determination that the recovered data has been recovered without error; wherein at least (a) is performed in an integrated circuit.