US2020218655A1PendingUtilityA1

Storage system and information processing system for controlling nonvolatile memory

Assignee: TOSHIBA MEMORY CORPPriority: Mar 8, 2016Filed: Mar 24, 2020Published: Jul 9, 2020
Est. expiryMar 8, 2036(~9.6 yrs left)· nominal 20-yr term from priority
Inventors:Shinichi Kanno
G06F 12/0246G11C 29/82G06F 12/06G06F 3/0629G06F 12/0653G06F 3/0619G06F 3/0679G06F 2212/1016G06F 3/064G06F 3/06G06F 2212/7205G06F 2212/7211G06F 2212/7201G06F 2212/7208G06F 2212/214
68
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

According to one embodiment, a storage system includes a controller. The controller receives, from a host, a write command including a block address indicating a first block in a plurality of blocks, and a page address indicating a first page of the first block. The controller writes data designated by the write command to the first page of the first block. The controller notifies the host 2 of a page address indicating a latest readable page which is included in pages of the first block, the pages containing data which was written by the host before the designated data was written to the first page, the latest readable page having become readable by writing the designated data to the first page.

Claims

exact text as granted — not AI-modified
1 - 12 . (canceled) 
     
     
         13 : A memory system comprising:
 a nonvolatile memory including a plurality of blocks, each of the plurality of blocks being a unit for a data erase operation and including a plurality of pages, each of the plurality of pages being a unit for a data read operation and a data write operation; and   a controller electrically connected to the nonvolatile memory and configured to:   in response to receiving, from a host, a data copy command that includes management data and designates a copy source and a copy destination, the management data indicating validity or invalidity of data stored in each page of a first block in the copy source, copy valid data stored in an n-th page of the first block to an m-th page of a second block in the copy destination, m being different from n, and not copy invalid data to any page of the second block.   
     
     
         14 : The memory system of  claim 13 , wherein the controller is further configured to:
 in a case that data stored in an i-th page of the first block is indicated as valid, data stored in an (i+1)th page of the first block is indicated as invalid, and data stored in an (i+2)th page of the first block is indicated as valid:   copy the data stored in the i-th page of the first block to an i-th page of the second block;   not copy the data stored in the (i+1)th page of the first block to any page of the second block; and   copy the data stored in the (i+2)th page of the first block to an (i+1)th page of the second block.   
     
     
         15 : The memory system of  claim 13 , wherein the controller is further configured to notify the host of an identifier of the copied valid data and information indicating a location of the m-th page of the second block. 
     
     
         16 : The memory system of  claim 13 , wherein the management data is expressed by a bit-map. 
     
     
         17 : The memory system of  claim 13 , wherein the copy source is designated by an identifier of the first block and not by an identifier of the n-th page, and the copy destination is designated by an identifier of the second block and not by an identifier of the m-th page. 
     
     
         18 : The memory system of  claim 13 , wherein the copy source is designated by an identifier of the first block and an identifier of the n-th page, and the copy destination is designated by an identifier of the second block and an identifier of the m-th page. 
     
     
         19 : The memory system of  claim 13 , wherein the data copy command further designates a first value as an amount of valid data to be copied, and the controller is further configured to continue copying valid data from the copy source to the copy destination until an amount of copied valid data reaches the first value. 
     
     
         20 : The memory system of  claim 13 , wherein the data copy command further designates a second value as an amount of invalid data to be detected in the copy source, and the controller is further configured to continue copying valid data from the copy source to the copy destination until an amount of invalid data detected in the copy source reaches the second value. 
     
     
         21 : The memory system of  claim 13 , wherein the controller is further configured to:
 in response to receiving, from the host, a data write command that designates an identifier of the first block and does not designate an identifier of the n-th page,   write data into the n-th page of the first block.   
     
     
         22 : The memory system of  claim 13 , wherein the controller is further configured to:
 in response to receiving, from the host, a data write command that designates an identifier of the first block and an identifier of the n-th page,   write data into the n-th page of the first block.   
     
     
         23 : A method of controlling a nonvolatile memory including a plurality of blocks, each of the plurality of blocks being a unit for a data erase operation and including a plurality of pages, each of the plurality of pages being a unit for a data read operation and a data write operation, the method comprising:
 in response to receiving, from a host, a data copy command that includes management data and designates a copy source and a copy destination, the management data indicating validity or invalidity of data stored in each page of a first block in the copy source:   copying valid data stored in an n-th page of the first block to an m-th page of a second block in the copy destination, m being different from n, and not copying invalid data to any page of the second block.   
     
     
         24 : The method of  claim 23 , wherein
 in a case that data stored in an i-th page of the first block is indicated as valid, data stored in an (i+1)th page of the first block is indicated as invalid, and data stored in an (i+2)th page of the first block is indicated as valid,   the copying includes:   copying the data stored in the i-th page of the first block to an i-th page of the second block;   not copying the data stored in the (i+1)th page of the first block to any page of the second block; and   copying the data stored in the (i+2)th page of the first block to an (i+1)th page of the second block.   
     
     
         25 : The method of  claim 23 , further comprising:
 notifying the host of an identifier of the copied valid data and information indicating a location of the m-th page of the second block.   
     
     
         26 : The method of  claim 23 , wherein the management data is expressed by a bit-map. 
     
     
         27 : The method of  claim 23 , wherein the copy source is designated by an identifier of the first block and not by an identifier of the n-th page, and the copy destination is designated by an identifier of the second block and not by an identifier of the m-th page. 
     
     
         28 : The method of  claim 23 , wherein the copy source is designated by an identifier of the first block and an identifier of the n-th page, and the copy destination is designated by an identifier of the second block and an identifier of the m-th page. 
     
     
         29 : The method of  claim 23 , wherein the data copy command further designates a first value as an amount of valid data to be copied, and
 the method further comprises continuing to copy valid data from the copy source to the copy destination until an amount of copied valid data reaches the first value.   
     
     
         30 : The method of  claim 23 , wherein the data copy command further designates a second value as an amount of invalid data to be detected in the copy source, and
 the method further comprises continuing to copy valid data from the copy source to the copy destination until an amount of invalid data detected in the copy source reaches the second value.   
     
     
         31 : The method of  claim 23 , further comprising:
 in response to receiving, from the host, a data write command that designates an identifier of the first block and does not designate an identifier of the n-th page,   writing data into the n-th page of the first block.   
     
     
         32 : The method of  claim 23 , further comprising:
 in response to receiving, from the host, a data write command that designates an identifier of the first block and an identifier of the n-th page,   writing data into the n-th page of the first block.

Join the waitlist — get patent alerts

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

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