Information processing system
US-2024248797-A1 · Jul 25, 2024 · US
US9280301B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9280301-B2 |
| Application number | US-201414501368-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 30, 2014 |
| Priority date | Aug 28, 2013 |
| Publication date | Mar 8, 2016 |
| Grant date | Mar 8, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method for recovering erroneous data is disclosed, the method includes: when data in a storage block that is included in a solid state disk (SSD) is read, performing a first error check on data on a certain page of the storage block to acquire erroneous data on the page; if a first number of pieces of the erroneous data on the page is smaller than or equal to a preset first threshold, performing an error checking and correction (ECC) recovery on the data on the page; and if the first number is greater than the preset first threshold, acquiring data from spare space according to a storage position of the erroneous data on the page and a fixed entry corresponding to the storage block, and replacing the erroneous data on the page with the acquired data, where the fixed entry includes a storage position of each data stored in the spare space.
Opening claim text (preview).
What is claimed is: 1. A method for recovering erroneous data, comprising: performing a first error check on data on a certain page of a storage block to acquire erroneous data on the page when data in the storage block that is comprised in a solid state disk is read; performing an error checking and correction (ECC) recovery on the data on the page when a first number of pieces of the erroneous data on the page is smaller than or equal to a preset first threshold; and acquiring data from spare space according to a storage position of the erroneous data on the page and a fixed entry corresponding to the storage block when the first number is greater than the preset first threshold; and replacing the erroneous data on the page with the acquired data when the first number is greater than the preset first threshold, wherein the fixed entry comprises a storage position of each data stored in the spare space. 2. The method according to claim 1 , wherein after acquiring the data from the spare space according to the storage position of the erroneous data on the page and the fixed entry corresponding to the storage block, and replacing the erroneous data on the page with the acquired data when the first number is greater than the preset first threshold, the method further comprises: performing a second error check on the data on the page to acquire the erroneous data on the page; performing an ECC recovery on the data on the page when a second number of pieces of erroneous data on the page is smaller than or equal to the preset first threshold; labeling the storage block as a bad block when the second number is greater than the preset first threshold; acquiring data from a preset number of storage blocks according to a page identity of the page when the second number is greater than the preset first threshold; determining whether to perform a redundant array of independent disks (RAID) recovery on the data on the page according to the acquired data; and performing a RAID recovery on the data on the page when a determination is made to perform the RAID recovery on the data on the page according to the acquired data. 3. The method according to claim 1 , wherein after performing the first error check on the data on the certain page of the storage block to acquire the erroneous data on the page, the method further comprises: acquiring a storage position of erroneous data on each page in the storage block; acquiring erroneous data in a same storage position; counting the number of errors in the erroneous data in a same storage position; selecting a first preset number of storage positions with the greatest number of errors; and storing the selected storage positions in a temporary entry corresponding to the storage block. 4. The method according to claim 1 , wherein after performing the first error check on the data on the certain page of the storage block to acquire the erroneous data on the page, the method further comprises: acquiring erroneous data in each storage position on the page; counting the number of errors in the erroneous data in each storage position on the page according to the erroneous data in each storage position on the page; selecting a first preset number of storage positions with the greatest number of errors; and storing the selected storage positions and a page identity of the page in a temporary entry corresponding to the storage block. 5. The method according to claim 1 , wherein after performing the first error check on the data on the certain page of the storage block to acquire the erroneous data on the page, the method further comprises: acquiring a storage position of erroneous data on each page in the storage block; acquiring erroneous data in a same storage position; counting the number of errors in the erroneous data in a same storage position; selecting a second preset number of storage positions from the storage positions of the erroneous data in the storage block according to the number of errors counted; and storing the selected storage positions and a page identity corresponding to the selected storage positions in a temporary entry corresponding to the storage block. 6. The method according to claim 1 , wherein after performing the ECC recovery on the data on the page when the second number of pieces of the erroneous data on the page is smaller than or equal to the preset first threshold, the method further comprises: acquiring an idle storage block in the solid state disk; and moving the data in the storage block to the idle storage block according to a fixed entry corresponding to the idle storage block. 7. The method according to claim 6 , further comprising replacing the fixed entry corresponding to the storage block with the temporary entry corresponding to the storage block. 8. A device for recovering erroneous data, comprising: a first acquiring module configured to perform a first error check on data on a certain page of a storage block to acquire erroneous data on the page when the data in the storage block that is comprised in a solid state disk is read; a first recovering module configured to perform an error checking and correction (ECC) recovery on the data on the page when a first number of pieces of the erroneous data on the page is smaller than or equal to a preset first threshold; and a first replacing module configured to acquire data from spare space according to a storage position of the erroneous data on the page and a fixed entry corresponding to the storage block when the first number is greater than the preset first threshold, and replace the erroneous data on the page with the acquired data when the first number is greater than the preset first threshold, wherein the fixed entry comprises a storage position of each data stored in the spare space. 9. The device according to claim 8 , further comprising: a second acquiring module configured to perform a second error check on the data on the page to acquire the erroneous data on the page; a second recovering module configured to perform the ECC recovery on the data on the page when a second number of pieces of the erroneous data on the page is smaller than or equal to the preset first threshold; a labeling module configured to label the storage block as bad when the second number is greater than the preset first threshold, and acquire data from a preset number of storage blocks according to a page identity of the page when the second number is greater than the preset first threshold; and a third recovering module configured to determine whether to perform a redundant array of independent disks (RAID) recovery on the data on the page according to the acquired data, and perform a RAID recovery on the data on the page when a determination is made to perform the RAID recovery on the data on the page according to the acquired data. 10. The device according to claim 8 , further comprising: a third acquiring module configured to acquire a storage position of erroneous data on each page in the storage block; a first counting module configured to acquire erroneous data in a same storage position, and count the number of errors in the erroneous data in a same storage position; and a first storing module configured to select a first preset number of storage positions with the greatest number of errors, and store the selected storage positions in a temporary entry corresponding to the storage block. 11. The device according to claim 8 , further comprising: a fourth acquiring module configured to acquire erroneous data in each storage position on the page; a second counting module configured to count the number of errors in the erroneous data in each storage
Parity data distribution in semiconductor storages, e.g. in SSD · CPC title
Migration mechanisms · CPC title
in relation to data integrity, e.g. data losses, bit errors · CPC title
Disk arrays, e.g. RAID, JBOD · CPC title
using arrangements adapted for a specific error detection or correction feature · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.