[发明专利]基于二次Booth编码的大数乘法器无效
申请号: | 200710122086.5 | 申请日: | 2007-09-21 |
公开(公告)号: | CN101122850A | 公开(公告)日: | 2008-02-13 |
发明(设计)人: | 李树国;颜晓东 | 申请(专利权)人: | 清华大学 |
主分类号: | G06F7/533 | 分类号: | G06F7/533 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100084北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 基于二次Booth编码的大数乘法器,属于公开密钥密码体制算法的集成电路设计技术领域。本发明利用线性变换式B=8a+b对部分积产生的Booth 64算法结果进行二次编码,基于二次Booth 64编码的乘法器分为3级流水线结构。第1级结构由一个超前进位加法器预计算3倍的被乘数。在预计算的同时,分别对权为81的aj和权为80的bj进行二次Booth编码;第2级结构由两个相同部分积选择和压缩阵列,分别进aj和bj的的部分积化简。第3级结构将第二级得到的部分积通过加法器进行相加。本发明提高了乘法运算的速度,可用于高性能的RSA、ECC芯片的实现,适用于服务器上大型PKI系统的应用。 | ||
搜索关键词: | 基于 二次 booth 编码 大数 乘法器 | ||
【主权项】:
1.基于二次Booth编码的大数乘法器,其特征在于,该基于二次Booth编码的大数乘法器对高阶Booth64算法结果进行二次编码1.1高阶Booth 64算法设两个位长为n的补码二进制数X、Y分别表示被乘数和乘数:X = - X n - 1 2 n - 1 + Σ i n - 2 X i 2 i Y = - Y n - 1 2 n - 1 + Σ j n - 2 Y j 2 j - - - ( 1 ) 其中Xi,Yj∈{0,1};设乘法结果为Z,则基本乘法运算为Z = X × Y = X × ( - Y n - 1 2 n - 1 + Σ j n - 2 Y j 2 j ) . - - - ( 2 ) 高阶Booth 64编码一次考虑7位乘数,由于每7位之间都重叠一位,因此实际每次编码处理了6位乘数,其数学表达式如下:Y = - Y n - 1 2 n - 1 + Σ j n - 2 Y j 2 j = Σ j = 0 , Y - 1 = 0 n / 6 - 1 ( ( - 32 Y 6 j + 5 16 Y 6 j + 4 + 8 Y 6 j + 3 + 4 Y 6 j + 2 + 2 Y 6 j + 1 + Y 6 j + Y 6 j - 1 ) × 2 6 j ) . - - - ( 3 ) 式(4)假设乘数Y的位宽n为6的倍数,若其位宽不是6的倍数,则在其高位进行符号位补偿,使得其位宽补足至6的倍数;根据式(3),高阶Booth 64算法部分积产生的编码规则为Bj=-32Y6j5+16Y6j+4+8Y6j+3+4Y6j+2+2Y6j+1+Y6j+Y6j-1 (4)则高阶Booth 64算法可以表示为Z = X × Y = X × Σ j = 0 n / 6 - 1 ( B j × 2 6 j ) . - - - ( 5 ) 式(5)表示部分积从集合{±0X,±1X,±2X,±3X,…,±32X}进行选择,在产生部分积前需要预计算3X,5X,……,31X;部分积个数从n减少为 1.2二次Booth 64编码由于高阶Booth 64算法需要预计算大量奇数倍被乘数,给硬件实现造成了困难;为了克服这个困难,基于Booth编码基础上,再次进行线性变换编码,即用一个线性表达式B=ka+b来表达高阶Booth 64编码的结果,其中k为系数,a、b为变量;二次Booth 64线性变换式为:B=8a+b. (6)其中:a,b∈{±0,±1,±2,±3,±4},B={±0,±1,±2,±3,…,±32}.根据式(6)可得到二次Booth 64编码,见表1,表1二次Booth 64编码表 B a,b B a,b B a,b B a,b 1 0,1 9 1,1 17 2,1 25 3,1 2 0,2 10 1,2 18 2,2 26 3,2 3 0,3 11 1,3 19 2,3 27 3,3 4 0,4 12 1,4 20 2,4 28 3,4 5 1, -3 13 2, -3 21 3, -3 29 4, -3 6 1, -2 14 2, -2 22 3, -2 30 4, -2 7 1, -1 15 2, -1 23 3, -1 31 4, -1 8 1,0 16 2,0 24 3,0 32 4,0这种转换方式,使得部分积不再从有大量的奇数倍被乘数集合{±0,±1,±2,±3,…,±32}中选取,而是转化成从集合{±0,±1,±2,±3,±4}中选取,从而大大地简化了电路的设计。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/200710122086.5/,转载请声明来源钻瓜专利网。
- 上一篇:一种对网络流量进行识别限流的方法及其设备
- 下一篇:玻纤毡镁质板