CN101122850A - 基于二次Booth编码的大数乘法器 - Google Patents
基于二次Booth编码的大数乘法器 Download PDFInfo
- Publication number
- CN101122850A CN101122850A CNA2007101220865A CN200710122086A CN101122850A CN 101122850 A CN101122850 A CN 101122850A CN A2007101220865 A CNA2007101220865 A CN A2007101220865A CN 200710122086 A CN200710122086 A CN 200710122086A CN 101122850 A CN101122850 A CN 101122850A
- Authority
- CN
- China
- Prior art keywords
- booth64
- coding
- multiplier
- partial
- partial products
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
基于二次Booth编码的大数乘法器,属于公开密钥密码体制算法的集成电路设计技术领域。本发明利用线性变换式B=8a+b对部分积产生的Booth 64算法结果进行二次编码,基于二次Booth 64编码的乘法器分为3级流水线结构。第1级结构由一个超前进位加法器预计算3倍的被乘数。在预计算的同时,分别对权为81的aj和权为80的bj进行二次Booth编码;第2级结构由两个相同部分积选择和压缩阵列,分别进aj和bj的的部分积化简。第3级结构将第二级得到的部分积通过加法器进行相加。本发明提高了乘法运算的速度,可用于高性能的RSA、ECC芯片的实现,适用于服务器上大型PKI系统的应用。
Description
技术领域
本发明涉及公开密钥密码体制算法的集成电路设计领域,特别是涉及一种适合公开密钥加密算法的大数乘法的硬件实现。
背景技术
迅速发展的电子商务、保密通讯等应用对开放网路上的信息安全提出了更高的要求。RSA、ECC等公开密钥密码体制被广泛用于密钥传递和数字签名。RSA和素数域ECC的核心操作都是模乘运算,而且为了保证一定程度的安全性,RSA模数的位长需要达到1024位以上,ECC模数的位长也需要达到233位以上。应用最广泛的模乘法算法是蒙哥马利算法,它的核心思想是将模乘运算转化为基本的乘法运算。综上RSA、ECC算法实现的关键运算是大数乘法。但是这种规模的大数乘法运算用软件实现效率是很低的,会占用大量的系统资源,因此各种大数乘法器的硬件设计应运而生。
在乘法中,如果乘数是两位或两位以上的数,乘的时候,就要用乘数的每一位去乘被乘数,每次乘得的积,叫做部分积。大数高速乘法器通常采用并行结构,一般分为3个部分:一是产生部分积;二是将产生的部分积进行压缩,得到两个部分积:和(Sum)、进位(Carry);三是通过加法器将两个部分积相加得到结果。
产生部分积简单的方法是由被乘数X和乘数Y中的一位二进制数Yi相与。则N位二进制乘数将产生N个部分积。其具体算法表示为:
Function Mult(X,Y)=X×Y:
For i from 0 to n-1 step by 1
if Yi equal 1 then
temp←temp+X
X←X×2
Return temp
其中n为二进制数X,Y的位数。
改进的Booth 4算法是一种常见的产生部分积方法。其原理是将乘数Y中相邻三位的二进制数Yi-1YiYi+1进行编码,从而使得部分积个数减少近一半。
改进的Booth 4算法数学表达式如下所示
其中Bj=-2Y2j+1+Y2j+Y2j-1(Y-1=0),n为二进制有符号数X,Y的位数。
图1以8×8b乘法器为例说明改进的Booth 4算法。改进的Booth 4编码一次考虑三位乘数:本位,相邻高位,相邻低位,由于每三位之间都重叠一位,因此实际每次编码处理了两位乘数,这样,比不编码的部分积数目降低了近1/2。在对乘数进行编码时,乘数需要再最低位第0位后补充一位,即第-1位Y-1,该位恒为0。图1中的部分积选择由改进的Booth 4编码确定,见表1所示,其中X代表被乘数。表1中两倍的被乘数2X可以通过被乘数X左移1位得到,补码表示的被乘数相反数-X可以通过对被乘数取反加一实现。当部分积选择为正数时,补偿位S为0;当部分积选择为负数时,对被乘数取反,补偿位S为1,从而实现取反加一的操作。
表1改进的Booth 4编码
三位乘数 | 部分积选择 | S | 三位乘数 | 部分积选择 | S |
0000010100111 | +0+X+X+2X | 0000 | 100101110111 | -2X-X-X-0 | 1111 |
图2以一个具体实例说明Booth 4算法。乘数为91,二进制表示为01011011;被乘数M为100,二进制表示为01100100。对乘数从低位到高位每三位进行编码,编码规则见表1。例如乘数的第1位,第0位,第~1位为110,根据编码规则,产生部分积为-X。对于-X,由于硬件采用补码表示,可以通过被乘数各位取反然后加一实现。部分积的最高位为符号位,可以直接扩展。又如乘数的第5位,第4位,第3位为011,根据编码规则,产生部分积为2X。在硬件上可以将被乘数左移一位实现。同理产生其他部分积。通过Booth 4编码,产生4个部分积,将这4个部分积相加,即得到乘数91和被乘数100相乘的乘积9100。
改进的Booth 4算法推广到Booth 8算法。Booth 8算法可以将部分积数量减少为原来的1/3。其部分积从{±0X,±1X,±2X,±3X,±4X}中选择。由于3倍的被乘数3X不能通过移位操作得到,需要化成2X+X;其余部分积选择可以通过移位操作得到。改进的Booth 8算法数学表达式如下所示
其中Bj=-4Y3j+2+2Y3j+1+Y3j+Y3j-1(Y-1=0),n为二进制有符号数X,Y的位数。
同样,改进的Booth 8算法可以推广到Booth 64算法。它将部分积数量减少为原来的1/6,但需要预先计算3X、5X……、31X,这显然制约该算法在实际中的应用。本发明解决了高阶Booth算法需要预计算大量奇数倍被乘数的问题,提高了大数乘法器的运算速度。
发明内容
本发明的目的在于提出了一种适用于大数乘法器的二次编码Booth 64线性变换式,并给出了基于该线性变换式的大数乘法器电路实现。该方法能满足高速公共密钥算法体制的大数乘法计算速度要求,提高签名认证的次数。
本发明所述的方法的思路在于,采用二次编码Booth64线性变换式对高阶Booth64编码结果进行再次编码,从而使得需要预计算奇数倍被乘数的数量大为减小,减少了乘法器面积,增大了部分积压缩率,提高了大数乘法器的运算速度。本发明所述的二次编码Booth64线性变换式指的是利用线性变换式B=8a+b对部分积产生的Booth 64算法结果进行二次编码这种转换方式,使得部分积不再从有大量奇数倍的被乘数集合{±0,±1,±2,±3,…,±32}中选取,而是转化成从集合{±0,±1,±2,±3,±4}中选取,从而大大地简化了电路的设计。
本发明所述的系统的思路在于,根据本发明所述二次Booth编码方法所处理乘数位宽大小的不同,采用相应的部分积压缩阵列,采用3级流水线结构,缩小了关键路径延迟,提高了硬件工作频率,实现了一个基于硬件的3段流水线完成大数乘法的硬件系统。本发明所述的大数乘法器架构,将在下文的实施例中给出详细说明。
本发明的特征在于利用线性变换式B=8a+b对部分积产生的Booth 64算法结果进行二次编码,基于二次Booth 64编码的乘法器分为3级流水线结构。第1级结构由一个超前进位加法器预计算3倍的被乘数。在预计算的同时,分别对权为81的aj和权为80的bj进行二次Booth编码;第2级结构由两个相同部分积选择和压缩阵列,分别进行权为81的aj和权为80的bj的部分积阵列进行化简。部分积的压缩采用Wallace树结构。部分积阵列采用4-2计数器和免进位加法器进行部分积的化简;第3级结构将第二级得到的部分积通过加法器进行相加。
1.本发明提到的二次编码Booth 64线性变换式详细说明如下:
1.1高阶Booth 64算法
设两个位长为n的补码二进制数X、Y分别表示被乘数和乘数:
其中Xi,Yj∈{0,1}。
设乘法结果为Z,则基本乘法运算为
高阶Booth 64编码一次考虑7位乘数。由于每7位之间都重叠一位,因此实际每次编码处理了6位乘数,其数学表达式如下:
式(4)假设乘数Y的位宽n为6的倍数,若其位宽不是6的倍数,则在其高位进行符号位补偿,得其位宽补足至6的倍数。
根据式(4),高阶Booth 64算法部分积产生的编码规则为
Bj=-32Y6j+5+16Y6j+4+8Y6j+3+4Y6j+2+2Y6j+1+Y6j+Y6j-1,(5)
则高阶Booth 64算法可以表示为
1.2二次Booth 64编码
由于高阶Booth 64算法需要预计算大量奇数倍被乘数,给硬件实现造成了困难。为了克服这个困难,基于Booth编码基础上,再次进行线性变换编码。即用一个线性表达式B=ka+b来表达高阶Booth 64编码结果,其中k为系数,a、b为变量。
本发明提出的二次Booth 64线性变换式为:
B=8a+b.(7)
其中:a∈{0,1,2,3,4},b∈{±0,±1,±2,±3,±4},B={±0,±1,±2,±3,…,±32}.根据式(7)可得到二次Booth 64编码,见表2二次Booth 64编码表。
表2二次Booth 64编码表
B | a,b | B | a,b | B | a,b | B | a,b |
12345678 | 0,10,20,30,41,-31,-21,-11,0 | 910111213141516 | 1,11,21,31,42,-32,-22,-12,0 | 1718192021222324 | 2,12,22,32,43,-33,-23,-13,0 | 2526272829303132 | 3,13,23,33,44,-34,-24,-14,0 |
上表说明高阶Booth 64算法得到的结果{±0,±1,±2,±3,…,±32}完全可以用线性表达式B=8×a+b.来实现。这种转换方式,使得部分积不再从有大量的奇数倍被乘数集合{±0,±1,±2,±3,…,±32}中选取,而是转化成从集合{±0,±1,±2,±3,±4}中选取,从而大大地简化了电路的设计。
现将式(7)代入式(6),进一步化简得
附图说明
本说明书中的附图仅为图示的目的而提供,并不对本发明的内容产生任何限制,其中:
图1示出了经典的8×8改进的Booth 4乘法器的结构框图;
图2示出了一个Booth 4算法的具体乘法计算实例示意图;
图3示出了本发明提出的二次Booth 64乘法器的结构框图;
图4示出了本发明提出的二次Booth 64编码器结构框图;
图5示出了经典的CSA计数器结构框图;
图6示出了经典的4-2压缩器结构框图;
图7示出了经典的4-2压缩器链结构框图;
图8示出了本发明所采用的部分积阵列示意图;
图9示出了本发明所采用的部分积压缩Wallace Tree拓扑结构图。
具体实施方式
本发明的显著特点在于,采用二次编码Booth64线性变换式B=8a+b对高阶Booth64编码结果进行再次编码,从而使得使得部分积不再从有大量的奇数倍被乘数集合{±0,±1,±2,±3,…,±32}中选取,而是转化成从集合{±0,±1,±2,±3,±4}中选取,需要预计算奇数部被乘数的数量大为减小,减少了乘法器面积,增大了部分积压缩率,提高了大数乘法器的运算速度。
本发明的另一特点在于,提出了一种二次编码Booth64编码器结构。Booth编码逻辑包括3部分,分别是高阶Booth编码、二次编码和部分积选择逻辑。利用高阶Booth 64编码结果的相邻位是否相等的信息,根据线性变换式B=8a+b,进行二次编码,简化了二次Booth 64编码器的硬件逻辑复杂度。
本发明的第三个特点在于,采用了三段流水线结构乘法器,该结构符合本发明所提二次编码Booth64线性变化式方法中先编码,后压缩,再合并三步骤要求,合理分配了计算任务,缩短了关键路径延迟。
本发明的第四个特点在于提出了一种数字电路系统,该系统实现了本发明所提出的二次编码的Booth 64线性变换式方法。该系统减小预计算奇数倍被乘数的个数,快速的大数乘法。
下面将根据附图对本发明的具体实施方式进行详细说明。
2.本发明基于二次编码Booth 64线性变换式设计的大数乘法器结构如下:
2.1电路结构
图3给出了基于二次Booth 64编码的乘法器流水线实现结构。
1)在第一级结构中,用一个超前进位加法器预计算3倍的被乘数。加法器的输入分别是被乘数X和被乘数的两倍2X。2X在硬件实现上可以通过左移一位实现。在预计算的同时,分别对权为81的aj和权为80的bj进行二次Booth编码。编码器和部分积选择器逻辑在2.2介绍。
2)在第二级结构中,存在两个相同部分积选择和压缩阵列,分别进行权为81的aj和权为80的bj的部分积化简。部分积从集合{±0X,±1X,±2X,±3X,4X}选择。部分积数目的压缩采用Wallace树结构。部分积阵列采用4-2计数器和免进位加法器(CSA-carry save adder)进行部分积的化简,直至得到两个部分积(Sum与Carry)。那么,两个部分积选择和压缩阵列共产生4个部分积Sum_a、Carry_a、Sum_b、Carry_b。
3)在第三级结构中,将第二级得到的4个部分积相加。依据式(7),权为81的aj产生的2个部分积Sum_a、Carry_a首先需要通过移位产生8_Sum_a、8_Carry_a。这样得到的4个部分积8_Sum_a、8_Carry_a、Sum_b、Carry_b再通过一个4∶2部分积压缩电路得到最终的两个部分积Sum、Carry。
2.2二次Booth编码器设计
如图4所示,Booth编码逻辑包括3部分,分别是高阶Booth编码、二次编码和部分积选择逻辑。
1)高阶Booth编码
高阶Booth 64编码取每7位相邻的乘数Y6Y5Y4Y3Y2Y1Y0为一组作为输入,其编码规则见式(5)。由于
其中B为乘数Y6Y5Y4Y3Y2Y1Y0的高阶Booth 64编码结果,为Y的反码。因此当Y6Y5Y4Y3Y2Y1Y0的编码结果为B时,将Y6Y5Y4Y3Y2Y1Y0各位取反,则的编码结果为-B。利用该特点,编码器逻辑I通过异或门得到Y6Y5Y4Y3Y2Y1Y0相邻两位是否相等的输出信号E5E4E3E2E1E0,当Yi+1等于Yi时,Ei为0;当Yi+1不等于Yi时,Ei为1;其中i=0,1,2,3,4,5。编码器逻辑II通过E5E4E3E2E1E0和高阶Booth编码规则公式(5)得到输出信号B和polarity。其中信号sel_B位宽为33位,信号B中有且只有一个比特为高电平,其余比特为低电平。信号sel_B中高电平的比特sel_B[j]表示高阶Booth编码结果B的绝对值|B|等于j。信号polarity表示高阶Booth编码结果B的正负极性。
2)二次编码
二次编码逻辑根据表2的二次Booth 64编码表映射生成。其输入为高阶Booth 64编码信号sel_B、polarity。输出信号sel_a、sel_b位宽均为5位。信号sel_a、sel_b中有且只有一个比特为高电平,其余比特为低电平。信号sel_a、sel_b中高电平比特sel_a[i]、sel_a[j]为高电平,表明二次编码线性变换式(7)中的a、b二次编码结果分别为i、j。
3)部分积选择
部分积选择逻辑是多路选择器。根据选择信号sel_a、sel_b产生部分积。当sel_a[i]为高电平时,多路选择器选择被乘数的i倍输出。例如当sel_a[3]为高电平时,多路选择器选择3倍被乘数3X输出。sel_b的多路选择器逻辑和sel_a的相同。在乘法器结构中,由个二次Booth 64编码器生成两组部分积压缩阵列。
2.3部分积压缩阵列设计
部分积位数很大时,进位传播相加相当慢,因为需要很长的线从低位向高位传播进位。最重要提高乘法器速度的方法是运用进位节省加法器(由Wallace发明,又叫全加器或3-2计数器),将三个或更多的数以冗余和形式表示,不用进位相加。
这个方法在图5表示,PP1+PP2+PP3=result2+result1。压缩的延迟为一个加法器的延迟,不受部分积位数的限制。应用最基本的三输入加法器,用递归的方法布局,任何部分积可以相加并且减少到最后2个,而没有使用进位传播加法器。一个单独的进位传播加法器只需要在最后将2个部分积化为最终结果。这个普遍的方法可以应用于树形或者线性以改进性能。
Wallace描述的树形结构的缺点是不规则的互连线以及难以进行版面设计。一个更加规则的树形结构基于二进制树形结构。二进制树形结构由一系列4-2计数器组成。即输入4个数相加得到2位结果。部分积相加所需比例正比于log N。这样的树形结构更加规则。4-2压缩器内部逻辑如图6所示,由4-2压缩器组成4-2压缩器链,如图7所示
令Cin=0,则输入输出关系为I3+I2+I1+I0=2Cout+2C+S。
本发明的大数乘法器,是570*570位大数乘法器。在第一级Booth编码后,在第二级流水线上将通过部分积选择器产生部分积。由于采用二次编码Booth64线性变化式,将产生570/6=95个部分积。其部分积阵列如图8所示。
由于部分积的范围是{±0,±X,±2X,±3X,±4X},因此部分积位数将从570位上升为572位。根据二次编码Booth64线性变化式将乘数每7位一组编码,相邻编组有一位重合,因此相邻的部分积权重相差6。由于部分积有正负极性,因此在每个部分积最低位下会有一个进位信息Carry。因此考虑进位信息后,部分积阵列实际上有96行,其中部分积的进位信息与下一个部分积合并。
采用Wallace Tree结构,结合使用CSA和4∶2压缩器,将96行部分积最终化为2个部分积。其拓扑结构示意图如图9所示。
从Wallace Tree的拓扑结构可以看出,整个部分积相加网络需要5级4∶2压缩器和一级CSA。根据上两节对4∶2压缩器和CSA的延迟分析,可以推断整个部分积相加网络需要的延迟为5*3+2=17个异或门延迟。
本设计用Verilog进行行为级、RTL级编码和功能仿真,验证系统功能的正确性。基于SMIC0.18微米工艺库完成逻辑综合(DC),并提取门延时信息,进行门级仿真验证,确保功能正确性和时序上的准确性。最终,570×570大数乘法器关键路径时延5.8ns,面积约29.5mm2。
Claims (2)
1.基于二次Booth编码的大数乘法器,其特征在于,该基于二次Booth编码的大数乘法器对高阶Booth64算法结果进行二次编码
1.1高阶Booth 64算法
设两个位长为n的补码二进制数X、Y分别表示被乘数和乘数:
其中Xi,Yj∈{0,1};
设乘法结果为Z,则基本乘法运算为
高阶Booth 64编码一次考虑7位乘数,由于每7位之间都重叠一位,因此实际每次编码处理了6位乘数,其数学表达式如下:
式(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算法可以表示为
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编码表
这种转换方式,使得部分积不再从有大量的奇数倍被乘数集合{±0,±1,±2,±3,…,±32}中选取,而是转化成从集合{±0,±1,±2,±3,±4}中选取,从而大大地简化了电路的设计。
2.基于二次Booth编码的大数乘法器,其特征在于,在一块数字集成电路芯片内采用下述三级流水线的并行结构实现:
1)在第一级结构中,用一个超前进位加法器预计算3倍的被乘数,在预计算的同时,分别对权为81的aj和权为80的bj进行二次Booth编码;
2)在第二级结构中,存在两个相同部分积选择和压缩阵列,分别进行权为81的aj和权为80的bj的部分积化简,部分积从集合{±0X,±1X,±2X,±3X,4X}选择,部分积数目的压缩采用Wallace树结构,部分积阵列采用4-2计数器和免进位加法器(CSA-carry save adder)进行部分积的化简,直至得到两个部分积(Sum与Carry),那么,两个部分积选择和压缩阵列共产生4个部分积;
3)在第三级结构中,将第二级得到的4个部分积相加;依据式(6),权为81的aj产生的2个部分积Sum、Carry首先需要通过移位产生8_Sum、8_Carry;这样得到的4个部分积再通过一个4∶2部分积压缩电路得到最终的两个部分积Sum、Carry。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007101220865A CN100552620C (zh) | 2007-09-21 | 2007-09-21 | 基于二次Booth编码的大数乘法器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007101220865A CN100552620C (zh) | 2007-09-21 | 2007-09-21 | 基于二次Booth编码的大数乘法器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101122850A true CN101122850A (zh) | 2008-02-13 |
CN100552620C CN100552620C (zh) | 2009-10-21 |
Family
ID=39085195
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2007101220865A Expired - Fee Related CN100552620C (zh) | 2007-09-21 | 2007-09-21 | 基于二次Booth编码的大数乘法器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100552620C (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102184086A (zh) * | 2011-05-11 | 2011-09-14 | 电子科技大学 | 一种Booth编码器及乘法器 |
CN102270110A (zh) * | 2011-06-30 | 2011-12-07 | 西安电子科技大学 | 一种改进的基16Booth编码器 |
CN102999311A (zh) * | 2012-12-10 | 2013-03-27 | 张友能 | 基于Booth算法的48x30位乘法器 |
CN103645883A (zh) * | 2013-12-18 | 2014-03-19 | 四川卫士通信息安全平台技术有限公司 | 基于fpga的高基模乘器 |
CN103684763A (zh) * | 2012-09-19 | 2014-03-26 | 北京握奇数据系统有限公司 | 基于rsa算法的数据加密方法、装置及智能卡 |
TWI489375B (zh) * | 2010-12-03 | 2015-06-21 | Via Tech Inc | 無進位乘法裝置及其處理方法 |
CN106775577A (zh) * | 2017-01-03 | 2017-05-31 | 南京航空航天大学 | 一种高性能非精确冗余二进制乘法器及其设计方法 |
CN110196709A (zh) * | 2019-06-04 | 2019-09-03 | 浙江大学 | 一种基于RRAM的非易失性8位Booth乘法器 |
CN110428247A (zh) * | 2019-07-02 | 2019-11-08 | 常州市常河电子技术开发有限公司 | 非对称加密计算中大数乘除法的变权值快速实现方法 |
CN110955403A (zh) * | 2019-11-29 | 2020-04-03 | 电子科技大学 | 近似基-8布斯编码器及混合布斯编码的近似二进制乘法器 |
CN111008003A (zh) * | 2019-09-24 | 2020-04-14 | 上海寒武纪信息科技有限公司 | 数据处理器、方法、芯片及电子设备 |
CN111025133A (zh) * | 2019-10-24 | 2020-04-17 | 北京时代民芯科技有限公司 | 一种二阶Booth编码Wallace树乘法器电路的测试方法 |
CN111488133A (zh) * | 2020-04-15 | 2020-08-04 | 电子科技大学 | 高基数近似布斯编码方法和混合基数布斯编码近似乘法器 |
CN112068800A (zh) * | 2020-08-10 | 2020-12-11 | 清华大学 | 阵列压缩器及具有其的大数乘法器 |
CN112988112A (zh) * | 2021-04-27 | 2021-06-18 | 北京壁仞科技开发有限公司 | 点积计算装置 |
CN116991359A (zh) * | 2023-09-26 | 2023-11-03 | 上海为旌科技有限公司 | Booth乘法器、混合Booth乘法器及运算方法 |
-
2007
- 2007-09-21 CN CNB2007101220865A patent/CN100552620C/zh not_active Expired - Fee Related
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI489375B (zh) * | 2010-12-03 | 2015-06-21 | Via Tech Inc | 無進位乘法裝置及其處理方法 |
CN102184086B (zh) * | 2011-05-11 | 2012-11-07 | 电子科技大学 | 一种Booth编码器及乘法器 |
CN102184086A (zh) * | 2011-05-11 | 2011-09-14 | 电子科技大学 | 一种Booth编码器及乘法器 |
CN102270110A (zh) * | 2011-06-30 | 2011-12-07 | 西安电子科技大学 | 一种改进的基16Booth编码器 |
CN102270110B (zh) * | 2011-06-30 | 2013-06-12 | 西安电子科技大学 | 一种改进的基16Booth编码器 |
CN103684763A (zh) * | 2012-09-19 | 2014-03-26 | 北京握奇数据系统有限公司 | 基于rsa算法的数据加密方法、装置及智能卡 |
CN102999311A (zh) * | 2012-12-10 | 2013-03-27 | 张友能 | 基于Booth算法的48x30位乘法器 |
CN103645883A (zh) * | 2013-12-18 | 2014-03-19 | 四川卫士通信息安全平台技术有限公司 | 基于fpga的高基模乘器 |
CN106775577A (zh) * | 2017-01-03 | 2017-05-31 | 南京航空航天大学 | 一种高性能非精确冗余二进制乘法器及其设计方法 |
CN106775577B (zh) * | 2017-01-03 | 2019-05-14 | 南京航空航天大学 | 一种高性能非精确冗余二进制乘法器的设计方法 |
CN110196709A (zh) * | 2019-06-04 | 2019-09-03 | 浙江大学 | 一种基于RRAM的非易失性8位Booth乘法器 |
CN110428247A (zh) * | 2019-07-02 | 2019-11-08 | 常州市常河电子技术开发有限公司 | 非对称加密计算中大数乘除法的变权值快速实现方法 |
CN111008003B (zh) * | 2019-09-24 | 2023-10-13 | 上海寒武纪信息科技有限公司 | 数据处理器、方法、芯片及电子设备 |
CN111008003A (zh) * | 2019-09-24 | 2020-04-14 | 上海寒武纪信息科技有限公司 | 数据处理器、方法、芯片及电子设备 |
CN111025133B (zh) * | 2019-10-24 | 2022-02-22 | 北京时代民芯科技有限公司 | 一种二阶Booth编码Wallace树乘法器电路的测试方法 |
CN111025133A (zh) * | 2019-10-24 | 2020-04-17 | 北京时代民芯科技有限公司 | 一种二阶Booth编码Wallace树乘法器电路的测试方法 |
CN110955403A (zh) * | 2019-11-29 | 2020-04-03 | 电子科技大学 | 近似基-8布斯编码器及混合布斯编码的近似二进制乘法器 |
CN111488133A (zh) * | 2020-04-15 | 2020-08-04 | 电子科技大学 | 高基数近似布斯编码方法和混合基数布斯编码近似乘法器 |
CN111488133B (zh) * | 2020-04-15 | 2023-03-28 | 电子科技大学 | 高基数近似布斯编码方法和混合基数布斯编码近似乘法器 |
CN112068800A (zh) * | 2020-08-10 | 2020-12-11 | 清华大学 | 阵列压缩器及具有其的大数乘法器 |
CN112068800B (zh) * | 2020-08-10 | 2022-10-25 | 北京草木芯科技有限公司 | 阵列压缩器及具有其的大数乘法器 |
CN112988112A (zh) * | 2021-04-27 | 2021-06-18 | 北京壁仞科技开发有限公司 | 点积计算装置 |
CN116991359A (zh) * | 2023-09-26 | 2023-11-03 | 上海为旌科技有限公司 | Booth乘法器、混合Booth乘法器及运算方法 |
CN116991359B (zh) * | 2023-09-26 | 2023-12-22 | 上海为旌科技有限公司 | Booth乘法器、混合Booth乘法器及运算方法 |
Also Published As
Publication number | Publication date |
---|---|
CN100552620C (zh) | 2009-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101122850A (zh) | 基于二次Booth编码的大数乘法器 | |
CN100583023C (zh) | 组合多项式和自然乘法的乘法器架构 | |
Timarchi et al. | Arithmetic circuits of redundant SUT-RNS | |
Surendran et al. | Implementation of fast multiplier using modified Radix-4 booth algorithm with redundant binary adder for low energy applications | |
Molahosseini et al. | A new residue to binary converter based on mixed-radix conversion | |
Mahitha et al. | A low power signed redundant binary vedic multiplier | |
Haritha et al. | Design of an enhanced array based approximate arithmetic computing model for multipliers and squarers | |
US20020103840A1 (en) | Apparatus and method for digital multiplication using redundant binary arithmetic | |
Dakhole et al. | Multi-digit quaternary adder on programmable device: Design & verification | |
Molahosseini et al. | Efficient MRC-based residue to binary converters for the new moduli sets {2 2n, 2 n-1, 2 n+ 1-1} and {2 2n, 2 n-1, 2 n-1-1} | |
Noorimehr et al. | Efficient Reverse Converters for 4-Moduli Sets {2$$^{2n-1}-1$$, 2$$^{n} $$, 2$$^{n}+ 1$$, 2$$^{n}-1$$} and {2$$^{2n-1} $$, 2$$^{2n-1}-1$$, 2$$^{n}+ 1$$, 2$$^{n}-1$$} Based on CRTs Algorithm. | |
Bhusare et al. | Fixed-width multiplier with simple compensation bias | |
Moayedi et al. | Design and evaluation of novel effective Montgomery modular multiplication architecture | |
RU2751802C1 (ru) | Умножитель по модулю | |
Setia et al. | Novel Architecture of High Speed Parallel MAC using Carry Select Adder | |
Hallikhed et al. | VLSI Implementation of Fast Addition Using Quaternary Signed Digit Number System | |
Sahoo et al. | A high speed FIR filter architecture based on novel higher radix algorithm | |
Reddy et al. | A high speed, high Radix 32-bit Redundant parallel multiplier | |
Mousavi et al. | Pipelined Residue Logarithmic Numbers System for general modules set {2 n-1, 2 n, 2 n+ 1} | |
Ongwattanakul et al. | Quaternary Arithmetic Logic Unit on a Programmable Logic Device. | |
KR100805272B1 (ko) | 부호화를 이용하는 곱셈 장치 및 그 방법 | |
Rajkumar et al. | VLSI Implementation of Signed Multiplier using Quaternary Signed Digit Number System | |
Alaie et al. | Efficient modulo 2n+ 1 multiplier | |
PRIYANKA et al. | Pre Encoded Multiplier Design using Enhanced Higher Radix Booth Encoding | |
Chandrika et al. | Design and Comparison of Wallace Multiplier Based on Symmetric Stacking and High speed counters |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20091021 Termination date: 20100921 |