Data operations in non-volatile memory
First Claim
Patent Images
1. A method comprising:
- in a data storage device including a non-volatile memory configured to, responsive to receiving a write command to write data including a “
0”
value and a “
1”
value to a particular location, skip writing at least one value of the “
0”
value and the “
1”
value into a storage element when the storage element already contains the at least one value, performing;
receiving by the non-volatile memory a single in-place refresh command to refresh the data at the particular location in the non-volatile memory; and
in response to the single in-place refresh command, executing an in-place refresh operation by;
reading the data from the particular location,performing one or more write operations on the particular location such that each storage element of the particular location is programmed at least once without being skipped, andwriting the data to the particular location.
2 Assignments
0 Petitions
Accused Products
Abstract
A method includes receiving an in-place refresh command to refresh data at a particular location in a non-volatile memory. The method also includes re-writing the data into the particular location of the non-volatile memory to refresh the data at the particular location in response to the in-place refresh command.
25 Citations
69 Claims
-
1. A method comprising:
in a data storage device including a non-volatile memory configured to, responsive to receiving a write command to write data including a “
0”
value and a “
1”
value to a particular location, skip writing at least one value of the “
0”
value and the “
1”
value into a storage element when the storage element already contains the at least one value, performing;receiving by the non-volatile memory a single in-place refresh command to refresh the data at the particular location in the non-volatile memory; and in response to the single in-place refresh command, executing an in-place refresh operation by; reading the data from the particular location, performing one or more write operations on the particular location such that each storage element of the particular location is programmed at least once without being skipped, and writing the data to the particular location. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
8. A method comprising:
in a data storage device including a non-volatile memory that is configured, for at least one value from the group containing the values zero and one, to execute a write command to write data including a “
0”
value and a “
1”
value to a particular location by skipping writing of the at least one value of the “
0”
value and the “
1”
value into a storage element based on determining that the storage element already stores the at least one value, performing;receiving by the non-volatile memory a single in-place refresh command to refresh the data at the particular location in the non-volatile memory; and in response to the single in-place refresh command, disabling the skipping writing of the at least one value for the particular location, and re-writing the data into the particular location of the non-volatile memory to refresh the data at the particular location, wherein the re-writing includes for each storage element of the particular location for which the data is equal to the at least one value, writing the at least one value into the storage element in response to the disabled skipping. - View Dependent Claims (9, 10, 11)
-
12. A method comprising:
in a data storage device including a non-volatile memory, performing; receiving by the non-volatile memory an in-place refresh command to refresh data at a particular location in the non-volatile memory; performing one or more write operations on the particular location such that each storage element of the particular location is programmed at least once without being skipped; and in response to the in-place refresh command, re-writing the data into the particular location of the non-volatile memory to refresh the data at the particular location, wherein performing the one or more write operations includes bringing the storage elements of the particular location to a first common value and bringing the storage elements of the particular location to a second common value different from the first common value prior to writing the data to the storage elements of the particular location. - View Dependent Claims (13, 14)
-
15. A method comprising:
in a memory device that is configurable, for at least one value from the group containing the values zero and one, to skip writing the at least one value into a storage element when the storage element already contains the at least one value, performing; receiving, from a controller, a write command to write data including a “
0”
value and a “
1”
value into a particular location in a non-volatile memory;in response to receiving the write command, determining whether to write the data according to a first mode that skips writing the at least one value into storage elements based on the storage elements already storing the at least one value or according to a second mode that writes the at least one value into the storage elements that already store the at least one value; and performing one or more write operations on the particular location in the second mode such that each storage element of the particular location is programmed at least once without being skipped. - View Dependent Claims (16, 17, 18, 19)
-
20. A method comprising:
in a storage device that includes a controller and a memory device that is configurable, for at least one value from the group containing the values “
0” and
“
1”
, to skip writing the at least one value into a storage element when the storage element already contains the at least one value, performing;receiving, by the controller, a write command to write data including a “
0”
value and a “
1”
value into a particular location in a non-volatile memory;in response to receiving the write command, determining by the controller whether to write the data according to a first mode that skips writing the at least one value into storage elements based on the storage elements already storing the at least one value or according to a second mode that writes the at least one value into the storage elements that already store the at least one value; and performing one or more write operations on the particular location in the second mode such that each storage element of the particular location is programmed at least once without being skipped. - View Dependent Claims (21, 22, 23, 24)
-
25. A method comprising:
in a data storage device including a non-volatile memory that is configured, for at least one value from the group containing the values zero and one, to execute a write command by skipping writing of the at least one value into a storage element when the storage element already contains the at least one value, performing; receiving by the non-volatile memory a write-all command to write data at a particular location in the non-volatile memory; in response to the write-all command, disabling the skipping writing of the at least one value for the particular location; and in response to the write-all command, writing the data into the particular location without skipping writing of the storage elements of the particular location that already contain the at least one value. - View Dependent Claims (26, 27, 28, 29, 30, 31)
-
32. A method comprising:
in a data storage device including a non-volatile memory, performing; receiving a write-all command to write data at a particular location in the non-volatile memory; performing one or more write operations on the particular location such that each storage element of the particular location is programmed at least once without being skipped in response to the write-all command; and in response to the write-all command, writing the data into the particular location, wherein performing the one or more write operations includes bringing the storage elements of the particular location to a first common value and bringing the storage elements of the particular location to a second common value different from the first common value prior to writing the data to the storage elements of the particular location. - View Dependent Claims (33, 34)
-
35. A data storage device comprising:
-
a non-volatile memory configured to, responsive to receiving a write command to write data including a “
0”
value and a “
1”
value to a particular location, skip writing at least one value of the “
0”
value and the “
1”
value into a storage element when the storage element already contains the at least one value; andcircuitry configured, in response to the non-volatile memory receiving a single in-place refresh command to refresh the data at the particular location in the non-volatile memory, to execute an in-place refresh operation by; reading the data from the particular location; performing one or more write operations on the particular location such that each storage element of the particular location is programmed at least once without being skipped; and writing the data to the particular location. - View Dependent Claims (36, 37, 38, 39, 40, 41)
-
-
42. A data storage device comprising:
-
a non-volatile memory; and write circuitry that is configured, for at least one value from the group containing the values zero and one, to execute a write command to write data including a “
0”
value and a “
1”
value to a particular location by skipping writing of the at least one value of the “
0”
value and the “
1”
value into a storage element when the storage element already stores the at least one value,wherein in response to the non-volatile memory receiving a single in-place refresh command to refresh the data at the particular location in the non-volatile memory, the write circuitry is configured to re-write the data into the particular location of the non-volatile memory to refresh the data at the particular location, wherein re-writing the data includes for each storage element of the particular location for which the data is equal to the at least one value, writing the at least one value into the storage element by disabling the skipping writing of the at least one value for the particular location. - View Dependent Claims (43, 44, 45)
-
-
46. A data storage device comprising:
-
a non-volatile memory; and write circuitry that is configured, in response to the non-volatile memory receiving an in-place refresh command to refresh data at a particular location in the non-volatile memory, to re-write the data into the particular location of the non-volatile memory to refresh the data at the particular location, wherein re-writing the data includes performing two or more write operations on the particular location such that each storage element of the particular location is programmed at least once without being skipped, performing the two or more write operations bringing the storage elements of the particular location to a first common value and bringing the storage elements of the particular location to a second common value different from the first common value prior to writing the data to the storage elements of the particular location. - View Dependent Claims (47, 48)
-
-
49. A data storage device comprising:
-
a non-volatile memory; and write circuitry that is configurable, for at least one value from the group containing the values zero and one, to skip writing the at least one value into a storage element of the non-volatile memory when the storage element already contains the at least one value, and wherein, in response to receiving a write command from a controller to write data including a zero value and a one value into a particular location in a non-volatile memory, the write circuitry is further configured to determine whether to write data according to a first mode that skips writing the at least one value into storage elements based on the storage elements already storing the at least one value or according to a second mode that writes the at least one value into the storage elements that already store the at least one value by disabling the skipping of writing of the at least one value in the second mode. - View Dependent Claims (50, 51, 52, 53)
-
-
54. A data storage device comprising:
-
a controller; and a non-volatile memory coupled to the controller, the non-volatile memory including write circuitry that is configurable, for at least one value from the group containing the values “
0” and
“
1”
, to skip writing the at least one value into a storage element of the non-volatile memory when the storage element already contains the at least one value, andwherein, in response to receiving a write command to write data including a “
0”
value and a “
1”
value into a particular location in the non-volatile memory, the controller is configured to determine whether to write the data according to a first mode that skips writing the at least one value into storage elements based on the storage elements already storing the at least one value or according to a second mode that writes the at least one value into the storage elements that already store the at least one value by one or more of;disabling the skipping of writing the at least one value in the second mode, and performing one or more write operations on the particular location in the second mode such that each storage element of the particular location is programmed at least once without being skipped. - View Dependent Claims (55, 56, 57, 58)
-
-
59. A data storage device comprising:
-
a non-volatile memory; and write circuitry configured, for at least one value of the group containing the values zero and one, to execute a write command by skipping writing of the at least one value into a storage element of the non-volatile memory when the storage element already contains the at least one value, wherein in response to the non-volatile memory receiving a write-all command from a controller to write data at a particular location in the non-volatile memory, the write circuitry is configured to write the data into the particular location without skipping writing of the storage elements of the particular location that already contain the at least one value by performing one or more write operations on the particular location such that each storage element of the particular location is programmed at least once without being skipped. - View Dependent Claims (60, 61, 62, 63, 64, 65, 66)
-
-
67. A data storage device comprising:
-
a non-volatile memory; and write circuitry that is configured, in response to receiving a write-all command to write data at a particular location in the non-volatile memory, to perform one or more write operations on the particular location such that each storage element of the particular location is programmed at least once without being skipped and to write the data to the particular location, wherein performing the one or more write operations includes bringing the storage elements of the particular location to a first common value and bringing the storage elements of the particular location to a second common value different from the first common value prior to writing the data to the storage elements of the particular location. - View Dependent Claims (68, 69)
-
Specification