《并行乘法运算》PPT课件

《并行乘法运算》PPT课件

ID:36887355

大小:1.61 MB

页数:33页

时间:2019-05-10

《并行乘法运算》PPT课件_第1页
《并行乘法运算》PPT课件_第2页
《并行乘法运算》PPT课件_第3页
《并行乘法运算》PPT课件_第4页
《并行乘法运算》PPT课件_第5页
资源描述:

《《并行乘法运算》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、计算机组成原理2021年8月9日定点乘法运算借助加法器配置相应部件实现乘法运算设置专用乘法器实现乘法运算执行乘法运算子程序实现乘法运算定点乘法运算原码乘法运算方法原码乘法运算实现补码乘法运算方法补码乘法运算实现设n位被乘数和乘数用定点小数表示被乘数[x]原=xf.xn-1…x1x0乘数[y]原=yf.yn-1…y1y0则乘积[z]原=(xf⊕yf)+(0.xn-1…x1x0)(0.yn-1…y1y0)式中:xf为被乘数符号,yf为乘数符号。原码乘法1.乘法的手工算法一、原码串行乘法运算符号位直接异或即可得到乘积

2、的符号仅仅需要考虑其数值部分的计算以定点小数为例进行讨论(2)手工运算过程:设x=0.1101,y=0.10110.1101(x)0.1011(y)110111010000+11010.10001111(z)(1)乘积符号的运算规则:同号相乘为正,异号相乘为负。(1)机器通常只有n位长,两个n位数相乘,乘积可能为2n位。(2)只有两个操作数相加的加法器难以胜任将n位积一次相加起来的运算。机器与人们习惯的算法不同之处:0.1101x×0.1011y0.00001101x共4次右移0.0001101x共3次右移0.

3、000000x共2次右移+0.01101x共1次右移0.100011112.适合定点机的形式为了适合两个操作数相加的加法器,将xy改写成下面形式:xy=x(0.1011)=0.1x+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=0z1=2-1(ynx+z0)z2=2-1(yn-1x+z1)┊zi=2-1(

4、yn-i+1x+zi-1)┊zn=xy=2-1(y1x+zn-1)特点:每次只需要相加两个数,然后右移一位。且相加的两个数(部分积和位积)都只有n位,因而不需要2n位的加法器。一般而言,设被乘数x,乘数y都是小于1的n位定点正数:其乘积为:x·y=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+1→ii=nX0⊕Y0→P0

5、结束YNNY原码乘法算法流程图加法次数,n次作为加法,一定移位符号位单独计算部分积乘数说明最后结果:xy=0.1000111100.0000yf1011z0=0+00.1101y4=1,+x00.110100.01101yf101右移,得z1+00.1101y3=1,+x01.001100.100111yf10右移,得z2+00.0000y2=0,+000.100100.0100111yf1右移,得z3+00.1101y1=1,+x01.000100.10001111yf右移,得z4=xy例:x=0.1

6、101,y=0.1011,求x·y。4.原码一位乘硬件逻辑原理图R0→R1→ynR2计数器i部分积z被乘数x乘数yLDR0LDR1T1,T2,…TiQQ加法器RS启动ynCx早期计算机中为了简化硬件结构,采用串行的1位乘法方案,即多次执行“加法—移位”操作来实现。这种方法并不需要很多器件。然而串行方法毕竟太慢,自从大规模集成电路问世以来,出现了各种形式的流水式阵列乘法器,它们属于并行乘法器。设[x]补=x0.x1x2…xn当x0时,x0=0,[x]补=0.x1x2…xn==x=-1+0.x1x2…xn=-1+

7、x=-x0+真值与补码的关系:当x0时,x0=1,[x]补=1.x1x2…xn=2+xx=1.x1x2…xn-2(1)真值和补码之间的关系补码乘法一、补码串行乘法采用比较法。比较法是Booth夫妇首先提出来的,又称Booth算法。在补码机器中,一个数不论其正负,连同符号位向右移一位,符号位保持不变,就等于乘1/2。设[x]补=x0.x1x2…xn∵x=-x0+∴x=-x0+121212=-x0+x0+1212=-x0+写成补码的形式,即得:要得到[2-ix]补,连同符号位右移i位即可。(2)补码的右移12[x

8、]补=x0.x0x1x2…xn设被乘数[x]补=x0.x1x2…xn乘数[y]补=y0.y1y2…yn均为任意符号,则有补码乘法算式:[x·y]补=[x]补·y或:[x·y]补=[x]补·(3)补码乘法规则为推导出逻辑实现的分步算法,将上式展开得到各项部分积累加的形式。(yn+1是增加的附加位,初值为0)将上式改为接近于分步运算逻辑实现的递推关系。补]z[00=补补补}]x)[yy(]

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。