《计算机组成原理第2章.ppt》由会员分享,可在线阅读,更多相关《计算机组成原理第2章.ppt(20页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、计算机组成原理计算机系统概论首页首页2章章Intel第二章第二章计算机组成原理计算机系统概论首页首页2章章2.3 定点乘法运算定点乘法运算 2.3.1 原码并行乘法原码并行乘法1.补码与真值的转换公式:补码与真值的转换公式:补码乘法因补码乘法因符号位参与运算符号位参与运算,可以完成补码数的,可以完成补码数的“直直接接”乘法,而不要求补级。因而大大加速了乘法过程。乘法,而不要求补级。因而大大加速了乘法过程。对于计算补码数的数值来说,较好的表示方法是使对于计算补码数的数值来说,较好的表示方法是使补码的位置有一个补码的位置有一个 带负权的符号和带正数的系数。带负权的符号和带正数的系数。一个定点补码整
2、数:一个定点补码整数:X补补=an-1an-2 a1a0 其其 an-1 中是符号位。中是符号位。N=+an-12in-2i=0 1+(1 ai)2in-2i=0计算机组成原理计算机系统概论首页首页2章章 如果把负数因数如果把负数因数 2 n-1强加到符号位强加到符号位an-1上,可把上,可把上式合并表达为:上式合并表达为:N=an-1 2 n-1+ai 2i 习惯上把补码数习惯上把补码数 N补补=an-1an-2 a1a0+1式子式子两边同乘两边同乘 1,可证明,可证明 N补补:N=(1 an-1)2 n-1+(1 ai)2i +1例题:已知例题:已知N补补=(0 1111)2,N补补=(1
3、 1011)2求各真值。求各真值。n-2i=0n-2i=0计算机组成原理计算机系统概论首页首页2章章2.一般化的全加器形式:一般化的全加器形式:常规的一位全加器可假定它的常规的一位全加器可假定它的3个输入和个输入和2个输出都个输出都是正数。这种加法器通过正数或负数加到输入是正数。这种加法器通过正数或负数加到输入/输出端,输出端,可以归纳四类加法单元。可以归纳四类加法单元。类命名:包含负数输入的个数来命名。类命名:包含负数输入的个数来命名。对对 0 类、类、3类类:S=X Y Z+X Y Z+X Y Z+X Y Z C=X Y+Y Z+Z X对对 1 类、类、2类类:S=X Y Z+X Y Z+
4、X Y Z+X Y Z C=X Y+X Z+Y Z 由于表达式有两级与由于表达式有两级与 或形式,延迟时间为或形式,延迟时间为 2T。如果想要看它们的名称和逻辑符号请按此图标如果想要看它们的名称和逻辑符号请按此图标计算机组成原理计算机系统概论首页首页2章章类型类型逻辑符号逻辑符号操作操作0 类类全加器全加器XY +)ZCS1 类类全加器全加器XY +)Z C(S)2 类类全加器全加器XY +)Z(C)S3 类类全加器全加器 X Y +)Z(C)(S)0XYZCS1XYZCS2XYZCS3XYZCS下下一一张张返返回回计算机组成原理计算机系统概论首页首页2章章3.直接补码阵列乘法器直接补码阵列乘
5、法器 利用混合型的全加器就可以构成直接补码阵列乘利用混合型的全加器就可以构成直接补码阵列乘法器。设被乘数法器。设被乘数A和乘数和乘数B是两个是两个 5位的二进制补码数,位的二进制补码数,即:即:A=(a4)a3a2a1a0,B=(b4)b3b2b1b0,它们具有带负权的符号位和,并用括号标注。如果我它们具有带负权的符号位和,并用括号标注。如果我们用括号来标注负的被加项,例如(们用括号来标注负的被加项,例如(aibi),那么),那么A和和B相乘过程中所包含的操作步骤如下一页矩阵所示:相乘过程中所包含的操作步骤如下一页矩阵所示:请点击此图标请点击此图标计算机组成原理计算机系统概论首页首页2章章 (
6、a4)a3 a2 a1 a0 =A *)(b4)b3 b2 b1 b0 =B (a4 b0)a3 b0 a2b0 a1b0 a0b0 (a4 b1)a3 b1 a2b1 a1b1 a0b1 (a4 b2)a3 b2 a2b2 a1b2 a0b2 (a4 b3)a3 b3 a2b3 a1b3 a0b3 +)()(a4 b4)a3 b4 a2b4 a1b4 a0b4 p9 p8 p7 p6 p5 p4 p3 p2 p1 p0下一张下一张返回返回计算机组成原理计算机系统概论首页首页2章章此图是此图是5 位乘位乘 5 位位的直接补码阵列乘法器逻辑原理图的直接补码阵列乘法器逻辑原理图a0b10a1b00
7、a1b10a2b00a2b10a3b00a3b10a4b00a0b200a1b20a3b200a2b2a0b0a0b30a1b30a3b300a2b3a0b40a1b40a3b400a2b4a4b1000a4b2a4b3a4b40p9p4p8p7p6p5p3p2p1p0计算机组成原理计算机系统概论首页首页2章章 在上张片子是在上张片子是 5位乘位乘5位的的直接补码阵列乘法器逻位的的直接补码阵列乘法器逻原理图,其中使用不同的逻辑符号来代表原理图,其中使用不同的逻辑符号来代表 0类、类、1类、类、2类、类、3类全加器。虽然类全加器。虽然0类和类和3类全加器,类全加器,2类和类和1类全加器类全加器具
8、有同样的结构,但是使用不同的逻辑符号可使乘法阵具有同样的结构,但是使用不同的逻辑符号可使乘法阵列的线路图容易理解。列的线路图容易理解。在在n位乘位乘n位的一般情况下,该乘法器需要位的一般情况下,该乘法器需要(n-2)2个个0类全加器,类全加器,(n-2)个个1类全加器,(类全加器,(2n-3)个)个2类类全加器,全加器,1个个3类全加器,总共是类全加器,总共是n(n 1)个全加器。故)个全加器。故所需要的总乘法时间为:所需要的总乘法时间为:tp=Ta+2(n 1)Tf=2T+(2n 2)2T=(4n 2)T 如果在最后一行中全部采用先行进位,那么总的延迟时如果在最后一行中全部采用先行进位,那么
9、总的延迟时间还可以减少。间还可以减少。计算机组成原理计算机系统概论首页首页2章章例题例题:设:设A补补=(01101)2,B补补=(11011)2,求求A*B补补=?解:解:(0)1 1 0 1=+13 )()(1)1 0 1 1=5 (0)1 1 0 1 (0)1 1 0 1 (0)0 0 0 0 (0)1 1 0 1 0 (1)(1)(0)(1)0 (1)0 1 1 1 1 1 1 (1)1 0 1 1 1 1 1 1=65符号位符号位扩充符号位扩充符号位计算机组成原理计算机系统概论首页首页2章章 两个原码表示的数相除时,商的两个原码表示的数相除时,商的符号符号由两数的符号由两数的符号按位
10、相加按位相加求得,商的求得,商的数值部分数值部分有两个数值部分相除求得。有两个数值部分相除求得。2.4 定点除法运算定点除法运算 2.4.1 原码除法算法原理原码除法算法原理 设有设有n 位定点小数:位定点小数:被除数被除数x,x原原=xf*xn-1 x1x0,除数除数y,y原原=yf*yn-1 y1y0,则有商,则有商q=x/y,其原码为:其原码为:q原原=(xf yf)*(xn-1 x1x0/yn-1 y1y0)在机器中,采用两种方法进行原码除法运算在机器中,采用两种方法进行原码除法运算:恢复余数法恢复余数法;加减交替法加减交替法计算机组成原理计算机系统概论首页首页2章章恢复余数法恢复余数
11、法:先做减法,若余数为正,才知道够减;若余:先做减法,若余数为正,才知道够减;若余数为负,才知道不够减。不够减时必须恢复原来的余数,以数为负,才知道不够减。不够减时必须恢复原来的余数,以便再继续往下运算,这种方法称为恢复余数法。便再继续往下运算,这种方法称为恢复余数法。例题例题:X=0.1011,Y=0.1101,求,求X/Y。解:解:X补补=00.1011,Y补补=00.1101,-Y补补=11.001100.101111.001111.1110+y补补余数余数 0,商,商 1+y补补00.110100.1011余数左移余数左移01.011000.100101.0010+y补补11.0011
12、余数左移余数左移11.0011+y补补00.0101 余数余数 0,商,商 1余数左移余数左移00.1010+y补补11.001111.1101 余数余数 0,商,商 1计算机组成原理计算机系统概论首页首页2章章最终结果为:最终结果为:X/Y 补补=0.110111.1110余数余数 0,商,商 100.100101.0010 余数左移余数左移余数左移余数左移01.0110+y补补11.001111.0011+y补补00.0101 余数余数 0,商,商 1余数左移余数左移00.1010+y补补11.001111.1101余数余数 0,商,商 1解:解:X补补=00.1011 Y补补=00.11
13、01 -Y补补=11.0011例题例题:X=0.1011,Y=0.1101求求 X/Y恢复余数法恢复余数法:先做减法,若余数为正,才先做减法,若余数为正,才知道够减;若余数为负,才知知道够减;若余数为负,才知道不够减。不够减时必须恢复道不够减。不够减时必须恢复原来的余数,以便再继续往下原来的余数,以便再继续往下运算,这种方法称为运算,这种方法称为恢复余数恢复余数法法。恢复余数法恢复余数法:先做减法先做减法,若余数为正,才知道够减;,若余数为正,才知道够减;若余数为负,才知道不够减。不够减时必若余数为负,才知道不够减。不够减时必须须恢复原来的余数恢复原来的余数,以便再继续往下运算,以便再继续往下
14、运算,这种方法称为这种方法称为恢复余数法恢复余数法。计算机组成原理计算机系统概论首页首页2章章不恢复余数法不恢复余数法:运算过程中如出现不够减,则不:运算过程中如出现不够减,则不必恢复余数,根据余数符号,可以继续往下运算。必恢复余数,根据余数符号,可以继续往下运算。例题例题:X=0.101001,Y=0.111,求,求X/Y。解:解:Y补补=1.001被除数被除数 X 0.101001 减减 Y 1.001 移位移位 1.10001加加 Y 0.111 移位移位 0.1101减减 Y 1.001 移位移位 1.111加加 Y 0.111 余数为负余数为负 1.110001 0q1=1余数为负余
15、数为负 1.1111 0q3=1故得:故得:商商 q=q0.q1q2q3 =0.101余数余数 r=0.00r1r2r3 =0.110计算机组成原理计算机系统概论首页首页2章章2.4.2 并行除法器并行除法器1.可控制加法可控制加法/减法(减法(CAS)单元)单元:(:(逻辑图逻辑图如下)如下)Ci+1CiAiBiSiPBi计算机组成原理计算机系统概论首页首页2章章对上图的对上图的说明说明:CAS单元的输入与输出关系可用如下一组逻辑方程来表示:单元的输入与输出关系可用如下一组逻辑方程来表示:Si=Ai (Bi Pi)Ci Ci+1=(Ai+Ci)*(Bi P)+Ai Ci当输入线当输入线 P=
16、0 时,时,CAS做加法运算,得到一位全加器做加法运算,得到一位全加器(FA)的公式:)的公式:Si=Ai Bi Ci Ci+1=Ai Bi+Bi Ci+Ai Ci当输入线当输入线 P=1 时,时,CAS做减法运算,得到求差公式:做减法运算,得到求差公式:Si=Ai Bi Ci Ci+1=Ai Bi+Bi Ci+Ai Ci其中,其中,Bi=Bi 1。计算机组成原理计算机系统概论首页首页2章章 在减法情况下,输入称为借位输入,而称为借位输在减法情况下,输入称为借位输入,而称为借位输出。出。为说明为说明CAS单元的实际内部电路实现,将上页中单元的实际内部电路实现,将上页中的方程式加以变换,可得如下
17、形式:的方程式加以变换,可得如下形式:Si=Ai (Bi Pi)Ci=Ai Bi Ci P+Ai Bi Ci P +Ai Bi Ci P+Ai Bi Ci P+Ai Bi Ci P+Ai Bi Ci P +Ai Bi Ci P+Ai Bi Ci PCi+1=(Ai+Ci)()(Bi P)+Ai Ci =Ai Bi P+Ai Bi P+Bi Ci-1P+Bi Ci P+Ai Ci这两个表达式中,每一个都能用一个三级组合逻辑电路这两个表达式中,每一个都能用一个三级组合逻辑电路(包括反向器)来实现。因此每一个基本的(包括反向器)来实现。因此每一个基本的CAS单元的单元的延迟时间为延迟时间为 3T单位
18、。单位。计算机组成原理计算机系统概论首页首页2章章2.不恢复余数的阵列除法器:不恢复余数的阵列除法器:假设所有被处理的数都是正的小数。假设所有被处理的数都是正的小数。CASCASCASCASCASCASCASCASCASCASCASCASCASCASCASCASy1y2y3x1x2x3x4x5x6r6r5r3r4q3q2q10100余数余数r=4位乘位乘 4位的不恢复余数的阵列除法器逻辑结构图位的不恢复余数的阵列除法器逻辑结构图计算机组成原理计算机系统概论首页首页2章章 上图显示了,上图显示了,4位乘位乘 4位的不恢复余数的阵列除法器位的不恢复余数的阵列除法器逻辑结构图。其中,逻辑结构图。其中
19、,被除数被除数:x=0.x1x2x3x4x5x6(双倍长)(双倍长)除数除数:y=0.y1y2y3 商数商数:q=0.q1q2q3 余数余数:r=0.00r1r2r3 字长字长:n+1=4 由图看出,该阵列除法器是用一个可控加法由图看出,该阵列除法器是用一个可控加法/减减法(法(CAS)单元所组成的叠接阵列来实现的。)单元所组成的叠接阵列来实现的。注意注意:例题在下一张。:例题在下一张。计算机组成原理计算机系统概论首页首页2章章例题例题:X=0.101001,Y=0.111,求,求X/Y。解:解:Y补补=1.001被除数被除数 X 0.101001 减减 Y 1.001 余数为负余数为负 1.110001 0移位移位 0.1101减减 Y 1.001 余数为负余数为负 1.1111 0q0=0q1=1q2=0q3=1故得:故得:商商 q=q0.q1q2q3=0.101余数余数 r=0.00r1r2r3=0.110
限制150内