Abstract

The Residue Number System (RNS) is a non-weighted number system. Benefiting from its inherent parallelism, RNS has been widely studied and used in Digital Signal Processing (DSP) systems and cryptography. However, since the dynamic range in RNS has been fixed by its moduli set, it is hard to solve the overflow problem, which can be easily solved in Two’s Complement System (TCS) by expanding the bit-width of it. For the multiplication in RNS, the traditional way to deal with overflow is to scale down the inputs so that the result can fall in its dynamic range. However, it leads to a loss of precision. In this paper, we propose a high-precision RNS multiplier for three-moduli set 2n−1,2n,2n+1, which is the most used moduli set. The proposed multiplier effectively improves the calculation precision by adding several compensatory items to the result. The compensatory items can be obtained directly from preceding scalers with little extra effort. To the best of our knowledge, we are the first one to propose a high-precision RNS multiplier for the moduli set 2n−1,2n,2n+1. Simulation results show that the proposed RNS multiplier can get almost the same calculation precision as the TCS multiplier with respect to Mean Square Error (MSE) and Signal-to-Noise Ratio(SNR), which outperforms the basic scaling RNS multiplier about 2.6–3 times with respect to SNR.

Highlights

  • The Chinese Remainder Theorem (CRT) is one of the fundamental theorems of Residue Number System (RNS), which is common used in scaling, Residue to Binary (R/B) conversion, and so on

  • We propose two high precision RNS multipliers based on CRT

  • In order to evaluate the hardware performance of the proposed RNS multipliers, we designed them by VHDL and compiled them with Synopsys Design Compiler (DC) under the SMIC 65 nm process, respectively

Read more

Summary

Introduction

The Residue Number System (RNS) is a non-weighted parallel numerical representation system, which divides the integers into multiple independent ones through modular operations. RNS is very suitable to process large integer numbers, which makes it extremely useful in cryptography [1], such as Elliptic Curve Cryptography (ECC) [2] and Lattice-based Cryptography (LBC) [3]. M1 and m2 , the modular operation has properties as h X i m1 m2 m1 = h X i m1 . The Chinese Remainder Theorem (CRT) is one of the fundamental theorems of RNS, which is common used in scaling, Residue to Binary (R/B) conversion, and so on.

Methods
Results
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call