Patent ID: 8359518

Claim:
An apparatus for forward error correction, the apparatus comprising: circuitry operable to receive a data frame, wherein a multi-dimensional product code, comprising a first error-correcting code and a second error-correcting code, has been applied to the data frame, and wherein the first error-correcting code has been applied to a plurality of rows of the data frame as an error-correcting row code, and the second error-correcting code has been applied to a plurality of columns of the data frame as an error-correcting column code; a decoder, operable to iteratively decode the received data frame, comprising: a syndrome operable to: determine existence of errors in the received data frame, and transmit the received data frame to a storage element, and a first internal decoder and a second internal decoder operable to decode the received data frame based on a determination of existence of errors by the syndrome, wherein the first internal decoder and the second internal decoder iteratively decode the received data frame and generate decoding data; and an error correction element, wherein the error correction element is operable to: compare the decoding data received from the first decoder with the data frame received from the storage element, and correct errors in the data frame.