定点乘法运算(3定点乘法运算)_第1页
定点乘法运算(3定点乘法运算)_第2页
定点乘法运算(3定点乘法运算)_第3页
定点乘法运算(3定点乘法运算)_第4页
定点乘法运算(3定点乘法运算)_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第二章第二章 运算方法和运算器运算方法和运算器* *数据的表示方法数据的表示方法* *定点和浮点加减运算定点和浮点加减运算* *定点乘运算定点乘运算* *定点除运算定点除运算* *定点运算器的组成定点运算器的组成 1.1.串行加法器的优劣分析串行加法器的优劣分析 不需要很多器件,硬件结构简单;不需要很多器件,硬件结构简单; 速度太慢,执行一次乘法操作的时间至少是加法操速度太慢,执行一次乘法操作的时间至少是加法操 作的作的n n倍;倍; 由于乘法操作大约占全部算术运算的由于乘法操作大约占全部算术运算的1/31/3,故采用,故采用高速乘法部件是非常必要的。高速乘法部件是非常必要的。 2.3.3 2

2、.3.3 原码并行乘法原码并行乘法 设设n n位位被乘数和乘数用定点小数表示被乘数和乘数用定点小数表示( (定点整数也同样适用定点整数也同样适用) ) 被乘数被乘数 x x 原原x xf f . . x xn n1 1 x x1 1x x0 0 乘数乘数 y y 原原y yf f . . y yn n1 1 y y1 1y y0 0 则乘积则乘积 z z 原原( (x xf f y yf f) )(0. (0. x xn n1 1 x x1 1x x0 0)(0. )(0. y yn n1 1 y y1 1y y0 0) ) 式中,式中,x xf f为被乘数符号,为被乘数符号, y yf f为

3、乘数符号。为乘数符号。 2.3.3 2.3.3 原码并行乘法原码并行乘法2.2.乘法的手工算法乘法的手工算法(2) (2) 习惯方法求乘积的运算过程:习惯方法求乘积的运算过程: 设设0.1101,0.1101,0.10110.1011 0. 1 1 0 1 (x) 0. 1 0 1 1 (y) 1 1 0 1 1 1 0 1 0 0 0 0+ 1 1 0 10. 1 0 0 0 1 1 1 1 (z)解解:(1) :(1) 乘积符号的运算规则乘积符号的运算规则: 同号相乘为正,异号相乘为负。同号相乘为正,异号相乘为负。2.3.3 2.3.3 原码并行乘法原码并行乘法3.3.不带符号的阵列乘法器

4、不带符号的阵列乘法器设有两个不带符号的二进制整数设有两个不带符号的二进制整数 Aam1a1a0 , Bbn1b1b0它们的数值分别为它们的数值分别为a和和b,即:即: 10101010102222njminjnmkkkjijijjmiiipbabaabp)()( )(2.3.3 2.3.3 原码并行乘法原码并行乘法m-1a ai2ii0n-1b bj2jj0在二进制乘法中在二进制乘法中,被乘数被乘数A与乘数与乘数B相乘相乘,产生产生mn位乘积位乘积P: Ppmn1p1p0 乘积乘积P 的数值为的数值为: am-1 am-2 a1 a0 ) bn-1 b1 b0 am-1b0 am-2b0 a1

5、b0 a0b0 am-1b1 am-2b1 a1b1 a0b1 . . . . . .+) am-1bn-1 am-2bn-1 a1bn-1 a0bn-1pm+n-1 pm+n-2 pm+n-3 pn-1 p1 p0(1) (1) 习惯方法运算过程:习惯方法运算过程:2.3.3 2.3.3 原码并行乘法原码并行乘法(2) (2) 并行乘法器并行乘法器 这种乘法器要实现这种乘法器要实现n n位位n n位时位时, , 需要需要n n( (n n1)1)个全加器和个全加器和n n2 2个个“与与”门。门。2.3.3 2.3.3 原码并行乘法原码并行乘法2.3.3 2.3.3 原码并行乘法原码并行乘法

