IP Library Granted Patent US 8,977,833
Granted Patent B2
US 8,977,833 · App. 13/451,750 · Granted Mar 10, 2015

Memory system

Inventors: Takashi Kazui (Kanagawa, JP); Norikazu Yoshida (Kanagawa, JP)
Assignee: Kabushiki Kaisha Toshiba
G06F12/0246G06F11/1012G06F3/061G06F3/0659G06F3/0688G06F2212/7203
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 8,977,833
App. No.
13/451,750
Granted
Mar 10, 2015
Kind
B2
Abstract

According to one embodiment, a memory system has a data transfer device which includes a first command generating unit, a second command generating unit, a first storage unit, a second storage unit, and a nonvolatile memory managing unit. The first command generator generates a first command for reading out data from a nonvolatile memory to a host apparatus. The second command generator generates a second command for internal processing of the memory system associated with a temporary memory and the nonvolatile memory. The first memory has a queue structure configured to store the first command. The second memory has a queue structure configured to store the second command. The memory manager is configured to read out the first command stored in the first memory in priority to the second command stored in the second memory and to transmit read-out command to the nonvolatile memory.

Claims (54)

1. A memory system comprising:

a nonvolatile memory;

a temporary memory; and

a data transfer device configured to perform data transfer between a host apparatus and the nonvolatile memory by using the temporary memory as a buffer, wherein

the data transfer device includes

a first command generator configured to generate a first command for reading out data, for which a read request is issued from the host apparatus, from the nonvolatile memory,

a second command generator configured to generate a second command for internal processing of the memory system associated with the temporary memory and the nonvolatile memory,

a first memory having a queue structure and configured to store the first command,

a second memory having a queue structure and configured to store the second command, and

a memory manager configured to read out the first command stored in the first memory in priority to the second command stored in the second memory and to transmit a read-out command to the nonvolatile memory, wherein

the second command generator is configured to associate continuous execution information indicating whether a following command needs to be continuously executed with each of the second commands, and

the memory manager is configured to, in a case where the first command is stored in the first memory while the second command stored in the second memory is transmitted to the memory manager, determine timing of queue switching from the second memory to the first memory based on the continuous execution information.

2. The memory system according to claim 1 , wherein the internal processing includes processing of writing data, which is buffered in the temporary memory and for which a write request is issued from the host apparatus, in the nonvolatile memory.

3. The memory system according to claim 1 , wherein the internal processing includes processing of organizing data stored in the nonvolatile memory with the temporary memory as a work area.

4. The memory system according to claim 1 , wherein the internal processing includes processing of loading an address translation table in the temporary memory and processing of storing an address translation table loaded in the temporary memory in the nonvolatile memory, the address translation table associating a logical address, with which a read/write request is issued from the host apparatus, with a physical address of the nonvolatile memory.

5. The memory system according to claim 1 , wherein

the second command generator is configured to associate a pack including continuously generated one or more second command with interrupt processing information indicating whether predetermined post-processing needs to be performed when interrupting continuous execution of commands included in the pack, and

in a case of queue switching from the second memory to the first memory, when the interrupt processing information is associated with the pack in which continuous execution is interrupted by the switching, the memory manager is configured to transmit the second command for performing the post-processing before transmitting the first command stored in the first memory.

6. The memory system according to claim 2 , wherein

the second command generator is configured to associate a pack including continuously generated one or more second command with interrupt processing information indicating whether predetermined post-processing needs to be performed when interrupting continuous execution of commands included in the pack, and

in a case of queue switching from the second memory to the first memory, when the interrupt processing information is associated with the pack in which continuous execution is interrupted by the switching, the memory manager is configured to transmit the second command for performing the post-processing before transmitting the first command stored in the first memory.

7. The memory system according to claim 3 , wherein

the second command generator is configured to associate a pack including continuously generated one or more second command with interrupt processing information indicating whether predetermined post-processing needs to be performed when interrupting continuous execution of commands included in the pack, and

