Opérateurs itératifs de multiplication-addition modulaire pour FPGA - Inria - Institut national de recherche en sciences et technologies du numérique Accéder directement au contenu
Rapport (Rapport De Recherche) Année : 2003

Opérateurs itératifs de multiplication-addition modulaire pour FPGA

Résumé

This paper descirbes several improvement of an iterative algorithm for modular multiplication originnaly proposed by Jeong and Burleson. A first modification of the recurrence relation allows us to implement a fused multiply and add unit. Then, we sho how to reduce the circuit area by a factor two when the operator offers the possibility to choose the modulo among a set m_1,m_2,,.m_q; A new iterative algorithm making the implementation of modular exponentiation easier is eventually discussed. For 16-bit numbers, ours operators perform for instance 6 millions of operations per second on a Virtex-E device while only requiring 17 slices.These operators involve small tables depending on the required set of moduli. A straightforward approach is to automatically generate a VHDL description of the modular multiplier according to m_1, m_2,, m_q. That design methodology assumes that the moduli are known a priori ansd works only for small sets of moduli. In order to avoid these drawbacks, we propose here an algorithm that allows to build the table while we perform the first steps of the modular multiplication
Cet article présente tout d'abord diverses améliorations d'un algorithme itératif de multiplication modulaire proposé en 1997 par Jeong et Burleson. Une simple modification de la récurrence permet l'implantation d'une multiplication-addition modulaire. Nous montrons ensuite comment réduire d'un facteur deux la taille du circuit lorsque l'opérateur offre le choix du modulo parmi un ensemble m_1, m_2,, m_q. Nous proposons un nouvel algorithme facilitant la réalisation de l'exponentiation modulaire et présentons quelques résultats de synthèse pour des circuits FPGA de la famille Virtex de Xilinx. Pour des nombres de 16 bits, les opérateurs développés permettent par exemple d'effectuer 6 millions d'opérations à la seconde en utilisant uniquement 17 tranches. Ces différents opérateurs nécessitent toutefois de petites tables dépendant du modulo m choisi au moment de l'écriture du code VHDL. Afin de remédier à cet inconvénient, nous proposons une méthode récursive du calcul des tables s'effectuant parallèlement aux premières itérations de la multiplication modulaire.
Fichier principal
Vignette du fichier
RR-4937.pdf (282.93 Ko) Télécharger le fichier
RR2003-40.pdf (429.92 Ko) Télécharger le fichier

Dates et versions

inria-00071642 , version 1 (23-05-2006)

Identifiants

  • HAL Id : inria-00071642 , version 1

Citer

Jean-Luc Beuchat, Jean-Michel Muller. Opérateurs itératifs de multiplication-addition modulaire pour FPGA. [Rapport de recherche] RR-4937, LIP RR-2003-40, INRIA, LIP. 2003. ⟨inria-00071642⟩
161 Consultations
691 Téléchargements

Partager

Gmail Facebook X LinkedIn More