6、 令令T Ta a为为“与门与门”的传输延迟时间,的传输延迟时间,T Tf f为全加器为全加器( (FA)FA)的进位传输延迟时间,假定的进位传输延迟时间,假定用用2 2级级“与非与非”(2 2T T)逻辑来实现逻辑来实现FAFA的进的进位链功能,那么就有:位链功能,那么就有:T Ta a T Tf f 2 2T T阵列乘法器延迟时间阵列乘法器延迟时间2.3.3 2.3.3 原码并行乘法原码并行乘法BiCi&Ai&Ci+1&ACiBiCiAiBiACiBiCiAiBiCi+1 2TC1C2C32T2T3T3TCn-1Cn2T3TS0S1S2Sn-1ta( (n-1)n-1)2 2T T3 3T

7、 T3T3TT Tm m T Ta a ( (n n2) 2) 6T 6T 3T 3T T Tf f (n-2) (n-2) T Tf f + 3T+ 3T 2 2T T( (n n2)2)6 6T T 3T 3T 2T 2T (n-2) (n-2) 2T + 3T2T + 3T (8 (8n n6)6)T T最坏情况下延迟途径最坏情况下延迟途径, ,即是沿着矩阵即是沿着矩阵P P4 4垂直线和最下面垂直线和最下面的一行。因而得的一行。因而得n n位位n n位不带符号的阵列乘法器总的乘位不带符号的阵列乘法器总的乘法时间为:法时间为: 例例16 16 已知两个不带符号的二进制整数已知两个不带符号

8、的二进制整数 A A 11011, 11011,B B 10101, 10101, 求每一部分乘积项求每一部分乘积项a ai ib bj j 的值与的值与p p9 9p p8 8p p0 0的值。的值。2.3.3 2.3.3 原码并行乘法原码并行乘法 1 1 0 1 1 = A (2710) 1 0 1 0 1 = B (2110) 1 1 0 1 1 0 0 0 0 0 1 1 0 1 1 0 0 0 0 0 + 1 1 0 1 1 1 0 0 0 1 1 0 1 1 1 = P解解: a4b01 a3b01 a2b00 a1b01 a0b01 a4b10 a3b10 a2b10 a1b10

9、 a0b10 a4b21 a3b21 a2b20 a1b21 a0b20 a4b30 a3b30 a2b30 a1b30 a0b30 a4b41 a3b41 a2b40 a1b41 a0b41 Pp9p8p7p6p5p4p3p2p1p01000110111 (56710)2.3.3 2.3.3 原码并行乘法原码并行乘法4.4.带符号的阵列乘法器带符号的阵列乘法器(1) (1) 对对2 2求补器电路求补器电路例例1 1: 对对10101010求补。求补。 1 0 1 0 0 1 0 1 1 0 1 1 0例例2 2: 对对10111011求补。求补。 1 0 1 1 0 1 0 0 1 0 1

10、0 1方法(变补):方法(变补):从数的最右端从数的最右端a a0 0开始开始, ,由右向左由右向左, , 直到找出直到找出第一个第一个“1”,“1”,例如例如a ai i1, 01, 0i in n。这样这样, , a ai i以左的每一个输入以左的每一个输入位都求反位都求反, , 即即1 1变变0, 0, 0 0变变1 1。2.3.3 2.3.3 原码并行乘法原码并行乘法 1 0 1 0 0 1 1 0 12.3.3 2.3.3 原码并行乘法原码并行乘法E=0 E=0 则则 a ai i* * = = a ai iE=1 E=1 则则 a ai i* * = = a ai i 变补变补 用

11、这种对用这种对2 2求补器来转换一个求补器来转换一个( (n n1)1)位带符号位带符号的数,所需的总时间延迟为:的数,所需的总时间延迟为: t tTCTCn n2 2T T5 5T T(2(2n n5)5)T T 其中每个扫描级需其中每个扫描级需2 2T T延迟,而延迟,而5 5T T则是由于则是由于“与与”门和门和“异或异或”门引起的。门引起的。延迟时间:延迟时间:2.3.3 2.3.3 原码并行乘法原码并行乘法(2) (2) 带符号的阵列乘法器带符号的阵列乘法器2.3.3 2.3.3 原码并行乘法原码并行乘法包括求补级的乘法器又称为包括求补级的乘法器又称为符号求补的阵列乘法器。符号求补的

