IP Library Granted Patent US 10,102,118
Granted Patent B2
US 10,102,118 · App. 14/656,496 · Granted Oct 16, 2018

Memory system and non-transitory computer readable recording medium

Inventor: Shinichi Kanno (Tokyo, JP)
Assignee: Toshiba Memory Corporation
G06F12/0246G06F2212/7205
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 10,102,118
App. No.
14/656,496
Granted
Oct 16, 2018
Kind
B2
Abstract

According to one embodiment, a memory system includes a nonvolatile memory, configuration unit, address translation unit, write unit and control unit. The configuration unit assigns write management areas included in a nonvolatile memory to spaces and an input space. The write management area is a unit of an area which manages the number of write. The address translation unit associates a logical address of write data with a physical address which indicates a position of the write data in the nonvolatile memory. The write unit writes the write data to the input space and then writes the write data in the input space to a space corresponding to the write data amongst the spaces. The control unit controls the spaces individually with respect to the nonvolatile memory.

Claims (53)

1. A memory system comprising:

a nonvolatile memory which comprises namespaces, the namespaces including a first namespace, a second namespace, and an input namespace corresponding to the first and second namespaces; and

a controller which controls the nonvolatile memory and comprises a memory and a buffer memory, wherein

the memory stores management data including a first relationship between the first and second namespaces and the input namespace, and a second relationship between erase unit areas included in the nonvolatile memory and the namespaces,

the controller receives, from a host device, a write command, identification data corresponding to the first namespace, a logical address, and write data corresponding to the identification data,

associates the logical address of the write data with the identification data and a physical address which indicates a position of the write data in the nonvolatile memory,

writes, based on the management data, the write data corresponding to the identification data to the buffer memory, then writes the write data corresponding to the identification data in the buffer memory to the input namespace, and then writes valid data corresponding to the identification data in the input namespace to the first namespace corresponding to the identification data,

observes data storage conditions of the input namespace, the first namespace, and the second namespace, and changes the second relationship based on the data storage conditions, and

updates the management data based on a result of changing the second relationship.

2. The memory system according to claim 1 , wherein the controller generates the management data further including a relationship between data stored in the input namespace and the first or second namespace corresponding to the data.

3. The memory system according to claim 1 , wherein the controller acquires a data amount of data stored in the input namespace and corresponding to the first namespace, subtracts the acquired data amount from a predetermined data amount corresponding to the first namespace, and assigns at least one erase unit area to the first namespace based on a value obtained from the subtraction, and

updates the management data based on a result of the assigning.

4. The memory system according to claim 3 , wherein the the controller generates the management data further including a relationship between the first namespace and the acquired data amount, and

when the valid data stored in an erase unit area which is a data transfer source within the input namespace and corresponding to the first namespace is transferred to the first namespace, the controller subtracts a data amount of the valid data transferred to the first namespace from the acquired data amount and updates the management data based on the value obtained from the subtraction.

5. The memory system according to claim 1 , wherein the controller selects, from the input namespace, an erase unit area of which write time is oldest as an erase unit area which is a data transfer source, and

writes the valid data stored in the erase unit area which is the data transfer source to the first namespace corresponding to the identification data.

6. The memory system according to claim 1 , wherein the controller selects an erase unit area of which data amount of the valid data is least from the input namespace as an erase unit area which is a data transfer source, and

writes the valid data stored in the erase unit area which is the data transfer source to the first namespace corresponding to the identification data.

7. The memory system according to claim 1 , wherein the controller selects an erase unit area of which data amount of the valid data is less than a threshold value from the input namespace as an erase unit area which is a data transfer source, and

writes the valid data stored in the erase unit area which is the data transfer source to the first namespace corresponding to the identification data.

8. The memory system according to claim 1 , wherein the controller reduces the number of erase unit areas included in the input namespace when a data amount of valid data stored in an erase unit area which is a data transfer source within the input namespace is less than a threshold value, and

updates the management data based on a result of the reducing.

