Method and system for optimizing reliability and performance of programming data in non-volatile memory devices
First Claim
Patent Images
1. A method of managing a memory, comprising the steps of:
- (a) storing a pre-selected number of bits in at least one cell of the memory by performing a programming operation on said at least one cell of the memory in accordance with a first respective value of each of at least one parameter;
(b) monitoring a function of a time elapsed since an event associated with said performing of said programming operation on said at least one cell in accordance with said at least one first value; and
(c) substituting a second value for at least one of said at least one first value in accordance with said monitoring while keeping said number of bits fixed.
4 Assignments
0 Petitions
Accused Products
Abstract
Methods of managing memory devices, and devices so managed. A value of a parameter, that is used to program one or more memory cells, is adapted to a monitored condition of the cell(s). Either the number of bits per cell is held fixed or the monitored condition is an intrinsic condition of the cell(s). The initial value of the parameter is optimized for those specific cells, relative to a pre-selected criterion, by programming the cell(s) in accordance with candidate values of the parameter.
-
Citations
8 Claims
-
1. A method of managing a memory, comprising the steps of:
-
(a) storing a pre-selected number of bits in at least one cell of the memory by performing a programming operation on said at least one cell of the memory in accordance with a first respective value of each of at least one parameter; (b) monitoring a function of a time elapsed since an event associated with said performing of said programming operation on said at least one cell in accordance with said at least one first value; and (c) substituting a second value for at least one of said at least one first value in accordance with said monitoring while keeping said number of bits fixed. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A data storage device, comprising:
-
(a) a plurality of cells for storing the data; (b) a programming unit operative to store a pre-selected number of bits of the data in each said cell by performing programming operations to program the data into said plurality of cells in accordance with at least one parameter; and (c) a mechanism for; (i) monitoring a function of a time elapsed since an event associated with said applying of said programming operations to said plurality of cells in accordance with a first respective value of each said at least one parameter, and (ii) substituting a second value for at least one of said at least one first value in accordance with said monitoring while keeping said number of bits fixed.
-
-
7. A method of managing a memory, comprising the steps of:
-
(a) programming at least one cell of the memory to store a pre-selected number of bits in accordance with a first respective value of each of at least one parameter; (b) monitoring a condition of said at least one cell that is associated with said programming in accordance with said at least one first value and that is selected from the group consisting of; (i) a time of a first said programming of said at least one cell in accordance with said at least one first value, (ii) a time of a most recent said programming of said at least one cell in accordance with said at least one first value, and (iii) a time since a number of iterations in excess of a predetermined threshold first was needed to program one of said at least one cell; and (c) substituting a second value for at least one of said at least one first value in accordance with said monitoring while keeping said number of bits fixed.
-
-
8. A method of managing a memory, comprising the steps of:
-
(a) programming at least one cell of the memory to store a pre-selected number of bits in accordance with a first respective value of each of at least one parameter; (b) monitoring a time of a most recent erasure of said at least one cell; and (c) substituting a second value for at least one of said at least one first value in accordance with said monitoring while keeping said number of bits fixed.
-
Specification