论文部分内容阅读
1024位的RSA加密解密运算是目前安全通讯中的核心算法,但当中庞大的大数模乘运算量使它逐渐成为高速网络安全通讯的瓶颈。作为国家教育部重点项目(03130)的后续项目,本论文从硬件算法到电路和版图设计等多个方面进行详尽的分析、研究、探讨与尝试,并采用0.18μm CMOS低压混合工艺,设计出一款片内工作时钟约200MHz,能有效突破上述瓶颈的高速RSA密码芯片和相应的IP核。
本文以Barrett模缩减方案为基础进行硬件算法设计,以高效流水线结构的模乘电路作为芯片的运算模块,并采用了新颖的折叠式1088×32位大数乘法器作为模块的内核,使芯片能兼顾多种加解密功能。同时在大数乘法器内部的保留进位加法阵列(CSA)中,采用了以类似二叉树结构的累加器单元来实现同权重的乘积项累加,并创新性的设计出6:2压缩器作为最后一级压缩,加快了累加过程。为了满足芯片内部200MHz的工作时钟频率,减少芯片面积,本文对处于关键逻辑路径上的运算单元4:2和6:2压缩器进行了晶体管级的模拟优化电路设计和版图设计。本文还设计了相应的锁相环电路(PLL),用来产生片内高达200MHz的时钟信号。
版图后仿结果表明,相比于晶圆厂提供的标准单元和库,压缩器的版图面积缩小了20~25%,运算时间大大减少30%;而PLL电路能在启动后15μs内把19.68MHz输入参考频率倍频出196.8MHz的稳定时钟信号,同时相应的周期抖动少于5ps;对于整体芯片,在196.8MHz的时钟环境中,1024位的普通RSA加解密运算达到每秒1700次以上,并支持每秒6000次左右的中国剩余定理解密运算。