收藏 分享(赏)

第6讲 多功能算术与逻辑运算单元ALU.ppt

上传人:hwpkd79526 文档编号:10069207 上传时间:2019-10-04 格式:PPT 页数:40 大小:1.08MB
下载 相关 举报
第6讲 多功能算术与逻辑运算单元ALU.ppt_第1页
第1页 / 共40页
第6讲 多功能算术与逻辑运算单元ALU.ppt_第2页
第2页 / 共40页
第6讲 多功能算术与逻辑运算单元ALU.ppt_第3页
第3页 / 共40页
第6讲 多功能算术与逻辑运算单元ALU.ppt_第4页
第4页 / 共40页
第6讲 多功能算术与逻辑运算单元ALU.ppt_第5页
第5页 / 共40页
点击查看更多>>
资源描述

1、信息工程系 系统结构教研室,一、算术逻辑运算的实现,计算机中最基本的算术运算是加法运算,不论加、减、乘、除运算最终都可以归结为加法运算。所以首先讨论最基本、最核心的运算部件加法器,以及并行加法器的进位问题。加法器是由全加器和其它必要的逻辑电路组成的,所以我们从全加器开始讨论。,信息工程系 系统结构教研室,1、全加器(FA),全加器(FA)是最基本的运算单元,由它构成加法器。 全加器有三个输入量:操作数Ai、Bi、以及低位传来的进位信号Ci-1 。 全加器有两个输出量:本位和Si、以及向高位的进位信号Ci。,信息工程系 系统结构教研室,全加器的逻辑方程和电路,根据真值表得:Si=AiBiCi-1

2、Ci=AiBi+(AiBi)Ci-1Si : 本位和Ci : 向高位的进位,实现电路,逻辑框图,一个全加器只完成一位加法,信息工程系 系统结构教研室,全加器构成加法器,全加器并不存储信息,可用门电路来实现。用全加器能够方便地构成加法器。加法器分为串行加法器和并行加法器。 串行加法器只有一个全加器,数据逐位串行送入加法器进行计算。由于运算速度慢,一般不用。 并行加法器则由若干个这样的全加器构成,各位数据同时运算。并行加法器的位数与操作数的位数相等。并行加法器的最长运算时间主要取决于进位信号的传递时间。例如:1111和0001相加,最低位产生的进位将逐位影响到最高位. 由此可见,提高并行加法器速度

3、的关键是尽量加快进位产生和传递的速度。,信息工程系 系统结构教研室,2、进位产生与传递,进位链的概念:并行加法器中的每一个全加器都有一个从低位送来的进位输入和一个传送给高位的进位输出。我们把构成进位信号产生和传递的逻辑网络称为进位链。 进位链上每一位的进位表达式为:Ci=AiBi+(AiBi)Ci-1 设 Gi=AiBi ,称为进位产生函数Pi=AiBi ,称为进位传递函数 进位表达式 Ci=Gi+PiCi-1,信息工程系 系统结构教研室,串行进位,把n个全加器串联起来,就可以实现两个n位数的相加。这种加法器称为串行进位的并行加法器,串行进位又叫行波进位。,其中:C1=G1+P1C0C2=G2

4、+P2C1Cn=Gn+PnCn-1,串行进位的并行加法器,总的延迟时间正比于字长,字长越长,总延迟时间也越长。 若一位进位需2ty时间,完成n位进位就需要2nty. 要提高加法运算速度,必须改进进位方式。,信息工程系 系统结构教研室,设n位并行加法器的序号是:第1位为最低位,第n位为最高位,则各进位符号的逻辑式如下:,信息工程系 系统结构教研室,为了提高运算速度,现在广泛采用并行进位(先行进位)结构,即并行地形成各级进位。逻辑式如下:,进位传递函数 Pi=Xi Yi 进位产生函数 Gi=XiYi,信息工程系 系统结构教研室,并行进位的特点,并行进位的特点是各级进位信号同时形成,与字长无关,提高

