ADAPTIVE PROGRAMMING OF ANALOG MEMORY
First Claim
1. A method for storing data in a memory that includes a plurality of analog memory cells, comprising:
- mapping the data to programming values selected from a set of nominal programming values comprising at least a first nominal programming value and a second nominal programming value, which is higher than the first nominal programming value;
storing a part of the data in the analog memory cells by programming at least a first group of the cells using the first nominal programming value;
measuring a statistical characteristic of the first group of the cells after programming the first group of the cells using the first nominal programming value;
modifying the second nominal programming value responsively to the statistical characteristic; and
programming at least a second group of the cells using the modified second nominal programming value.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for storing data in a memory that includes a plurality of analog memory cells includes mapping the data to programming values, which are selected from a set of nominal programming values. The set of nominal programming values includes at least a first nominal programming value and a second nominal programming value, which is higher than the first nominal programming value.
A part of the data is stored in the analog memory cells by programming at least a first group of the cells using the first nominal programming value. A statistical characteristic of the first group of the cells is measured after programming the first group of the cells using the first nominal programming value. The second nominal programming value is modified responsively to the statistical characteristic, and at least a second group of the cells is programmed using the modified second nominal programming value.
238 Citations
25 Claims
-
1. A method for storing data in a memory that includes a plurality of analog memory cells, comprising:
-
mapping the data to programming values selected from a set of nominal programming values comprising at least a first nominal programming value and a second nominal programming value, which is higher than the first nominal programming value; storing a part of the data in the analog memory cells by programming at least a first group of the cells using the first nominal programming value; measuring a statistical characteristic of the first group of the cells after programming the first group of the cells using the first nominal programming value; modifying the second nominal programming value responsively to the statistical characteristic; and programming at least a second group of the cells using the modified second nominal programming value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A data storage apparatus, comprising:
-
an interface, which is coupled to communicate with a memory that includes a plurality of analog memory cells; and a processor, which is coupled to map data to programming values selected from a set of nominal programming values comprising at least a first nominal programming value and a second nominal programming value that is higher than the first nominal programming value, to store a part of the data in the analog memory cells by programming at least a first group of the cells using the first nominal programming value, to measure a statistical characteristic of the first group of the cells after programming the first group of the cells using the first nominal programming value, to modify the second nominal programming value responsively to the statistical characteristic, and to program at least a second group of the cells using the modified second nominal programming value. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A data storage apparatus, comprising:
-
a memory, which comprises a plurality of analog memory cells; and a processor, which is connected to the memory and is coupled to map data to programming values selected from a set of nominal programming values comprising at least a first nominal programming value and a second nominal programming value that is higher than the first nominal programming value, to store a part of the data in the analog memory cells by programming at least a first group of the cells using the first nominal programming value, to measure a statistical characteristic of the first group of the cells after programming the first group of the cells using the first nominal programming value, to modify the second nominal programming value responsively to the statistical characteristic, and to program at least a second group of the cells using the modified second nominal programming value.
-
Specification