Multi-bit-per-cell flash EEPROM memory with refresh
First Claim
1. A non-volatile semiconductor memory comprising:
- an array of memory cells;
drivers and decoders coupled to apply voltages to the array, as required to write to any memory cell in the array and to read any memory cell in the array, wherein each memory cell that stores data has a threshold voltage that identifies a multibit data value written in the memory cell;
a reference generator that generates first reference signals and second reference signals, wherein the first reference signals indicate bounds of allowed ranges of threshold voltages corresponding to data values that can be stored in the memory cell, and the second reference signals indicate bounds of one or more forbidden ranges of threshold voltages corresponding to data errors, wherein the allowed ranges of threshold voltages are separated from each other by at least one forbidden range; and
a control circuit coupled to control the drivers and decoders during a read process, the control circuit including logic that initiates a process to refresh a threshold voltage of a memory cell when a read process that detects that the threshold voltage of the memory cell is in a forbidden range.
1 Assignment
0 Petitions
Accused Products
Abstract
A multibit-per-cell non-volatile memory divides the suitable threshold voltages of memory cells into ranges corresponding to allowed states for storage of data and ranges corresponding to forbidden zones indicating a data error. A read process in accordance automatically checks whether a threshold voltage is in a forbidden zone. In an alternative embodiment, a refresh process includes reprogramming the threshold voltage into an allowed state. In the case of a flash memory, a refresh reads a sector of the memory and saves corrected data from the sector in a buffer or another sector. The corrected data from the buffer or other sector can be written back in the original sector, or the corrected data can be left in the other sector with addresses of the original sector being mapped to the other sector. Refresh process for the non-volatile memory can be perform in response to detecting a threshold voltage in a forbidden zone, as part of a power-up procedure for the memory, or periodically with a period on the order of days, weeks, or months. As a further aspect, the allowed states correspond to gray coded digital values so that allowed states that are adjacent in threshold voltage correspond to multibit values that differ in only a single bit. Error detection and correction codes can be used to identify data errors and generate corrected data for refresh operations.
-
Citations
11 Claims
-
1. A non-volatile semiconductor memory comprising:
-
an array of memory cells; drivers and decoders coupled to apply voltages to the array, as required to write to any memory cell in the array and to read any memory cell in the array, wherein each memory cell that stores data has a threshold voltage that identifies a multibit data value written in the memory cell; a reference generator that generates first reference signals and second reference signals, wherein the first reference signals indicate bounds of allowed ranges of threshold voltages corresponding to data values that can be stored in the memory cell, and the second reference signals indicate bounds of one or more forbidden ranges of threshold voltages corresponding to data errors, wherein the allowed ranges of threshold voltages are separated from each other by at least one forbidden range; and a control circuit coupled to control the drivers and decoders during a read process, the control circuit including logic that initiates a process to refresh a threshold voltage of a memory cell when a read process that detects that the threshold voltage of the memory cell is in a forbidden range. - View Dependent Claims (2, 3, 4)
-
-
5. A method for operating a non-volatile memory, comprising:
-
programming threshold voltages of memory cells in the non-volatile memory so that each memory cell has a threshold voltage in an allowed state associated with a multibit data value stored in the memory cell, wherein threshold voltages of the memory cells have a plurality of allowed ranges of threshold voltages corresponding to data values that can be stored in the memory cell that are separated from each other by forbidden zones of threshold voltages corresponding to data errors; identifying a portion of the non-volatile memory that contains a memory cell with a threshold voltage in one of the forbidden zones; and refreshing the multibit data values stored in memory cells in the identified portion by reprogramming the threshold voltages. - View Dependent Claims (6, 7, 8, 9, 10, 11)
-
Specification