优化硬件架构与椭圆曲线密码系统新方案
优化硬件架构实现蒙哥马利乘法
在硬件实现蒙哥马利乘法时,有基数 -2(radix - 2)和基数 -4(radix - 4)两种版本架构。以下是使用 Xilinx Virtex - II 6000 FF1517 - 4 FPGA 实现(n = 1024,w = 16)时,这两种版本的对比:
| 版本 | 最大频率 (MHz) | 最小延迟 (时钟周期) | 最小延迟 (μs) | 切片数量 |
| ---- | ---- | ---- | ---- | ---- |
| radix - 2 | 100 | 1088 | 10.880 | 4,178(12%) |
| radix - 4 | 94 | 576 | 6.128 | 9,471(28%) |
从表格数据可知,基数 -4 版本的最大频率降至 94MHz,最小延迟时钟周期为 576 个。这是因为基数 -4 的处理单元(PE)有 4 个内部分支,是基数 -2 版本分支数量的两倍,为弥补更复杂组合逻辑导致的传播延迟增加,需要一些小的设计调整。具体的优化技术如下:
1. 预计算操作数之和 :在算法 4 的第 4 行,有三个长度为 w 位或更长操作数的加法。为减少此步骤的传播延迟,我们在对应处理单元接收到 x(i) · Y (j) + q(i) · M (j) 的值前一个时钟周期进行预计算。
2. 特殊处理首个处理单元 :对于首个处理单元,S(0) 更新和 q(i) 计算在同一时钟周期进行,无法提前预计算 x(i) · Y (0) + q(i) · M (0) 的值。为克服此困难
超级会员免费看
订阅专栏 解锁全文
17

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



