CPC G11C 11/5635 (2013.01) [G06F 11/1068 (2013.01); G06F 11/1072 (2013.01); G06F 12/0246 (2013.01); G11C 11/5621 (2013.01); G11C 11/5678 (2013.01); G11C 16/16 (2013.01); G11C 16/3495 (2013.01); G11C 29/52 (2013.01); G11C 29/76 (2013.01); G06F 2212/7202 (2013.01); G11C 2211/5641 (2013.01)] | 18 Claims |
1. An apparatus for storing data in a nonvolatile memory, the apparatus comprising:
[a] a controller configured to erase a group of physical memory cells in the nonvolatile memory;
[b] the controller configured to write multiple bits of information to each of a first group of physical memory cells in the nonvolatile memory;
[c] the controller configured to map a logical address range to a physical address range for the first group of physical memory cells in the nonvolatile memory;
[d] the controller configured to determine if the first group of physical memory cells fails a data integrity test;
[e] if the first group of physical memory cells fails the data integrity test, the controller writes at least some of the information stored in the first group of physical memory cells to a second group of physical memory cells in the nonvolatile memory, the controller writing a single bit of information per cell in the second group of physical memory cells; and
[f] the controller configured to map the logical address range to a second physical address range for the second group of physical memory cells.
|