Efficient fpga modular multiplication implementation

10Citations
Citations of this article
21Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Barrett's algorithm is the most commonly known method of performing a modular multiplication, which is the core of many modern encryption algorithms such as RSA. Barrett's algorithm requires an accurate quotient estimation which in turn requires accurate multiplications. These multiplications operating on word sizes of thousands of bits are particularly expensive to implement in FPGAs, requiring many hundreds or even thousands of embedded DSP components along with large amounts of logic and routing. In this work we show that approximate quotient estimates as results of aggressive multiplier truncations can significantly reduce implementation cost. The looser modified Barrett's output [0; YM) is reduced to [0; M) using a shallow reduction technique based on table lookups and wide additions, taking advantage of new techniques which have recently been introduced for FPGA. We first use these techniques to develop an improved standard Barrett's implementation for 1024b modular multiplication, followed by our approximate method which reduces logic cost in the LSB truncated multiplier by approximately 10%. The effect is more pronounced for very large word sizes, where our relaxed error bounds in the LSB truncated multiplication can reduce the number of operations by 20%.

Cite

CITATION STYLE

APA

Langhammer, M., & Pasca, B. (2021). Efficient fpga modular multiplication implementation. In FPGA 2021 - 2021 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (pp. 217–223). Association for Computing Machinery, Inc. https://doi.org/10.1145/3431920.3439306

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free