Storage system using flash memories, wear-leveling method for the same system and wear-leveling program for the same system
First Claim
1. A storage system using flash memories comprising a storage controller and plural flash memory modules as storage media, each flash memory module comprising at least one flash memory chip, and a memory controller for leveling erase counts of blocks belonging to the flash memory chip, the storage controller:
- combining the plural flash memory modules into a first logical group, translating a first address used for accessing the flash memory modules belonging to the first logical group to a second address used for handling the first address in the storage controller, and combining the plural first logical groups into a second logical group.
1 Assignment
0 Petitions
Accused Products
Abstract
A storage system using flash memories includes a storage controller and plural flash memory modules as storage media. Each flash memory module includes at least one flash memory chip and a memory controller for leveling erase counts of blocks belonging to the flash memory chip. The storage controller combines the plural flash memory modules into a first logical group, translates a first address used for accessing the flash memory modules belonging to the first logical group to a second address used for handling the first address in the storage controller, and combines the plural first logical groups into a second logical group.
-
Citations
31 Claims
-
1. A storage system using flash memories comprising a storage controller and plural flash memory modules as storage media,
each flash memory module comprising at least one flash memory chip, and a memory controller for leveling erase counts of blocks belonging to the flash memory chip, the storage controller: -
combining the plural flash memory modules into a first logical group, translating a first address used for accessing the flash memory modules belonging to the first logical group to a second address used for handling the first address in the storage controller, and combining the plural first logical groups into a second logical group. - View Dependent Claims (2, 3, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
6. The storage system using flash memories according to claim
wherein the second logical group is a logical group either on RAID level 2 or RAID level 4; - and
in the first logical groups constituting the second group, if the number of the first logical groups for storing redundant information is m, and the number of the first logical groups for storing data is “
n”
,capacity of the first logical group for storing redundant information is set to be at least one time and not more than “
n/m”
times as much as that of the first logical group for storing data.
- and
-
18. A wear-leveling method for a storage system using flash memories comprising:
-
flash memory modules including at least one flash memory chip and a memory controller for leveling erase counts of blocks belonging to the flash memory chip; and
a storage controller for combining the flash memory modules into a first logical group, translating a first address used for accessing the flash memory modules belonging to the first logical group to a second address used for handling the first address in the storage controller, and combining a plurality of first logical groups into a second logical group, the method comprising;
a step of allowing the storage controller to provide count management on write size of each predetermined memory area in the flash memory module;
a step of allowing the storage controller to calculate an average erase count yielded by dividing total write size of each flash memory module through a predetermined time period by a capacity of the flash memory module; and
a first determination step of allowing the storage controller to determine whether or not a difference between a maximum value and a minimum value of the average erase count is not less than a predetermined value, wherein at the first step, if the difference of the average erase count is not less than the predetermined value, the method further comprises a step of allowing the storage controller to exchange data between memory area having a maximum write size and memory area having a minimum write size, among the flash memory modules having the maximum difference of the average erase count, and to change mapping information between the first address and the second address. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. A wear-leveling method for a storage system using flash memories comprising:
-
flash memory modules including at least one flash memory chip and a memory controller for leveling erase counts of blocks belonging to the flash memory chip; and
a storage controller for combining the flash memory modules into a first logical group, translating a first address used for accessing the flash memory modules belonging to the first logical group to a second address used for handling the first address in the storage controller, and combining a plurality of the first logical groups into a second logical group, the method comprising;
a step of allowing the storage controller to provide count management on write size of each predetermined memory area in the flash memory module;
a step of allowing the storage controller to calculate an average erase count for each flash memory module, by adding a first average erase count at a predetermined time to a second average erase count yielded by dividing total write size since the predetermined time by capacity of the flash memory module;
a first determination step of allowing the storage controller to determine whether or not a difference between a maximum value and a minimum value of the average erase count is not less than the predetermined value, wherein at the first step, if it is determined that the difference is not less than the predetermined value, the method further comprises a step of allowing the storage controller to exchange data between memory area having maximum write size and memory area having minimum write size, among the flash memory modules having the maximum difference of the erase count, and to change mapping information between the first address and the second address. - View Dependent Claims (29)
-
-
30. A wear-leveling program for a storage system using flash memories comprising:
-
flash memory modules including at least one flash memory chip and a memory controller for leveling erase counts of blocks belonging to the flash memory chip; and
a storage controller for;
combining the plural flash memory modules into a first logical group, translating a first address used for accessing the flash memory modules belonging into the first logical group to a second address used for handling the first address in the storage controller, and combining the plural first logical groups into a second logical group, the program performing;
a process for allowing a computer to provide count management on write size of each predetermined memory area in the flash memory module;
a process for allowing the computer to calculate an average erase count yielded by dividing total write size of each flash memory module through a predetermined time period by capacity of the flash memory module;
a process of a first determination for the computer to determines whether or not a difference between a maximum value and a minimum value of the average erase count is not less than a predetermined value, wherein at the first determination, if the difference is not less than a predetermined value, the program further comprises a process for allowing the computer to change mapping information between the first address and the second address. - View Dependent Claims (31)
-
Specification