《并行乘法运算》PPT课件.ppt
《《并行乘法运算》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《并行乘法运算》PPT课件.ppt(33页珍藏版)》请在三一办公上搜索。
1、计 算 机 组 成 原 理,2023年7月14日,定点乘法运算,借助加法器配置相应部件实现乘法运算设置专用乘法器实现乘法运算执行乘法运算子程序实现乘法运算,定点乘法运算,原码乘法运算方法原码乘法运算实现补码乘法运算方法补码乘法运算实现,设n位被乘数和乘数用定点小数表示 被乘数 x原xf.xn1 x1x0 乘数 y原yf.yn1 y1y0 则乘积 z原(xfyf)(0.xn1 x1x0)(0.yn1 y1y0)式中:xf为被乘数符号,yf为乘数符号。,原码乘法,1.乘法的手工算法,一、原码串行乘法运算,符号位直接异或即可得到乘积的符号仅仅需要考虑其数值部分的计算以定点小数为例进行讨论,(2)手工
2、运算过程:,设0.1101,0.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)机器通常只有n位长,两个n位数相乘,乘积可能为2n位。(2)只有两个操作数相加的加法器难以胜任将n位积一次相加起来的运算。,机器与人们习惯的算法不同之处:,0.1 1 0 1 x 0.1 0 1 1 y 0.0 0 0 0 1 1 0 1 x共4次右移 0.0 0 0 1 1 0 1 x共3次右移 0.0 0 0 0 0 0 x共2次右移+
3、0.0 1 1 0 1 x共1次右移 0.1 0 0 0 1 1 1 1,2.适合定点机的形式,为了适合两个操作数相加的加法器,将 xy 改写成下面形式:,xy=x(0.1011)=0.1x+0.00 x+0.001 x+0.0001 x=0.1 x+0.1 0+0.1(x+0.1 x)=2-1 x+2-1 0+2-1(x+2-1x),从内向外逐次进行移位累加,形成递推公式:,令zi表示第i次部分积,则根据从内到外的原则有:z0=0 z1=2-1(ynx+z0)z2=2-1(yn-1x+z1)zi=2-1(yn-i+1x+zi-1)zn=xy=2-1(y1x+zn-1)特点:每次只需要相加两个
4、数,然后右移一位。且相加的两个数(部分积和位积)都只有n位,因而不需要2n位的加法器。,一般而言,设被乘数x,乘数y都是小于1的n位定点正数:,其乘积为:xy=x(0.y1y2.yn)=x(y12-1+y22-2+yn2-n)=2-1(y1x+2-1(y2x+2-1(+2-1(yn-1x+2-1(ynx+0),开始,i=0,0,Yn=1,+0,+X,Y右移一位i+1i,i=n,X0Y0P0,结束,Y,N,N,Y,原码乘法算法流程图,加法次数,n次作为加法,一定移位符号位单独计算,部分积,乘数,说明,最后结果:xy=0.10001111,0 0.0 0 0 0 yf 1 0 1 1 z0=0+0
5、 0.1 1 0 1 y4=1,+x 0 0.1 1 0 1 0 0.0 1 1 0 1 yf 1 0 1 右移,得z1+0 0.1 1 0 1 y3=1,+x 0 1.0 0 1 1 0 0.1 0 0 1 1 1 yf 1 0 右移,得z2+0 0.0 0 0 0 y2=0,+0 0 0.1 0 0 1 0 0.0 1 0 0 1 1 1 yf 1 右移,得z3+0 0.1 1 0 1 y1=1,+x 0 1.0 0 0 1 0 0.1 0 0 0 1 1 1 1 yf 右移,得z4=xy,例:x=0.1101,y=0.1011,求 xy。,4.原码一位乘硬件逻辑原理图,早期计算机中为了简
6、化硬件结构,采用串行的1位乘法方案,即多次执行“加法移位”操作来实现。这种方法并不需要很多器件。然而串行方法毕竟太慢,自从大规模集成电路问世以来,出现了各种形式的流水式阵列乘法器,它们属于并行乘法器。,设x补=x0.x1x2xn 当x0时,x0=0,,x补=0.x1x2xn=x,=-1+0.x1x2xn=-1+,x=-x0+,真值与补码的关系:,当x0时,x0=1,x补=1.x1x2xn=2+x x=1.x1x2xn-2,(1)真值和补码之间的关系,补码乘法,一、补码串行乘法 采用比较法。比较法是Booth夫妇首先提出来的,又称Booth算法。,在补码机器中,一个数不论其正负,连同符号位向右移
7、一位,符号位保持不变,就等于乘1/2。设 x补=x0.x1x2xn,x=-x0+,=-x0+,写成补码的形式,即得:,要得到2-ix补,连同符号位右移i位即可。,(2)补码的右移,设被乘数 x补=x0.x1x2xn 乘数 y补=y0.y1y2yn 均为任意符号,则有补码乘法算式:,xy 补=x补 y,(3)补码乘法规则,为推导出逻辑实现的分步算法,将上式展开得到各项部分积累加的形式。,(yn+1是增加的附加位,初值为0),将上式改为接近于分步运算逻辑实现的递推关系。,M,M,递推公式,最后一步不移位,由此可见:每次都是在前次部分积的基础上,由(yi+1-yi)决定对x补的操作,然后再右移一位,
8、得到新的部分积;重复进行。,yn+1,yn的作用:开始操作时,补充一位yn+1,使其初始为0。由yn+1 yn 判断进行什么操作;然后再由ynyn-1 判断第二步进行什么操作。,若 yn yn1=1 则 yi1-yi=1 做加x补运算;,ynyn1=则 yi1-yi=-做加-x补运算;,则 yi1-yi=0 zi加0,即保持不变;,补码一位乘的运算规则,(1)如果 yn=yn+1,则部分积 zi 加0,再右移一位;,(2)如果 yn yn+1=01,则部分积 zi 加x补,再右移一位;,(2)如果 yn yn+1=10,则部分积 zi 加-x补,再右移一位;,如此重复n+1步,但最后一步不移位
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 并行乘法运算 并行 乘法 运算 PPT 课件
链接地址:https://www.31ppt.com/p-5504592.html