使用跳跃阵列和变形华菜士树的并行乘法器包含:用于按变形布斯算法编码乘数的变形布斯编码器,用于部分积的跳跃阵列,用于将二进制位相加的变形华菜士树以及将最终两行相加的混合前缀加法器,其中连续执行O(logn)的快速乘法而没有进位输出的等待状态,并改进了该并行乘法器布局规则性从而降低了其芯片面积及制造成本。(*该技术在2011年保护过期,可自由使用*)
【技术实现步骤摘要】
本专利技术涉及并行乘法器,更具体地说,涉及使用变形布斯(Booth)算法、跳跃阵列及变形华莱士(Wallace)树的并行二进制乘法器。并行二进制乘法器被广泛用于各种系统中,例如,高性能计算机的ALU(运算器)、传真电报、数字信号处理系统、矩阵乘法器,也可用于专用芯片中,因此已提出许多方法来减小芯片面积并提高并行二进制乘法器的运算速度,例如,众所周知的,通过使用变形的布斯算法可显著提高并行乘法器的乘法速度,该变形的布斯算法由John Wiley父子公司公开于“Computer Arithmetic”(PP.129-212,1979)及“Nikkei Electronics”(pp.76-89,1978年5月29日)中。常规并行乘法器基于各种算法及技术。在已提出的许多乘法器中,可将有较高级性能的一般乘法器分为两种,两种在其初始步骤中皆用变形布斯算法产生n/2个部分乘积行,其中n为乘数Y和被乘数X两个输入的位数。这种并行乘法器的最基本部分是多操作数加法电路,该电路将n/2条部分乘积行彼此相加并减少到两行。为实现该加法器电路,要使用全加器阵列和华莱士(Wallace)树。将使用阵列的并行乘法器排列为由全加器单元构成的二维阵列结构。在这种乘法器中,将当前行单元的输出顺序地输入到下一行单元。这样,这种乘法器的延迟时间复杂度为O(n)并基本为慢的乘法时间。附图说明图1示意性地示出使用阵列的常规并行乘法器总的结构。图1中,将16位被乘数X提供给8个被乘数加法器单元CL1、CL2、CL3、...CL8,将16位乘数Y提供给变形布斯编码器MBE。然后,变形布斯编码器MBE根据变形布斯算法对16位乘数Y编码,并将编码输出提供给8个加法器单元CL1、CL2、CL3...CL8,其中每个编码输出为3位的信号。第1到第8行加法器单元CL1-CL8分别将被乘数X加到变形布斯编码器MBE的编码输出,而第一行加法器单元CL1将其输出提供给第二行加法器单元CL2。然后,第一行加法器单元CL1的输出值再次加到第二行加法器单元CL2的输出值上,此外又顺序地加上第二行加法器单元CL2的乘积值,最后提供给快速加法器FAD。对补码乘法,将两个最低位及其补码的4位从每个加法器单元提供给快速加法器FAD。这样,快速加法器FAD的结果最终为2n位的数值。在并行乘法器中,如上所述,将每一行输出顺序提供给下面每一行。因此,两个输入的乘法时间与输入位数成比例地减慢。尽管这种类型乘法器容易地应用于位数少,低速和小芯片面积中,但不适用于高速乘法。另一方面,使用华莱士树的并行乘法器具有O(logn)的较快运算时间,但需要不规则结构的大的芯片面积。这样,该华莱士树不适用于小芯片面积和低成本。而且,如图6所示,在一个门延迟后提供一个进位输出,在两个门延迟后提供和输出,因为在一般的CMOS或NMOS电路中是用形成和之前处于备用状态的进位输出来获得和的,因此,不是直接加上前面形成的进位输出。图2示意性地示出使用华莱士树的常规乘法器的总结构而图5示出该华莱士树的示意结构。在使用阵列或华莱士树的两种乘法器中,最后步骤是将两最后行相加。这种常规乘法器在乘法速度和芯片面积方面仍存在问题。这样就一直存在对能够提高乘法速度和芯片面积的更有效乘法器的需求。本专利技术的目的是提供使用变形布斯算法、跳跃阵列和变形华莱士树的并行乘法器,该乘法器使芯片面积最小并提高了乘法速度。按照本专利技术,通过使用跳跃阵列、变形华莱士树结构和运算时间复杂度为O(logn)混合前缀加法器来提高两个输入的乘法速度。本专利技术另一目的是提供通过改进结构规则性使芯片面积最小以及通过使用跳跃阵列和混合前缀加法器使设计简单的并行乘法器。本专利技术的这些和其它目的、特点、优点通过结合附图的最佳实施例的以下说明会变得更清楚,附图中图1为说明使用常规布斯算法的阵列型并行乘法器的图;图2说明使用常规布斯算法和华莱士树的并行乘法器;图3说明按照本专利技术的并行乘法器;图4说明按照本专利技术的跳跃阵列的结构;图5说明华莱士树的各个结构,其中,图5(A)为常规华莱士树而图5(B)为按照本专利技术的变形华莱士树;图6为说明按照本专利技术的CMOS全加器单元的电路图,其中图6(A)为正输入-负输出逻辑,图6(B)为负输入-正输出逻辑;图7为说明混合前缀加法器的图。参考附图更详细地描述本专利技术。图3示出按照本专利技术的并行乘法器的总的原理结构。图3中,本专利技术包括用于按变形布斯算法对乘数Y的值偏码的变形布斯编码器MBE,连接到变形布斯编码器MBE用以由编码数值产生被乘数X的部分积的行以及用以在跳过预定跳跃间隔后将部分乘积行相加的跳跃阵列SAP,连接到跳跃阵列SAP以迅速加上由跳跃阵列SAP提供的二进制数的变形华莱士树MWT,以及连接到变形华莱士树MWT用于加上由变形华莱士树提供的两行的数值的混合前缀加法器HPA。首先,使用变形布斯算法产生两个n位信号X和Y的并行乘法的n/2部分乘积行,其中n(=16)指出输入信号的位数。接着,变形布斯编码器MBE由乘数Y产生3*(n/2)编码输出提供给跳跃阵列SAP。然后跳跃阵列SAP通过被乘数X和变形布斯编码器MBE的编码输出产生部分积行并提供给变形华莱士树MWT。产生部分乘积行的方法和图1所述的相同。具体地说,跳跃阵列SAP将部分乘积从n/2行减小到n/log(n/2)行。该跳跃阵列SAP也改进了乘法时间复杂度为O(logn)的乘法器结构的规则性并用简单设计使芯片面积最小。其次,使用变形华莱士树MWT通过反复相加将跳跃阵列SAP的结果减小到两行。变形华莱士树MWT由于进位输出设有备用状态而具有比常规华莱士树更短的乘法时间。为改善乘法时间和芯片面积,跳跃阵列SAP和变形华莱士树MWT的每个单元依次由正输入-负输出和负输入-正输出单元加以排列构成。最后,芯片面积小、速度高的混合前缀加法器HPA用于将最后两行相加。从使用常规阵列的并行乘法器来看,本专利技术尽管增加了芯片面积,但将乘法时间从O(n)降低到O(logn)。再,按照本专利技术,带有跳跃阵列SAP和变形华莱士树MWT的并行乘法器将复杂度从O(2n2logn)降到O(n2logn+2n2)从而使芯片面积最小,而乘法时间尽管和常规场合等价地为O(logn)但在低于128位范围内乘法速度更快。按照该电路,由于2个n位数相加由变形布斯编码器MBE、跳跃阵列SAP、变形华莱士树MWT和混合前缀加法器HBA的组合实现,所以输出变成2n位并使用按变形布斯算法的变形布斯编码器MBE从乘数Y产生(n/2)*3个编码输出行。所以,第i行的三个编码输出如下ONEi= Y2i+ Y2i - 1TWOi=(Y2i+ 1)′Y2i·Y2i - 1+ Y2i+ 1(Y2i)′·(Y2i-1)′NECi= Y2i + 1(Y2i′+(Y2i-1)′其中(0≤i≤n/2-1和Y-1=0),符号“′”指“-”、指逻辑“非”。由于部分积行从三种编码输出行产生,所以可通过将变形布斯编码器MBE的输出行和n位被乘数加到各加法器单元来产生n/2条部分积行。第i部分行积的第j位如下Pi,j=(ONEi·Xj+TWOi·Xj-1) NEGi(0≤i≤n/2-1,0≤j≤n,X-1=0和Xn=Xn-1)当下标i递增1时本文档来自技高网...
【技术保护点】
一种使用跳跃阵列和变形华莱士树的并行乘法器,包含有: 变形布斯编码器,用以按变形布斯算法对乘数编码并产生编码输出, 跳跃阵列,用于对来自被乘数的部分积和所述变形布斯编码器的所述编码输出在跳过预定间隔后相加, 变形华莱士树,用以高速地将由所述跳跃阵列提供的二进制位相加,以及 混合前缀加法器,用于对由所述变形华莱士树提供的两个最后行相加。
【技术特征摘要】
...
【专利技术属性】
技术研发人员:韩铎敦,牟相晚,
申请(专利权)人:三星电子株式会社,
类型:发明
国别省市:KR[韩国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。