5、了整体运算速度 。并行进位又叫先行进位。 最长延迟时间仅为2ty。 随着加法器位数的增加,Ci的逻辑表达式会变得越来越长,输入变量会越来越多,电路结构也会变得越来越复杂,导致电路实现也越来越困难。 并行进位方式需继续改进,才能有实用价值。这就是下面要介绍的分组进位方式。,信息工程系 系统结构教研室,以16位加法器为例,将其分为4组,每组4位。 在组内,按照并行进位函数直接产生C1C4,这些进位可同时得到。实现这种进位逻辑的电路称为4位先行进位电路(CLA),如74181ALU。 利用这种4位一组的CLA电路和4位全加器可以构成4位CLA加法器。注意,4位CLA加法器包含了两部分逻辑:4位全加器

6、和4位一组的先行进位链,这个组内的进位为一级进位。 在组间,每个组的进位输入是前一个组的进位输出,而每个组的进位输出是下一个组的进位输入.,构成16 位加法 器很容 易实现,单级先行进位,信息工程系 系统结构教研室,单级先行进位(续一),上述组内并行、组间串行的进位方式也称为单级先行进位方式,原理如下图所示。,信息工程系 系统结构教研室,组内并行、组间并行的进位链,第一小组的有关进位逻辑:其余各组可照此类推,仅下标序号相应变化。如C1是第一组产生的组间进位,作为第二小组的初始进位。,信息工程系 系统结构教研室,信息工程系 系统结构教研室,单级先行进位(续二),组内并行、组间串行进位的时间图(1

7、6位)如下:完成进位时间8ty. 进位时间与组数成正比,组数越多,进位时间越长。,信息工程系 系统结构教研室,多级先行进位,为说明问题,我们不妨仍以16位加法器为例,仍然4位一组,分成4个小组,先就第一小组的进位输出函数C4做一下分析:C4 = G4+P4G3+P4P3G2+P4P3P2G1+P4P3P2P1C0G1* P1*= G1* +P1*C0G1*称为组进位产生函数,P1*称为组进位传递函数;这两个函数类似于进位产生函数G和进位传递函数P.,信息工程系 系统结构教研室,多级先行进位(续一),四个组内的最高进位C16、C12、C8、C4可以分别表示为:C4 = G1* + P1* C0C

8、8 = G2* + P2* C4C12 = G3* + P3* C8C16 = G4* + P4* C12现在逐项代入、并展开得关系式:C4 = G1* + P1* C0C8 = G2*+P2*C4=G2*+P2*G1* +P2*P1*C0C12 = G3*+P3*G2*+P3*P2*G1* +P3*P2*P1*C0C16 = G4*+P4*G3*+P4*P3*G2*+P4*P3*P2*G1*+P4*P3*P2*P1*C0可以看出,这4组进位结构与前述4位先行进位逻辑完全相同,组间进位信号只与最低进位C0有关,所以能同时产生。,信息工程系 系统结构教研室,多级先行进位(续二),组内进位信号能同

9、时产生、组间进位信号也能同时产生,由此可以构成多级并行进位逻辑。16位2级先行进位加法器如下图所示。,信息工程系 系统结构教研室,多级先行进位(续三),问题是这4个组间进位信号如何用硬件来产生呢?对于多级先行进位的实现可以按如下思路来理解: 先把单级先行进位加法器的串行进位链断开; 增加一级先行进位链,这个新增加的先行进位链的进位称为二级进位; 组间进位信号C4、C8、C12、C16由二级进位链来产生,其逻辑关系式已经得到; 让一级进位链多产生两个辅助函数Gi*和Pi*,并且作为二级进位链的输入。,信息工程系 系统结构教研室,多级先行进位(续四),16位2级先行进位时间图,进位产生次序如下:

10、产生第一小组的C1C3、所有组进位产生函数Gi*和组进位传递函数Pi*,时间为2ty. 由CLA电路产生第二、三、四小组的组间进位信号C4、C8、C12、C16,时间为2ty. 产生第二、三、四小组的组内进位信号C5、C6、C7、C9、C10、C11、C13、C14、C15,时间为2ty.,信息工程系 系统结构教研室,4、多功能算术逻辑部件ALU,前面介绍了运算器的算术运算功能,为了完成多种算术逻辑运算,需要将加法器的功能进行扩展,扩展的基本思想如下:,参加运算的两个数Ai、Bi和低位进位Ci-1先不进行全加,先把两个输入Ai、Bi和四个控制参数S0、S1、S2、S3进行组合,形成函数Xi和Y

