System and method for handling bad bit errors
AssigneesDenso Corporation, DENSO International America, Inc.
InventorsBrian William Hughes, Hiroaki Shibata, Wan-Ping Yang
Life of this patent
Estimating the term…
Abstract
A method and system for detecting and correcting a bad bit error in a solid-state nonvolatile memory device. The device includes a bad bit detection module that receives an old page from the memory device and determines whether a page has a bad bit. The device further includes a bad bit correction module that generates a new page, determines a location of the bad bit, determines a preferred value of the bad bit, determines a user value of the bad bit and inserts the preferred value into a string of bits corresponding to substantive data of the old page, recording the string of bits with the preferred value inserted therein and stores the new page at an address of the old page.
Claims18
A device configured to correct bad bit errors comprising:
- a solid-state nonvolatile memory device divided into a plurality of blocks, each block containing a plurality of pages, each page having a main area that stores substantive data and a spare area, and each spare area having a validity bit field indicating whether a bit in the main area is in an error state, a bad bit location field indicating the bit in the main area that is in the error state, a preferred value field indicating a likely value of the bit in the main area that is in the error state, and a user value field indicating a correct value of the bit in the error state;
- a main controller that performs at least one function of the device including:
- a bad bit detection module that receives an old page from the solid state nonvolatile memory device and determines whether a page has a detected bit in an error state;
- a bad bit correction module that:
- a) generates a new page to be written to the solid-state nonvolatile memory device,
- b) determines a location of the detected bit in the error state and records the location of the detected bit in the error state in a bad bit field of the new page,
- c) determines a preferred value of the detected bit in the error state and records the preferred value of the detected bit in the error state in a preferred value field of the new page,
- d) determines a user value of the detected bit in the error state and records the user value of the detected bit in the error state in a user value field of the new page,
- e) inserts the preferred value into a string of bits corresponding to substantive data recorded in a main area of the old page, and recording the string of bits with the preferred value inserted therein in a main area of the new page, and
- f) stores the new page at an address of the old page.
A method for correcting bad bit errors in a solid-state nonvolatile memory device divided into a plurality of blocks, wherein each block contains a plurality of pages, each page includes a main area that stores substantive data and a spare area, and each spare area includes a validity bit field indicating whether a bit in the main area is in an error state, a bad bit location field indicating the bit in the main area that is in the error state, a preferred value field indicating a likely value of the bit in the main area that is in the error state, and a user value field indicating a correct value of the bit in the error state, the method comprising:
- receiving an old page from the solid state nonvolatile memory device;
- determining whether a page has a detected bit in an error state;
- wherein when the detected bit is an error state, the method further comprises:
- generating a new page that is to be written to the solid-state nonvolatile memory device;
- determining a location of the detected bit in the error state and recording the location of the detected bit in the error state in the bad bit field of the new page;
- determining a preferred value of the detected bit in the error state and recording the preferred value of the detected bit in the error state in the preferred value field of the new page;
- determining a user value of the detected bit in the error state and recording the user value of the detected bit in the error state in the user value field of the new page,
- inserting the preferred value into a string of bits corresponding to substantive data of the old page, and recording the string of bits with the preferred value inserted therein in a main area of the new page;
- and
- storing the new page at an address of the old page.
Dependencies are inferred from the claim text.