Patent ID: 7581155

Claim:
An apparatus for receiving a FEC frame for variable-length frame transmission in a TDMA system, the apparatus comprising: a first receiver determining whether a received frame is a FEC encoded frame, wherein when the received frame is a FEC encoded frame having a predetermined number of message blocks and parities equal in number to the message blocks sequentially, the first receiver divides the FEC encoded frame into the message blocks and parities after removing a FEC frame identifier from the FEC encoded frame, the first receiver includes a data buffer and a parity buffer respectively storing the message blocks and the parities; a Reed-Solomon decoder receiving the FEC encoded frame from the first receiver, and Reed-Solomon decoding the FEC encoded frame in a same processing time regardless of the length of the FEC encoded frame, wherein the Reed-Solomon decoder calculates an error magnitude polynomial to determine an error value of the FEC encoded frame, the Reed-Solomon decoder buffers an error magnitude polynomial in a first buffer and an error location polynomial in a second buffer to determine an error value of the FEC encoded frame, the Reed-Solomon decoder further comprising: a syndrome calculator calculating a syndrome for each of the codewords, a codeword counter counting the length of the codewords, the error location polynomial generator receiving the syndrome calculated by the syndrome calculator, and generating an error location polynomial and the error magnitude polynomial using a recursive modified Euclid algorithm, an error location detection unit searching for a location of the error of the codeword using the Chien algorithm based on initial values of the lengths of codewords, an error magnitude detection unit searching for the magnitude of the error of the codeword using the Forney algorithm based on the initial values, and a memory comprising a first queue storing the error location polynomial output from the error location polynomial generator, and a second queue storing the error magnitude polynomial output from the error location polynomial generator, and storing the error location polynomial and the error magnitude polynomial until the error location detection unit and the error magnitude detection unit complete to process a previous codeword for output; a matching delay receiving an input FEC unencoded frame from the first receiver, and delaying the FEC unencoded frame by the time required to decode a FEC encoded frame, or delaying a FEC frame identifier by the time required to decode a FEC encoded frame; and a frame recombiner adding a Reed-Solomon decoded codeword to the FEC frame identifier in response to the output from the matching delay to form an original FEC frame.