IP Library Granted Patent US 9,792,172
Granted Patent B2
US 9,792,172 · App. 14/948,649 · Granted Oct 17, 2017

Memory system and method of controlling nonvolatile memory

Inventor: Shinichi Kanno (Tokyo, JP)
Assignee: TOSHIBA MEMORY CORPORATION
G06F11/1008G06F11/1012H03M13/05H03M13/611G06F11/108G06F11/1044G06F11/1068G11C16/349
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,792,172
App. No.
14/948,649
Granted
Oct 17, 2017
Kind
B2
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.

Claims (36)

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.

2. The memory system of claim 1 , wherein the encoding the first write data includes converting a first code in the first write data into another code longer than the first code.

3. The memory system of claim 1 , wherein the controller is configured to compress the first write data, and encode the compressed first write data by using the first coding to generate the first encoded data.

4. The memory system of claim 3 , wherein the first encoded data is longer than the compressed first write data.

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.

7. The method of claim 6 , wherein the encoding the first write data includes converting a first code in the first write data into another code longer than the first code.

8. The method of claim 6 , further comprising:

compressing the first write data, wherein

the first encoded data is generated by encoding the compressed first write data by using the first coding.

9. The method of claim 8 , wherein the first encoded data is longer than the compressed first write data.

Assignments (5)
MERGER Recorded Jan 22, 2021
From: TOSHIBA MEMORY CORPORATION
To: K.K. PANGEA
Reel/Frame 055659/0471 →
CHANGE OF NAME AND ADDRESS Recorded Jan 22, 2021
From: TOSHIBA MEMORY CORPORATION
To: KIOXIA CORPORATION
Reel/Frame 055669/0001 →
CHANGE OF NAME AND ADDRESS Recorded Jan 22, 2021
From: K.K. PANGEA
To: TOSHIBA MEMORY CORPORATION
Reel/Frame 055669/0401 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 22, 2017
From: KABUSHIKI KAISHA TOSHIBA
To: TOSHIBA MEMORY CORPORATION
Reel/Frame 043620/0798 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 23, 2015
From: KANNO, SHINICHI
To: KABUSHIKI KAISHA TOSHIBA
Reel/Frame 037116/0644 →
Priority Claims (1)
JP 2015-145713 · Jul 23, 2015 · national
Continuity (1)
Related Publication 20170024276A1 · Jan 26, 2017