US2016055080A1PendingUtilityA1

Memory system

Assignee: TOSHIBA KKPriority: Mar 1, 2008Filed: Nov 5, 2015Published: Feb 25, 2016
Est. expiryMar 1, 2028(~1.6 yrs left)· nominal 20-yr term from priority
G06F 2212/7209G06F 2212/7201G06F 2212/1016G06F 12/0246G06F 2212/1048G06F 2212/1044G06F 12/0804
55
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A memory system according to an embodiment of the present invention comprises: speed of processing for searching through management tables is increased by providing a forward lookup table for searching for, respectively in track and cluster units, from a logical address, a storage device position where data corresponding to the logical address and a reverse lookup table for searching for, from a position of the storage device, a logical address stored in the position and linking these tables.

Claims

exact text as granted — not AI-modified
1 . (canceled) 
     
     
         2 . A memory system comprising:
 a nonvolatile memory that includes a first area and a second area, the first area and second area including blocks; and   a controller configured to:
 manage data stored in the first area according to a first management unit; 
 manage data stored in the second area according to a second management unit, a size of the second management unit being larger than a size of the first management unit, the size of the second management unit being less than or equal to a size of a block; and 
 before performing a first processing, perform a second processing, the first processing including reading valid data of the first management unit from a first block of the first area and writing the read valid data of the first management unit into a second block of the first area, the second processing including reading valid data of the first management unit from the first area, integrating the read valid data of the first management unit into data of the second management unit and storing the integrated data of the second management unit into the second area. 
   
     
     
         3 . The memory system according to  claim 2 , wherein the controller is configured to:
 retrieve information associated with a logical addresses by searching an address translation table with a physical address of the first area; and   determine the first block by the information associated with the logical address.   
     
     
         4 . The memory system according to  claim 2 , wherein in a case that the number of blocks belong to the first area exceeds a first threshold, the controller performs the second processing after performing the first processing. 
     
     
         5 . The memory system according to  claim 2 , wherein in a case that a total amount of the valid data of the first management unit in the first area is larger than or equal to a second threshold after performing the second processing, the controller performs the second processing again. 
     
     
         6 . The memory system according to  claim 5 , wherein in a case that the total amount of the valid data of the first management unit in the first area is less than the second threshold after performing the second processing, the controller performs the first processing. 
     
     
         7 . The memory system according  claim 2 , wherein when performing the second processing, the controller determines an address area of the second management unit corresponding to a storage capacity of a certain number of blocks, and reads the valid data of the first management unit that is included in the determined address area of the second management unit. 
     
     
         8 . The memory system according  claim 2 , wherein when performing the second processing, the controller determines the valid data of the first management unit to be read from the first area based on the number of valid data of the first management unit that is included in an address area of the second management unit. 
     
     
         9 . The memory system according  claim 8 , wherein the controller determines the address of the second management unit in an order of a greater number of the valid data of the first management unit that is included in the address of the second management unit, and reads the valid data of the first management unit included in the determined address of the second management unit. 
     
     
         10 . The memory system according  claim 8 , wherein when performing the second processing, the controller determines the valid data of the first management unit to be read from the first area based on whether or not valid data of the second management unit corresponding to the address area of the second management unit including the valid data of the first management unit in the first area is stored in a block including an invalid data of the second management unit in the second area. 
     
     
         11 . The memory system according  claim 2 , wherein when performing the second processing, the controller integrates the valid data of the first management unit read from the first area with valid data read from the second area. 
     
     
         12 . A method for controlling a nonvolatile semiconductor memory, the nonvolatile semiconductor memory including a first area and a second area, the first area and second area including blocks, the method comprising:
 managing data stored in the first area according to a first management unit;   managing data stored in the second area according to a second management unit, a size of the second management unit being larger than a size of the first management unit, the size of the second management unit being less than or equal to a size of the block; and   before performing a first processing, performing a second processing, the first processing including reading valid data of the first management unit from a first block of the first area and writing the read valid data of the first management unit into a second block of the first area, the second processing including reading valid data of the first management unit from the first area, integrating the read valid data of the first management unit into data of the second management unit and storing the integrated data of the second management unit into the second area.   
     
     
         13 . The method according to  claim 12 , further comprising:
 retrieving information associated with a logical addresses by searching an address translation table with a physical address of the first area; and   determining the first block by the information associated with the logical address.   
     
     
         14 . The method according to  claim 12 , further comprising:
 in a case that the number of blocks belonging to the first area exceeds a first threshold, performing the second processing after performing the first processing.   
     
     
         15 . The method according to  claim 12 , further comprising:
 in a case that a total amount of the valid data of the first management unit in the first area is larger than or equal to a second threshold after performing the second processing, performing the second processing again.   
     
     
         16 . The method according to  claim 15  further comprising:
 in a case that the total amount of the valid data of the first management unit in the first area is less than the second threshold after performing the second processing, performing the first processing. 
 
     
     
         17 . The method according  claim 12 , further comprising:
 in the second processing, determining an address area of the second management unit corresponding to a storage capacity of a certain number of blocks, and reading the valid data of the first management unit that is included in the determined address area of the second management unit.   
     
     
         18 . The method according  claim 12 , further comprising:
 in the second processing, determining the valid data of the first management unit to be read from the first area based on the number of valid data of the first management unit that is included in an address area of the second management unit.   
     
     
         19 . The method according  claim 18 , further comprising:
 determining the address of the second management unit in an order of a greater number of the valid data of the first management unit that is included in the address of the second management unit, and reading the valid data of the first management unit included in the determined address of the second management unit.   
     
     
         20 . The method according  claim 18 , further comprising:
 in the second processing, determining the valid data of the first management unit to be read from the first area based on whether or not valid data of the second management unit corresponding to the address area of the second management unit including the valid data of the first management unit in the first area is stored in a block including an invalid data of the second management unit in the second area.   
     
     
         21 . The method according  claim 12 , further comprising:
 in the second processing, integrating the valid data of the first management unit read from the first area with valid data read from the second area.

Join the waitlist — get patent alerts

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

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