Résumé
The choice of modular multiplication algorithms for hardware implementation is not a straightforward problem. In this paper, we analyze and compare FPGA implementations of several state-of-the-art dedicated modular multipliers. For a given constant modulus
, there are several possible methods for generating an optimized modular multiplier, i.e. the dedicated (
x
) mod
operator. Those modular multipliers can be generated using two kinds of algorithms: those that work for all values of
and those that only work for specific values of the modulo such as 2
± 1. Several algorithms will be compared for both kind of algorithms. We also deal with two FPGA families, Virtex E and Virtex-II from Xilinx, to measure the impact of new specific built-in resources such as small embedded multipliers. The synthesizable VHDL files of the generated modular multipliers will be available on a web page.