Methods and apparatuses for correcting errors in a data stream are
described herein. In one aspect, the error correction process is operable
to correct errors in at least two separate types of data streams, each of
which utilizes a distinct error correction scheme. The error correction
process utilizes Reed-Solomon code and Error Detection Code (EDC) in
combination for error correction. The process comprises using a
Reed-Solomon code to identify errors in a plurality of data blocks and
attempting to correct the errors. An EDC map is then generated, wherein
the EDC map identifies the location of the errors within the
corresponding data blocks which includes errors that are not corrected by
the Reed-Solomon code.