Run-time testing of memory locations in a non-volatile memory
First Claim
1. A method of managing a non-volatile memory using a processor, wherein the non-volatile memory comprises at least one die having a plurality of blocks, the method comprising:
- maintaining error characteristics of the non-volatile memory;
detecting an error event indicative of a systematic failure of a die of the non-volatile memory, wherein the detecting comprises identifying a criterion in the error characteristics;
responsive to the detecting, selecting at least one unused block in the die;
performing a run-time test on the selected at least one unused block; and
managing the die of the non-volatile memory based on results of the run-time test.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods are disclosed for performing run-time tests on a non-volatile memory (“NVM”), such as flash memory. The run-time tests may be tests that are performed on the NVM while the NVM can be operated by an end user (as opposed to during a manufacturing phase). In some embodiments, a controller for the NVM may detect an error event that may be indicative of a systemic failure of a die of the NVM. The controller may then select one or more blocks in the die to test, which may be dies that are currently not being used to store user data. The controller may post process the results of the test to determine whether there is a systemic failure, such as a column failure, and may treat the systemic failure if there is one.
39 Citations
12 Claims
-
1. A method of managing a non-volatile memory using a processor, wherein the non-volatile memory comprises at least one die having a plurality of blocks, the method comprising:
-
maintaining error characteristics of the non-volatile memory; detecting an error event indicative of a systematic failure of a die of the non-volatile memory, wherein the detecting comprises identifying a criterion in the error characteristics; responsive to the detecting, selecting at least one unused block in the die; performing a run-time test on the selected at least one unused block; and managing the die of the non-volatile memory based on results of the run-time test. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A non-transitory computer readable medium for controlling an electronic device comprising a non-volatile memory, wherein the non-volatile memory comprises at least one die having a plurality of blocks, the non-transitory computer readable medium comprising computer-readable code recorded thereon, the computer readable code comprising:
-
a first instruction code for maintaining error characteristics of the non-volatile memory; a second instruction code for detecting an error event indicative of a systematic failure of a die of the non-volatile memory, wherein the detecting comprises identifying a criterion in the error characteristics; a third instruction code for selecting at least one unused block in the die responsive to the detecting; a fourth instruction code for performing a run-time test on the selected at least one unused block; and a fifth instruction code for managing the die of the non-volatile memory based on results of the run-time test. - View Dependent Claims (8, 9, 10, 11, 12)
-
Specification