高效模幂运算的位转发技术与硬件实现
1. 滑动窗口技术与 BFW 技术对比
在现代基于 2 的模幂运算技术中,计算 1024 位指数的幂时,传统方法需要 1536 次模乘法(MM)。而滑动窗口技术(窗口大小为 2)和 BFW - 1 算法仅需 1366 次 MM。以下是不同窗口大小下,滑动窗口技术和 BFW 技术所需 MM 次数的对比:
| 窗口大小 | 滑动窗口技术所需 #MM | BFW 技术 | BFW 技术所需 #MM |
| ---- | ---- | ---- | ---- |
| 2 | 1366 | BFW - 1 | 1366 |
| 3 | 1332 | BFW - 2 | 1303 |
| 6 | 1195 | BFW - 5 | 1168 |
从表格数据可以看出,BFW 算法在减少所需 MM 次数方面表现更优。而且,滑动窗口技术在硬件实现上比 BFW 技术更复杂,开销更大,原因如下:
- 逻辑电路复杂度 :滑动窗口技术中划分零窗口(ZW)和非零窗口(NZW)需要非常复杂的逻辑电路,这是其主要执行过程;而 BFW 技术的主要过程是统计连续的 1,仅需简单的与门即可执行。
- 预计算差异 :两者都有预计算过程,但滑动窗口技术(窗口大小为 d)需要 (2^d - 1) 次预计算,BFW - d 同样需要 (2^d - 1) 次预计算,但由于滑动窗口技术所需预计算项更多,所以其存储预计算项需要更多的内存空间。
综上所述,BFW 技术在减少所需 MM 频率、降低内存空间需求和简化硬件电路方面优于滑动窗口技术。