乘法器
简介
乘法器在当今数字信号处理以及其他诸多应用领域中起着十分重要的作用。随着科学技术的发展,许多研究人员已经开始试图设计一类拥有更高速率和低功耗,布局规律占用面积小,集成度高的乘法器。这样,就能让它们更加适用于高速率,低功耗的大规模集成电路的应用当中。
通常的乘法计算方法是添加和位移的算法。在并行乘法器当中,相加的部分乘积的数量是主要的参数。它决定了乘法器的性能。为了减少相加的部分乘积的数量,修正的Booth算法是最常用的一类算法。为了实现速度的提高Wallace树算法可以用来减少序列增加阶段的数量。我们进一步结合修正的booth算法和Wallace树算法,可以看到将它们集成到一块乘法器上的诸多优势。但是,随着并行化的增多,大量的部分乘积和中间求和的增加,会导致运行速度的下降。不规则的结构会增加硅板的面积,并且由于路由复杂而导致中间连接过程的增多继而导致功耗的增大。另一方面串并行乘法器牺牲了运行速度来获得更好的性能和功耗。因此,选择一款并行或串行乘法器实际上取决于它的应用性质。在本文中,我们将介绍乘法算
法以及在应用结构方面的速度比较,占用面积,功率和这些情况的组合绩效指标
乘运算
对于一个N比特的被乘数和一个N比特的乘数相乘的算法如下图所示:
Y=Y2 Y1 Y0 被乘数
X=X2 X1 X0 乘数
一般来说
. Y2Y1Y0
X=Xn-1Xn-2 .......................X2X1X0
2Yn-1X0 Yn-2X0 Yn-3X0 ……Y1X0 Y0X0
Yn-1X1 Yn-2X1 Yn-3X1 ……Y1X1 Y0X1
Yn-1X2 Yn-2X2 Yn-3X2 ……Y1X2 Y0X2
…        …      …    … 
….    ….    ….    ….    ….
Yn-1Xn-2 Yn-2X0 n-2 Yn-3X n-2 ……Y1Xn-2 Y0Xn-2
Yn-1Xn-1 Yn-2X0n-1 Yn-3Xn-1 ……Y1Xn-1 Y0Xn-1 ----------------------------------------------------------------------------------------------------------------------
  P2n-1      P2n-2        P2n-3                  P2    P1    P0
  “与”门被用来产生部分乘积,如果被乘数是N比特,乘数是M比特,那么就会产生N*M个部分积,然而在不同结构和类型的乘法器当中,部分乘积的产生方式是不同的。
二进制的乘法可以被分解为加法。现考虑两个八比特的二进制数AB相乘产生一个16比特的数。
A7  A6  A5  A4  A3  A2  A1  A0
X    B7  B6  B5    B4  B3  B2  B1  B0
booth算法乘法例题讲解--------------------------------------------------- --------------
A3.B0 A2.B0 A1.B0 A0.B0 A3.B0 A2.B0 A1.B0 A0.B0
+  A3.B1 A2.B1 A1.B1 A0.B1 A3.B0 A2.B0 A1.B0 A0.B0
+  A3.B2 A2.B2 A1.B2 A0.B2 A3.B0 A2.B0 A1.B0 A0.B0
+  A3.B3 A2.B3 A1.B3 A0.B3 A3.B0 A2.B0 A1.B0 A0.B0
+  A3.B3 A2.B3 A1.B3 A0.B3 A3.B0 A2.B0 A1.B0 A0.B0

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。