CN1959648B - Method for establishing error encoding scheme and equipment for reducing data loss - Google Patents

Method for establishing error encoding scheme and equipment for reducing data loss Download PDF

Info

Publication number
CN1959648B
CN1959648B CN2006101265838A CN200610126583A CN1959648B CN 1959648 B CN1959648 B CN 1959648B CN 2006101265838 A CN2006101265838 A CN 2006101265838A CN 200610126583 A CN200610126583 A CN 200610126583A CN 1959648 B CN1959648 B CN 1959648B
Authority
CN
China
Prior art keywords
data
redundant
information
matrix
redundant information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2006101265838A
Other languages
Chinese (zh)
Other versions
CN1959648A (en
Inventor
A·多拉基亚
胡晓宇
I·伊利亚迪斯
E·S·埃莱夫特里乌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Core Usa Second LLC
GlobalFoundries Inc
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1959648A publication Critical patent/CN1959648A/en
Application granted granted Critical
Publication of CN1959648B publication Critical patent/CN1959648B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control

Abstract

One embodiment disclosed is method for protecting data stored on at least one storage unit against uncorrectable media errors. The method includes associating a given redundancy set of at least one redundancy information sector (R) with a given data set of at least two data information sectors (D). The information content of the redundancy set is computed dependent on the information content of the data set. A storing operation stores the information content of the redundancy set consecutively with the information content of the data set forming a segment such that the redundancy set is placed logically in between a first part and a second part of the data set, and accessing at least one data information sector (D) in the data set by reading and/or writing the information content of the at least one data information sector (D) and at least one redundancy information sector (R) in the redundancy set with a single request.

Description

Create the equipment of the method and the minimizing data degradation of Error Correction of Coding scheme
Technical field
The present invention relates to a kind of Error Correction of Coding scheme of creating to reduce the method for data degradation.It also relates to method, equipment, computer program and the computer program that reduces data degradation.It also relates to protection and is stored in the data at least one storage unit place in case the system of the media error that can not correct.
Background technology
Storage unit for example based at least one disk or CD or solid-state memory as storage medium.Along with the increase of the memory capacity of single storage unit, the possibility that runs into the relevant mistake of at least one medium when reading the data at least one storage medium that is stored in storage unit is also increasing.In the time can not assigning to correct a mistake by the particular portion that reads described medium again, data can incur loss.Be distributed to the redundant data of two or more storage unit by storage, can improve the reliability of the system that comprises described two or more storage unit.This system is called as Redundant Array of Independent Disks.The system that has disposed RAID mainly reduces the data degradation that the utter failure because of storage unit brings.
US 2005/0108594 A1 has disclosed and has a kind ofly protected data on the disc driver in case the method for the media error that can not correct.By wherein that the redundant information sector is related with data message sector technology, provide the protection of avoiding occurring the media error that to correct for the storage system that disposes RAID.Described data message sector and described redundant information sector are written into single storage unit as single section.Described redundant information is based on Reed Solomon code (a kind of code based on XOR) or one dimension odd even parity check.
Therefore, need provide the previous technology that proposes of a kind of ratio more simply to create encoding scheme to reduce the method for data degradation.Equally, need provide the previous technology that proposes of a kind of ratio more simply to reduce method, equipment, computer program and the computer program of data degradation.Also need to provide the more simple and reliable protection of the previous technology that proposes of a ratio to be stored in data at least one storage unit in order to avoid the system of the media error that appearance can not be corrected.
Summary of the invention
Embodiment according to a first aspect of the invention, provide a kind of and be used to create the Error Correction of Coding scheme to reduce the method for data degradation, described data comprise the given redundant collection with at least two redundant information entities related with the given data set with at least two data information entities, calculate the information content of described redundant collection according to the information content of described data set, said method comprising the steps of: select step substantially, be used to select the basic coding scheme represented by fundamental matrix, wherein each redundant information entity is by line display, and each information entity is shown by tabulation; And arranged in matrix step, be used to be provided with the row with described fundamental matrix subclass objective matrix and be used for changing the order of row according to described fundamental matrix, satisfy the given pattern (pattern) of nonzero element in given at least degree until described objective matrix.This function allows to make up computing engines so that calculate the described information content of described redundant collection, and the computing engines that uses in its technology than previous proposition is simpler.The given pattern of described nonzero element influences the complicacy of described Error Correction of Coding scheme, influences its realization in described computing engines thus.Described information entity can be that sector on one or byte or the storage unit or any other are used to store or transmit or receive the suitable entity of information.
Preferred embodiment according to a first aspect of the invention, the given pattern of described nonzero element is selected as comprising the principal diagonal of the square pattern submatrix of described objective matrix, described principal diagonal has the element that is mainly non-zero, and line number that described objective matrix has and columns equal the redundant information entity number that described redundancy is concentrated.The given pattern of described nonzero element thereby more simple and regular also permission make up computing engines more simply.
In this regard, the given pattern of described nonzero element is selected as also comprising that the contiguous diagonal line with the adjacent layout of described principal diagonal of the described square pattern submatrix of described objective matrix is favourable, and the cornerwise element of described vicinity is selected to and is mainly non-zero.This allows to make up computing engines, so that can handle the cornerwise element of described vicinity from the intermediate result of the element calculating of described principal diagonal by utilization.Described computing engines thereby can be more effective.
Other preferred embodiments according to a first aspect of the invention, described fundamental matrix are selected as given Hamming distance for described basic coding scheme and have the data information entities number of minimum non-zero entry prime number, minimum described data centralization and the redundant information entity number that minimum described redundancy is concentrated.This allows to reduce the operand that is used to calculate the described redundant information content that collects.
Other preferred embodiments according to a first aspect of the invention, in described arranged in matrix step, the concentrated redundant information entity number of each cage rank of matrix of the described objective matrix that the redundant information entity number that the order that changes described row is concentrated until columns and described redundancy equates and described redundancy equates.The readable data information entity not continuously that this allow to recover to equal at most redundant information entity number that described redundancy concentrates is also referred to as " deletion (erasures) ".Thus, more reliably protected data in case data degradation and reduce the possibility of data degradation.
Other preferred embodiments according to a first aspect of the invention, the error correction scheme of described establishment is based on the XOR of the information content of calculating all data information entities of being represented by the nonzero element in the every row of described objective matrix respectively.This allows the more simple and higher Error Correction of Coding scheme of performance, has reduced the expense of calculating redundant collection simultaneously, and compares easier realization with the technology of previous proposition.
In this regard, described basic coding scheme is favourable based on a kind of coding in Hamming code or the extended hamming code.This makes that described Error Correction of Coding scheme is more reliable.
Embodiment according to a second aspect of the invention, a kind of method that is used to reduce data degradation is provided, described data comprise the given redundant collection with at least two redundant information entities related with the given data set with at least two data information entities, the information content according to described data set is calculated the information content of described redundant collection by using the Error Correction of Coding scheme, described Error Correction of Coding scheme is represented by parity matrix, wherein each redundant information entity is by line display, and each information entity of described data is shown by tabulation, and at least two square submatrixs of described parity matrix have element and are mainly the diagonal line of non-zero and have line number and the columns that equates with redundant information entity number that described redundancy is concentrated, and the data information entities of representing the continuous placement of described data set, described method comprises: first calculation procedure is used for calculating the intermediate result of described redundant information entity by handling described data information entities on described at least two principal diagonals; And second calculation procedure, be used for calculating the information content of described redundant information entity according to described intermediate result.Because the principal diagonal of described at least two square submatrixs of described parity matrix has the element that is mainly non-zero, so it is more simple to calculate the information content of described redundant collection.
Preferred embodiment according to a second aspect of the invention, at least one square submatrix that the element of described principal diagonal is mainly the described parity matrix of non-zero also has the contiguous diagonal line that element is mainly non-zero, and described second calculation procedure comprises and utilizes described intermediate result to handle data information entities on the corresponding contiguous diagonal line.This allows more effectively to calculate the information content of described redundant collection.
The corresponding information content of each redundant information entity that other preferred embodiments according to a second aspect of the invention, described redundancy are concentrated is calculated as the XOR of corresponding information content of all data information entities of the described data centralization of being represented by the nonzero element in the corresponding line of described parity matrix.This allows to reduce expense when calculating the information content of described redundant collection, causes higher performance.The also easier realization of described method.
Embodiment according to a third aspect of the invention we provides a kind of equipment that is used to reduce data degradation.This equipment is corresponding to the embodiment and the advantage thereof of a second aspect of the present invention.
Embodiment according to a forth aspect of the invention provides a kind of and has been used to protect the data that are stored at least one storage unit in case the system of the media error that can not correct.Described system comprises equipment and at least one storage unit that comprises a third aspect of the present invention.Each information entity is represented the sector on described at least one storage unit.Described system is corresponding to described equipment and advantage thereof.
Preferred embodiment according to a forth aspect of the invention, described system configuration are the redundant array of individual memory cells.Described configuration is also referred to as Redundant Array of Independent Disks.This allows higher reliability, particularly under the situation that a storage unit falls flat.Redundancy has reduced data degradation in the dish that redundant and redundant collection provides between the dish that the redundant array by individual memory cells provides thus.The advantageous embodiments of a third aspect of the present invention is not limited to dish, also can comprise the storage unit of any other kind.
Embodiment according to a fifth aspect of the invention provides a kind of computer program that is used to reduce data degradation, and described computer program comprises the computer-readable medium that comprises the programmed instruction that can be carried out by computing machine.Described programmed instruction is corresponding to the embodiment and the advantage thereof of a second aspect of the present invention.
Embodiment according to a sixth aspect of the invention provides a kind of computer program that is used to reduce data degradation that comprises programmed instruction.Described programmed instruction is corresponding to the embodiment and the advantage thereof of a second aspect of the present invention.
Description of drawings
Now the mode by example with reference to the accompanying drawings, these accompanying drawings are:
Fig. 1 schematically shows a system;
Fig. 2 is the calcspar of the system shown in Fig. 1;
Fig. 3 be comprise five storage unit configuration the synoptic diagram of the data organization in the system of RAID rank 5;
Fig. 4 be comprise eight storage unit configuration the synoptic diagram of data organization of a section in the system of RAID rank 5;
Fig. 5 shows the interweave parity matrix of parity check code of expression;
Fig. 6 A shows the parity matrix of the known extended hamming code of expression;
Fig. 6 B shows the parity matrix of sparse extended hamming code;
Fig. 6 C shows the parity matrix of sparse Hamming code;
Fig. 7 shows the process flow diagram of the method that is used for creating automatically the Error Correction of Coding scheme;
Fig. 8 shows the parity matrix of expression based on the Error Correction of Coding scheme of the automatic establishment of the parity matrix shown in Fig. 6 C;
Fig. 9 shows the process flow diagram of the method that is used to reduce data degradation; And
Figure 10 shows demonstration respectively based on the table of the attribute of the Error Correction of Coding scheme of the parity matrix shown in Fig. 5,6B, the 6C and 8.
Embodiment
Fig. 1 shows the system that is used to obtain to the understanding of embodiments of the invention.This system comprises at least one storage unit 100, and in the present embodiment, storage unit 100 is by comprising that at least one disk 101 represents as the hard disk drive of storage medium and read/write head 102.Read/write head 102 can be placed on the selected magnetic track of described at least one disk 101.By use determine magnetic in the selected data district of read/write head 102 on disk 101 selectively direction with binary data storage on disk 101.Described system also comprises the equipment 103 that is used to reduce data degradation.Described at least one storage unit 100 links to each other with equipment 103.
Fig. 2 shows the calcspar of system shown in Figure 1.Equipment 103 comprises and (for example is used to connect main frame, computer system) host interface 104, be used to control the controller 105 of described at least one storage unit 100, comprise the computing engines 106 and the external memory storage 108 that is connected to computing engines 106 of internal storage 107.Described host interface 104, controller 105 and computing engines 106 are connected so that data can be by described at least one storage unit 100 requesting host interface 104 or opposite and between host interface 104 and the computing engines 106 or transmission between controller 105 and computing engines 106.
Fig. 3 shows the synoptic diagram of the data organization in the system that has disposed RAID rank 5, described system comprises the array 200 of five storage unit 100, and described five storage unit are marked as the first storage unit HDD1, the second storage unit HDD2, the 3rd storage unit HDD3, the 4th storage unit HDD4 and the 5th storage unit HDD5.Described five storage unit 100 are connected with equipment 103 respectively.Data are organized in the band 202.Band 202 is crossed over all five storage unit 100.For each band 202, each individual memory cells 100 of system all comprises a band 203.Each band 203 comprises four sections 204, and each section 204 comprises 16 data blocks, and each data block comprises eight sectors.Therefore each section 204 comprises 128 sectors.
In the system that has disposed RAID rank 5, each band 203 has user data E or RAID parity data P.RAID parity data P is calculated as mould 2 and (being also referred to as XOR or XOR) of all customer data E in the same band 202.The position of RAID parity data P is rotated to a certain other storage unit 100 in the array 200 band in succession from a storage unit 100 respectively.If a certain storage unit 100 failures, other user data E and the RAID parity data P the same band 202 on being stored in other storage unit 100 of still working then can recover to be stored in relative users data E and RAID parity data P on the storage unit 100 of failure.The system that has disposed RAID rank 5 allows by recovering damaged data and the spare memory cell 100 that comprises in its writing system being rebuild the information content of the storage unit 100 of a certain failure.
Before finishing reconstruction, if media error occurs on 100 failures of second storage unit or a certain other storage unit 100, then in the system that has disposed RAID rank 5 data degradation can appear.Along with the increase of the memory capacity of single storage unit 100, the total bytes that reads during reconstruction operation becomes more.This has increased the possibility that runs into the media error (causing one or more sectors to become not readable usually) that can not correct.When the failure of a storage unit 100 in the media error that can not correct and the system took place simultaneously, problem was especially serious.For example, if disposed a storage unit 100 failures in the system of RAID rank 5, then process of reconstruction can read all data on the remaining memory cell 100 so that rebuild impaired data on standby storage unit 100.In this stage, the media error that can not correct on any storage unit of still working 100 in array 200 can cause data degradation, because there is not method to rebuild the information content of the sector that can not correct.In the stage that this easily goes wrong, the risk of data degradation becomes bigger, because disk size maintains sustained and rapid growth the increase of disk bandwidth and disk reliability will be slowly many.The theory and practice result shows the relevant fault of medium during the main source of the data degradation in the system that has disposed RAID rank 5 is to rebuild.
By redundant in the dish (being also referred to as by sector protection (SPIDRE) redundant in coiling) is provided, can reduce because one or more media error are brought the risk of data degradation.Fig. 4 has disposed the synoptic diagram of data organization of a section 204 of the system of RAID rank 5 for other, described system comprises eight storage unit 100, is labeled as the first storage unit HDD1, the second storage unit HDD2, the 3rd storage unit HDD3, the 4th storage unit HDD4, the 5th storage unit HDD5, the 6th storage unit HDD6, the 7th storage unit HDD7 and the 8th storage unit HDD8 respectively.Section 204 comprises 16 data blocks on each storage unit 100, they have redundant data S in user data E, RAID parity data P or the dish.Each section 204 on each storage unit 100 all has a data block that has redundant data S in the dish.Redundant data S is related with section 204 user data E or RAID parity data P on the same storage unit 100 respectively in the dish.When user data E and the RAID parity data P section of being written into 204 or when being updated in section 204 respectively, the computing engines 106 in the equipment 103 can be used for calculating and provides the information content of redundant data S in the dish that calculates from the user data E and the RAID parity data P of section 204.Computing engines 106 also can be used for respectively from the information content of other user data E and RAID parity data P and is stored in same section 204 the dish of same storage unit 100 redundant data S recovering not the user data E of readable sector and the information content of RAID parity data P respectively.
Notion redundant in the dish can be applicable to any existing RAID architecture or rank, for example, and RAID rank 5, rank 51, rank 6 or level n+3.The loss that is stored in the data on the array 200 that the redundant main failure that reduces because of a certain complete storage unit 100 of the RAID that is provided by RAID redundant data S causes.Redundancy has reduced the loss that is stored in the data on each independent storage unit 100 that brings because of the media error that can not correct in the dish.Be appreciated that notion redundant in the dish also can be applicable to only comprise the system of single storage unit 100.
To each modification of the user data E in the section 204 (for example, section 204 the 4th data block on the second storage unit HDD2) all should follow renewal (for example, the 9th data block of the section 204 on the second storage unit HDD2) to redundant data S in the dish related with the user data E that revised in same section 204.And then the RAID parity data P corresponding with the user data E that has revised also should be updated (for example, the 4th data block of the section 204 on the 8th storage unit HDD8).Because the renewal of RAID parity data P, redundant data S also should be updated (for example, the 9th data block of the section 204 on the 8th storage unit HDD8) in the dish related with the RAID parity data P that has upgraded.Write these four data blocks separately and can cause four requests.Be stored in same section 204 piece, the piece of RAID parity data P and the relevant block of coiling interior redundant data S of only using first request, 205 and second request 206 to come updating user data E in succession by coiling interior redundant data S and user data E.
(that is, any storage unit 100 does not all break down) can read user data E from least one storage unit 100, and need not to read simultaneously corresponding RAID parity data P in normal running.Correspondingly, can read user data E, and need not to read simultaneously redundant data S in the dish, as long as media error during reading user data E, do not occur from least one storage unit 100.Advantageously use single request to finish and read some continuous user data E.This request also can comprise reads redundant data S in the dish, if it is between each piece by the included user data E of request.Be appreciated that in the case, can ignore the information content of redundant data S in the dish.
At least two data blocks that read and write at least two storage unit 100 are used in the request of each updating user data E: be respectively the user data E and the RAID parity data P that have revised, and redundant data S in the corresponding dish.Using independent request to read and write each data block in four data blocks will use four requests of reading add four as the each renewal of user data E to write request.By using first request, 205 and second request 206, only use two requests of reading to add two and write the renewal that request just can realize user data E.One or more other data blocks (particularly user data E or RAID parity data P) in piece that can use same request to read respectively and write logically to place the user data E that has revised or RAID parity data P and the dish between the relevant block of redundant data S.Distance in data block number that each request is asked so the piece that depends on the user data E that has revised or RAID parity data P and the dish between the relevant block of redundant data S.Compare with end with the beginning that will coil the interior redundant data S section of placing 204,, can reduce the average data piece number that all read and/or write request by coiling the approximately centre of the section of being placed on 204 of interior redundant data S.In the present embodiment, each request average data piece number of reading and/or writing is about 5.27.The seek time of each request be used to read one for example the common ratio of the time of the data block of 4KB be about 50 to 1.Visit each data block in four data blocks of above example so that updating user data E, RAID parity data P compare with redundant data S in the dish with using independent request, it is therefore littler to the influence of whole read when updating user data E (particularly) to use each request to read and/or write a plurality of data blocks.
As an example, the size of each data block is 4KB.Section 204 has 128 sectors.Each data block is divided into eight sectors.The data block that has redundant data S in the dish is counted as the redundancy collection of redundant information sector R.The quantity r of redundant information sector R is 8.Each piece of user data E has eight data message sector D.The piece that 15 user data E are arranged in the section 204.Therefore, the quantity n that has the data message sector D of user data E is 120.All 120 data message sector D of all pieces of the user data E of section 204 are counted as a data set.Described redundant collection is associated with data set in sections 204.Calculate the information content of described redundant collection according to the information content of described data set.Specifically, each redundant information sector R that described redundancy is concentrated is counted as the parity checking according to the respective associated subclass calculating of described data set, that is, calculate each redundant information sector R as the parity checking of respective associated set of data message sector D that is the subclass of described data set.
Can not be when storage unit 100 correctly reads the piece of user data E, the piece of this user data E be marked as so-called " deletion ".In some cases, can use the information content of redundant data S in other pieces of same section 204 user data E on the same storage unit 100 and the dish to recover the information content of described deletion.Error correcting capability by providing the redundancy collection related with the data set of section in 204 to realize (or more precisely, deletion recovery capability) depends on the corresponding selection of the data message sector D that is used to calculate corresponding redundant information sector R.Using the least possible calculating operation to calculate the information content of redundant collection is desirable so that reduce the needs of the computing engines 106 that uses complexity.
Fig. 5 shows parity check matrix H, and it represents the so-called checksum coding that interweaves (IPC coding), IPC-8 (128,120) coding specifically, and it is used for one embodiment of the present of invention and after this is being called the parity matrix of the first kind.Parity check matrix H has 8 row, corresponding redundant each the redundant information sector R that concentrates of every row.Parity check matrix H also has 128 row, each sector of the corresponding section 204 of every row.Nonzero element in the parity check matrix H is shown a little.For each data block, the checksum coding that interweaves has eight nonzero elements.Nonzero element is placed on the diagonal line of each 8 * 8 different submatrix of representing a data block.All nonzero element marks in every row of parity check matrix H be formed for calculating all sectors of respective associated subclass of the data set of corresponding redundant information sector R.XOR by all data message sector D of mark in the corresponding line that calculates parity check matrix H calculates corresponding redundant information sector R.Use the described checksum coding that interweaves, having quantity nz is 128 nonzero element,, should carry out the information content that 128 XORs calculate redundant collection that is, that is, and and redundant data S in the dish of section 204.The smallest hamming distance dmin of checksum coding of interweaving is 2.The characteristic of the redundant information sector R that it is r that IPC-8 (128,120) coding has maximum correction quantity, that is, and the contiguous sector of the media error in maximum 8 sections of having 204 and any single sector media error.
Fig. 6 A shows the parity check matrix H of second, third and the 4th type that are used for one embodiment of the present of invention respectively to 6C.The parity check matrix H of second type shown in Fig. 6 A is 4 known extended hamming code for smallest hamming distance dmin.The quantity nz of nonzero element is 576 in this parity check matrix H.The parity check matrix H of the 3rd type shown in Fig. 6 B is an extended hamming code, and parity check matrix H is sparse, that is, the quantity nz of nonzero element reduces to 512.Smallest hamming distance dmin is 4.In the parity check matrix H of the 4th type shown in Fig. 6 C, further reduced the quantity nz of nonzero element.It is sparse that Fig. 6 C shows parity check matrix H and smallest hamming distance dmin is 3 Hamming code.The quantity nz of nonzero element is 376.
Respectively for given smallest hamming distance dmin be 4 or 3, the quantity r of redundant information sector R be 8 and the quantity n of data message sector D be that the parity check matrix H of 120, the third and fourth types all has minimum nonzero element quantity nz.
At smallest hamming distance dmin is 3 o'clock, can guarantee that parity check matrix H has minimum non-zero entry prime number nz, because the row of the parity check matrix H of expression Hamming code form from scale-of-two tuple collection, and the quantity r of redundant information sector R element represents all non-zero number, and r the power of quantity that is up to 2 redundant information sector R subtracts 1.Can sort to the row of parity check matrix H so that the non-zero entry prime number nz of row from left to right increases.If use r the power of quantity be less than 2 redundant information sector R to subtract all sectors of 1 the row section of expression 204, then can guarantee the minimum number nz of nonzero element by the row of the selection leftmost side.Smallest hamming distance dmin can not guarantee the minimum number of nonzero element in an identical manner greater than 3 o'clock.
Also revised the parity check matrix H of third and fourth type, so that correct at most quantity be r redundant information sector R (promptly, maximum 8 contiguous sectors with media error) error correcting capability aspect, they embody the characteristic identical with the checksum coding that interweaves.Compare with the checksum coding that interweaves, extended hamming code has better error correcting capability, and this is because smallest hamming distance dmin is respectively 4 or 3.This allows any three and two sector media error in the section of correction 204 respectively extraly.Usually, can in section 204, correct smallest hamming distance dmin and subtract 1 single media error.Therefore the use extended hamming code causes the improved protection to storage unit 100; and therefore improved the reliability of storage unit 100; but also increased the computing power of computing engines 106 so that carry out the XOR of greater number; this is that the non-zero entry prime number nz in the parity check matrix H is more because compare with the checksum coding that interweaves.The error correcting capability of checksum coding of interweaving can be applicable to most high-end storage unit 100, and particularly most high-end hard disk drives (for example, combine small computer system interface, SCSI).Compare one of extended hamming code with higher error correcting capability with the checksum coding that interweaves and to be considered for low side storage unit 100, particularly the low side hard disk drive (for example, in conjunction with the Advanced Technology Attachment system, ATA or Serial Advanced Technology Attachment system, SATA).
For the needs that reduce the computing engines 106 that uses complexity and some characteristic that guarantees data protection, for example, correct quantity r the continuous not error correcting capability of readable sector of the redundant information sector R that causes because of media error at most, can improve parity check matrix H.Introduced two tolerance and come better relatively different Error Correction of Coding schemes based on different parity check matrix H.
First tolerance is XORO, or the XOR expense.XORO is to the measurement that assess the cost of programming XOR engine with all XORs (for example, calculating the information content of redundant collection) of finishing given task.The XOR engine is by computing engines 106 expressions.For the single XOR with k operand, XORO is defined as XORO (k)=k+1.XORO is the size of description operation number not.
Given task is because subtask and consume memory bandwidth, described subtask is mobile data or parity checking between storage unit 100 and external memory storage 108 for example, from external memory storage 108 user data E (is for example sent to main frame by host interface 104, computer system), perhaps data or parity checking are moved into or shift out XOR engine (that is, computing engines 106).Quantize the consumption of bandwidth of memory by second tolerance of MBWC by name.For example, if given task is (for example to calculate the given quantity data piece that receives from main frame, user data E or RAID parity data P) XOR and (for example with these data blocks and result of calculation, redundant data S in the dish) write at least one storage unit 100 together, the bandwidth of memory of then finishing this given task consumes MBWC and comprises several portions.In first, the given quantity data piece that receives from main frame is written into external memory storage 108.In second portion, described given quantity data piece is read the computing engines 106 from external memory storage 108.In third part, result of calculation is write back external memory storage 108.In the 4th part, will write at least one storage unit 100 to the piece and the result of calculation of determined number.Therefore, be transferred to and transmit three twices of result of calculation extraordinarily that add up to given quantity data piece from the data block of external memory storage.In this example, all data blocks all have identical size, for example, and 4KB.
Use IPC-8 (128,120) coding to further illustrate the calculating of XORO.Each redundant information sector R is the result of the XOR of 15 different pieces of information information sectors D among 120 data message sector D altogether of the section of being 204.In 8 * 128 parity check matrix H, catch the interweave correlativity of redundant information sector R to data message sector D, described parity check matrix H has the pattern of rule, described pattern comprises the submatrix of 16 8 * 8 different patterns, and described submatrix has the element of non-zero on corresponding principal diagonal.The every other element of each 8 * 8 pattern submatrix is zero.If all 120 data message sector D of section 204 are stored in the external memory storage 108, then can use and have 15 source operands (promptly, data message sector D) and the XOR of a target operand (that is redundant information sector R) calculate each redundant information sector R among eight redundant information sector R.Therefore, the XORO value of calculating each redundant information sector R equals 16, and the XORO value of calculating all eight redundant information sector R is 128.In this case, can calculate each redundant information sector R by ground, sector.
Consider that 120 data message sector D are stored in the continuous position of external memory storage 108 continuously, can reduce the complicacy of computing engines.Can use single XOR to calculate all eight redundant information sector R then with 15 source operands and a target operand.But in this case, each operand is crossed over eight continuous sectors.Calculated redundant information sector R also is stored in the external memory storage 108 continuously.Therefore, the XORO value of calculating all eight redundant information sector R is 16.The value of MBWC remains unchanged owing to the various computing of redundant information sector R and equals 47 data blocks.Opposite with above-mentioned situation, under present case, the calculating of each redundant information sector R is finished block by block.
Fig. 7 shows and is used for creating the Error Correction of Coding scheme automatically so that reduce the process flow diagram of the method for data degradation.The Error Correction of Coding scheme of being created provides balance at the complicacy and bandwidth of memory consumption (that is, XORO value and the MBWC value) aspect that reduce computing engines 106.Select in the step basic, parity check matrix H (for example, the parity check matrix H of the 4th type) is chosen as fundamental matrix.In the arranged in matrix step, revise selected fundamental matrix so that it shows the given pattern (for example, be similar to according to the pattern submatrix of IPC-8 (128,120) mode of rule) of nonzero element.But given pattern can be as requested and different.
Described method begins as the entrance with step S1.At step S2, carry out described basic selection step.In addition, the quantity r of redundant information sector R and the sector number L in the section 204 are set.For example, the quantity r of redundant information sector R is 8, and the sector number L in the section 204 is 128, comprises eight redundant information sector R and 120 data message sector D simultaneously.In step S3, objective matrix H ' is set.In this example, objective matrix H ' is set to the square unit matrix that line number and columns equal the quantity r of redundant information sector R.Described unit matrix is represented redundant information sector R.And then, by changing selected fundamental matrix at random (promptly, the order of row selected parity check matrix H) is provided with randomized fundamental matrix H1, remove initial r (quantity of redundant information sector R) row, if these are listed as representation unit matrix (being this situation) when the parity check matrix H with the 4th type is chosen as fundamental matrix.In addition, the vector I that comprises an element for each sector in the section 204 is set, that is, the number of elements of vector I equates with sector number L.The initial r of vector I (quantity of redundant information sector R) element is set to 1, and other elements are set to 0.In vector I, all row that appear at the randomized fundamental matrix H1 among the objective matrix H ' equally are marked as 1.
At step S4, the quantity r that the value of first variable i is set to redundant information sector R adds 1.Correspondingly, at step S5, the quantity r that the value of the second variable j is set to redundant information sector R adds 1.First variable i is represented the subscript when the prostatitis among the objective matrix H '.The second variable j represents the subscript when the prostatitis among the randomized fundamental matrix H1.At step S6, check whether the element of the vector I that the second variable j points to equals 0.If promptly, the respective column of randomized fundamental matrix H1 does not appear among the objective matrix H ' as yet, then in step S7, the row of the randomized fundamental matrix H1 that will be pointed to by the second variable j append to the position of being pointed to by first variable i among the objective matrix H '.
At step S8, check whether objective matrix H ' satisfies the given set of predetermined condition.Described predetermined condition depends on the requirement of Error Correction of Coding scheme as a result.The given set of this predetermined condition can for example comprise the objective matrix H ' of the given pattern that shows nonzero element, and for example, the element on the principal diagonal of corresponding modes submatrix is mainly non-zero.By the nonzero element counting number that for example shields respective element and shielding is covered, can easily check this.If the non-zero entry prime number of each pattern submatrix of being counted surpasses given threshold value, then described pattern can be regarded as existing in the corresponding modes submatrix of objective matrix H '.
The set of described predetermined condition can also comprise the objective matrix H ' of the given characteristic of the error correcting capability that shows the relevant scheme of Error Correction of Coding as a result.For example, realize correcting at most the abilities of r (quantity of redundant information sector R) continuous unreadable sector in the section 204, then columns each square submatrix of objective matrix H ' of equaling the quantity r of redundant information sector R should have the order of the quantity r that equals redundant information sector R.
If objective matrix H ' satisfies all predetermined conditions in the given set of described predetermined condition on given degree, then in step S9, keep appending to the row of objective matrix H ' and the currentElement of vector I is set to 1.Satisfy predetermined condition and be meant on given degree, for example, all different square submatrixs that are not objective matrix H ' all should show given pattern, but show given pattern at least the submatrix of determined number or number percent.At step S10, with the value increase by 1 of first variable i.At step S11, whether the value of checking first variable i sector number L in the section of equaling 204.If then described method finishes at step S12.Otherwise described method continues in step S5.
If in step S8, objective matrix H ' then deletes the row that append to objective matrix H ' all predetermined conditions in the given set of satisfying described predetermined condition on given degree in step S13.In step S14, increase by the value of the second variable j then to attempt the next column of randomized fundamental matrix H1.At step S15, whether the value of checking the second variable j sector number L in the section of equaling 204.If not, then described method continues at step S6.Otherwise, do not have more for the row of attempting.In this case, described method continues at step S3, that is, replacement objective matrix H ' and vector I and the row by the selected fundamental matrix of resequencing at random to create new randomized fundamental matrix H1 from fundamental matrix.If the currentElement of vector I is not equal to 0 in step S6, then described method also continues at step S14.
Fig. 8 show according to method shown in Figure 7 be derived as the terminal objective matrix H ' the parity check matrix H of the 5th type.This parity check matrix H satisfy element on the principal diagonal of each square pattern submatrix be mainly non-zero and when being applied as the Error Correction of Coding scheme, have at most can the section of correction 204 in eight conditions of the ability of readable sector not continuously.In addition, other predetermined conditions are to make the element of corresponding adjacent diagonal line in (if possible) each pattern submatrix be mainly non-zero.12 pattern submatrixs of the parity check matrix H of the 5th type satisfy this predetermined condition.
Can carry out computing and cover source operand the intermediate result that is stored in the internal storage 107 by making computing engines 106 with result of calculation or intermediate result T, and the nonzero element (the described principal diagonal that is mainly non-zero and the adjacent diagonal line that comprise the pattern submatrix) that utilizes given pattern, can further reduce XORO value and MBWC value.Only the computing that the data that are stored in the internal storage 107 are carried out does not influence the MBWC value, because do not use data to move between computing engines 106 and external memory storage 108.These computings are 2 to the contribution of XORO value.Therefore, being stored in intermediate result T in the internal storage 107 of computing engines 106 by use, to calculate redundant information sector R be favourable.
For example shown in Figure 8, can carry out following calculating.The corresponding information content of the data message sector D that processing is corresponding with the element of the principal diagonal of corresponding modes submatrix, draw the first, second, third, fourth, the 5th, the 6th, the 7th and the 8th intermediate result T1, T2, T3, T4, T5, T6, T7, T8, they have formed the intermediate result T that is stored in the internal storage 107 jointly.It is that the single XOR of eight sectors calculates that these results can use aforesaid operand size.This can be written as T=[T1, T2, T3, T4, T5, T6, T7, T8]=XOR (C9, C17 ... C97), wherein the size of each operand is 8, or is written as
T1=C9*C17*...*C97
T2=C10*C18*...*C98
T3=C11*C19*...*C99
T4=C12*C20*...*C100
T5=C13*C21*...*C101
T6=C14*C22*...*C102
T7=C15*C23*...*C103
T8=C16*C24*...*C104
For the second to the 13 principal diagonal, the information content of the data message sector D in x the sector of the Cx section of expression 204, and " * " expression XOR.For this XOR, the XORO value is 12, and the MBWC value is 12 * 8 sectors (that is 96 sectors).Can use intermediate result T to handle element on the corresponding adjacent diagonal line now:
T1=XOR(T1,T2)
T2=XOR(T2,T3)
T3=XOR(T3,T4)
T4=XOR(T4,T5)
T5=XOR(T5,T6)
T6=XOR(T6,T7)
T7=XOR(T7,T8)
Wherein each operand size is 1, or is written as
T1=T1*T2=C9*C10*C17*C18*...*C97*C98
T2=T2*T3=C10*C11*C18*C19*...*C98*C99
T3=T3*T4=C11*C12*C19*C20*...*C99*C100
T4=T4*T5=C12*C13*C20*C21*...*C100*C101
T5=T5*T6=C13*C14*C21*C22*...*C101*C102
T6=T6*T7=C14*C15*C22*C23*...*C102*C103
T7=T7*T8=C15*C16*C23*C24*...*C103*C104。
For this step, obtaining the XORO value is 7 * 2 (that is, 14), and the MBWC value is 0.As
Under handle the 14,15 and 16 principal diagonals:
T=[T1,T2,T3,T4,T5,T6,T7,T8]=XOR(T1,C105,C113,C121)
Wherein, the size of each operand is 8, or is written as
T1=T1*C105*C113*C121
T2=T2*C106*C114*C122
T3=T3*C107*C115*C123
T4=T4*C108*C116*C124
T5=T5*C109*C117*C125
T6=T6*C110*C118*C126
T7=T7*C111*C119*C127
T8=T8*C112*C120*C128。
For this step, the XORO value is 3, and the MBWC value is 3 * 8 (that is, 24).Total XORO value after this step is 30, and total MBWC value is 128 sectors or 16 data blocks.
Then can be by all the other nonzero elements of ground, sector individual processing parity check matrix H.164 nonzero elements are arranged not on one of one of principal diagonal or adjacent diagonal line in this parity check matrix H.
In addition, eight elements being arranged on principal diagonal or adjacent diagonal line is zero.They need other 172 XORs that the operand size is a sector altogether.This obtain extra XORO value be 172 and the MBWC value be 172 sectors.Therefore, for the information content of calculating redundant collection, total XORO value is 202, and the MBWC value is 300 sectors or 37.5 data blocks.Because from main frame the piece of 15 user data E is moved to external memory storage 108 and redundant data S in the piece of 15 user data E and the consequent dish that calculates is moved at least one storage unit 100, extra 16 data blocks of ten slender acanthopanaxs have been made contribution to the MBWC value.Thereby total MBWC value is about 69 data blocks.
For as described above with the about centre of the section of being placed on 204 of redundant information sector R, the row of the parity check matrix H that can be shifted circularly.For example, the initial column C1 of the embodiment of parity check matrix H becomes row C65 to C128 to C64, and initial column C65 then becomes row C1 to C64 to C128.
In this way, redundant information sector R is moved to row C65 to C72 from row C1 to C8.
For the embodiment of described parity check matrix H, can verify that the ring shift of these row can not change eight continuous not abilities of readable sector in maximum correction sections 204.
Fig. 9 shows the process flow diagram that being used to of can realizing reduces the method for data degradation in the hardware in the equipment 103.Described method also may be implemented as the computer program that comprises the programmed instruction that can be carried out by computing machine.Equipment 103 can comprise the computing machine of the programmed instruction that is used to carry out described computer program.Alternatively, described computer program can be the operating system of computer system or the part of basic input/output.The computer-readable medium that comprises the programmed instruction that can be carried out by equipment 103 or computer system can be provided.Described computer-readable medium for example can be CD-ROM, flash card, hard disk or any other computer-readable medium that is fit to.
Method shown in Figure 9 has been utilized the Error Correction of Coding scheme of being created by method shown in Figure 7 and has been carried out above calculating for Fig. 8 explanation.Described method starts from step S20.In step S21, the information content of the data message sector D on the principal diagonal of tupe submatrix is carried out first calculation procedure with the intermediate result T that calculates redundant information sector R as described above.In step S22, as described above, utilize intermediate result T to cover the information content of the data message sector D on the adjacent diagonal line that the previous intermediate result T that calculates comes the tupe submatrix.In step S23, calculate the information content of redundant information sector R according to intermediate result T (for example, handling all the other nonzero elements of parity check matrix H as described above).Described method finishes at step S24.
Figure 10 show have smallest hamming distance dmin, the corresponding XORO value of the the 3rd, the 4th, the 5th and the first kind that burst erasure recovers non-zero entry prime number nz, parity check matrix H in (that is, correcting continuously the not error correcting capability of readable sector), the parity check matrix H and the table of MBWC value.In described table, the parity check matrix H of the 3rd type is designated as " extended hamming code ", and the 4th type is designated as " SD3 " (the most sparse distance 3), and the 5th type is designated as " OSD3 " (the most sparse distance 3 of optimization), and the first kind is designated as " IPC-8 ".
More than Shuo Ming embodiment is based on the sector as information entity.Alternately, information entity also can be represented position, byte or any other information entity that is fit to.Described redundant information sector R and data message sector D represent certain embodiments, and can more usually regard redundant information entity R and data information entities D respectively as.In addition, reducing the data degradation that causes because of the media error on the storage unit 100 is a kind of application in numerous application.For example, by the Error Correction of Coding scheme that provides more than using, can reduce the loss of the data that transmit or receive by radio channel or cable equally.
Only be appreciated that and described the present invention, and can make modification on the details within the scope of the invention by the mode of example.
Can be independently or be provided at each feature that discloses in instructions and (if being fit to) claims and the accompanying drawing with any suitable combination.
Label
100 memory cell
101 disks
102 read/write heads
103 equipment
104 HPIs
105 controllers
106 computing engines
107 internal storages
108 external memory storages
200 arrays
202 bands
Article 203,
204 sections
205 first requests
206 second requests
D data message sector/entity
The dmin smallest hamming distance
The E user data
The H parity matrix
H ' objective matrix
The randomized fundamental matrix of H1
The HDD hard disk drive
The I vector
I first variable
J second variable
Sector number in the L section
N data message sector number
Nz non-zero entry prime number
The PRAID parity data
R redundant information sector number
R redundant information sector/entity
Redundant data in the S dish
The Sx step
T intermediate result
Tx intermediate result

Claims (13)

1. one kind is used for creating the Error Correction of Coding scheme to reduce the method in the data storage data degradation, described data comprise the given redundant collection with at least two redundant information entities (R) related with the given data set with at least two data information entities (D), calculate the described redundant information content that collects according to the information content of described data set, said method comprising the steps of:
The basic step (S2) of selecting is used to select the basic coding scheme represented by fundamental matrix, and wherein each redundant information entity (R) is by line display, and each information entity is shown by tabulation; And
Arranged in matrix step (S3), be used to be provided with the objective matrix (H ') of the subclass of row and be used for changing the order of row, satisfy the given pattern of nonzero element until the submatrix of giving determined number or given number percent of described objective matrix (H ') according to described fundamental matrix with described fundamental matrix.
2. the method described in claim 1, the given pattern of wherein said nonzero element is selected as comprising the principal diagonal of the square pattern submatrix of described objective matrix (H '), described principal diagonal has the element that is mainly non-zero, and line number that described objective matrix (H ') has and columns equal the quantity (r) of the concentrated redundant information entity (R) of described redundancy.
3. the method described in claim 2, the given pattern of wherein said nonzero element is selected as also comprising and the contiguous diagonal line of the adjacent layout of described principal diagonal of the described square pattern submatrix of described objective matrix (H ') that the cornerwise element of described vicinity is selected to and is mainly non-zero.
4. the method described in requiring as arbitrary aforesaid right, wherein said fundamental matrix is selected as having minimum non-zero entry prime number (nz) for data information entities (D) number (n) of the given Hamming distance (dmin) of described basic coding scheme, described data centralization and concentrated redundant information entity (R) number (r) of described redundancy.
5. as each described method among the claim 1-3, wherein, in described arranged in matrix step (S3), each line number of the described objective matrix (H ') that redundant information entity (R) number (r) that the order that changes described row is concentrated until columns and described redundancy equates is that the order of the square submatrix of the redundant information entity number (r) concentrated of described redundancy is counted (r) with the redundant information entity (R) that described redundancy is concentrated and equated.
6. as each described method among the claim 1-3, the Error Correction of Coding scheme of wherein said establishment is based on the XOR of the information content of calculating all data information entities (D) of being represented by the nonzero element in the every row of described objective matrix (H ') respectively.
7. the method described in claim 6, wherein said basic coding scheme is based on one in following: Hamming code or extended hamming code.
8. method that is used for reducing in the data storage data degradation, described data comprise the given redundant collection with at least two redundant information entities (R) related with the given data set with at least two data information entities (D), the information content according to described data set is calculated the information content of described redundant collection by using the Error Correction of Coding scheme, described Error Correction of Coding scheme is represented by parity matrix (H), wherein each redundant information entity (R) is by line display, and each information entity of described data is shown by tabulation, and at least two square submatrixs of described parity matrix (H) have element and are mainly the diagonal line of non-zero and have line number and the columns that redundant information entity (R) number (r) concentrated with described redundancy equates, and represent the data information entities (D) of the continuous placement of described data set, described method comprises:
First calculation procedure is used for calculating the intermediate result (T) of described redundant information entity (R) by handling described data information entities (D) on described at least two principal diagonals; And
Second calculation procedure is used for calculating according to described intermediate result (T) information content of described redundant information entity (R).
9. the method described in claim 8, at least one square submatrix that the element of wherein said principal diagonal is mainly the described parity matrix (H) of non-zero also has the contiguous diagonal line that element is mainly non-zero, and described second calculation procedure comprises and utilizes described intermediate result (T) to handle data information entities (D) on the corresponding contiguous diagonal line.
10. as the described method of arbitrary claim in claim 8 or 9, the information content of each redundant information entity (R) that wherein said redundancy is concentrated is calculated as the XOR by the information content of all data information entities (D) of described data centralization described parity matrix (H), that represent with the nonzero element in the corresponding row of described redundant information entity.
11. device that is used for reducing in the data storage data degradation, described data comprise the given redundant collection with at least two redundant information entities (R) related with the given data set with at least two data information entities (D), the information content according to described data set is calculated the information content of described redundant collection by using the Error Correction of Coding scheme, described Error Correction of Coding scheme is represented by parity matrix (H), wherein each redundant information entity (R) is by line display, and each information entity of described data is shown by tabulation, and at least two square submatrixs of described parity matrix (H) have element and are mainly the diagonal line of non-zero and have line number and the columns that redundant information entity (R) number (r) concentrated with described redundancy equates, and the data information entities (D) of representing the continuous placement of described data set, described device are carried out following operation:
Calculate the intermediate result (T) of described redundant information entity (R) by handling described data information entities (D) on described at least two principal diagonals; And
Calculate the information content of described redundant information entity (R) according to described intermediate result (T).
12. a protection is stored in data at least one storage unit (100) in case the system of the media error that can not correct, described system comprises:
Device described in claim 11 (103);
At least one storage unit (100); And
Each information entity is represented the sector on described at least one storage unit (100).
13. the system described in claim 12, described system is configured to the redundant array of individual memory cells (100).
CN2006101265838A 2005-10-31 2006-08-29 Method for establishing error encoding scheme and equipment for reducing data loss Expired - Fee Related CN1959648B (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
EP05023797.3 2005-10-31
EP05023797 2005-10-31
EP05110718.3 2005-11-13
EP05110718 2005-11-14

Publications (2)

Publication Number Publication Date
CN1959648A CN1959648A (en) 2007-05-09
CN1959648B true CN1959648B (en) 2010-11-03

Family

ID=43028975

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006101265838A Expired - Fee Related CN1959648B (en) 2005-10-31 2006-08-29 Method for establishing error encoding scheme and equipment for reducing data loss

Country Status (1)

Country Link
CN (1) CN1959648B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103034458B (en) * 2012-12-25 2015-11-25 华为技术有限公司 Method and the device of Redundant Array of Independent Disks (RAID) is realized in solid state hard disc
CN104156174A (en) * 2014-07-31 2014-11-19 记忆科技(深圳)有限公司 Strip based solid-state drive RAID (redundant array of independent disks) realizing method and device
US9448887B1 (en) 2015-08-22 2016-09-20 Weka.IO Ltd. Distributed erasure coded virtual file system
CN109032833B (en) * 2018-06-06 2023-11-03 深圳先进技术研究院 Correction method, device, equipment and storage medium for multi-bit error data
CN108897637B (en) * 2018-06-06 2019-10-29 深圳先进技术研究院 The error correction method, device of reading data, equipment and medium in memory
WO2019232721A1 (en) * 2018-06-06 2019-12-12 深圳先进技术研究院 Method and apparatus for correcting memory data reading error, and device and medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3542756A (en) * 1968-02-07 1970-11-24 Codex Corp Error correcting
US4295218A (en) * 1979-06-25 1981-10-13 Regents Of The University Of California Error-correcting coding system
US6789227B2 (en) * 2001-07-05 2004-09-07 International Business Machines Corporation System and method for generating low density parity check codes using bit-filling
CN1540871A (en) * 2003-04-24 2004-10-27 北京邮电大学 LDPC iteration encoding Method based on improved Taneer graph

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3542756A (en) * 1968-02-07 1970-11-24 Codex Corp Error correcting
US4295218A (en) * 1979-06-25 1981-10-13 Regents Of The University Of California Error-correcting coding system
US6789227B2 (en) * 2001-07-05 2004-09-07 International Business Machines Corporation System and method for generating low density parity check codes using bit-filling
CN1540871A (en) * 2003-04-24 2004-10-27 北京邮电大学 LDPC iteration encoding Method based on improved Taneer graph

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
张进坡.光传输系统中的super-FEC技术.光通信技术2003年 第9期.2003,2003年(第9期),11-14.
张进坡.光传输系统中的super-FEC技术.光通信技术2003年 第9期.2003,2003年(第9期),11-14. *
曾蓉.低密度校验(LDPC)码的构造及编码.重庆邮电学院学报17 3.2005,17(3),316-319.
曾蓉.低密度校验(LDPC)码的构造及编码.重庆邮电学院学报17 3.2005,17(3),316-319. *

Also Published As

Publication number Publication date
CN1959648A (en) 2007-05-09

Similar Documents

Publication Publication Date Title
US7797611B2 (en) Creating an error correction coding scheme and reducing data loss
KR100985444B1 (en) Data storage array
US9037951B2 (en) Data management in solid state storage systems
US8234439B2 (en) Fault-tolerant non-volatile integrated circuit memory
JP4709485B2 (en) On-drive integrated sector format RAID error correction code system and method
CN1959648B (en) Method for establishing error encoding scheme and equipment for reducing data loss
US20050028067A1 (en) Data with multiple sets of error correction codes
EP1566807B1 (en) Recording and/or reproducing method, recording and/or reproducing apparatus, and computer readable recording medium storing program for performing the method
US9032278B2 (en) Method for performing data shaping, and associated memory device and controller thereof
KR20040093748A (en) Method and apparatus for embedding an additional layer of error correction into an error correcting code
CN101281788A (en) Flash memory system as well as control method thereof
US7549103B2 (en) Data encoding method for error correction
US20070124648A1 (en) Data protection method
CN114816278B (en) Data migration method, system, equipment and storage medium of storage server
CN114610525A (en) Data updating method, system and storage medium for disk array
CN114115729B (en) Efficient data migration method under RAID
CN114550806B (en) Double-layer error correction method applied to SSD
JP3993921B2 (en) Storage device
CN114610241A (en) Method, device, equipment and medium for improving decoding speed of disk array
KR20220124182A (en) Encoding for data recovery from storage systems
CN114546272A (en) Method, system, apparatus and storage medium for fast universal RAID demotion to RAID5
JP2000323996A (en) Method and, device for data processing using error correction product code block, and recording medium
WO2022069040A1 (en) Data storage system with built-in redundancy and methods of recovering and storing data
TW202129653A (en) Semiconductor storage device and error processing method for defective memory cell in the device
JP2010192047A (en) Disk drive apparatus and method for controlling nonvolatile memory

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20171107

Address after: Grand Cayman, Cayman Islands

Patentee after: GLOBALFOUNDRIES INC.

Address before: American New York

Patentee before: Core USA second LLC

Effective date of registration: 20171107

Address after: American New York

Patentee after: Core USA second LLC

Address before: American New York

Patentee before: International Business Machines Corp.

TR01 Transfer of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20101103

Termination date: 20180829

CF01 Termination of patent right due to non-payment of annual fee