Hierarchical Montgomery Multipliers
- Hierarchical Montgomery multipliers are modular multiplication architectures that decompose operations into recursively composed submodules, enabling truncated reductions and performance gains.
- They employ strategies like Karatsuba recursion, DSP-aligned submultipliers, and recursive residue number systems for efficient modular arithmetic.
- Applications span high-performance computing, FPGA NTT/INTT accelerators, and scalable quantum circuits, optimizing throughput and resource usage.
Hierarchical Montgomery multipliers are modular multiplication organizations in which a Montgomery product is realized by composing smaller arithmetic units, recursive submultipliers, lower-layer modular engines, or reversible submodules rather than by a single flat datapath. In recent software work, the hierarchy appears as a size-dependent composition of Schoolbook, Karatsuba, and truncated high-half reduction stages; in FPGA NTT accelerators it appears as DSP-aligned submultipliers assembled into wider Montgomery units; in Recursive Residue Number Systems it appears as a layer- Montgomery multiplier invoking layer- multipliers; and in reversible quantum arithmetic it appears as a three-stage composition of accumulation, REDC, and ancilla uncomputation (Didier et al., 2024, Alexakis et al., 1 Jul 2026, Hollmann et al., 2018, Rines et al., 2018).
1. Formal definition and arithmetic basis
Montgomery multiplication computes a residue for a modulus coprime to the radix . In the one-limb convention, the standard algorithm is
followed by a conditional subtraction if . In the -based convention used in the AVX512 batch implementation,
again followed by a conditional subtraction when needed. For FPGA NTT/INTT accelerators, the same operation is written in canonical Montgomery form as
which is algebraically equivalent when 0 is a power of two. In reversible arithmetic, the reduction is expressed through an estimation variable 1, so that 2 and 3 is exact; this requires 4 to be odd because 5 (Didier et al., 2024, Alexakis et al., 1 Jul 2026, Rines et al., 2018).
The adjective “hierarchical” refers to the way this arithmetic is assembled. In one setting it denotes a hierarchy of sub-multipliers created by Karatsuba recursion and truncated reduction; in another it denotes a modular-multiply engine built from several small, DSP-friendly submultipliers; in RRNS it denotes virtual RNS layers whose Montgomery arithmetic is executed by the layer below; and in reversible arithmetic it denotes top-level, middle-level, and leaf submodules with explicit interfaces. A common thread is that the reduction step is not treated as an isolated scalar primitive, but as a structured composition whose subproblems can be optimized, omitted, or recursively delegated (Alexakis et al., 1 Jul 2026, Hollmann et al., 2018, Rines et al., 2018).
2. Truncated and hierarchical software realizations
The AVX512 software formulation treats Montgomery multiplication in a limb-wise, batch-SIMD setting with radix 6. Operands are written as 7, 8, and 9, with 0. The batch implementation is “non-interleaved”: it computes the full product 1 using Schoolbook or Karatsuba, then performs a single 2-based Montgomery reduction by accumulating 3 into 4, and finally executes the exact right shift by 5. Because 6, the reduced value can be written as
7
where 8 is a single carry bit from the low-half addition. In the 52-bit-limb formulation,
9
so the low half contributes only through a lane-wise OR of low words. The paper proves a partial-product omission theorem: 0 can be computed using only the partial products whose weights are at least 1, and all partial products with 2 can be omitted (Didier et al., 2024).
This truncated reduction induces a distinct hierarchy. At the leaf level, elementary products are realized by SIMD fused multiply-add accumulators across 52-bit limbs using madd52lo and madd52hi. At higher levels, Schoolbook accumulators or Karatsuba combiners assemble these leaf products. The paper reports that Schoolbook multiplication has complexity 3, while Karatsuba has complexity 4, and that the recursion forms an explicit hierarchy of sub-multipliers. Two Karatsuba stages are used for approximately 4154-bit operands, producing a hierarchy of 9 leaf multipliers of approximately 1040 bits. Empirically, Schoolbook is faster up to approximately 4108 bits, whereas Karatsuba becomes advantageous for approximately 4154-bit sizes, especially for batch squaring and truncated Montgomery multiplication with large operands (Didier et al., 2024).
The hierarchy is tightly coupled to the AVX512 word-slicing organization. Each 512-bit zmm register holds eight 64-bit lanes, each lane storing a single 52-bit limb with 12 spare bits for carry headroom. The layout is column-major across operands, so line 5 contains the 6-th 52-bit limb for all 8 operands simultaneously. This supports batch multiplications, squarings, modular multiplications, modular squarings, and constant time modular exponentiations of 8 values. Constant-time fixed-window exponentiation uses window tables 7 in Montgomery domain and masked moves for table selection, with no secret-dependent branches. In many workloads, the final conditional subtraction is deferred or elided because bounds ensure 8 and the code returns 9 in 0, occasionally following the subsequent-step strategy described for Gueron’s RSA_Z (Didier et al., 2024).
Performance results emphasize the practical value of the truncated hierarchy. The paper states that the truncated Montgomery modular multiplication improvement offers speed gains of almost 1 over conventional non-truncated versions. More detailed results report that truncated Schoolbook Montgomery multiplication and squaring improve by approximately 2 and up to approximately 3, while Karatsuba truncated multiplication improves approximately 4–5 at large sizes. Compared to GMP and OpenSSL, modular multiplications and squarings are more than 6 faster in many cases. For fixed-window exponentiation, the batch-of-8 AVX512 implementation achieves speedups versus OpenSSL BN_mod_exp_mont_consttime of 7 at 1024 bits, 8 at 2048 bits, and 9 at 4096 bits; against BN_mod_exp_mont_consttimex2, the corresponding gains are 0 at 1024 bits and 1 at 2048 bits, while the 256-bit batch-of-4 version gives 2 and 3 (Didier et al., 2024).
3. FPGA DSP hierarchies in unified NTT and INTT butterflies
In FPGA NTT accelerators, a hierarchical Montgomery multiplier is the modular-multiply engine inside each unified NTT/INTT butterfly, built by composing several small, DSP-friendly submultipliers into wider blocks. The hierarchy aligns operand partitions to the native multiplier widths of FPGA DSP slices, so that small PQC moduli with 12–17-bit operands after redundancy map one multiply per DSP block, while wide moduli with up to 31-bit operands after redundancy are realized by a 2-level decomposition into 17-bit halves assembled with carry-save and add-accumulate structures. This organization is used to reduce LUT-based arithmetic, maximize DSP utilization, simplify pipelining, and raise 4, while allowing a single multiplier template to scale across Kyber-, NewHope-, Falcon-, and Dilithium-class moduli (Alexakis et al., 1 Jul 2026).
A central architectural feature is bounded-redundant Montgomery representation. Operands are allowed to lie in 5, and the design extends Pu et al.’s redundancy to cover both the NTT multiply-by-twiddle and the INTT subtract–multiply. Two invariants are established. First, if 6 and 7, then the Montgomery product 8 remains in 9, so the post-multiply correction can be skipped. Second, in INTT mode the difference is formed as 0, multiplied by the twiddle, and bounded so that selecting 1 yields 2. In practice, 3 is chosen as the next power of two strictly greater than 4, which adds three bits to the datapath width: 5 The result is that no correction is needed after Montgomery multiplication in INTT mode, and the subtractor’s intermediate result can remain in 6 because the product returns to 7 (Alexakis et al., 1 Jul 2026).
For wide moduli, the hierarchy is concrete at the level of schoolbook decomposition and DSP mapping. With 8 and
9
schoolbook multiplication gives
0
Each 1 product maps to one DSP block configured as a signed multiplier. Cross terms are formed in parallel and summed via carry-save addition, while a single carry-propagate adder in LUT fabric finalizes the product. The complete Montgomery unit contains three conceptual products: 2, 3, and 4. Because 5, the most significant 6 subproduct in the mod-7 multiply is discarded, so that stage uses three DSPs instead of four. In the 17-bit path, each Montgomery submultiply fits one DSP and the full Montgomery unit uses 3 DSPs. In the 34-bit path, the hierarchical Montgomery unit uses 11 DSPs total: 4 DSPs for 8, 3 DSPs for 9, and 4 DSPs for the multiply–add accumulation of 0 and 1 (Alexakis et al., 1 Jul 2026).
| Path | Montgomery-unit DSPs | Virtex-7 BFU 2 |
|---|---|---|
| 17-bit | 3 | 437 MHz |
| 34-bit | 11 | 391 MHz |
Pipeline structure is part of the hierarchy rather than an afterthought. Each DSP block uses two internal pipeline stages; the full multiplier uses six stages end-to-end; and the unified butterfly allocates a total of eight pipeline stages per processing element, leaving two for addition/subtraction paths and alignment registers. Per-BFU results on Virtex-7 are 8 cycles, 3 DSPs, 209 LUTs, 194 FFs, and 3 MHz for the 17-bit BFU, and 8 cycles, 11 DSPs, 580 LUTs, 481 FFs, and 4 MHz for the 34-bit BFU. On Alveo U200, the corresponding isolated BFU results are 8 cycles, 3 DSPs, 225 LUTs, 162 FFs, and 5 MHz for 17-bit, and 8 cycles, 11 DSPs, 572 LUTs, 501 FFs, and 6 MHz for 34-bit. The paper also reports full-accelerator examples, including 7, 8, 9, with 336 cycles, 0 MHz, 1.2 1, 9942 LUT, 5131 FF, 48 DSP, and 12 BRAM, and 2, 3, 4, with 168 cycles, 5 MHz, 0.9 6, 158,141 LUT, 14,289 FF, 352 DSP, and 48 BRAM (Alexakis et al., 1 Jul 2026).
The hierarchical multiplier is integrated directly into the radix-2 butterfly equations
7
In NTT mode it computes 8 using redundant inputs, and in INTT mode it computes the fused subtract–multiply
9
in Montgomery form. The unified butterfly of Zhang et al. (2020) performs per-butterfly scaling by 2 in INTT; the later design removes dedicated scaling units by precomputing 00 offline and by merging the second divide-by-2 with the adder’s correction through range and parity analysis. Relative to Mu et al. and to NTTGen/AutoNTT, the reported BFU-level clock frequencies are 01 versus 02 MHz and 03 versus 04 MHz on Virtex-7, and 05 versus 06 MHz and versus 07 MHz on Alveo U200; accelerator-level runtime improvements include 08 versus 09 for 10, 11, 12, and up to 13 runtime reduction versus Mert et al. at the same 14 with matching PE counts (Alexakis et al., 1 Jul 2026).
4. Recursive Residue Number Systems as hierarchical Montgomery multiplication
The RRNS formulation gives a different meaning to hierarchy: a higher-layer Montgomery multiplier is implemented by invoking a full RNS Montgomery multiplier on the layer below. A bottom RNS layer uses small moduli, for example 8-bit moduli, and one or more virtual layers are added above it. Each non-bottom layer defines a left RNS base 15, a right RNS base 16, and a redundant modulus 17. Modular arithmetic modulo any modulus 18 on that layer is then realized via a Montgomery multiplier with radix equal to the product 19 of the left RNS moduli of that layer, while all arithmetic required modulo the layer moduli 20 is itself implemented by calling the lower-layer Montgomery multiplier whose radix is the lower-layer left product 21. Arithmetic is therefore deferred recursively to the bottom layer, where it can be implemented exactly, preferably by table lookup (Hollmann et al., 2018).
This construction relies on the full-RNS Bajard–Imbert Montgomery algorithm extended to pseudo-residues. In the generalized setting, a pseudo-residue 22 of 23 modulo 24 lies in 25, where 26 for standard residues or 27 for symmetric residues. A constructive CRT statement gives
28
with explicit bounds on the integer 29. A corollary shows that 30 can be recovered modulo the redundant modulus 31 as long as 32 is large enough, namely 33 in the standard case or 34 in the symmetric case. These facts underpin base extension under pseudo-residues and make it possible to perform complete RNS Montgomery reduction without leaving the residue domain (Hollmann et al., 2018).
At a given layer, the algorithm has three main components. Algorithm 1 computes 35 by performing per-modulus Montgomery multiplication at the lower layer. Algorithm 2 chooses 36 such that 37, computes
38
reconstructs 39 in the right base, and base-extends it back to the left base using 40. On non-bottom layers, multiply-accumulate steps can be executed lazily by aggregating products and applying one lower-layer Montgomery reduction at the end, provided that the bounds for postponed reduction are satisfied. The formal theorem states that, under constraints such as
41
and with sufficient 42, the representation remains valid and the output is a correct Montgomery product (Hollmann et al., 2018).
A distinctive property of the RRNS hierarchy is that it is carry-free. Every arithmetic operation is performed per residue modulo an independent small modulus channel; there are no carry chains, neither within channels nor across layers. The paper explicitly links this to resistance against cryptographic attacks that exploit carries. It also quantifies the complexity. If 43, 44, 45, and 46 denote counts of lower-layer additions, multiplications, Montgomery reductions, and full Montgomery multiplications needed for one higher-layer Montgomery product, the paper gives recurrences for these quantities and derives, for a three-layer design, the asymptotic estimate
47
With 48-bit top moduli and 49-bit bottom tables, minimizing this yields
50
The architecture admits massive parallelism because the bottom-layer residue channels are independent (Hollmann et al., 2018).
The paper provides a concrete 2048-bit configuration. At the bottom layer, 19 moduli are used: one redundant modulus 51; 12 largest primes below 256; and 6 composites, all mutually coprime. The functional moduli are split into left and right bases with 52, giving
53
At the middle layer, 54. A non-parallelized C++ implementation using byte tables achieves approximately 55 s for 500-bit modular exponentiation under a 2048-bit 56 on a laptop, and one top-layer Montgomery multiplication takes approximately 160,000 table lookups. The same approach is presented as suitable for 2048-bit or even 4096-bit RSA (Hollmann et al., 2018).
5. Reversible and quantum hierarchies
In reversible arithmetic, the hierarchical Montgomery multiplier is organized as an exact modular-by-design circuit whose submodules can be reused and swapped. The architecture is divided into three stages. Stage 1 performs partial-product accumulation into a “compressed” product: 57 so that 58 and fits in 59 bits with 60. Stage 2 is the Montgomery reduction itself, split into estimation and correction. In estimation, the circuit iterates
61
for 62, reversibly extracting the bits of 63. In correction, because
64
a single conditional addition of 65 restores the value to 66. Stage 3 uncomputes the ancillary 67-bit register 68 using precomputed classical constants. The resulting mapping
69
is one-to-one for 70, with exact ancilla cleanup at the end (Rines et al., 2018).
The hierarchy is explicit at three levels. The top level contains modules such as MonMul_out_of_place and MonMul_qq. The middle level contains PartialProductGen, Accumulate_n, REDC_Estimate, REDC_Correct, and Uncompute_qtilde. The leaf level contains the adder families: ripple, prefix, prefix-ripple, and Fourier-basis adders, as well as the select-undo in-place adder. The paper emphasizes that the only quadratic-size stage is the partial-product accumulation; REDC uses only 71 in-place subtractions plus one correction, and uncomputation acts on an 72-bit register. This is why the overall asymptotic resource complexity matches that of a single non-modular multiplier (Rines et al., 2018).
The resource analysis is detailed and extends to 2048-bit inputs. For binary-basis implementations with logarithmic-depth prefix adders, the leading terms are 573 qubits, 74 Toffoli “gates”, and depth 75. With ripple-carry adders, the leading terms are 376 qubits, 77 Toffoli gates, and depth 78. For Fourier-basis implementations, the paper reports 279 qubits, 80 two-qubit rotations, and depth 81 without precision truncation, and 282 qubits, 83 leading-order gates, and depth 84 with standard truncation of exponentially small rotations. For 85, the corresponding leading-order estimates are approximately depth 86k and 87 million Toffoli-equivalents for the prefix-adder binary design, and depth approximately 88k with approximately 89–90 million rotations for the Fourier-basis design (Rines et al., 2018).
The fault-tolerant analysis further refines the hierarchy’s trade-offs. With a restricted Clifford+91 style setting, the paper models Toffoli as approximately 40, 92 as approximately 10, and controlled-93 decomposition with cost approximately 94. The Fourier-basis design gains an additive depth overhead of approximately 95, but the overall depth remains linear in 96 up to an additive 97; the authors report that Fourier Montgomery depth remains within approximately 98 of the prefix-adder implementation while using approximately 99 fewer qubits. The design is exact for all binary input values, reversible without Bennett-style full uncomputations, and applicable up to 2048-bit operands in the empirical study (Rines et al., 2018).
6. Comparative patterns, misconceptions, and design trade-offs
Across the literature, “hierarchical Montgomery multiplier” does not denote a single algorithmic template. It denotes at least four distinct but related constructions: a truncated high-half reduction over SIMD leaf multipliers; a DSP-aligned decomposition inside unified NTT/INTT butterflies; a recursive RNS stack in which one Montgomery layer calls another; and a reversible circuit hierarchy of accumulation, REDC, and ancilla cleanup. This suggests that the term is best understood as an architectural pattern for structuring Montgomery arithmetic, rather than as a single canonical datapath (Didier et al., 2024, Alexakis et al., 1 Jul 2026, Hollmann et al., 2018, Rines et al., 2018).
| Setting | Hierarchical composition | Characteristic optimization |
|---|---|---|
| AVX512 software | Schoolbook/Karatsuba plus truncated reduction | Omit low-weight 00 partial products |
| FPGA NTT/INTT | DSP-sized submultipliers into 17-bit or 34-bit units | Eliminate post-multiply corrections with redundancy |
| RRNS | Layer-01 Montgomery via layer-02 Montgomery | Defer arithmetic to small-modulus channels |
| Reversible arithmetic | Accumulate, REDC, and uncompute submodules | Keep REDC and ancilla handling 03-wide |
A common misconception is that hierarchy is only a matter of recursive multiplication, for example Karatsuba. The RRNS and reversible constructions show that hierarchy can instead mean recursion across arithmetic layers or disciplined modular decomposition of subroutines. Another misconception is that Montgomery multiplication intrinsically requires an immediate final correction after every product. The AVX512 implementation sometimes defers or elides the final conditional subtraction because bounds ensure 04; the FPGA NTT/INTT design proves that the conditional test “If 05 then 06” is unnecessary in its bounded-redundant regime; the reversible construction still uses a single correction stage; and RRNS avoids the issue through full-RNS arithmetic and pseudo-residue bounds rather than through a word-level conditional subtraction (Didier et al., 2024, Alexakis et al., 1 Jul 2026, Hollmann et al., 2018, Rines et al., 2018).
The main trade-offs also differ by domain. In AVX512 software, batch size 8 increases throughput linearly at the cost of per-batch latency when operands are few. In FPGA designs, hierarchical 34-bit multipliers consume 11 DSPs per BFU, so large PE arrays for 31-bit moduli can be DSP-heavy, although 2D arrays reduce pressure while retaining high throughput. In RRNS, the main costs are base extension via the redundant modulus and the need to control pseudo-residue expansion; postponed reduction requires balanced moduli to maintain bounds. In reversible arithmetic, the central trade-off is between qubits, gate count, and depth across prefix, ripple, and Fourier-basis adder families. These differences do not negate the commonality of the concept: in every case, the hierarchy is used to localize expensive operations, shorten or eliminate correction paths, and make Montgomery reduction compatible with the dominant substrate, whether SIMD lanes, FPGA DSPs, residue channels, or reversible gates (Didier et al., 2024, Alexakis et al., 1 Jul 2026, Hollmann et al., 2018, Rines et al., 2018).