11、i,然后再将Xi、Yi和低位进位Ci-1通过全加器进行全加。这样一来,控制参数不同,得到的组合函数也不同,从而实现多种算术和逻辑运算。,信息工程系 系统结构教研室,一位全加器(FA)的逻辑表达式为 FiAiBiCi Ci1AiBiBiCiCiAi 将Ai和Bi先组合成由控制参数S0,S1,S2,S3控制 的组合函数Xi和Yi,然后再将Xi,Yi和下一位进位数通 过全加器进行全加。这样,不同的控制参数可以得到 不同的组合函数,因而能够实现多种算术运算和逻辑 运算。因此,一位算术/逻辑运算单元的逻辑表达式为 FiXiYiCni Cni1XiYiYiCniCniXi,定点运算器的组成,1.基本思想,

12、图2.10 ALU的逻辑结构原理框图,信息工程系 系统结构教研室,上式中进位下标用ni代替原来以为全 加器中的i,i代表集成在一片电路上的ALU的 二进制位数。 对于4位一片的ALU,i0,1,2,3。 n代表若干片ALU组成更大字长的运算器时每 片电路的最低位计数,例如当4片ALU组成16 位字长的运算器时,n0,4,8,12。,定点运算器的组成,信息工程系 系统结构教研室,控制参数S0 ,S1 ,S2 ,S3 分别控制输入Ai和Bi,产生Y和X 的函数。其中Yi是受S0 ,S1控制的Ai和Bi的组合函数,而Xi是受 S2 ,S3控制的Ai和Bi组合函数,其函数关系如表2.4所示。,定点运算

13、器的组成,2.逻辑表达式,表2.4 与控制参数和输入量的关系,信息工程系 系统结构教研室,定点运算器的组成,综上所述,ALU的某一位逻辑表达式如下: XiS3AiBiS2AiBi YiAiS0BiS1Bi FiXiYiCni Cn+i+1YiXi Cn+ i,(2.36),信息工程系 系统结构教研室,例如: S3S2S1S00000 代入:,四个控制参数则可以处理16种算术逻辑运算,每种运算只针对1位二进制编码 思考:如何设计4位ALU?16位呢?,功能之一:16种算术逻辑运算,信息工程系 系统结构教研室,信息工程系 系统结构教研室,功能之二:先行进位逻辑(实现高速运算),4位ALU问题1:片

14、内是串行进位还是并行进位?,信息工程系 系统结构教研室,4位之间采用先行进位公式,根据式(2.36),每一 位的进位公式可递推如下: 第0位向第1位的进位公式为: Cn1Y0X0Cn 其中Cn是向第0位(末位)的进位。 第1位向第2位的进位公式为: Cn2Y1X1Cn1Y1Y0X1X0X1Cn 第2位向第3位的进位公式为: Cn3Y2X2Cn2Y2Y1X1Y0X1X2X0X1X2Cn 第3位的进位输出(即整个4位运算进位输出)公式为: Cn4Y3X3Cn3Y3Y2X3Y1X2X3Y0X1X2X3X0X1X2X3Cn,定点运算器的组成,设: GY3Y2X3Y1X2X3Y0X1X2X3 PX0X1

