A method of creating a logical device performing polynomial division
includes using a hardware description language to build code directly
describing synthesizable logic for performing the polynomial division.
The logic is then implemented on a target device. The code receives as
inputs a parameter identifying a polynomial and a parameter identifying a
number of data bits for which the polynomial division is performed. For a
given n-degree polynomial, performing the polynomial division includes
calculating a next n-term remainder for a data unit having d terms.