12、阵列乘法器。 在这种逻辑结构中,共使用三个求补器在这种逻辑结构中,共使用三个求补器: : 两个算前求补器两个算前求补器 作用是:将两个操作数作用是:将两个操作数A A和和B B在被不带符号的乘法在被不带符号的乘法阵列阵列( (核心部件核心部件) )相乘以前,先变成正整数。相乘以前,先变成正整数。 算后求补器算后求补器 作用则是:当两个输入操作数的符号不一致时,作用则是:当两个输入操作数的符号不一致时, 把运算结果变成带符号的数把运算结果变成带符号的数( (补码补码) )结构结构: :2.3.3 2.3.3 原码并行乘法原码并行乘法 设设A A= =a an na an n-1-1a a1 1a

13、 a0 0和和B B= =b bn nb bn n-1-1b b1 1b b0 0均为用定点均为用定点表示的表示的( (n n1)1)位带符号整数。位带符号整数。在必要的求补操作以后,在必要的求补操作以后,A A和和B B的码值输送给的码值输送给n nn n位不带符号的阵列乘法器,并由此产生位不带符号的阵列乘法器,并由此产生2 2n n位的乘位的乘积积: : A AB BP PP P2 2n n1 1P P1 1P P0 0p p2 2n na an n b bn n 其中其中P P2 2n n为符号位。为符号位。运算:运算:2.3.3 2.3.3 原码并行乘法原码并行乘法带求补级的阵列乘法器

14、用于原码乘法带求补级的阵列乘法器用于原码乘法 在原码乘法中,算前求补和算后求补都不需要,在原码乘法中,算前求补和算后求补都不需要,因为输入数据都是立即可用的。因为输入数据都是立即可用的。 例例 设设x=+15x=+15,y= -13y= -13,用带求补器的原码阵列乘用带求补器的原码阵列乘法求出乘积法求出乘积x x* *y=y=? 解:设最高位为符号位,输入数据为原码:解:设最高位为符号位,输入数据为原码: xx原原= =0 011111111 yy原原= =1 111011101 因符号单独考虑,所以:因符号单独考虑,所以: | |X|=1111X|=1111,|y|=1101|y|=110

15、12.3.3 2.3.3 原码并行乘法原码并行乘法 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 0 1 1 1 1 + 1 1 1 1 1 1 0 0 0 0 1 1 符号位运算:符号位运算:0 0 1=11=1 加上乘积符号位加上乘积符号位1 1,得:,得: x x* *yy原原= =1 11100001111000011 换算成二进制数真值是换算成二进制数真值是: : X X* *Y=(-11000011)Y=(-11000011)2 2=(-195)=(-195)1010 十进制乘法验证:十进制乘法验证: 15 15* *(-13-13)= -195= -1952.3.3

16、 2.3.3 原码并行乘法原码并行乘法带求补级的阵列乘法器用于补码乘法需使用求补器。带求补级的阵列乘法器用于补码乘法需使用求补器。 例例 设设x=15x=15,y=-13y=-13,用带求补器的补码阵列乘法器用带求补器的补码阵列乘法器求出乘积求出乘积x x* *y=y=?并用十进制乘法进行验证。并用十进制乘法进行验证。 解:设最高位为符号位,输入数据用补码表示:解:设最高位为符号位,输入数据用补码表示: xx补补=01111=01111 yy补补=10011=10011 乘积符号位运算:乘积符号位运算:X X0 0 Y Y0 0= 0 = 0 1=1 1=1 表示乘积表示乘积为负的。为负的。

17、算前求补器输出为算前求补器输出为 | |X|=1111X|=1111,|y|=1101|y|=11012.3.3 2.3.3 原码并行乘法原码并行乘法2.3.3 2.3.3 原码并行乘法原码并行乘法 201122niiinnaaN补码与真值转换公式补码与真值转换公式: : 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 0 1 1 1 1+ 1 1 1 1 1 1 0 0 0 0 1 1 因乘积为负的,所以算后求补器输出因乘积为负的,所以算后求补器输出时应按负数求补码的变换方法将结果变为时应按负数求补码的变换方法将结果变为:1 1 0 0 0 0 1 11 1 0 0 0 0 1

