English

Modulo-$(2^{2n}+1)$ Arithmetic via Two Parallel n-bit Residue Channels

Hardware Architecture 2024-12-12 v2

Abstract

Augmenting the balanced residue number system moduli-set {m1=2n,m2=2n1,m3=2n+1}\{m_1=2^n,m_2=2^n-1,m_3=2^n+1\}, with the co-prime modulo m4=22n+1m_4=2^{2n}+1, increases the dynamic range (DR) by around 70%. The Mersenne form of product m2m3m4=24n1m_2 m_3 m_4=2^{4n}-1, in the moduli-set {m1,m2,m3,m4}\{m_1,m_2,m_3,m_4\}, leads to a very efficient reverse convertor, based on the New Chinese remainder theorem. However, the double bit-width of the m_4 residue channel is counter-productive and jeopardizes the speed balance in {m1,m2,m3}\{m_1,m_2,m_3\}. Therefore, we decompose m4m_4 to two complex-number n-bit moduli 2n±12^n\pm\sqrt{-1}, which preserves the DR and the co-primality across the augmented moduli set. The required forward modulo-(22n+1)(2^{2n}+1) to moduli-(2n±1)(2^n\pm\sqrt{-1}) conversion, and the reverse are immediate and cost-free. The proposed unified moduli-(2n±1)(2^n\pm\sqrt{-1}) adder and multiplier, are tested and synthesized using Spartan 7S100 FPGA. The 6-bit look-up tables (LUT), therein, promote the LUT realizations of adders and multipliers, for n=5n=5, where the DR equals 225252^{25}-2^5. However, the undertaken experiments show that to cover all the 32-bit numbers, the power-of-two channel m1m_1 can be as wide as 12 bits with no harm to the speed balance across the five moduli. The results also show that the moduli-(25±1)(2^5\pm\sqrt{-1}) add and multiply operations are advantageous vs. moduli-(25±1)(2^5\pm1) in speed, cost, and energy measures and collectively better than those of modulo-(210+1)(2^{10}+1).

Keywords

Cite

@article{arxiv.2404.08228,
  title  = {Modulo-$(2^{2n}+1)$ Arithmetic via Two Parallel n-bit Residue Channels},
  author = {Ghassem Jaberipur and Bardia Nadimi and Jeong-A Lee},
  journal= {arXiv preprint arXiv:2404.08228},
  year   = {2024}
}
R2 v1 2026-06-28T15:52:08.280Z