Back to results
US 9,069,695 B2Granted
Correction of block errors for a system having non-volatile memory
AssigneeApple Inc.
InventorsAndrew W. Vogan, Daniel J. Post
Life of this patent
Estimating the term…
Abstract
Systems and methods are disclosed for correction block errors. In particular, a system can store a parity page per page-modulo, where a pre-determined number of pages of a block or a band of the NVM may be allocated as page-modulo XOR (“PMX”) parity pages. This can be a space efficient approach for recovering from single-block data errors such as, for example, single-page uncorrectable error-correcting codes (“uECCs”) and/or errors caused by word line shorts.
Claims14
A method for correcting data errors in a non-volatile memory (“NVM”) comprising a plurality of blocks, the method comprising:
- detecting an error in a first page of a block of the plurality of blocks of the NVM, the block having a pre-determined number of page-modulo XOR (“PMX”) parity pages;
- identifying a first set of pages of the block having modulo value that is the same as the first page;
- reading first data from the first set of pages of the block;
- reading second data from a corresponding PMX parity page of the block;
- and
- performing an XOR function based on the first data and the second data to recover third data stored in the first page,
- wherein the error is associated with one of a word line short in the NVM and a single-page uncorrectable error-correcting code (“uECC”).
4 more elements
A system comprising:
- non-volatile memory (“NVM”) comprising a band, wherein the band comprises a plurality of stripes;
- and
- memory interface comprising control circuitry operative to:
- detect whether read errors are localized to a block of the band wherein the errors are associated with one of a word line short in the NVM and a single-page uncorrectable error-correcting code (“uECC”);
- in response to detecting that the read errors are localized to the block of the NVM, read first data associated with a set of stripes of the band, wherein the first data excludes a page with one of the read errors;
- read second data from a parity page of the band corresponding to the set of stripes;
- and
- perform a reversible function using the first data and the second data in order to recover third data on the page.
5 more elements
Dependencies are inferred from the claim text.