《并行乘法运算》PPT课件.ppt
《《并行乘法运算》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《并行乘法运算》PPT课件.ppt(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、计算机组成原理计算机组成原理1计计 算算 机机 组组 成成 原原 理理2022年10月29日定点乘法运算定点乘法运算计算机组成原理计算机组成原理2借助加法器配置相应部件实现乘法运算借助加法器配置相应部件实现乘法运算设置专用乘法器实现乘法运算设置专用乘法器实现乘法运算执行乘法运算子程序实现乘法运算执行乘法运算子程序实现乘法运算定点乘法运算定点乘法运算原码乘法运算方法原码乘法运算方法原码乘法运算实现原码乘法运算实现补码乘法运算方法补码乘法运算方法补码乘法运算实现补码乘法运算实现计算机组成原理计算机组成原理3 设设n n位位被乘数和乘数用定点小数表示被乘数和乘数用定点小数表示 被乘数被乘数 x x
2、原原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 fy 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为乘数符号。为乘数符号。原码乘法原码乘法1.1.乘法的手工算法乘法的手工算法一、原码串行乘法运算一、原码串行乘法运算符号位直接异或即可得到乘积的符号符号位直接异或即可得到乘积的符号仅仅需要考虑其数值部分的计算仅仅需要考
3、虑其数值部分的计算以以定点小数定点小数为例进行讨论为例进行讨论计算机组成原理计算机组成原理4(2)(2)手工运算过程:手工运算过程:设设,0.1 1 0 1 (0.1 1 0 1 (x x)0.1 0 1 1 (y)0.1 0 1 1 (y)1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 0 0 0 0 0 0 0 0+1 1 0 1+1 1 0 1 0.1 0 0 0 1 1 1 1 (0.1 0 0 0 1 1 1 1 (z z)(1)(1)乘积符号的运算规则:乘积符号的运算规则:同号相乘为正,异号相乘为负。同号相乘为正,异号相乘为负。(1)(1)机器通常只有机器通常只有n
4、 n位长,两个位长,两个n n位数相乘,乘积可能为位数相乘,乘积可能为2n2n位。位。(2)(2)只有两个操作数相加的加法器难以胜任将只有两个操作数相加的加法器难以胜任将n n位积一次相加起来的运算。位积一次相加起来的运算。机器与人们习惯的算法不同之处:机器与人们习惯的算法不同之处:计算机组成原理计算机组成原理5 0.1 1 0 1 x 0.1 1 0 1 x 0.1 0 1 1 y 0.1 0 1 1 y 0.0 0 0 0 1 1 0 1 x 0.0 0 0 0 1 1 0 1 x共共4 4次右移次右移 0.0 0 0 1 1 0 1 x0.0 0 0 1 1 0 1 x共共3 3次右移次
5、右移 0.0 0 0 0 0 0 x0.0 0 0 0 0 0 x共共2 2次右移次右移 +0.0 1 1 0 1 x+0.0 1 1 0 1 x共共1 1次右移次右移 0.1 0 0 0 1 1 1 10.1 0 0 0 1 1 1 1 2.2.适合定点机的形式适合定点机的形式 为了适合两个操作数相加的加法器,为了适合两个操作数相加的加法器,将将 x x y y 改写成下面形式:改写成下面形式:x x y=xy=x(0.1011)(0.1011)=0.1 =0.1 x+0.00 x+0.00 x+0.001 x+0.001 x+0.0001 x+0.0001 x x =0.1 =0.1 x+
6、0.1 0+0.1 x+0.1 0+0.1 (x+0.1(x+0.1 x)x)=2 =2-1-1 x+2 x+2-1-1 0+20+2-1-1(x+2(x+2-1-1x)x)从内向外从内向外逐次进行逐次进行移位累加移位累加计算机组成原理计算机组成原理6形成形成递推公式:递推公式:令令z zi i表示第表示第i i次部分积,则根据从内到外的原则有:次部分积,则根据从内到外的原则有:z z0 0=0=0 z z1 1=2=2-1-1(y(yn nx+zx+z0 0)z z2 2=2=2-1-1(y(yn-1n-1x+zx+z1 1)z zi i=2=2-1-1(y(yn-i+1n-i+1x+zx+
7、zi-1i-1)z zn n=x=x y=2y=2-1-1(y(y1 1x+zx+zn-1n-1)特点:特点:每每次次只只需需要要相相加加两两个个数数,然然后后右右移移一一位位。且且相相加加的的两两个个数数(部部分分积积和和位位积)都只有积)都只有n n位,因而不需要位,因而不需要2n2n位的加法器。位的加法器。一般而言,设被乘数一般而言,设被乘数x x,乘数,乘数y y都是小于都是小于1 1的的n n位定点正数:位定点正数:其乘积为:其乘积为:1 1y y2 2.y.yn n)=x(y =x(y1 12 2-1-1+y+y2 22 2-2-2+y+yn n2 2-n-n)=2 2-1-1(y
8、(y1 1x+x+2 2-1-1(y(y2 2x+x+2 2-1-1(+(+2 2-1-1(y(yn-1n-1x+x+2 2-1-1(y(yn nx+0)x+0)计算机组成原理计算机组成原理7开始i=0,0Yn=1+0 +X Y右移一位i+1i i=nX0Y0P0结束YNNY原码乘法算法流程图原码乘法算法流程图原码乘法算法流程图原码乘法算法流程图 n加法次数,n次n作为加法,一定移位n符号位单独计算计算机组成原理计算机组成原理8部分积部分积乘数乘数说明说明最后结果最后结果:x 0 0.0 0 0 0 yf 1 0 1 1 z0=0+0 0.1 1 0 1 y4=1,+x 0 0.1 1 0 1
9、 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=x y例:例:x=0.1101,y=0.1011,求求 x xy y。计算机组成原理计算机组成原理94.4.原码一位乘硬件逻辑原理图
10、原码一位乘硬件逻辑原理图 R R0 0 R R1 1 y yn nR R2 2 计数器计数器i i 部分积部分积 z z 被乘数被乘数x x 乘数乘数 y y LDRLDR0 0LDRLDR1 1 T1T1,T2T2,T Ti i Q QQ Q加法器加法器R RS S启动启动y yn nC Cx x 早期计算机中为了简化硬件结构,采用串行的早期计算机中为了简化硬件结构,采用串行的1 1位乘法方案,即多次位乘法方案,即多次执行执行“加法加法移位移位”操作来实现。这种方法并不需要很多器件。然而串操作来实现。这种方法并不需要很多器件。然而串行方法毕竟太慢,自从大规模集成电路问世以来,出现了各种形式的
11、流行方法毕竟太慢,自从大规模集成电路问世以来,出现了各种形式的流水式水式阵列乘法器阵列乘法器,它们属于并行乘法器。,它们属于并行乘法器。计算机组成原理计算机组成原理10 设设xx补补 =x=x0 0.x.x1 1x x2 2xxn n 当当x x 0 0时,时,x x0 0=0=0,xx补补1 1x x2 2xxn n=x=x1 1x x2 2xxn n=-1+=-1+x=-xx=-x0 0+真值与补码的关系:真值与补码的关系:当当x x 0 0时,时,x x0 0=1=1,xx补补1 1x x2 2xxn n=2+x=2+x1 1x x2 2xxn n-2-2(1)(1)真值和补码之间的关系
12、真值和补码之间的关系补码乘法补码乘法 一、补码串行乘法一、补码串行乘法 采用比较法。比较法是采用比较法。比较法是BoothBooth夫妇首先提出来的,又称夫妇首先提出来的,又称BoothBooth算法。算法。计算机组成原理计算机组成原理11 在在补补码码机机器器中中,一一个个数数不不论论其其正正负负,连连同同符符号号位位向向右右移移一一位位,符符号号位位保保持不变,就等于乘持不变,就等于乘1/21/2。设设 xx补补 =x=x0 0.x.x1 1x x2 2xxn n x=-x0 +x=-x-x0 0+121212=-x0+x0+1212=-x0+写成补码的形式,即得:写成补码的形式,即得:要
13、得到要得到22-i-ixx补补,连同符号位右移,连同符号位右移i i位即可。位即可。(2)(2)补码的右移补码的右移12 x 补补 =x x0 0.x.x0 0 x x1 1x x2 2x xn n计算机组成原理计算机组成原理12 设被乘数设被乘数 xx补补 =x=x0 0.x.x1 1x x2 2xxn n 乘数乘数 yy补补 =y=y0 0.y.y1 1y y2 2yyn n 均为任意符号,则有补码乘法算式:均为任意符号,则有补码乘法算式:xy 补补=x补补 y或:或:xy 补补=x补补(3)(3)补码乘法规则补码乘法规则计算机组成原理计算机组成原理13 为推导出逻辑实现的分步算法,将上式
14、展开得到各项部分积累加的形式。为推导出逻辑实现的分步算法,将上式展开得到各项部分积累加的形式。(y(yn+1n+1是增加的附加位,初值为是增加的附加位,初值为0)0)计算机组成原理计算机组成原理14 将上式改为接近于分步运算逻辑实现的递推关系。将上式改为接近于分步运算逻辑实现的递推关系。补补z 00=补补补补补补x)yy(zz nn12112-+=-补补补补补补x)yy(zz ininii12112-+=+-+-补补补补补补x)yy(zz nn11122-+=-补补补补补补x)yy(zz nn 10112-+=+-MM递推公式递推公式补补补补补补补补x)yy(z z yxnn011-+=+最后
15、一步不移位最后一步不移位计算机组成原理计算机组成原理15由此可见:由此可见:每次都是在前次部分积的基础上,由每次都是在前次部分积的基础上,由(yi+1-yi)决定对决定对x补补的操作,然后再右移一位,得到新的部分积;重复进行。的操作,然后再右移一位,得到新的部分积;重复进行。yn+1,yn的作用:的作用:开始操作时,补充一位开始操作时,补充一位yn+1,使其初始为使其初始为0。由。由yn+1 yn 判断进判断进行什么操作;然后再由行什么操作;然后再由ynyn-1 判断第二步进行什么操作判断第二步进行什么操作。若若 yn n yn n1 1=1 1 则则 yi1 1-yi=1 =1 做加做加xx
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 并行乘法运算 并行 乘法 运算 PPT 课件
限制150内