IP Library Granted Patent US 8,135,902
Granted Patent B2
US 8,135,902 · App. 12/546,532 · Granted Mar 13, 2012

Nonvolatile semiconductor memory drive, information processing apparatus and management method of storage area in nonvolatile semiconductor memory drive

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 8,135,902
App. No.
12/546,532
Granted
Mar 13, 2012
Kind
B2
Abstract

According to one embodiment, a nonvolatile semiconductor memory drive includes a nonvolatile semiconductor memory, and a controller which controls a process of writing and reading data with respect to the nonvolatile semiconductor memory. The controller includes a compaction control module which acquires free groups set in an unused state by rearranging valid data scattered in n groups in groups of a number not larger than n−1 when the number of free groups remaining in a plurality of groups formed as a storage area management unit of the nonvolatile semiconductor memory becomes not larger than a predetermined number, and a compression control module which acquires free groups by compressing stored data in m groups in which access to stored valid data has not been made for a period longer than a predetermined period and rearranging the compressed data in groups of a number not larger than m−1.

Claims (28)

1. A nonvolatile semiconductor memory drive of a type in which data is additionally written, the memory drive comprising:

a nonvolatile semiconductor memory arranged as a plurality of groups, each of the plurality of groups consisting of a plurality of pages, each of the plurality of pages comprising at least one cluster used as a data management unit; and

a controller coupled to the semiconductor memory, the controller configured to control a process of writing and reading data with respect to the nonvolatile semiconductor memory, the controller comprising:

a compaction module configured to acquire free groups by rearranging valid data scattered in n groups in groups of a number not larger than n−1 when the number of free groups remaining in a plurality of groups becomes not larger than a predetermined number, wherein the valid data being rearranged is in a unit of clusters, and

a compression module configured to acquire free groups in order to suppress an execution opportunity of the compaction module, by compressing data stored in m groups in which access to valid data stored therein has not been made for a period longer than a predetermined period, and rearranging the compressed data in groups of a number not larger than m−1, wherein data being compressed is in a unit of groups, the compression module further decompresses the compressed data and rearranges the decompressed data when a read frequency with respect to valid data in a group set in a state in which the stored data is compressed and rearranged together with stored data of another group exceeds a predetermined number.

2. The nonvolatile semiconductor memory drive of claim 1 , further comprising a cache memory coupled to the controller, wherein

the compression module of the controller decompresses the compressed data that is requested to be read and stores the decompressed data in the cache memory when a read request of valid data in a group set in a state in which the stored data is compressed and rearranged together with stored data of another group is issued.

3. A nonvolatile semiconductor memory drive of a type in which data is additionally written, the memory drive comprising:

a nonvolatile semiconductor memory arranged as a plurality of groups, each of the plurality of groups consisting of a plurality of pages, each of the plurality of pages comprising at least one cluster used as a data management unit; and

a controller coupled to the semiconductor memory, the controller configured to control a process of writing and reading data with respect to the nonvolatile semiconductor memory, the controller comprising:

a compaction module configured to acquire free groups by rearranging valid data scattered in n groups in groups of a number not larger than n−1 when the number of free groups remaining in a plurality of groups becomes not larger than a predetermined number, wherein the valid data being rearranged is in a unit of clusters, and

a compression module configured to acquire free groups in order to suppress an execution opportunity of the compaction module, by compressing data stored in m groups in which access to valid data stored therein has not been made for a period longer than a predetermined period, and rearranging the compressed data in groups of a number not larger than m−1, wherein data being compressed is in a unit of groups, the compression module further decompresses the compressed data and rearranges the decompressed data when capacity of invalidated data in a group set in a state in which the stored data is compressed and rearranged together with stored data of another group exceeds a predetermined value.

4. The nonvolatile semiconductor memory drive of claim 1 , wherein

the compression module of the controller removes groups in which a compression ratio of stored data is not higher than a predetermined value from to-be-rearranged objects.

5. An information processing apparatus comprising:

a main body device; and

a nonvolatile semiconductor memory drive of a type in which data is additionally written, the memory drive comprising a nonvolatile semiconductor memory arranged as a plurality of groups, each of the plurality of groups consisting of a plurality of pages, each of the plurality of pages comprising at least one cluster used as a data management unit,

wherein the main body device comprises a data access request module configured to issue a data access request for the nonvolatile semiconductor memory to the nonvolatile semiconductor memory drive,

wherein the nonvolatile semiconductor memory drive further comprises a controller coupled to the semiconductor memory, the controller configured to control a process of writing and reading data with respect to the nonvolatile semiconductor memory,

wherein the controller of the nonvolatile semiconductor memory drive comprises:

a compaction module configured to acquire free groups by rearranging valid data scattered in n groups in groups of a number not larger than n−1 when the number of free groups remaining in a plurality of groups becomes not larger than a predetermined number, wherein the valid data being rearranged is in a unit of clusters,

a compression module configured to acquire free groups in order to suppress an execution opportunity of the compaction module, by compressing data stored in m groups in which access to valid data therein has not been made for a period longer than a predetermined period, and rearranging the compressed data in groups of a number not larger than m−1, wherein data being compressed is in a unit of groups,

a control module configured to interrupt free group acquisition process by the compression module when a data access request for the nonvolatile semiconductor memory is issued from the main body device while the free group acquisition process by the compression module is being performed, and

wherein the compression module decompresses the compressed data and rearranges the decompressed data when a read frequency with respect to valid data in a group set in a state in which the stored data is compressed and rearranged together with stored data of another group exceeds a predetermined number.

6. A management method of managing a storage area in a nonvolatile semiconductor memory drive of a type in which data is additionally written, the memory drive comprising a nonvolatile semiconductor memory arranged as a plurality of groups, each of the plurality of groups consisting of a plurality of pages, each of the plurality of pages comprising at least one cluster used as a data management unit, and a controller coupled to the semiconductor memory, the controller configured to control a process of writing and reading data with respect to the nonvolatile semiconductor memory, the method comprising:

acquiring free groups by rearranging valid data stored in n groups in groups of a number not larger than n−1 when the number of free groups remaining in a plurality of groups becomes not larger than a predetermined number, wherein the valid data being rearranged is in a unit of clusters; and

in order to suppress an execution opportunity of the acquiring of free groups by rearranging valid data, acquiring free groups by compressing data stored in m groups in which access to valid data stored therein has not been made for a period longer than a predetermined period and rearranging the compressed data in groups of a number not larger than m−1, wherein the data being compressed is in a unit of groups, and wherein

the acquiring free groups by compressing data comprises decompressing the compressed data and rearranging the decompressed data when a read frequency with respect to valid data in a group set in a state in which the stored data is compressed and rearranged together with stored data of another group exceeds a predetermined number.

Assignments (5)
CHANGE OF NAME AND ADDRESS Recorded Jul 29, 2021
From: K.K PANGEA
To: TOSHIBA MEMORY CORPORATION
Reel/Frame 057016/0551 →
MERGER Recorded Jul 29, 2021
From: TOSHIBA MEMORY CORPORATION
To: K.K PANGEA
Reel/Frame 057016/0586 →
CHANGE OF NAME AND ADDRESS Recorded Jul 29, 2021
From: TOSHIBA MEMORY CORPORATION
To: KIOXIA CORPORATION
Reel/Frame 057016/0611 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 24, 2017
From: KABUSHIKI KAISHA TOSHIBA
To: TOSHIBA MEMORY CORPORATION
Reel/Frame 043709/0035 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 25, 2009
From: KURASHIGE, TAKEHIKO
To: KABUSHIKI KAISHA TOSHIBA
Reel/Frame 023141/0480 →