DocumentCode
796913
Title
Automatic Generation of Modular Multipliers for FPGA Applications
Author
Beuchat, Jean-Luc ; Muller, Jean-Michel
Author_Institution
Grad. Sch. of Syst. & Inf. Eng., Univ. of Tsukuba, Tsukuba
Volume
57
Issue
12
fYear
2008
Firstpage
1600
Lastpage
1613
Abstract
Since redundant number systems allow constant time addition, they are often at the heart of modular multipliers designed for public key cryptography (PKC) applications. Indeed, PKC involves large operands (160 to 1024 bits) and several researchers proposed carry-save or borrow-save algorithms. However, these number systems do not take advantage of the dedicated carry logic available in modern field programmable gate arrays (FPGAs). To overcome this problem, we suggest to perform modular multiplication in a high-radix carry-save number system, where a sum bit of the carry-save representation is replaced by a sum word. Two digits are then added by means of a small Carry-Ripple Adder (CRA). Furthermore, we propose an algorithm which selects the best high-radix carry-save representation for a given modulus, and generates a synthesizable VHDL description of the operator.
Keywords
adders; field programmable gate arrays; hardware description languages; multiplying circuits; public key cryptography; redundant number systems; CRA; FPGA applications; PKC; VHDL description; automatic generation; borrow-save algorithm; carry-ripple adder; carry-save algorithm; field programmable gate arrays; high-radix carry-save number system; modular multipliers; public key cryptography; redundant number systems; Adders; Buildings; Circuits; Computer architecture; Elliptic curve cryptography; Equations; Field programmable gate arrays; Heart; Iterative algorithms; Logic arrays; Public key cryptography; Arithmetic and Logic Structures; High-Speed Arithmetic;
fLanguage
English
Journal_Title
Computers, IEEE Transactions on
Publisher
ieee
ISSN
0018-9340
Type
jour
DOI
10.1109/TC.2008.102
Filename
4564441
Link To Document