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 account for this coupling, the
read process for a particular memory cell will provide compensation to an
adjacent memory cell in order to reduce the coupling effect that the
adjacent memory cell has on the particular memory cell. When reading the
adjacent cell to determine the appropriate compensation, margined read
voltages can be used.