Multibit-per-cell non-volatile memory with error detection and correction
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 ranges of threshold voltages allowed for the memory cells storing data, and the second reference signals indicate bounds of one or more ranges of threshold voltages forbidden for the memory cells storing data; 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 during a read process that detects the threshold voltage of the memory cell is in a range forbidden for memory cells storing data.
3 Assignments
0 Petitions
Accused Products
Abstract
A multilevel 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 alternative embodiment, a refresh process includes reprogramming the threshold voltage into an allowed state or in the case of a flash memory, reading a sector of the memory, saving data from the sector in a buffer, erasing the sector, and rewriting the data from the buffer back in the 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.
313 Citations
16 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 ranges of threshold voltages allowed for the memory cells storing data, and the second reference signals indicate bounds of one or more ranges of threshold voltages forbidden for the memory cells storing data; 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 during a read process that detects the threshold voltage of the memory cell is in a range forbidden for memory cells storing data. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for operating a non-volatile memory, comprising:
-
measuring a threshold voltage of a memory cell; generating a multibit digital signal corresponding to the threshold voltage; identifying whether the threshold voltage is in one of a first plurality of ranges of threshold voltages or in one of a second plurality of ranges of threshold voltages; and in response to the threshold voltage being in one of the first plurality of ranges of threshold voltages, changing the threshold voltage so that the threshold voltage is in one of the second plurality of ranges of threshold voltages. - View Dependent Claims (7, 8, 9)
-
-
10. 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 states that are separated from each other by forbidden zones; 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 (11, 12, 13, 14, 15, 16)
-
Specification