Patent ID: 7178091

Claim:
An apparatus for encoding data, comprising: an input for receiving a plurality of information symbols; an encoder for generating a code word, the code word comprising the plurality of information symbols and at least one check symbol, the encoder comprising: a stage shift register having at least one register and at least one adder; and a single Galois Field (“GF”) multiplier capable of multiplying an output symbol of the stage shift register with coefficients of a code generator polynomial, the GF multiplier comprising: a plurality of multiplication networks capable of generating a plurality of multiplication results, the multiplication networks operable to use the output symbol and a field polynomial to generate the multiplication results; and a plurality of partial product units capable of generating a plurality of partial products for input to the at least one adder, each partial product unit operable to receive at least a portion of each of the multiplication results and one of the code generator polynomial coefficients; and an output for outputting the code word.