Compensating for coupling during read operations of non-volatile memory
Shifts in the apparent charge stored on a floating gate (or other charge storing element) of a non-volatile memory cell can occur because of the coupling of an electric field based on the charge stored in adjacent floating gates (or other adjacent charge storing elements). The problem occurs most pronouncedly between sets of adjacent memory cells that have been programmed at different times. To compensate for this coupling, the read process for a given memory cell will take into account the programmed state of an adjacent memory cell.
1. A flash memory system, comprising:
a set of flash memory elements arranged in columns and rows using a set of bit lines and word lines, each flash memory element in a common column is connected to a common bit line, each flash memory element in a common row is connected to a common word line;
one or more write control circuits in communication with said set of flash memory elements, said one or more write control circuits simultaneously program flash memory elements connected to a particular word line on all of said set of bit lines; and
read circuits in communication with said bit lines to determine a quantity related to one of two or more adjacent flash memory elements along respective bit lines, said read circuits determine an offset for each flash memory element connected to said particular word line from a predetermined set of offsets based on a charge level stored in an adjacent flash memory element, said read circuits perform a set of read processes for said flash memory element connected to said particular word line, each read process uses a different one of said predetermined set of offsets, each of at least a subset of said flash memory elements connected to said particular word line provides final data from an appropriate one of said read processes associated with the offset determined for the respective flash memory element.
2. A flash memory system according to claim 1 , wherein:
said set of flash memory elements comprise a block; and
said flash memory element connected to said particular word line store at least a first page of data.
3. A flash memory system according to claim 1 , wherein:
there is at least one read process for each offset.
4. A flash memory system according to claim 1 , wherein:
set of flash memory elements are NAND flash memory devices.
5. A flash memory system according to claim 1 , wherein:
said set of flash memory elements are multi-state flash memory devices.