18、1补补=00111101 =00111101 并在最并在最高位加上乘积符号高位加上乘积符号1 1,最后得补码的乘积值,最后得补码的乘积值 : x x* *yy补补= = 1 10011110100111101。利用补码与真值换算公式,补码二进制数真值是利用补码与真值换算公式,补码二进制数真值是X X* *Y=Y=-1-1* *2 28 8+1+1* *2 25 5+1+1* *2 24 4+1+1* *2 23 3+1+1* *2 22 2+1+1* *2 20 0=(-195)=(-195)1010 十进制数乘法验证:十进制数乘法验证: X X* *Y= 15Y= 15* *(-13-13)

19、= -195= -1952.3.4 2.3.4 补码并行乘法补码并行乘法1.1.补码与真值的转换公式补码与真值的转换公式 补码乘法因符号位参与运算补码乘法因符号位参与运算, ,可以完成可以完成补码数的补码数的“直接直接”乘法乘法, ,而不需要求补级而不需要求补级(节省时间)。这种直接的方法排除了较(节省时间)。这种直接的方法排除了较慢的对慢的对2 2求补操作求补操作, ,因而大大加速了乘法过因而大大加速了乘法过程。程。 202niiia 20211niiia)(N= an-1=0 (N补补为正为正) an-1=1 (N补补为负为负) 现考虑一个定点补码整数现考虑一个定点补码整数 N N 补补a

20、 an n1 1a an n2 2a a1 1a a0 0,其中其中 a an n1 1是符号位。是符号位。 根据根据 N N 补补的符号,补码数的符号,补码数 N N 补补和真值和真值N N的关系,可以表示成:的关系,可以表示成:2.3.4 2.3.4 补码并行乘法补码并行乘法 将负权因数将负权因数 -2-2n n-1-1强加到符号位强加到符号位a an n-1-1上,可以把上上,可以把上述方程组中的两个位置表达式合并成下面的统一形式:述方程组中的两个位置表达式合并成下面的统一形式: 201122niiinnaaN121212011 niiinnaaN)()(以上两式是等价的。以上两式是等价

21、的。2.3.4 2.3.4 补码并行乘法补码并行乘法 例例19 19 已知已知: : N N 补补 01101, - 01101, -N N 补补10011, 10011, 求求 N N 补补, -, -N N 补补具有的数值。具有的数值。2.3.4 2.3.4 补码并行乘法补码并行乘法 解解: : N N 补补01101 01101 具有的数值为:具有的数值为:N N0 02 24 41 12 23 31 12 22 20 02 21 11 12 20 0 ( (13)13)1010 N N 补补10011 10011 具有的数值为:具有的数值为: N N1 12 24 40 02 23 3

22、0 02 22 21 12 21 11 12 20 0 (-13)(-13)1010类型类型 逻辑符号逻辑符号操作操作0类类加法器加法器 X Y) ZCS X Y) Z C(S)2类类加法器加法器XY) Z (C)S 3类类加法器加法器 X Y)Z(C)(S)1类类加法器加法器 这种加法器通过把正权或负权加到输入这种加法器通过把正权或负权加到输入/ /输出端,输出端,可以归纳出四类加法单元。可以归纳出四类加法单元。2.2.一般化的全加器形式一般化的全加器形式对对0 0类、类、3 3类全加器而言有:类全加器而言有:S SXYZXYZXYZXYZXYZXYZXYZXYZC CXYXYYZYZZXZ

23、X0类类加法器加法器 X Y) ZCS3类类加法器加法器 X Y)Z(C)(S)一位全加器真值表一位全加器真值表输入输入输出输出XiYiZiSiCi10000000110010100110110010101011100111111四类全加器的逻辑方程式四类全加器的逻辑方程式 X Y) Z C(S)2类类加法器加法器XY) Z (C)S 1类类加法器加法器对对1类、类、2类全加器类全加器,则有则有SXYZXYZXYZXYZCXYXZYZ3.3.直接补码阵列乘法器直接补码阵列乘法器利用混合型全加器可以构成直接补码数阵列乘利用混合型全加器可以构成直接补码数阵列乘法器。法器。设被乘数设被乘数A A和乘数和乘数B B是两个是两个5 5位二进制补码数,即:位二进制补码数,即: A A( (a a4 4) )a

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论