Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
First Claim
1. A method for data storage, comprising:
- storing data in a group of analog memory cells by writing into the memory cells in the group respective storage values, which program each of the analog memory cells to a respective programming state selected from a predefined set of programming states, including at least first and second programming states, which are applied respectively to first and second subsets of the memory cells, whereby the storage values held in the memory cells in the first and second subsets are distributed in accordance with respective first and second distributions;
estimating a first median of the first distribution;
calculating a read threshold, which differentiates between the first and second programming states, based on the estimated first median; and
retrieving the data from the analog memory cells in the group by reading the storage values using the calculated read threshold,wherein the storage values corresponding to the first programming state lie in a given interval and wherein estimating the first median includes;
reading at least some of the storage values using one or more intermediate read thresholds, which are positioned inside of the given interval;
counting the storage values falling on a given side of each of the intermediate read thresholds; and
wherein assessing the first median comprises computing the first median based on the counted storage values.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for data storage includes storing data in a group of analog memory cells by writing into the memory cells in the group respective storage values, which program each of the analog memory cells to a respective programming state selected from a predefined set of programming states, including at least first and second programming states, which are applied respectively to first and second subsets of the memory cells, whereby the storage values held in the memory cells in the first and second subsets are distributed in accordance with respective first and second distributions. A first median of the first distribution is estimated, and a read threshold, which differentiates between the first and second programming states, is calculated based on the estimated first median. The data is retrieved from the analog memory cells in the group by reading the storage values using the calculated read threshold.
-
Citations
28 Claims
-
1. A method for data storage, comprising:
-
storing data in a group of analog memory cells by writing into the memory cells in the group respective storage values, which program each of the analog memory cells to a respective programming state selected from a predefined set of programming states, including at least first and second programming states, which are applied respectively to first and second subsets of the memory cells, whereby the storage values held in the memory cells in the first and second subsets are distributed in accordance with respective first and second distributions; estimating a first median of the first distribution; calculating a read threshold, which differentiates between the first and second programming states, based on the estimated first median; and retrieving the data from the analog memory cells in the group by reading the storage values using the calculated read threshold, wherein the storage values corresponding to the first programming state lie in a given interval and wherein estimating the first median includes; reading at least some of the storage values using one or more intermediate read thresholds, which are positioned inside of the given interval; counting the storage values falling on a given side of each of the intermediate read thresholds; and wherein assessing the first median comprises computing the first median based on the counted storage values. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. Apparatus for data storage, comprising:
-
an interface, which is coupled to communicate with a memory that includes multiple analog memory cells; and circuitry, which is configured to; store data in a group of the analog memory cells by writing into the memory cells in the group respective storage values, which program each of the analog memory cells to a respective programming state selected from a predefined set of programming states, including at least first and second programming states, which are applied respectively to first and second subsets of the memory cells, whereby the storage values held in the memory cells in the first and second subsets are distributed in accordance with respective first and second distributions; estimate a first median of the first distribution; calculate a read threshold, which differentiates between the first and second programming states, based on the estimated first median, and retrieve the data from the analog memory cells in the group by reading the storage values using the calculated read threshold; wherein the storage values corresponding to the first programming state lie in a given interval and wherein to estimate the first median the circuitry is configured to; read at least some of the storage values using one or more intermediate read thresholds, which are positioned inside of the given interval, count the storage values falling on a given side of each of the intermediate read thresholds; and compute the first median based on the counted storage values. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. Apparatus for data storage, comprising:
-
a memory comprising multiple analog memory cells; and circuitry, which is configured to store data in a group of the analog memory cells by writing into the memory cells in the group respective storage values, which program each of the analog memory cells to a respective programming state selected from a predefined set of programming states, including at least first and second programming states, which are applied respectively to first and second subsets of the memory cells, whereby the storage values held in the memory cells in the first and second subsets are distributed in accordance with respective first and second distributions; estimate a first median of the first distribution; calculate a read threshold, which differentiates between the first and second programming states, based on the estimated first median, and retrieve the data from the analog memory cells in the group by reading the storage values using the calculated read threshold; wherein the storage values corresponding to the first programming state lie in a given interval and wherein to estimate the first median the circuitry is configured to; read at least some of the storage values using one or more intermediate read thresholds, which are positioned inside of the given interval, count the storage values falling on a given side of each of the intermediate read thresholds; and compute the first median based on the counted storage values. - View Dependent Claims (24, 25, 26, 27, 28)
-
Specification