Non-volatile storage system compensating prior probability for low-density parity check codes
First Claim
1. A nonvolatile storage system, comprising:
- multiple nonvolatile storage media; and
at least one media controller, which is coupled to the multiple nonvolatile storage media,wherein the media controller includes;
a storage area configured to store management information, which includes probability management information denoting error probability information of a unit physical area of each of the multiple nonvolatile storage media; and
an error correcting circuit configured to perform coding and decoding by a low density parity check code,wherein the error probability is a probability that data within the unit physical area are incorrect, and is a prior probability or a number of corrected bits per data size when the data stored in the unit physical area are read in past time, andwherein the media controller is configured to, in a data read process;
(A) read data from a read-source physical area in a read-source nonvolatile storage medium;
(B) identify from the management information an error probability, which is the error probability of a unit physical area including the read-source physical area and is better suited to a state of the read source in the current read process than the error probability identified for the same unit physical area in a past read process; and
(C) use the error probability identified in (B) to correct the data read in (A) using the error correcting circuit;
and further comprising;
multiple nonvolatile storage devices configuring a RAID group; and
a storage controller, which is coupled to the multiple nonvolatile storage devices,wherein each of the multiple nonvolatile storage devices has one of the multiple nonvolatile storage media and the media controller,wherein the storage controller is coupled to multiple media controllers in the multiple nonvolatile storage devices, andwherein(a) a read-source nonvolatile storage device is configured to detect that correcting the data in (C) has failed and there is an error that cannot be corrected, wherein the read-source nonvolatile storage device among the multiple nonvolatile storage devices is a read-source of the data read in (A), and wherein a read-source media controller is the media controller in the read-source nonvolatile storage device,(b) wherein the read-source media controller is configured to send failure occurrence information denoting that a failure has occurred to the storage controller,(c) wherein the read-source media controller is configured to send free information denoting whether or not there is a free physical area in the one of the multiple nonvolatile storage media in the read-source nonvolatile storage device to the storage controller,(d) the storage controller is configured to receive the free information,(e) the storage controller is configured to determine whether or not the free information denotes the existence of the free physical area, and(f) in a case where the result of the determination in (e) is affirmative, the storage controller is configured to read data from nonvolatile storage devices in the RAID group other than the read-source nonvolatile storage device, construct data stored in the read-source nonvolatile storage device based on the data that have been read, and send the constructed data to the read-source nonvolatile storage device, in accordance with which the constructed data are stored in the free physical area of the read-source nonvolatile storage device;
wherein the storage controller is configured to, upon receiving the failure occurrence information, send a failure information request to the read-source nonvolatile storage device,the read-source nonvolatile storage device is configured to, in response to this request, send failure information and the free information to the storage controller so that the storage controller is able to receive the failure information and the free information in (d), andthe failure information includes information denoting the read-source nonvolatile storage medium of the data with the uncorrectable error.
1 Assignment
0 Petitions
Accused Products
Abstract
Provided in one embodiment is a nonvolatile storage system having multiple nonvolatile storage media and a controller coupled to the multiple nonvolatile storage media. The controller has a storage area configured to store management information including probability management information denoting error probability information of a unit physical area in a nonvolatile storage medium, and an error correcting circuit configured to carry out coding and decoding by a low density parity check code. The controller, in a data read process, is configured to identify based on management information an error probability, uses the identified error probability to correct the read data using the error correcting circuit.
-
Citations
12 Claims
-
1. A nonvolatile storage system, comprising:
-
multiple nonvolatile storage media; and at least one media controller, which is coupled to the multiple nonvolatile storage media, wherein the media controller includes; a storage area configured to store management information, which includes probability management information denoting error probability information of a unit physical area of each of the multiple nonvolatile storage media; and an error correcting circuit configured to perform coding and decoding by a low density parity check code, wherein the error probability is a probability that data within the unit physical area are incorrect, and is a prior probability or a number of corrected bits per data size when the data stored in the unit physical area are read in past time, and wherein the media controller is configured to, in a data read process; (A) read data from a read-source physical area in a read-source nonvolatile storage medium; (B) identify from the management information an error probability, which is the error probability of a unit physical area including the read-source physical area and is better suited to a state of the read source in the current read process than the error probability identified for the same unit physical area in a past read process; and (C) use the error probability identified in (B) to correct the data read in (A) using the error correcting circuit; and further comprising; multiple nonvolatile storage devices configuring a RAID group; and a storage controller, which is coupled to the multiple nonvolatile storage devices, wherein each of the multiple nonvolatile storage devices has one of the multiple nonvolatile storage media and the media controller, wherein the storage controller is coupled to multiple media controllers in the multiple nonvolatile storage devices, and wherein (a) a read-source nonvolatile storage device is configured to detect that correcting the data in (C) has failed and there is an error that cannot be corrected, wherein the read-source nonvolatile storage device among the multiple nonvolatile storage devices is a read-source of the data read in (A), and wherein a read-source media controller is the media controller in the read-source nonvolatile storage device, (b) wherein the read-source media controller is configured to send failure occurrence information denoting that a failure has occurred to the storage controller, (c) wherein the read-source media controller is configured to send free information denoting whether or not there is a free physical area in the one of the multiple nonvolatile storage media in the read-source nonvolatile storage device to the storage controller, (d) the storage controller is configured to receive the free information, (e) the storage controller is configured to determine whether or not the free information denotes the existence of the free physical area, and (f) in a case where the result of the determination in (e) is affirmative, the storage controller is configured to read data from nonvolatile storage devices in the RAID group other than the read-source nonvolatile storage device, construct data stored in the read-source nonvolatile storage device based on the data that have been read, and send the constructed data to the read-source nonvolatile storage device, in accordance with which the constructed data are stored in the free physical area of the read-source nonvolatile storage device; wherein the storage controller is configured to, upon receiving the failure occurrence information, send a failure information request to the read-source nonvolatile storage device, the read-source nonvolatile storage device is configured to, in response to this request, send failure information and the free information to the storage controller so that the storage controller is able to receive the failure information and the free information in (d), and the failure information includes information denoting the read-source nonvolatile storage medium of the data with the uncorrectable error. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
(D) compute an error probability corresponding to a set of pages, which includes the read-source page, by dividing the number of bits corrected in (C) by the size of the data that have been read in (A); and (E) write the error probability computed in (D) to the probability management information as the error probability corresponding to the set of pages that includes the read-source page, and the error probability identified in (B) in a next data read process, for which the same set of pages as the read-source set of pages is the read source, constitutes the error probability that is suited to the state of the read-source set of pages in the next data read process.
-
-
4. A nonvolatile storage system according to claim 2, wherein
the probability management information includes a last data writing time, which is the time at which the data have been last written, and a time-dependent parameter, which is a parameter that depends on time, for each set of pages, the error probability information is the time-dependent parameter, the read-source media controller is configured to, in a case where data have been written to a page, write the time at which the data have been written to the page in the probability management information as a last data writing time corresponding to the set of pages that includes the programming-destination page, the read-source media controller is configured to, in (B) of the data read process, identify on a basis of the management information the last data writing time and the time-dependent parameter corresponding to the set of pages that includes the read-source page, compute an elapsed time from the identified last data writing time to the read time, which is the time of the data read process, and compute the error probability corresponding to the set of pages that includes the read-source page by using the identified time-dependent parameter and the computed elapsed time, and the read-source media controller is configured to, in the data read process: -
(D) compute the error probability corresponding to the set of pages that includes the read-source page by dividing the number of bits corrected in (C) by the size of the data that has been read in (A); and (E) use the error probability computed in (B), the error probability computed in (D), the last data writing time used in (B), and the read time used in (B) to compute the time-dependent parameter corresponding to the set of pages that includes the read-source page, and write the computed time-dependent parameter to the probability management information as the time-dependent parameter corresponding to the set of pages that includes the read-source page, and the error probability identified in (B) in a next data read process, for which the same set of pages as the read-source set of pages is the read source, constitutes the error probability that is suited to the state of the read-source set of pages in the next data read process.
-
-
5. A nonvolatile storage system according to claim 1, wherein
the probability management information includes an error probability for each combination of one or more types of parameters, which have an impact on the error probability, the read-source media controller is configured to, in (B), identify the error probability corresponding to a value of the one or more types of parameters in the data read process, and the error probability identified in (B) of the current data read process constitutes the error probability that is better suited to the read-source page than the error probability identified in (B) of a past data read process in which the same page as the read source page is the read source. -
6. A nonvolatile storage system according to claim 5, wherein the one or more types of parameters is one or more types from among the number of data writing and/or the number of data erases for each block, the number of data reads for each block, the last data writing time for each block, and the temperature of the flash memory.
-
7. A nonvolatile storage system according to claim 1, wherein
the error probability information is a value denoting an error probability, the media controller is configured to, in a data read process: -
(D) compute the error probability corresponding to the unit physical area including the read-source physical area by dividing the number of bits corrected in (C) by the size of the data read in (A); and (E) write the error probability computed in (D) to the probability management information as the error probability corresponding to the unit physical area including the read-source physical area, and the error probability identified in (B) in a next data read process for which the same unit physical area as the read-source unit physical area is the read source, constitutes the error probability that is suited to state of the read-source physical area of the next data read process.
-
-
8. A nonvolatile storage system according to claim 7, wherein
the nonvolatile storage device is a nonvolatile memory device, the nonvolatile storage medium is an m-value multilevel cell flash memory, each flash memory is configured from multiple blocks, each of the blocks is configured from multiple pages, the unit physical area corresponds to a page of a flash memory and a physical area corresponds a block of a flash memory, the probability management information denotes error probability information for each set of pages for each flash memory, and the set of pages is a set of pages for which the remainders obtained by dividing the page numbers by m are identical. -
9. A nonvolatile storage system according to claim 1, wherein
the probability management information includes a last data writing time, which is the time at which the data have been last written, and a time-dependent parameter, which is a parameter that depends on time, for unit physical area, the error probability information is the time-dependent parameter, the media controller is configured to, in a case where data has been written to a physical area, write the time at which this data has been written to the physical area in the probability management information as the last data writing time corresponding to the unit physical area that includes the writing-destination physical area, the media controller is configured to, in (B) of the data read process, identify on a basis of the management information the last data writing time and the time-dependent parameter corresponding to the unit physical area that includes the read-source physical area, compute the elapsed time from the identified last data writing time to the read time, which is the time of the data read process, and compute the error probability corresponding to the read-source unit physical area by using the identified time-dependent parameter and the computed elapsed time, and the media controller is configured to, in the data read process: -
(D) compute the error probability corresponding to the read-source unit physical area by dividing the number of bits corrected in (C) by the size of the data that have been read in (A); and (E) use the error probability computed in (B), the error probability computed in (D), the last data writing time used in (B), and the read time used in (B) to compute the time-dependent parameter corresponding to the set of pages that includes the read-source page, and write the computed time-dependent parameter to the probability management information as the time-dependent parameter corresponding to the read-source unit physical area, and the error probability computed in (B) in a next data read process, for which the same unit physical area as the read-source unit physical area is the read source, constitutes the error probability that is suited to the state of the read-source unit physical area in the next data read process.
-
-
10. A nonvolatile storage system according to claim 9, wherein the nonvolatile storage device is a nonvolatile memory device,
the nonvolatile storage medium is an m-value multilevel cell flash memory, each flash memory is configured from multiple blocks, each of the blocks is configured from multiple pages, the unit physical area corresponds to a page of a flash memory and a physical area corresponds a block of a flash memory, the probability management information denotes error probability information for each set of pages for each flash memory, and the set of pages is a set of pages for which the remainders obtained by dividing the page numbers by m are identical. -
11. A nonvolatile storage system according to claim 1, wherein the probability management information includes an error probability for each combination of one or more types of parameters, which have an impact on the error probability,
the media controller is configured to, in (B), identify the error probability corresponding to a value of the one or more types of parameters in the data read process, and the error probability identified in (B) of this data read process constitutes the error probability that is better suited to the read-source unit physical area than the error probability identified in (B) of a past data read process in which the same unit physical area as the read source unit physical area is the read source. -
12. A nonvolatile storage system according to claim 1, wherein the media controller is configured to detect that correcting the data in (C) has failed and there is an error that cannot be corrected, and to output failure information, and
the failure information includes information denoting the read-source nonvolatile storage medium with the uncorrectable-error data.
Specification