in a case of queue switching from the second memory to the first memory, when the interrupt processing information is associated with the pack in which continuous execution is interrupted by the switching, the memory manager is configured to transmit the second command for performing the post-processing before transmitting the first command stored in the first memory.

8. The memory system according to claim 4 , wherein

the second command generator is configured to associate a pack including continuously generated one or more second command with interrupt processing information indicating whether predetermined post-processing needs to be performed when interrupting continuous execution of commands included in the pack, and

in a case of queue switching from the second memory to the first memory, when the interrupt processing information is associated with the pack in which continuous execution is interrupted by the switching, the memory manager is configured to transmit the second command for performing the post-processing before transmitting the first command stored in the first memory.

9. The memory system according to claim 5 , wherein the memory manager is configured to, after completing execution of all first commands stored in the first memory, switch queuing source from the first memory to the second memory.

10. The memory system according to claim 9 , wherein the memory manager is configured to, when switching the queuing source from the first memory to the second memory, transmit the second command for performing predetermined pre-processing to the nonvolatile memory.

11. A memory system comprising:

a nonvolatile memory;

a temporary memory; and

a data transfer device configured to perform data transfer between a host apparatus and the nonvolatile memory by using the temporary memory as a buffer, wherein

the data transfer device includes

a first command generator configured to generate a first command for reading out data, for which a read request is issued from the host apparatus, from the nonvolatile memory,

a second command generator configured to generate a second command for internal processing of the memory system associated with the temporary memory and the nonvolatile memory,

a first memory having a queue structure and configured to store the first command,

a second memory having a queue structure and configured to store the second command, and

a memory manager configured to read out the first command stored in the first memory in priority to the second command stored in the second memory and to transmit a read-out command to the nonvolatile memory,

wherein

the data transfer device further includes

an execution error detector configured to detect an execution error of a command transmitted to the nonvolatile memory,

a third command generator configured to, when the execution error detector detects the execution error, generate a third command for the nonvolatile memory relating to error processing corresponding to the detected execution error, and

a third memory having a queue structure and configured to store the third command, and

the memory manager is configured to, when the third command is stored in the third memory, switch the queuing source from the first memory or the second memory to the third memory.

12. The memory system according to claim 11 , wherein the internal processing includes at least one of write processing and read processing to the nonvolatile memory relating to the error processing.

13. The memory system according to claim 11 , wherein the internal processing includes processing of writing data, which is buffered in the temporary memory and for which a write request is issued from the host apparatus, in the nonvolatile memory.

14. The memory system according to claim 11 , wherein the internal processing includes processing of organizing data stored in the nonvolatile memory with the temporary memory as a work area.

15. The memory system according to claim 11 , wherein the internal processing includes processing of loading an address translation table in the temporary memory and processing of storing an address translation table loaded in the temporary memory in the nonvolatile memory, the address translation table associating a logical address, with which a read/write request is issued from the host apparatus, with a physical address of the nonvolatile memory.

16. A memory system comprising:

a memory;

a first command generator configured to issue a first command;

a second command generator configured to issue a plurality of second commands, each second command including a flag information; and

a manager configured to send each second command sequentially to the memory, and determine timing of sending the first command to the memory based on the flag information included in each second command when the first command is issued while executing sending of each second command.

Assignments (5)
CHANGE OF NAME AND ADDRESS Recorded Jan 22, 2021
From: K.K. PANGEA
To: TOSHIBA MEMORY CORPORATION
Reel/Frame 055669/0401 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 24, 2017
From: KABUSHIKI KAISHA TOSHIBA
To: TOSHIBA MEMORY CORPORATION
Reel/Frame 043709/0035 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2012
From: KAZUI, TAKASHI; YOSHIDA, NORIKAZU
To: KABUSHIKI KAISHA TOSHIBA
Reel/Frame 028082/0498 →
Priority Claims (1)
JP 2011-102496 · Apr 28, 2011 · national
Continuity (1)
Related Publication 20120278664A1 · Nov 1, 2012