An elliptic curve processing apparatus that performs operations on
elliptic curves specified over binary polynomial fields includes a
functional unit that has a digit serial multiplier with a digit size of
at least two bits. The elliptic curve processing apparatus performs
reduction for respective generic curves using arbitrary irreducible
polynomials, which correspond to respective ones of the generic curves.
The elliptic curve processing apparatus may include hardwired reduction
circuits in the functional unit for use with respective named curves. A
storage location in the elliptic curve processing apparatus may be used
to specify whether an operation is for one of the named curves or for one
of the generic curves. The elliptic curve processing apparatus responds
to an arithmetic instruction to utilize a respective one of the hardwired
reduction circuits for reduction for respective named curves and a
multiplier circuit for reduction for a plurality of generic curves, the
multiplier coupled to perform reduction for respective generic curves
using arbitrary irreducible polynomials, the arbitrary irreducible
polynomials corresponding to respective ones of the generic curves. The
elliptic curve processing apparatus operable on elliptic curves specified
over binary polynomial fields performs a conditional branch according to
whether a curve being processed is a generic curve or a named curve.