IP Library Patent Application 15065465
Patent Application
App. No. 15/065,465

MULTI-STREAMED SOLID STATE DRIVE

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 None
App. No.
15/065,465
Abstract

A storage device includes a nonvolatile semiconductor memory device including a plurality of physical blocks, and a controller configured to map the physical blocks and access the physical blocks based on mapping thereof. The controller maps a physical block having space, as a first input block for writing data associated with a first identifier, another physical block having space, as a second input block for writing data associated with a second identifier, a physical block that became full of data associated with the first identifier, as a first active block, a physical block that became full of data associated with the second identifier, as a second active block, and a physical block that became full of invalid data associated with the first identifier and a physical block that became full of invalid data associated with the second identifier, as free blocks associated with no identifier.

Claims (62)

1 . A storage device, comprising:

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

a controller configured to map the physical blocks and access the physical blocks based on mapping thereof, wherein the controller maps

a physical block having space, as a first input block for writing data associated with a first identifier,

another physical block having space, as a second input block for writing data associated with a second identifier,

a physical block that became full of data associated with the first identifier, as a first active block,

a physical block that became full of data associated with the second identifier, as a second active block, and

a physical block that became full of invalid data associated with the first identifier and a physical block that became full of invalid data associated with the second identifier, as free blocks associated with no identifier.

2 . The storage device according to claim 1 , wherein

the controller is further configured to receive a write command and write data from a host,

when the write command includes the first identifier, the write data are written into the first input block, and not into the second input block, and

when the write command includes the second identifier, the write data are written into the second input block, and not into the first input block.

3 . The storage device according to claim 1 , wherein

when garbage collection is carried out with respect to the first active block, valid data in the first active block are written into the first input block, and not into the second input block, and

when garbage collection is carried out with respect to the second active block, valid data in the second active block are written into the second input block, and not into the first input block.

4 . The storage device according to claim 1 , wherein

the controller maps another physical block having space as a third input block associated with no identifier,

when garbage collection is carried out with respect to the first active block, valid data in the first active block are written into the third input block, and not into the first and second input blocks, and

when garbage collection is carried out with respect to the first active block, valid data in the second active block are written into the third input block, and not into the first and second input blocks.

5 . The storage device according to claim 1 , wherein

data associated with first namespace and data associated with second namespace are both written into the first input block.

6 . The storage device according to claim 1 , wherein

the controller is further configured to remap the first input block as a third input block associated with no identifier, for writing data associated with no identifier, in response to a close command including the first identifier.

7 . The storage device according to claim 1 , wherein

the controller is further configured to invalidate all data in the first input block and the first active block and remap the first input block and the first active block as free blocks, in response to a delete command including the first identifier.

8 . The storage device according to claim 1 , wherein

the controller is further configured to disassociate the first input block and the first active block from the first identifier and associate the first input block and the first active block with the second identifier.

9 . A storage device, comprising:

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

a controller configured to map the physical blocks and access the physical blocks based on mapping thereof, wherein the controller maps

a physical block having space, as a first input block for writing data associated with a first identifier,

another physical block having space, as a second input block for writing data associated with a second identifier,

a physical block that became full of data associated with the first identifier and a physical block that became full of data associated with the second identifier, as active blocks associated with no identifier, and

a physical block that became full of invalid data associated with the first identifier and a physical block that became full of invalid data associated with the second identifier, as free blocks associated with no identifier.

10 . The storage device according to claim 1 , wherein

the controller is further configured to receive a write command and write data from a host,

when the write command includes the first identifier, the write data are written into the first input block, and not into the second input block, and

when the write command includes the second identifier, the write data are written into the second input block, and not into the first input block.

11 . The storage device according to claim 9 , wherein

the controller maps another physical block having space as a third input block associated with no identifier,

when garbage collection is carried out with respect to the active blocks, valid data in the active blocks are written into the third input block, and not into the first and second input blocks.

12 . The storage device according to claim 9 , wherein

the controller is further configured to remap the first input block as a third input block associated with no identifier, for writing data associated with no identifier, in response to a close command including the first identifier.

13 . The storage device according to claim 9 , wherein

the controller is further configured to invalidate all data in the first input block and the first active block and remap the first input block and the first active block as free blocks, in response to a delete command including the first identifier.

14 . The storage device according to claim 9 , wherein

the controller is further configured to disassociate the first input block and the first active block from the first identifier and associate the first input block and the first active block with the second identifier.

15 . A storage device, comprising:

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

a controller configured to map the physical blocks and access the physical blocks based on mapping thereof, wherein the controller maps

a physical block having space, as an input block for writing data associated with any identifiers that are mapped,

a physical block that became full of data associated with said any identifiers, as an active block, and

a physical block that became full of invalid data associated with said any identifiers as a free block.

16 . The storage device according to claim 15 , wherein

the controller is further configured to receive a write command and write data from a host,

both when the write command includes the first identifier and when the write command includes the second identifier, the write data are written into the input block.

17 . The storage device according to claim 15 , wherein

when garbage collection is carried out with respect to the active block, valid data associated with a first identifier are transferred to a physical block associated with the first identifier, and valid data associated with a second identifier are transferred to a physical block associated with the second identifier.

18 . The storage device according to claim 17 , wherein

the controller is further configured to disassociate the physical block associated with the first identifier from the first identifier, in response to a close command including the first identifier.

19 . The storage device according to claim 17 , wherein

the controller is further configured to invalidate all data in the physical block associated with the first identifier and remap the physical block containing the invalidated data as a free block, in response to a delete command including the first identifier.

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 May 19, 2016
From: HASHIMOTO, DAISUKE; KANNO, SHINICHI
To: KABUSHIKI KAISHA TOSHIBA
Reel/Frame 038647/0111 →