IP Library Granted Patent US 10,229,049
Granted Patent B2
US 10,229,049 · App. 15/253,661 · Granted Mar 12, 2019

Storage system that performs host-initiated garbage collection

Inventor: Daisuke Hashimoto (Cupertino, CA)
Assignee: TOSHIBA MEMORY CORPORATION
G06F12/0246G06F3/0604G06F3/064G06F3/0652G06F3/0659G06F3/0679G06F2212/214G06F2212/7201G06F2212/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,229,049
App. No.
15/253,661
Granted
Mar 12, 2019
Kind
B2
Abstract

A storage device includes a non-volatile semiconductor storage device including a plurality of physical blocks, and a controller. The controller maintains a mapping of logical addresses to locations within the physical blocks, receives, from a host, a command to start host initiated garbage collection where the controller copies data from an active block into an input block having free pages that is not written after erase operation, receives, from the host, a command to receive data to be written from the host, writes the received data to the same input block, and receives, from a host, another command to start host initiated garbage collection where the controller copies data from an active block into the same input block.

Claims (48)

1. A storage apparatus comprising:

a nonvolatile semiconductor memory including a plurality of physical blocks, a physical block being a unit of data erasure;

a communication interface connectable to an external device; and

a controller configured to

upon receipt of a first command including a time parameter regarding garbage collection, received from a host to initiate garbage collection, carry out garbage collection for copying valid data stored in a target physical block to an input block among the physical blocks, and

upon expiration of time indicated by the time parameter and receipt of a second command, carry out an access operation with respect to the input block among the physical blocks before carrying out garbage collection for copying other valid data stored in the target physical block to the input block.

2. The storage apparatus according to claim 1 , wherein

the controller carries out writing of write data received through the communication interface when a write command is received as the second command.

3. The storage apparatus according to claim 2 , wherein

the controller writes the valid data, the write data, and the other valid data in a physical block of the nonvolatile semiconductor memory in this sequence.

4. The storage apparatus according to claim 1 , wherein

the controller is configured to carry out the garbage collection in response to a command to carry out garbage collection that is received through the communication interface.

5. The storage apparatus according to claim 4 , wherein the controller carries out the garbage collection during the time indicated by the time parameter.

6. The storage apparatus according to claim 4 , wherein

upon receipt of a third command including a designated size regarding garbage collection, the controller carries out garbage collection with respect to the designated size of valid data stored in the target physical block.

7. The storage apparatus according to claim 4 , wherein

the controller is further configured to select the target physical block for the garbage collection in response to the command to carry out garbage collection.

8. The storage apparatus according to claim 7 , wherein

the controller is further configured to maintain address mapping from a logical address to a physical location of the nonvolatile semiconductor memory with respect to each data unit stored in the nonvolatile semiconductor memory, and

during garbage collection, the controller repeats copy of valid data from the target physical block to a destination physical block and update of the address mapping of the copied data, for each of data unit subjected to the garbage collection.

9. A storage system comprising a host and a storage device connected through a communication interface, wherein

the storage device comprising a controller and a nonvolatile semiconductor memory including a plurality of physical blocks, a physical block being a unit of data erasure, and

the host is configured to cause the controller to

upon receipt of a first command including a time parameter regarding garbage collection, received from the host to initiate garbage collection, carry out garbage collection for copying valid data portion stored in a target physical block to an input block among the physical blocks, and

upon expiration of time indicated by the time parameter and receipt of a second command, carry out an access operation with respect to the input block among the physical blocks before carrying out garbage collection for copying other valid data portion stored in the target physical block to the input block.

10. The storage system according to claim 9 , wherein

the host is configured to send a write command as the second command and write data through the communication interface to cause the controller to carry out writing of the write data.

11. The storage system according to claim 10 , wherein

the host is configured to cause the controller to write the valid data, the write data, and the other valid data in a physical block of the nonvolatile semiconductor memory in this sequence.

12. The storage system according to claim 9 , wherein

the host is configured to send the command including the time parameter to carry out garbage collection through the communication interface, to cause the controller to carry out the garbage collection.

13. The storage system according to claim 12 , wherein

the host is configured to send a designated size of data in association with a third command to carry out garbage collection, to cause the controller to carry out the garbage collection with respect to of the designated size of valid data stored in the target physical block.

14. A method of controlling a nonvolatile semiconductor memory including a plurality of physical blocks, a physical block being a unit of data erasure, the method comprising:

responsive to a first command including a time parameter regarding garbage collection, received from a host to initiate garbage collection, carrying out garbage collection for copying valid data portion stored in a target physical block to an input block among the physical blocks; and

upon expiration of time indicated by the time parameter and receipt of a second command, carrying out an access operation with respect to the input block among the physical blocks before carrying out of garbage collection for copying other valid data stored in the target physical block to the input block.

15. The method according to claim 14 , wherein

the access operation includes writing of write data that are received after the garbage collection of the valid data and before the garbage collection of the other valid data.

16. The method according to claim 15 , wherein

the valid data, the write data, and the other valid data are written in a physical block of the nonvolatile semiconductor memory in this sequence.

17. The method according to claim 14 , wherein

the garbage collection of the valid data is carried out in response to the first command to carry out garbage collection, and

the garbage collection of the other valid data is carried out in response to a third command to carry out garbage collection.

18. The method according to claim 17 , wherein

the garbage collection of the valid data is carried out during the time that is associated with the first command, and

the garbage collection of the other valid data is carried out during a time that is associated with the third command.

19. The method according to claim 17 , wherein

upon receipt of a fourth command including a designated size regarding garbage collection, the designated size of valid data is copied to the input block among the physical blocks.

Assignments (6)
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 6, 2016
From: HASHIMOTO, DAISUKE
To: TOSHIBA AMERICA ELECTRONIC COMPONENTS, INC.
Reel/Frame 039958/0769 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 6, 2016
From: TOSHIBA AMERICA ELECTRONIC COMPONENTS, INC.
To: KABUSHIKI KAISHA TOSHIBA
Reel/Frame 039958/0833 →
Continuity (2)
Provisional Application 62268906 · Dec 17, 2015
Related Publication 20170177469A1 · Jun 22, 2017
Cited By (3)
US 12,253,940 US 12,461,808 US 12,530,291