Patent ID: 8850297

Claim:
A method for decoding comprising: receiving data encoded by a component codeword configured to correct up to a maximum number of errors (q) in the data; generating an error locator polynomial (ELP) of a predetermined order (r) defining the locations in the component codeword of up to (r) errors, wherein: if the maximum number of errors (q) that the component codeword is configured to correct is equal to the predetermined order (r), the ELP includes (r) roots corresponding to up to (r) errors to be corrected by the component codeword and if the maximum number of errors (q) that the component codeword is configured to correct is less than the predetermined order (r), the ELP includes (q) roots corresponding to up to (q) errors to be corrected by the component codeword and (r-q) virtual roots added to generate the ELP of the predetermined order (r); and correcting up to (q) errors at locations in the component code defined by the (q) roots of the ELP.