高基数蒙哥马利乘法技术详解
1. 多字蒙哥马利乘法
在一些算法实现中,对于算法 2,$x[i]$、$m′$ 和 $q[i]$ 的宽度为 $w1$ 位,而 $y[j]$、$s[j]$ 和 $m[j]$ 的宽度为 $w2$ 位。$w1$ 和 $w2$ 可以相同,也可以不同。在某些示例中,$w1$ 和 $w2$ 的值可根据实现算法 2 所用乘法器的精度来确定,以充分利用乘法器的计算能力。
少切换操作数扫描方法(LSOS),也被称为粗集成操作数扫描(CIOS)方法,被许多研究人员用于面向应用的场景,它能满足最小运行时间和空间需求。LSOS 方法使用高基数多字,并巧妙地在循环中进行最少的切换,以计算部分积和执行常规约简过程。一些在 FPGA 上实现 LSOS 的知名案例包括 Mrabet 和 Darmon(2019)、McIvor 等人(2004)、McLoone 等人(2004)以及 Gallin 和 Tisserand(2019)的工作。LSOS 方法显著改进了蒙哥马利乘法,因为它允许在不同迭代循环中改变部分积计算和约简过程的速度。
2. 基数 - 4 蒙哥马利乘法的硬件实现
高基数蒙哥马利乘法中的基数 - 4 蒙哥马利乘法(R4MMM)方法按字处理被乘数,以获得快速且可扩展的架构。硬件实现的高基数蒙哥马利乘法方法可分为两类:
- 第一类 :将乘数 $X$ 按 $w$ 位字处理,而被乘数 $Y$ 和模数 $m$ 作为一个整体处理。输入参数具有固定精度,一次处理一个操作数,操作数的精度长度可能很长,这可能导致高扇出信号。基数 - 4 蒙哥马利乘法方法的字位长度为 2 位。
- 第二类 </
超级会员免费看
订阅专栏 解锁全文
43

被折叠的 条评论
为什么被折叠?



