IP Library Granted Patent US 9,696,935
Granted Patent B2
US 9,696,935 · App. 14/836,391 · Granted Jul 4, 2017

Storage device that secures a block for a stream or namespace and system having the storage device

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,696,935
App. No.
14/836,391
Granted
Jul 4, 2017
Kind
B2
Abstract

A storage device includes a nonvolatile semiconductor memory device including a plurality of physical blocks and a memory controller. The memory controller is configured to associate one or more physical blocks to each of a plurality of stream IDs, execute a first command containing a first stream ID received from a host, by storing write data included in the write IO in the one or more physical blocks associated with the first stream ID, and execute a second command containing a second stream ID received from the host, by selecting a first physical block that includes valid data and invalid data, transfer the valid data stored in the first physical block to a second physical block, and associate the first physical block from which the valid data has been transferred, with the second stream ID.

Claims (40)

1. A storage device, comprising:

a nonvolatile semiconductor memory device including a plurality of physical blocks including first and second physical blocks; and

a memory controller configured to:

associate one or more physical blocks with a first stream ID and one or more physical blocks with a second stream ID, such that the one or more physical blocks associated with the first stream ID are reserved for data associated with the first stream ID, and that the one or more physical blocks associated with the second stream ID are reserved for data associated with the second stream ID,

and

carry out garbage collection in response to a command including the first stream ID, by transferring valid data stored in the first physical block that stores valid data and invalid data to the second physical block, and associating the first physical block from which the valid data have been transferred with the first stream ID, such that the first physical block is reserved for data associated with the first stream ID.

2. The storage device according to claim 1 , wherein

after the valid data have been transferred from the first physical block and before the first physical block is subjected to a write operation, the memory controller performs an erase operation on the first physical block.

3. The storage device according to claim 1 , wherein

after the first physical block is associated with the first stream ID, the first physical block is not used for writing data associated with a stream ID other than the first stream ID.

4. The storage device according to claim 1 , wherein the first physical block is not associated with the first stream ID at the time the command is received.

5. The storage device according to claim 4 , wherein the memory controller is configured to associate the second physical block with a stream ID with which the first physical block was associated at the time the command was received.

6. The storage device according to claim 1 , wherein the command includes a data size and the memory controller is configured to select at least one physical block, including the first physical block, on which to perform the garbage collection in response to the command.

7. The storage device according to claim 6 , wherein the command further includes a time limit and the memory controller is configured to terminate the garbage collection when an elapsed time from start of execution of the command exceeds the time limit.

8. A storage device, comprising:

a nonvolatile semiconductor memory device including a plurality of physical blocks including first and second physical blocks; and

a memory controller configured to:

associate a first namespace ID with a first logical address space, and a second name space ID with a second logical address space different from the first logical address space,

and

carry out garbage collection in response to a command including the first namespace ID, by transferring valid data stored in the first physical block that stores valid data and invalid data to the second physical block, and associating the first physical block from which the valid data have been transferred with the first namespace ID, such that the first physical block is reserved for data associated with the first namespace ID.

9. The storage device according to claim 8 , wherein

after the valid data have been transferred from the first physical block and before the first physical block is subjected to a write operation, the memory controller performs an erase operation on the first physical block.

10. The storage device according to claim 8 , wherein

after the first physical block is associated with the first namespace ID, the first physical block is not used for writing data associated with a namespace ID other than the first namespace ID.

11. The storage device according to claim 8 , wherein the first physical block is not associated with the first namespace ID at the time the command is received.

12. The storage device according to claim 11 , wherein the memory controller is configured to associate the second physical block with a namespace ID with which the first physical block was associated at the time the command was received, in response to the command.

13. The storage device according to claim 8 , wherein the command includes a data size and the memory controller is configured to select at least one physical block, including the first physical block, on which to perform the garbage collection, based on the data size, in response to the command.

14. The storage device according to claim 13 , wherein the command further includes a time limit and the memory controller is configured to terminate the garbage collection when an elapsed time from start of execution of the command exceeds the time limit.

15. A system comprising:

a storage device; and

a host configured to send commands to write data to or read data from the storage device, wherein

the storage device includes:

a nonvolatile semiconductor memory device including a plurality of physical blocks including first and second physical blocks; and

a memory controller configured to:

associate one or more physical blocks with a first ID, and one or more physical blocks with a second ID, such that the one or more physical blocks associated with the first ID are reserved for data associated with the first ID and that the one or more physical blocks associated with the second ID are reserved for data associated with the second ID,

carry out garbage collection in response to a command including the first stream ID from the host, by transferring valid data stored in the first physical block that stores valid data and invalid data to the second physical block, and associating the first physical block from which the valid data have been transferred with the first ID, such that the first physical block is reserved for data associated with the first ID.

16. The system according to claim 15 , wherein

after the first physical block is associated with the first ID, the first physical block is not used for writing data associated with an ID other than the first ID.

17. The system according to claim 15 , wherein the first physical block is not associated with the first ID at the time the command is received from the host.

18. The system according to claim 15 , wherein the ID is one of a stream ID and a namespace ID.

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 Jul 14, 2017
From: KABUSHIKI KAISHA TOSHIBA
To: TOSHIBA MEMORY CORPORATION
Reel/Frame 043194/0647 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 29, 2015
From: HASHIMOTO, DAISUKE; KANNO, SHINICHI
To: KABUSHIKI KAISHA TOSHIBA
Reel/Frame 036918/0216 →