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

下载本文档

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

文档简介

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

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

3、,为被乘数符号, y yf f为乘数符号。为乘数符号。 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 1 0. 1 0 0 0 1 1 1 1 (z) 解解:(1) :(1) 乘积符号的运算规则乘积符号的运算规则: 同号相乘为正,异号相乘为负。同号相乘为正,异号相乘为负。 2.3.3 2.3.3 原码并行

4、乘法原码并行乘法 3.3.不带符号的阵列乘法器不带符号的阵列乘法器 设有两个不带符号的二进制整数设有两个不带符号的二进制整数 Aam 1a1a0 , B bn 1b1b0 它们的数值分别为它们的数值分别为a和和b,即:即: 1 0 1 0 1 0 1 0 1 0 2222 n j m i n j nm k k k ji ji j j m i i i pbabaabp)()( )( 2.3.3 2.3.3 原码并行乘法原码并行乘法 m-1 a ai2i i0 n-1 b bj2j j0 在二进制乘法中在二进制乘法中,被乘数被乘数A与乘数与乘数B相乘相乘,产生产生mn位乘积位乘积P: Ppm n1

5、p1p0 乘积 乘积P 的数值为的数值为: am-1 am-2 a1 a0 ) bn-1 b1 b0 am-1b0 am-2b0 a1b0 a0b0 am-1b1 am-2b1 a1b1 a0b1 . . . . . . +) am-1bn-1 am-2bn-1 a1bn-1 a0bn-1 pm+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)个全

6、加器和个全加器和n n2 2个个“与与”门。门。 2.3.3 2.3.3 原码并行乘法原码并行乘法 2.3.3 2.3.3 原码并行乘法原码并行乘法 令令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 原码并行乘法原码并行乘法 Bi Ci & Ai & Ci+1 &

7、 & ACiBiCiAiBiACiBiCiAiBiCi+1 2T C1C2C3 2T2T 3T 3T Cn-1Cn 2T 3T S0 S1 S2 Sn-1 ta( (n-1)n-1)2 2T T3 3T T 3T3T T 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垂

8、直线和最下面垂直线和最下面 的一行。因而得的一行。因而得n n位位n n位不带符号的阵列乘法器总的乘位不带符号的阵列乘法器总的乘 法时间为:法时间为: 例例16 16 已知两个不带符号的二进制整数已知两个不带符号的二进制整数 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

9、 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 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)

10、 对对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 0 1 方法(变补):方法(变补): 从数的最右端从数的最右端a a0 0开始开始, , 由右向左由右向左, , 直到找出直到找出 第一个第一个“1”,“1”,例如例如a ai i 1, 01, 0i in n。这样这样, , a ai i以左的每一个输入以左的每一个输入 位都求反位都求反, , 即即1 1变变0, 0, 0 0变变1 1。 2.3.3 2.3.3 原码并

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

12、引起的。 延迟时间:延迟时间: 2.3.3 2.3.3 原码并行乘法原码并行乘法 (2) (2) 带符号的阵列乘法器带符号的阵列乘法器 2.3.3 2.3.3 原码并行乘法原码并行乘法 包括求补级的乘法器又称为包括求补级的乘法器又称为符号求补的阵列乘法器。符号求补的阵列乘法器。 在这种逻辑结构中,共使用三个求补器在这种逻辑结构中,共使用三个求补器: : 两个算前求补器两个算前求补器 作用是:将两个操作数作用是:将两个操作数A A和和B B在被不带符号的乘法在被不带符号的乘法 阵列阵列( (核心部件核心部件) )相乘以前,先变成正整数。相乘以前,先变成正整数。 算后求补器算后求补器 作用则是:当

13、两个输入操作数的符号不一致时,作用则是:当两个输入操作数的符号不一致时, 把运算结果变成带符号的数把运算结果变成带符号的数( (补码补码) ) 结构结构: : 2.3.3 2.3.3 原码并行乘法原码并行乘法 设设A A= =a an na an n-1 -1a a1 1a 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 位不带符号的阵列乘法器,并由此产生位不带符号的阵列乘法器

14、,并由此产生2 2n n位的乘位的乘 积积: : A AB BP PP P2 2n n 1 1P P1 1P P0 0 p p2 2n na an n b bn n 其中其中P P2 2n n为符号位。为符号位。 运算:运算: 2.3.3 2.3.3 原码并行乘法原码并行乘法 带求补级的阵列乘法器用于原码乘法带求补级的阵列乘法器用于原码乘法 在原码乘法中,算前求补和算后求补都不需要,在原码乘法中,算前求补和算后求补都不需要, 因为输入数据都是立即可用的。因为输入数据都是立即可用的。 例例 设设x=+15x=+15,y= -13y= -13,用带求补器的原码阵列乘用带求补器的原码阵列乘 法求出乘

15、积法求出乘积x x* *y=y=? 解:设最高位为符号位,输入数据为原码:解:设最高位为符号位,输入数据为原码: xx原 原= =0 01111 1111 yy原 原= =1 11101 1101 因符号单独考虑,所以:因符号单独考虑,所以: | |X|=1111X|=1111,|y|=1101|y|=1101 2.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*

