This Article 
 Bibliographic References 
 Add to: 
On Modulo 2^n+1 Adder Design
February 2012 (vol. 61 no. 2)
pp. 173-186
Haridimos T. Vergos, University of Patras, Patras
Giorgos Dimitrakopoulos, University of West Macedonia, Kozani
Two architectures for modulo 2^n+1 adders are introduced in this paper. The first one is built around a sparse carry computation unit that computes only some of the carries of the modulo 2^n+1 addition. This sparse approach is enabled by the introduction of the inverted circular idempotency property of the parallel-prefix carry operator and its regularity and area efficiency are further enhanced by the introduction of a new prefix operator. The resulting diminished-1 adders can be implemented in smaller area and consume less power compared to all earlier proposals, while maintaining a high operation speed. The second architecture unifies the design of modulo 2^n\pm 1 adders. It is shown that modulo 2^n+1 adders can be easily derived by straightforward modifications of modulo 2^n-1 adders with minor hardware overhead.

[1] X. Lai and J.L. Massey, "A Proposal for a New Block Encryption Standard," EUROCRYPT, D.W. Davies, ed., vol. 547, pp. 389-404, Springer, 1991.
[2] R. Zimmermann et al., "A 177 Mb/s VLSI Implementation of the International Data Encryption Algorithm," IEEE J. Solid-State Circuits, vol. 29, no. 3, pp. 303-307, Mar. 1994.
[3] H. Nozaki et al., "Implementation of RSA Algorithm Based on RNS Montgomery Multiplication," Proc. Third Int'l Workshop Cryptographic Hardware and Embedded Systems, pp. 364-376, 2001.
[4] Y. Morikawa, H. Hamada, and K. Nagayasu, "Hardware Realisation of High Speed Butterfly for the Maximal Length Fermat Number Transform," Trans. IECE, vol. J66-D, no. 1, pp. 81-88, 1983.
[5] M. Benaissa, S.S. Dlay, and A.G.J. Holt, "CMOS VLSI Design of a High-Speed Fermat Number Transform Based Convolver/Correlator Using Three-Input Adders," Proc. IEE, vol. 138, no. 2, pp. 182-190, Apr. 1991.
[6] V.K. Zadiraka and E.A. Melekhina, "Computer Implementation of Efficient Discrete-Convolution Algorithms," Cybernetics and Systems Analysis, vol. 30, no. 1, pp. 106-114, Jan. 1994.
[7] M.A. Soderstrand et al., Residue Number System Arithmetic: Modern Applications in Digital Signal Processing. IEEE Press, 1986.
[8] P.V.A. Mohan, Residue Number Systems: Algorithms and Architectures. Springer-Verlag, 2002.
[9] A. Omondi and B. Premkumar, Residue Number Systems: Theory and Implementations. Imperial College Press, 2007.
[10] J. Ramirez et al., "RNS-Enabled Digital Signal Processor Design," Electronics Letters, vol. 38, no. 6, pp. 266-268, Mar. 2002.
[11] J. Ramirez et al., "Design and Implementation of High-Performance RNS Wavelet Proccessors Using Custom IC Technologies," J. VLSI Signal Processing Systems, vol. 34, no. 3, pp. 227-237, July 2003.
[12] J. Ramirez et al., "High Performance, Reduced Complexity Programmable RNS-FPL Merged FIR Filters," Electronics Letters, vol. 38, no. 4, pp. 199-200, Feb. 2002.
[13] G.C. Cardarilli, A. Nannarelli, and M. Re, "Reducing Power Dissipation in FIR Filters Using the Residue Number System," Proc. 43rd IEEE Midwest Symp. Circuits and Systems, pp. 320-323, Aug. 2000.
[14] Y. Liu and E.M.-K. Lai, "Moduli Set Selection and Cost Estimation for RNS-Based FIR Filter and Filter Bank Design," Design Automation for Embedded Systems, vol. 9, no. 2, pp. 123-139, June 2004.
[15] U. Meyer-Bäse, A. Garcia, and F. Taylor, "Implementation of a Communications Channelizer Using FPGAs and RNS Arithmetic," J. VLSI Signal Processing Systems, vol. 28, nos. 1/2, pp. 115-128, May/June 2001.
[16] J. Ramirez et al., "Fast RNS FPL-Based Communications Receiver Design and Implementation," Proc. 12th Int'l Conf. Field Programmable Logic, pp. 472-481, 2002.
[17] M. Panella and G. Martinelli, "An RNS Architecture for Quasi-Chaotic Oscillators," J. VLSI Signal Processing Systems, vol. 33, no. 1, pp. 199-220, Jan./Feb. 2003.
[18] R. Chokshi, K.S. Berezowski, A. Shrivastava, and S.J. Piestrak, "Exploiting Residue Number System for Power-Efficient Digital Signal Processing in Embedded Processors," Proc. Int'l Conf. Compilers, Architecture, and Synthesis for Embedded Systems (CASES '09), pp. 19-28, 2009.
[19] L.M. Leibowitz, "A Simplified Binary Arithmetic for the Fermat Number Transform," IEEE Trans. Acoustics, Speech and Signal Processing, vol. ASSP-24, no. 5, pp. 356-359, Oct. 1976.
[20] G. Jaberipur and B. Parhami, "Unified Approach to the Design of Modulo-($2^n\pm 1$ ) Adders Based on Signed-LSB Representation of Residues," Proc. 19th IEEE Symp. Computer Arithmetic, pp. 57-64, 2009.
[21] J.J. Shedletsky, "Comment on the Sequential and Indeterminate Behavior of an End-Around-Carry Adder," IEEE Trans. Computers, vol. C-26, no. 3, pp. 271-272, Mar. 1977.
[22] R. Zimmermann, "Binary Adder Architectures for Cell-Based VLSI and Their Synthesis," PhD dissertation, Swiss Fed. Inst. of Tech nology, 1997.
[23] R. Zimmerman, "Efficient VLSI Implementation of Modulo $(2^n\pm 1)$ Addition and Multiplication," Proc. 14th IEEE Symp. Computer Arithmetic, pp. 158-167, Apr. 1999.
[24] H.T. Vergos, C. Efstathiou, and D. Nikolos, "Diminished-One Modulo $2^n+1$ Adder Design," IEEE Trans. Computers, vol. 51, no. 12, pp. 1389-1399, Dec. 2002.
[25] C. Efstathiou, H.T. Vergos, and D. Nikolos, "Modulo $2^n\pm 1$ Adder Design Using Select Prefix Blocks," IEEE Trans. Computers, vol. 52, no. 11, pp. 1399-1406, Nov. 2003.
[26] S.-H. Lin and M.-H. Sheu, "VLSI Design of Diminished-One Modulo $2^n+1$ Adder Using Circular Carry Selection," IEEE Trans. Circuits and Systems II, vol. 55, no. 9, pp. 897-901, Sept. 2008.
[27] G. Dimitrakopoulos and D. Nikolos, "High-Speed Parallel-Prefix VLSI Ling Adders," IEEE Trans. Computers, vol. 54, no. 2, pp. 225-231, Feb. 2005.
[28] H.T. Vergos and C. Efstathiou, "Efficient Modulo $2^n+1$ Adder Architectures," Integration, the VLSI J., vol. 42, no. 2, pp. 149-157, Feb. 2009.
[29] M. Bayoumi, G. Jullien, and W. Miller, "A VLSI Implementation of Residue Adders," IEEE Trans. Circuits and Systems, vol. CAS-34, no. 3, pp. 284-288, Mar. 1987.
[30] A. Hiasat, "High-Speed and Reduced-Area Modular Adder Structures for RNS," IEEE Trans. Computers, vol. 51, no. 1, pp. 84-89, Jan. 2002.
[31] C. Efstathiou, H.T. Vergos, and D. Nikolos, "Fast Parallel-Prefix Modulo $2^n+1$ Adders," IEEE Trans. Computers, vol. 53, no. 9, pp. 1211-1216, Sept. 2004.
[32] H.T. Vergos and C. Efstathiou, "A Unifying Approach for Weighted and Diminished-1 Modulo $2^n+1$ Addition," IEEE Trans. Circuits and Systems II, vol. 55, no. 10, pp. 1041-1045, Oct. 2008.
[33] G. Dimitrakopoulos, H.T. Vergos, D. Nikolos, and C. Efstathiou, "A Family of Parallel-Prefix Modulo $2^n-1$ Adders," Proc. IEEE Int'l Conf. Application-Specific Systems, Architectures and Processors, pp. 326-336, 2003.
[34] J. Chen and J.E. Stine, "Parallel Prefix Ling Structures for Modulo $2^n-1$ Addition," Proc. 20th IEEE Int'l Conf. Application-Specific Systems, Architectures and Processors, pp. 16-23, July 2009.
[35] R.P. Brent and H.T. Kung, "A Regular Layout for Parallel Adders," IEEE Trans. Computers, vol. C-31, no. 3, pp. 260-264, Mar. 1982.
[36] P.M. Kogge and H.S. Stone, "A Parallel Algorithm for the Efficient Solution of a General Class of Recurrence Equations," IEEE Trans. Computers, vol. C-22, no. 8, pp. 786-792, Aug. 1973.
[37] R.E. Ladner and M.J. Fischer, "Parallel Prefix Computation," J. ACM, vol. 27, no. 4, pp. 831-838, 1980.
[38] S. Knowles, "A Family of Adders," Proc. 14th IEEE Symp. Computer Arithmetic, pp. 30-34, 1999.
[39] S. Mathew, M. Anders, R.K. Krishnamurthy, and S. Borkar, "A 4-GHz 130-nm Address Generation Unit with 32-bit Sparse-Tree Adder Core," J. Solid-State Circuits, vol. 38, no. 5, pp. 689-695, May 2003.
[40] L. Kalampoukas et al., "High-Speed Parallel-Prefix Modulo $2^n-1$ Adders," IEEE Trans. Computers, vol. 49, no. 7, pp. 673-680, July 2000.
[41] R.A. Patel, M. Benaissa, and S. Boussakta, "Fast Parallel-Prefix Architectures for Modulo $2^n-1$ Addition with a Single Representation of Zero," IEEE Trans. Computers, vol. 56, no. 11, pp. 1484-1492, Nov. 2007.
[42] G. Dimitrakopoulos, D.G. Nikolos, D. Nikolos, H.T. Vergos, and C. Efstathiou, "New Architectures for Modulo $2^n - 1$ Adders," Proc. IEEE Int'l Conf. Electronics, Circuits, and Systems, 2005.
[43] H.T. Vergos and D. Bakalis, "On the Use of Diminished-1 Adders for Weighted Modulo $2^n+1$ Arithmetic Components," Proc. 11th Euromicro Conf. Digital System Design, pp. 752-759, Sept. 2008.
[44] Synopsys Inc., "SAED 90 nm EDK," universitymembers.html, 2011.

Index Terms:
Modulo arithmetic, residue number system (RNS), parallel-prefix carry computation, computer arithmetic, VLSI.
Haridimos T. Vergos, Giorgos Dimitrakopoulos, "On Modulo 2^n+1 Adder Design," IEEE Transactions on Computers, vol. 61, no. 2, pp. 173-186, Feb. 2012, doi:10.1109/TC.2010.261
Usage of this product signifies your acceptance of the Terms of Use.