IP Library Granted Patent US 7,716,415
Granted Patent B2
US 7,716,415 · App. 11/797,379 · Granted May 11, 2010

Method of avoiding errors in flash memory

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,716,415
App. No.
11/797,379
Granted
May 11, 2010
Kind
B2
Abstract

Whenever N data bits are stored in a cell of a memory that programs each of its cells to represent any one of 2 N different patterns of N>1 bits as a respective one of 2 N ordered cell states, the N data bits are mapped to a transformed pattern of N bits according to a transformation that maps the pattern of the lowest state (typically all 1's) to a different pattern, and the cell is programmed to represent the transformed pattern. The transformation may invert all, some or only one of the bits of each pattern. Whenever the cells of the memory are read, the transformation is inverted.

Claims (23)

1. A method of storing data, the method comprising:

in a memory that includes one or more cells, each cell adapted to be programmed into a corresponding state of a plurality of selectable states, wherein each selectable state has a threshold voltage and a corresponding bit pattern comprising N bits where N is an integer having a value greater than one, mapping, according to a time-invariant transformation, a first cell from a first state having a first threshold voltage and a first bit pattern to a second state having a second threshold voltage and a second bit pattern, wherein:

the mapping is executed prior to programming the first cell;

the first threshold voltage is smaller in magnitude than each of the other corresponding threshold voltages of the plurality of selectable states; and

each bit of the first bit pattern has a value of one; and

programming the first cell to store N bits of received data.

2. The method of claim 1 , wherein each corresponding threshold voltage has a unique value.

3. The method of claim 1 , wherein each of the N received bits has a value of one.

4. The method of claim 1 , wherein the mapping further comprises inverting each data bit of each cell of the memory.

5. The method of claim 1 , wherein the mapping further comprises inverting one bit of the first cell of the memory.

6. The method of claim 1 , wherein the first state of the first cell is an erased state of the first cell.

7. The method of claim 6 , wherein prior to mapping, the first cell is placed in the erased state of the first cell.

8. A memory device comprising:

a memory that includes one or more cells, each cell adapted to be programmed into a corresponding state of a plurality of selectable states, wherein each selectable state has a threshold voltage and a corresponding bit pattern comprising N bits where N is an integer having a value greater than one; and

a mechanism to:

map, according to a time-invariant transformation, a first cell of the memory from a first state having a first threshold voltage and a first bit pattern to a second state having a second threshold voltage and a second bit pattern, wherein:

the mapping is executed prior to programming the first cell;

the first threshold voltage is smaller in magnitude than each of the other corresponding threshold voltages of the plurality of selectable states; and

each bit of the first bit pattern has a value of one; and

program the first cell to store N bits of received data.

9. A method of reading data, the data having been previously stored by programming to a selected one of 2 N states of a cell including N bits and mapping the selected state to a transformed state having a stored bit pattern, each state having a distinct threshold voltage and a respective one of 2 N unique bit patterns, each bit pattern including N bits where N is an integer having a value greater than one, the method comprising:

defining a time-invariant transformation that maps each bit pattern into a corresponding transformed bit pattern wherein a first bit pattern in which each bit has a value of one and that corresponds to a first state having a first threshold voltage that is lower than each other threshold voltage of the 2 N states is mapped to a second state of the 2 N states having a second threshold voltage and a second bit pattern; and

reading the previously stored data by performing an inverse mapping of the stored bit pattern to a read pattern according to an inverse of the time-invariant transformation.

Assignments (3)
CHANGE OF NAME Recorded Jun 10, 2025
From: WESTERN DIGITAL ISRAEL LTD.
To: SANDISK ISRAEL LTD.
Reel/Frame 071587/0836 →
CHANGE OF NAME Recorded Aug 21, 2020
From: SANDISK IL LTD
To: WESTERN DIGITAL ISRAEL LTD
Reel/Frame 053574/0513 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 3, 2007
From: SHARON, ERAN
To: SANDISK IL LTD.
Reel/Frame 019322/0584 →