US2022261171A1PendingUtilityA1

Storage devices, data storage systems and methods of operating storage devices

Assignee: SAMSUNG ELECTRONICS CO LTDPriority: Sep 7, 2018Filed: May 5, 2022Published: Aug 18, 2022
Est. expirySep 7, 2038(~12.1 yrs left)· nominal 20-yr term from priority
G06F 2212/1044G06F 3/0644G06F 3/0647G06F 13/1668G06F 3/0659G06F 2212/7203G06F 3/0611G06F 2212/7211G06F 3/0688G06F 3/061G06F 3/0679G06F 2212/7205G06F 2212/657G06F 12/0246G06F 2212/7201G06F 3/0658G06F 12/10G06F 2212/1036
62
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A storage device includes a main storage including a plurality of nonvolatile memory devices, the main storage device configured to store data; and a storage controller configured to control the main storage. The storage controller is configured to, divide a plurality of memory blocks of the plurality of nonvolatile memory devices into a plurality of banks, assign each one of the plurality of banks into one of a) a plurality of sets and b) one free bank, each of the plurality of sets including at least one bank, perform data migration operation to transfer the data among the sets by using the one free bank in response to an input/output (I/O) request from an external host device while securing a specific I/O execution time, and control the data migration operation such that the I/O request is independent of the data migration operation.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A storage device comprising:
 a plurality of nonvolatile memory devices configured to store data and including a plurality of memory blocks; and   a controller configured to control the plurality of nonvolatile memory devices,   wherein the plurality of memory blocks are divided into a plurality of banks that include a first bank and a second bank,   the controller is configured to receive a read request from an external device while migrating first data from the first bank to the second bank, and configured to execute a read command on the first bank and execute a program command or an erase command on the second bank while migrating the first data from the first bank to the second bank,   when the controller applies the read command to the first bank at a first time period, applies the erase command to the second bank at a second time period and receives the read request at the second time period, the first bank accepts the read request to provide a corresponding data to the controller, and   when the controller applies the read command to the first bank at a third time period, applies the program command to the second bank at a fourth time period and receives the read request at the third time period, the second bank accepts the read request to provide the corresponding data to the controller.   
     
     
         2 . The storage device of  claim 1 , wherein the plurality of banks are assigned into a plurality of sets and one free bank, and
 each of the plurality of sets includes at least one bank.   
     
     
         3 . The storage device of  claim 2 , wherein the second bank is the free bank at the first time period, and
 the controller performs a data migration operation among the plurality of sets by using the second bank in response to an input/output (I/O) request from the external device, within an I/O execution time associated with the I/O request.   
     
     
         4 . The storage device of  claim 2 , wherein a program operation and/or an erase operation are performed only in the free bank among the plurality of banks. 
     
     
         5 . The storage device of  claim 1 , wherein the controller is configured to perform interfacing with the external device through a nonvolatile memory express (NVMe) protocol. 
     
     
         6 . The storage device of  claim 5 , wherein an I/O execution time is defined by the NVMe protocol. 
     
     
         7 . The storage device of  claim 1 , wherein the controller controls a data migration operation from the first bank to the second bank such that an I/O request is independent of the data migration operation. 
     
     
         8 . A storage device comprising:
 a plurality of nonvolatile memory devices configured to store data and including a plurality of memory blocks; and   a controller configured to control the plurality of nonvolatile memory devices,   wherein the plurality of memory blocks are divided into a plurality of banks that include a first bank and a second bank,   the plurality of banks are assigned into a plurality of sets and one free bank,
 each of the plurality of sets includes at least one bank, 
   the controller is configured to transfer first data from the first bank to the second bank and to perform an erase operation on the second bank, and   the erase operation is performed only in the free bank among the plurality of banks.   
     
     
         9 . The storage device of  claim 8 , wherein the plurality of sets include a first set that includes the first bank at a first time period, and
 the controller maps a physical bank address of the second bank to a logical bank address of the first set when the first data is transferred to the second bank from the first bank, and assigns the first bank as the free bank at a second time period.   
     
     
         10 . The storage device of  claim 8 , wherein when the controller applies a read command to the first bank at a first time period, applies the erase command to the second bank at a second time period and receives a read request at the second time period, the first bank accepts the read request to provide a corresponding data to the controller. 
     
     
         11 . The storage device of  claim 8 , wherein when the controller applies a read command to the first bank at a third time period, applies a program command to the second bank at a fourth time period and receives a read request at the third time period, the second bank accepts the read request to provide a corresponding data to the controller. 
     
     
         12 . The storage device of  claim 8 , wherein the controller is configured to perform interfacing with an external device through a nonvolatile memory express (NVMe) protocol. 
     
     
         13 . The storage device of  claim 12 , wherein an I/O execution time is defined by the NVMe protocol. 
     
     
         14 . The storage device of  claim 8 , wherein the controller controls a data migration operation from the first bank to the second bank such that an I/O request is independent of the data migration operation. 
     
     
         15 . A storage device comprising:
 a plurality of nonvolatile memory devices configured to store data and including a plurality of memory blocks; and   a controller configured to control the plurality of nonvolatile memory devices,   wherein the plurality of memory blocks are divided into a plurality of banks that include a first bank and a second bank,
 the plurality of banks are assigned into a plurality of sets and one free bank, 
 each of the plurality of sets includes at least one bank, 
   the controller is configured to receive a read request from an external device while migrating first data from the first bank to the second bank, and configured to execute a read command on the first bank and execute a program command or an erase command on the second bank while migrating the first data from the first bank to the second bank, and   the controller controls a data migration operation from the first bank to the second bank such that an I/O request is independent of the data migration operation.   
     
     
         16 . The storage device of  claim 15 , wherein when the controller applies the read command to the first bank at a first time period, applies the erase command to the second bank at a second time period and receives the read request at the second time period, the first bank accepts the read request to provide a corresponding data to the controller, and
 when the controller applies the read command to the first bank at a third time period, applies the program command to the second bank at a fourth time period and receives the read request at the third time period, the second bank accepts the read request to provide the corresponding data to the controller.   
     
     
         17 . The storage device of  claim 16 , wherein the second bank is the free bank at the first time period, and
 when the first data is transferred to the second bank from the first bank, the first bank is assigned as the free bank at a fifth time period.   
     
     
         18 . The storage device of  claim 15 , wherein a program operation and/or an erase operation are performed only in the free bank among the plurality of banks. 
     
     
         19 . The storage device of  claim 15 , wherein the controller is configured to perform interfacing with the external device through a nonvolatile memory express (NVMe) protocol. 
     
     
         20 . The storage device of  claim 19 , wherein an I/O execution time is defined by the NVMe protocol.

Join the waitlist — get patent alerts

Track US2022261171A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.