9. The memory system according to claim 1 , wherein the controller increases the number of erase unit areas included in the input namespace when a data amount of valid data stored in an erase unit area which is a data transfer source within the input namespace is more than a threshold value, and

updates the management data based on a result of the increasing.

10. The memory system according to claim 1 , wherein

the namespaces further comprise a third namespace and a fourth namespace,

the input namespace comprises a first input namespace and a second input namespace,

the first input namespace corresponds to the first and second namespaces,

the second input namespace corresponds to the third and fourth namespaces,

the first relationship comprises a relationship between the first and second namespaces and the first input namespace, and a relationship between the third and fourth namespaces and the second input namespace,

the controller writes, based on the management data, the write data corresponding to the identification data to the buffer memory, then writes the write data corresponding to the identification data in the buffer memory to the first input namespace, and then writes valid data corresponding to the identification data in the first input namespace to the first namespace corresponding to the identification data, and

the controller observes data storage conditions of the first and second input namespaces and the first to fourth namespaces, and changes the second relationship based on the data storage conditions.

11. A non-transitory computer readable recording medium which stores a program causing a computer to function as:

a reception unit, an address translation unit, a write unit, and a configuration unit, wherein

the computer controls a nonvolatile memory,

the nonvolatile memory comprises namespaces,

the namespaces comprise a first namespace, a second namespace, and an input namespace corresponding to the first and second namespaces,

the configuration unit stores management data in a memory,

the management data includes a first relationship between the first and second namespaces and the input namespace, and a second relationship between erase unit areas included in the nonvolatile memory and the namespaces,

the reception unit receives, from a host device, a write command, identification data corresponding to a first namespace included in a nonvolatile memory, a logical address, and write data corresponding to the identification data,

the address translation unit associates the logical address of the write data with the identification data and a physical address which indicates a position of the write data in the nonvolatile memory,

the write unit writes, based on the management data, the write data corresponding to the identification data to the buffer memory, then writes the write data corresponding to the identification data in the buffer memory to the input namespace, and then writes valid data corresponding to the identification data in the input namespace to the first namespace corresponding to the identification data,

the configuration unit observes data storage conditions of the input namespace, the first namespace, and the second namespace, and changes the second relationship based on the data storage conditions, and

the configuration unit updates the management data based on a result of changing the second relationship.

12. The memory system according to claim 1 , wherein the controller decreases the number of erase unit areas corresponding to the input namespace and increases the number of erase unit areas corresponding to the first namespace when the valid data is transferred from the input namespace to the first namespace, and

updates the management data based on a result of the decreasing and the increasing.

13. The non-transitory computer readable recording medium according to claim 11 , wherein

the configuration unit decreases the number of erase unit areas corresponding to the input namespace and increases the number of erase unit areas corresponding to the first namespace when the valid data is transferred from the input namespace to the first namespace, and

updates the management data based on a result of the decreasing and the increasing.

14. The memory system according to claim 1 , wherein the controller further executes a garbage collection for the first and second namespaces individually, and

writes, when the garbage collection is executed for the first namespace corresponding to the identification data, the valid data corresponding to the identification data in the input namespace to the first namespace.

15. The non-transitory computer readable recording medium according to claim 11 , wherein the program further causes the computer to function as a control unit which executes a garbage collection for the first namespace and a second namespace included in the nonvolatile memory individually, and

the write unit writes, when the garbage collection is executed for the first namespace corresponding to the identification data, the valid data corresponding to the identification data in the input namespace to the first namespace.

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 Sep 8, 2017
From: KABUSHIKI KAISHA TOSHIBA
To: TOSHIBA MEMORY CORPORATION
Reel/Frame 043529/0709 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 7, 2015
From: KANNO, SHINICHI
To: KABUSHIKI KAISHA TOSHIBA
Reel/Frame 035348/0960 →
Priority Claims (1)
JP 2015-028419 · Feb 17, 2015 · national
Continuity (2)
Provisional Application 62072799 · Oct 30, 2014
Related Publication 20160124843A1 · May 5, 2016