Memory system and method of controlling nonvolatile memory
First Claim
Patent Images
1. A memory system comprising:
- a nonvolatile memory; and
a controller electrically connected to the nonvolatile memory and configured to;
manage a plurality of namespaces for storing a plurality of kinds of data having different update frequencies, the namespaces including a first namespace for storing a first type of data and a second namespace for storing a second type of data having a lower update frequency than the first type of data,encode first write data associated with an ID of the first namespace by using first coding for reducing wear of a memory cell to generate first encoded data having a first length,generate second encoded data by adding a first error correction code having a second length to the first encoded data, the second encoded data including the first encoded data having the first length and the first error correction code having the second length,write the second encoded data to the first namespace of the nonvolatile memory,encode second write data associated with an ID of the second namespace by using the first coding for reducing wear of a memory cell to generate third encoded data having a third length less than the first length,generate fourth encoded data by adding a second error correction code having a fourth length greater than the second length to the third encoded data, the fourth encoded data including the third encoded data having the third length and the second error correction code having the fourth length, andwrite the fourth encoded data to the second namespace of the nonvolatile memory.
5 Assignments
0 Petitions
Accused Products
Abstract
According to one embodiment, a memory system includes a nonvolatile memory and a controller. The controller manages a plurality of namespaces for storing a plurality of kinds of data having different update frequencies. The controller encodes write data by using first coding for reducing wear of a memory cell to generate first encoded data, and generates second encoded data to be written to the nonvolatile memory by adding an error correction code to the first encoded data. The controller changes the ratio between the first encoded data and the error correction code based on the namespace to which the write data is to be written.
22 Citations
9 Claims
-
1. A memory system comprising:
-
a nonvolatile memory; and a controller electrically connected to the nonvolatile memory and configured to; manage a plurality of namespaces for storing a plurality of kinds of data having different update frequencies, the namespaces including a first namespace for storing a first type of data and a second namespace for storing a second type of data having a lower update frequency than the first type of data, encode first write data associated with an ID of the first namespace by using first coding for reducing wear of a memory cell to generate first encoded data having a first length, generate second encoded data by adding a first error correction code having a second length to the first encoded data, the second encoded data including the first encoded data having the first length and the first error correction code having the second length, write the second encoded data to the first namespace of the nonvolatile memory, encode second write data associated with an ID of the second namespace by using the first coding for reducing wear of a memory cell to generate third encoded data having a third length less than the first length, generate fourth encoded data by adding a second error correction code having a fourth length greater than the second length to the third encoded data, the fourth encoded data including the third encoded data having the third length and the second error correction code having the fourth length, and write the fourth encoded data to the second namespace of the nonvolatile memory. - View Dependent Claims (2, 3, 4)
-
-
5. A memory system comprising:
-
a nonvolatile memory; and a controller electrically connected to the nonvolatile memory and configured to; logically divide the nonvolatile memory into a plurality of areas for storing a plurality of kinds of data having different update frequencies, the plurality of areas being associated with a plurality of namespaces, the plurality of areas including a first area for storing a first type of data and a second area for storing a second type of data having a lower update frequency than the first type of data, the first area and the second area being associated with a first namespace and a second namespace, encode first write data associated with an ID of the first namespace by using first coding for reducing wear of a memory cell to generate first encoded data having a first length, generate second encoded data by adding a first error correction code having a second length to the first encoded data, the second encoded data including the first encoded data having the first length and the first error correction code having the second length, write the second encoded data to the first area, encode second write data associated with an ID of the second namespace by using the first coding for reducing wear of a memory cell to generate third encoded data having a third length less than the first length, generate fourth encoded data by adding a second error correction code having a fourth length greater than the second length to the third encoded data, the fourth encoded data including the third encoded data having the third length and the second error correction code having the fourth length, and write the fourth encoded data to the second area.
-
-
6. A method of controlling a nonvolatile memory, the method comprising:
-
creating a plurality of namespaces for storing a plurality of kinds of data having different update frequencies, the namespaces including a first namespace for storing a first type of data and a second namespace for storing a second type of data having a lower update frequency than the first type of data; encoding first write data associated with an ID of the first namespace by using first coding for reducing wear of a memory cell to generate first encoded data having a first length; generating second encoded data by adding a first error correction code having a second length to the first encoded data, the second encoded data including the first encoded data having the first length and the first error correction code having the second length; writing the second encoded data to the first namespace of the nonvolatile memory; encoding second write data associated with an ID of the second namespace by using the first coding for reducing wear of a memory cell to generate third encoded data having a third length less than the first length; generating fourth encoded data by adding a second error correction code having a fourth length greater than the second length to the third encoded data, the fourth encoded data including the third encoded data having the third length and the second error correction code having the fourth length; and writing the fourth encoded data to the second namespace of the nonvolatile memory. - View Dependent Claims (7, 8, 9)
-
Specification