IP Library Granted Patent US 10,089,039
Granted Patent B2
US 10,089,039 · App. 15/250,776 · Granted Oct 2, 2018

Memory controller, memory device having the same, and memory control method

Inventor: Hideyuki Watanabe (Kawasaki Kanagawa, JP)
Assignee: Toshiba Memory Corporation
G06F3/0659G06F3/0604G06F3/0673
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,089,039
App. No.
15/250,776
Granted
Oct 2, 2018
Kind
B2
Abstract

A memory control device includes a host interface capable of communicating with a host, a memory interface, and a controller circuit configured to carry out a command fetch operation to retrieve a group of commands from one of a plurality of queues set in the host, through the host interface, arrange an order of groups of commands that have been retrieved from the plurality of queues through a plurality of command fetch operations, and control the memory interface to output data corresponding to the groups of commands in the arranged order. When data corresponding to a first group of commands retrieved from a first queue and data corresponding to a second group of commands that was retrieved from the first queue after the first group of commands are sequential, the controller circuit is configured to arrange the second group of commands to immediately follow the first group of commands.

Claims (48)

1. A memory control device, comprising:

a host interface capable of communicating with a host;

a memory interface capable of communicating with a memory; and

a controller circuit configured to carry out a command fetch operation to retrieve groups of commands from a plurality of queues set in the host, through the host interface, into a plurality of command fetch tables set in the controller circuit, arrange an order of the groups of commands that have been retrieved into the plurality of command fetch tables set in the controller circuit, and control the memory interface to output data corresponding to the groups of commands in the arranged order, wherein

the plurality of queues includes a first queue and a second queue and the plurality of command fetch tables includes a first command fetch table corresponding to the first queue, in which groups of commands retrieved from the first queue are stored, and a second command fetch table corresponding to the second queue, in which groups of commands retrieved from the second queue are stored, and

when first data corresponding to a first group of commands retrieved from the first queue and second data corresponding to a second group of commands retrieved from the first queue after the first group of commands are to be written in sequential locations in the memory, the controller circuit is configured to arrange the second group of commands to immediately follow the first group of commands.

2. The memory control device according to claim 1 , wherein

when the first data and the second data are to be written in non-sequential locations in the memory, the controller circuit arranges a third group of commands retrieved from the second queue to immediately follow the first group of commands.

3. The memory control device according to claim 1 , further comprising:

a pointer table configured to store a plurality of pointers each of which corresponds to a command and output the pointers in a registered order thereof, wherein

the controller circuit is configured to register pointers corresponding to groups of commands in the arranged order.

4. The memory control device according to claim 1 , wherein

the group of commands retrieved through one command fetch operation has a fixed number of commands.

5. The memory control device according to claim 1 , wherein

data corresponding to the group of commands retrieved through one command fetch operation have a fixed size.

6. The memory control device according to claim 1 , wherein

the host interface includes a Peripheral Component Interconnect (PCI) Express interface, and

each of the queues corresponds to a submission queue compliant with PCI Express standards.

7. A memory device comprising:

a non-volatile semiconductor memory;

a write buffer;

a host interface capable of communicating with a host;

a controller circuit configured to carry out a command fetch operation to retrieve groups of commands from a plurality of queues set in the host, through the host interface, into a plurality of command fetch tables set in the controller circuit, arrange an order of the groups of commands that have been retrieved into the plurality of command fetch tables set in the controller circuit, write, in the write buffer, data corresponding to the groups of commands in the arranged order, and transfer the data in the write buffer to the non-volatile semiconductor memory, wherein

the plurality of queues includes a first queue and a second queue and the plurality of command fetch tables includes a first command fetch table corresponding to the first queue, in which groups of commands retrieved from the first queue are stored, and a second command fetch table corresponding to the second queue, in which groups of commands retrieved from the second queue are stored, and

when first data corresponding to a first group of commands retrieved from the first queue and second data corresponding to a second group of commands retrieved from the first queue after the first group of commands are to be written in sequential locations in the non-volatile semiconductor memory, the controller circuit is configured to write, in the write buffer, the second data immediately following the first data.

8. The memory device according to claim 7 , wherein

when the first data and the second data are to be written in non-sequential locations in the non-volatile semiconductor memory, the controller circuit is configured to write, in the write buffer, third data corresponding to a third group of commands retrieved from the second queue, immediately following the first data.

9. The memory device according to claim 7 , wherein

a pointer table configured to store a plurality of pointers each of which corresponds to a command and output the pointers in a registered order thereof, wherein

the controller circuit is configured to register pointers corresponding to groups of commands in the arranged order.

10. The memory device according to claim 7 , wherein

the group of commands retrieved through one command fetch operation has a fixed number of commands.

11. The memory device according to claim 7 , wherein

data corresponding to the group of commands retrieved through one command fetch operation have a fixed size.

12. The memory device according to claim 7 , wherein

the host interface includes a Peripheral Component Interconnect (PCI) Express interface, and

each of the queues corresponds to a submission queue compliant with PCI Express standards.

13. A memory control method for a memory device including a non-volatile semiconductor memory, a host interface capable of communicating with a host, and a controller circuit, said method comprising:

retrieving groups of commands from a plurality of queues set in the host, through the host interface, into a plurality of command fetch tables set in the controller circuit;

arranging an order of the groups of commands that have been retrieved into the plurality of command fetch tables set in the controller circuit; and

writing data corresponding to the groups of commands in the arranged order into the non-volatile semiconductor memory, wherein

the plurality of queues includes a first queue and a second queue and the plurality of command fetch tables includes a first command fetch table corresponding to the first queue, in which groups of commands retrieved from the first queue are stored, and a second command fetch table corresponding to the second queue, in which groups of commands retrieved from the second queue are stored, and

when first data corresponding to a first group of commands retrieved from the first queue and second data corresponding to a second group of commands that was retrieved from the first queue after the first group of commands are to be written in sequential locations in the non-volatile semiconductor memory, writing immediately the second data following the first data.

14. The memory control method according to claim 13 , wherein

when the first data and the second data are to be written in non-sequential locations in the non-volatile semiconductor memory, writing third data corresponding to a third group of commands retrieved from the second queue, following the writing of the first data and prior to the writing of the second data.

15. The memory control method according to claim 13 , wherein

the host interface includes a Peripheral Component Interconnect (PCI) Express interface, and

each of the queues corresponds to a submission queue compliant with PCI Express standards.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 14, 2017
From: KABUSHIKI KAISHA TOSHIBA
To: TOSHIBA MEMORY CORPORATION
Reel/Frame 043194/0647 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 11, 2016
From: WATANABE, HIDEYUKI
To: KABUSHIKI KAISHA TOSHIBA
Reel/Frame 040286/0864 →
Continuity (2)
Provisional Application 62248714 · Oct 30, 2015
Related Publication 20170123729A1 · May 4, 2017