16、*yy原 原= =1 111000011 11000011 换算成二进制数真值是 换算成二进制数真值是: : X X* *Y=(-11000011)Y=(-11000011)2 2=(-195)=(-195)10 10 十进制乘法验证:十进制乘法验证: 15 15* *(-13-13)= -195= -195 2.3.3 2.3.3 原码并行乘法原码并行乘法 带求补级的阵列乘法器用于补码乘法需使用求补器。带求补级的阵列乘法器用于补码乘法需使用求补器。 例例 设设x=15x=15,y=-13y=-13,用带求补器的补码阵列乘法器用带求补器的补码阵列乘法器 求出乘积求出乘积x x* *y=y=?并

17、用十进制乘法进行验证。并用十进制乘法进行验证。 解:设最高位为符号位,输入数据用补码表示:解:设最高位为符号位,输入数据用补码表示: xx补 补=01111 =01111 yy补 补=10011 =10011 乘积符号位运算:乘积符号位运算:X X0 0 Y Y0 0= 0 = 0 1=1 1=1 表示乘积表示乘积 为负的。为负的。 算前求补器输出为算前求补器输出为 | |X|=1111X|=1111,|y|=1101|y|=1101 2.3.3 2.3.3 原码并行乘法原码并行乘法 2.3.3 2.3.3 原码并行乘法原码并行乘法 2 0 1 1 22 n i i i n n aaN补码与真

18、值转换公式补码与真值转换公式: : 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 1补 补=00111101 =00111101 并在最并在最 高位加上乘积符号高位加上乘积符号1 1,最后得补码的乘积值,最后得补码的乘积值 : x x* *yy补 补= = 1 10011110100111101。 利用补码与真值

19、换算公式,补码二进制数真值是利用补码与真值换算公式,补码二进制数真值是 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)10 10 十进制数乘法验证:十进制数乘法验证: X X* *Y= 15Y= 15* *(-13-13)= -195= -195 2.3.4 2.3.4 补码并行乘法补码并行乘法 1.1.补码与真值的转换公式补码与真值的转换公式 补码乘法因符号位参与运算补码乘法因符号位参与运算, ,可以完成可以完成 补码数的补码数的“直接

20、直接”乘法乘法, ,而不需要求补级而不需要求补级 (节省时间)。这种直接的方法排除了较(节省时间)。这种直接的方法排除了较 慢的对慢的对2 2求补操作求补操作, ,因而大大加速了乘法过因而大大加速了乘法过 程。程。 2 0 2 n i i i a 2 0 211 n i i i a)( N= an-1=0 (N补 补为正 为正) an-1=1 (N补 补为负 为负) 现考虑一个定点补码整数现考虑一个定点补码整数 N N 补 补 a an n 1 1a an n2 2a a1 1a a0 0, ,其中其中 a an n 1 1 是符号位。是符号位。 根据根据 N N 补 补的符号,补码数 的符号

21、,补码数 N N 补 补和真值 和真值N N的关系,可以表示成:的关系,可以表示成: 2.3.4 2.3.4 补码并行乘法补码并行乘法 将负权因数将负权因数 -2-2n n-1 -1强加到符号位 强加到符号位a an n-1 -1上,可以把上 上,可以把上 述方程组中的两个位置表达式合并成下面的统一形式:述方程组中的两个位置表达式合并成下面的统一形式: 2 0 1 1 22 n i i i n n aaN 12121 2 0 1 1 n i i i n n aaN)()( 以上两式是等价的。以上两式是等价的。 2.3.4 2.3.4 补码并行乘法补码并行乘法 例例19 19 已知已知: : N

22、 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)10 10 N N 补 补 10011 10011 具有的数值为:具有的数值为: N N1 12 24 40 02 23 30 02 22 21 12 21 11 12 20 0 (-

23、13)(-13)10 10 类型类型 逻辑符号逻辑符号操作操作 0类类 加法器加法器 X Y ) Z CS X Y ) Z C(S) 2类类 加法器加法器 X Y ) Z (C)S 3类类 加法器加法器 X Y )Z (C)(S) 1类类 加法器加法器 这种加法器通过把正权或负权加到输入这种加法器通过把正权或负权加到输入/ /输出端,输出端, 可以归纳出四类加法单元。可以归纳出四类加法单元。 2.2.一般化的全加器形式一般化的全加器形式 对对0 0类、类、3 3类全加器而言有:类全加器而言有: S SXYZXYZXYZXYZXYZXYZXYZXYZ C CXYXYYZYZZXZX 0类类 加法

24、器加法器 X Y ) Z CS 3类类 加法器加法器 X Y )Z (C)(S) 一位全加器真值表一位全加器真值表 输入输入输出输出 XiYiZiSiCi 1 00000 00110 01010 01101 10010 10101 11001 11111 四类全加器的逻辑方程式四类全加器的逻辑方程式 X Y ) Z C(S) 2类类 加法器加法器 X Y ) Z (C)S 1类类 加法器加法器 对对1类、类、2类全加器类全加器,则有则有 SXYZXYZXYZXYZ CXYXZYZ 3.3.直接补码阵列乘法器直接补码阵列乘法器 利用混合型全加器可以构成直接补码数阵列乘利用混合型全加器可以构成直接补码数阵列乘 法器。法器。 设被乘数设被乘数A A和乘数和乘数B B是两个是两个5 5位二进制补码数,即:位二进制补码数,即: A A(

温馨提示

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

评论

0/150

提交评论