15、X2X3 则:Cn4GPCn,(G),(P),信息工程系 系统结构教研室,这样,对每一片ALU来说,都有三个进位输出。其中 G称为进位发生输出,P称为进位传送输出。在电路中多 加这两个进位输出的目的,是为了便于实现多片(组) ALU之间的先行进位,为此还需一个配合电路,称之为先 行进位发生器(CLA),下面还要介绍。 Cn+4是本片(组)的最后进位输出。逻辑表达式表明, 这是一个先行进位逻辑。换句话说,第0位的进位输入 Cn可以直接传送到最高位上去,因而可以实现高速运算。,定点运算器的组成,设: GY3Y2X3Y1X2X3Y0X1X2X3 PX0X1X2X3 则:Cn4GPCn (3个进位输出

16、项),信息工程系 系统结构教研室,定点运算器的组成,图2.11(a)示出了用负逻辑表示的4位 算术/逻辑运算单元(ALU)的逻辑电路图 ,它是根据上面的原始推导公式用TTL电路实现的。 这个器件的商业标号为74181ALU。,信息工程系 系统结构教研室,前面说过,74181ALU设置了P和G两个本组先行进 位输出端。如果将四片74181的P,G输出端送入到 74182先行进位部件(CLA),又可实现第二级的先行 进位,即:组与组之间的先行进位。 假设4片(组)74181的先行进位输出依次为: P0,G0; G1,P1; P2,G2; P3,G3,那么参考式(2.37)的进 位逻辑表达式,先行进

17、位部件74182CLA所提供的进位 逻辑关系如下:,定点运算器的组成,两级先行进位的ALU,CnG0P0Cn CnG1P1CnG1G0P1P0P1Cn CnG2P2CnG2G1P2G0P1P2P0P1P2Cn (2.38) Cn4 G3P3CnG3G2P3G1P2P3G0P1P2P3P0P1P2P3Cn G*P*Cn 其中: P*P0P1P2P3 G*G3G2P3G1P2P3G0P1P2P3,信息工程系 系统结构教研室,根据以上表达式,用TTL器件实现的成组 先行进位部件74182的逻辑电路图如图2.12所 示 其中G*称为成组进位发生输出,P*称为成组 进位传送输出。,定点运算器的组成,信息

18、工程系 系统结构教研室,信息工程系 系统结构教研室,下面介绍如何用若干个74181ALU位片,与配套 的74182先行进位部件CLA在一起,构成一个全字长 的ALU。 下图示出了用两个16位全先行进位部件级联 组成的32位ALU逻辑方框图。在这个电路中使用了 八个74181ALU和两个74182CLA器件。很显然,对一 个16位来说,CLA部件构成了第二级的先行进位逻 辑,即实现四个小组(位片)之间的先行进位,从 而使全字长ALU的运算时间大大缩短。 图2.13 用两个16位全先行进位部件级联组成的32位ALU(组内先行进位,组间串行进位),定点运算器的组成,信息工程系 系统结构教研室,5、运

19、算器的组织,运算器主要由算逻部件ALU、寄存器、多路转换器、内部数据总线组成。 基本的运算器组织包含如下逻辑组成:实现基本算术、逻辑运算功能的ALU,提供操作数与暂存运算结果的寄存器组,有关的判别逻辑(如结果是否为0,正负,进位,溢出),或加上局部控制电路等。将这些功能模块连接成一个整体时,需要解决一个问题,就是如何向ALU提供操作数?一种方法是在ALU输入端加多路选择器,另一种方法是在ALU输入端加一级锁存器(暂存器)。,信息工程系 系统结构教研室,带多路选择器的运算器,信息工程系 系统结构教研室,带锁存器的运算器,信息工程系 系统结构教研室,运算器的内部总线结构,在运算器内部,各功能模块之

20、间的连接大都采用总线结构,称为运算器的内部总线,ALU和各寄存器都挂在上面。 运算器大体上有如下三种结构:单总线结构、双总线结构和三总线总线结构。,信息工程系 系统结构教研室,操作数需要分两次送入ALU,而且需要两个缓冲寄存器;完成一次运算需要3步。特点是控制电路简单,而速度较慢。,两个操作数可以同时到达ALU进行运算,且马上可以得到运算结果,输出端需要设置一个缓冲寄存器 ;完成一次运算需要2步 。,两条总线同时供给操作数,输出与第三条总线相连;完成一次运算需要1步。特点是操作速度快,控制相对复杂一些。,运算器的3种组织结构,信息工程系 系统结构教研室,本节内容重点 1、先行进位逻辑 2、ALU(74181) 3、全先行进位的ALU(与先行进位逻辑CLA74182配合使用),

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报