您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 咨询培训 > 组成原理课件---计算机中的逻辑部件和运算器分解
知识回顾1、叙述浮点加减法运算的步骤有哪些?2、叙述浮点乘除法运算的步骤有哪些?3、浮点四则运算时出现哪些情况时需要进行规格化处理?4、浮点四则运算第几步为舍入操作?方法有几种?§3-1计算机中常用的逻辑部件§3-2算术运算单元ALU§3-3运算器AM2901第3章计算机的常用逻辑部件和运算器§3·1计算机中常用的组合逻辑电路XnYnHn000011101110+XnYnHn⊕XnYnHnHAXnYnHnHn=Xn·Yn+Xn·Yn=Xn⊕Yn逻辑电路的输出状态仅与当时的输入状态有关,而与过去的输入状态无关。不考虑低位传来的进位输入,只有本位的两个数码Xn和Yn相加,产生一个半加和Hn的逻辑电路。1、半加器:(1)真值表组合逻辑电路:一、加法器(halfadder)(3)逻辑电路(2)逻辑表达式(4)逻辑符号XnYnCn-1FnCn0000000110010100110110010101011100111111FAXnYnCn-1FnCn⊕⊕XnYnCn-1Fn2、全加器:(fulladder)考虑进位输入时,两个数码Xn、Yn及进位数码Cn-1相加产生一个全加和Fn和进位Cn的逻辑电路。(1)真值表(3)逻辑电路(2)逻辑表达式(4)逻辑符号=Xn·Yn·Cn-1+Xn·Yn·Cn-1+Xn·Yn·Cn-1+Xn·Yn·Cn-1=Xn·Yn+Xn·Cn-1+Yn·Cn-1=Xn·Yn+(Xn+Yn)·Cn-1Cn=Xn·Yn·Cn-1+Xn·Yn·Cn-1+Xn·Yn·Cn-1+Xn·Yn·Cn-1=Xn⊕Yn⊕Cn-1Fn二、N位加法器完成两个二进制数A=Xn-1Xn-2……X1X0和B=Yn-1……Y1Y0相加,求得和Fn=Fn-1Fn-2……F1F0的器件。1、串行加法器在串行加法器中,只有一个全加器,数据逐位串行送入加法器进行运算。01CFA01010101CLKAB计数器A、B是两个具有移位功能的n位寄存器,用来存放已知的被加数和加数,FA是一个全加器,C用来保存进位信号的触发器,其初始值为0。CLK为时钟,每一节拍完成的工作是,A、B最低位送FA,与上次进位相加。本次运算的结果送A寄存器的最高位,进位送触发器C,同时A、B右移一位。CLK的作用下,减1,当计数器为0时,加法运算结束,在A寄存器中得到两数之和。FAXn-1Yn-1Fn-1Cn-1FAXn-2Yn-2Fn-2Cn-2FAX1Y1F1C1FAX0Y0F0C0C-1..…….(1)N位串行进位加法器由Cn=Xn·Yn+(Xn+Yn)·Cn-1可知,第n位的进位Cn与第n-1位有关,第i–1位与i–2位有关,……..最后一位C1与C0有关,(高一级进位是低一级进位的函数)逐次连接起来,这个链叫串行进位链。采用串行进位链的加法器为串行进位加法器。特点:简单清晰,运算速度很慢。FAFAFAFA2、并行加法器并行加法器由多个全加器组成,其位数的多少取决于机器的字长,数据的各位同时运算。并行加法可同时对数据的各位相加,由于多个全加器的进位输出是另一个全加器的进位输入,因而并行加法器中进位信号的传递问题是影响全加器本身速度的主要因素。练习:已知n=4写出串行进位加法器的各进位信号的表达式进位链:进位信号的产生与传递逻辑(2)并行进位加法器第i位进位信号:Ci=Xi·Yi+(Xi+Yi)·Ci-1进位生成信号:Gi=Xi·Yi含义:当Xi、Yi均为1时,不管有无进位输入,定会产生向高位的进位。进位传播信号:Pi=Xi+Yi含义:当Xi、Yi中有一个为1时,若有进位输入,则本位向高位传送进位。以Gi和Pi为输入的进位信号Ci=Gi+Pi·Ci-1C0=G0+P0·C-1C1=G1+P1·C0C2=G2+P2·C1C3=G3+P3·C2C0=G0+P0·C-1C1=G1+P1·G0+P1·P0·C-1C2=G2+P2·G1+P2·P1·G0+P2·P1·P0·C-1C3=G3+P3·G2+P3·P2·G1+P3·P2·P1·G0+P3·P2·P1·P0·C-1练习1:写出以Gi、Pi和Ci-1为输入的C0、C1、C2、C3的输出逻辑表达式练习2:写出以Gi和Pi和C-1为输入的C0、C1、C2、C3的输出逻辑表达式并行进位加法器每一位进位信号的生成均由操作数及最低进位信号C-1直接决定,进位信号间不发生联系,这种进位电路称为并行进位链。特点:结构复杂,运算速度快。*练习1、写出四位并行加法以Pi、Gi和C-1为输入信号的Ci逻辑表达式,并画出逻辑电路图。*作业1、写出四位并行加法以Pi、Gi和C-1为输入信号的Ci逻辑表达式,并画出逻辑电路图。2、写出全加器的功能表、逻辑表达式,并画出由基本与、或、非门组成的逻辑电路和逻辑符号。++++++++C3C2C1C0x3x2x1x0y3y2y1G0c-1y0G10G2G3P2P3P1P0练习:如下图所示,写出以Pi、Gi和C-1为输入的Ci的逻辑表达式C0=P0+G0·C-1C1=P1+G1·P0+G1·G0·C-1C2=P2+G2·P1+G2·G1·P1+G2·G1·G0·C-1C3=P3+G3P2+G3·G2·P1+G3·G2·G1·P0+G3·G2·G1·G0·C-1++++G3P3G2P2G1P1G0C-1P0C2C1C0C3①单重分组跳跃进位将n位全加器分成若干小组,组内进位同时产生(组内并行进位),组间采用串行进位传递(组间串行进位)。C0C1C2C3C4C5C6C7C8C9C10C11C12C13C14C15C16……………………P1G1P4G4P5G5P8G8P9G9P12G12P13G13P16G16②双重分组跳跃进位将n位全加器分成几个大组,每个大组又包含几个小组,大组之间采用串行进位,各个大组中的小组的是高位进位是同时的并且小组内其他进位也是同时形成的,但小组内最高位与其他位并不是同时进位的。C4=G4+P4G3+P4P3G2+P4P3P2G1+P4P3P2P1P0C0令G1*=G4+P4G3+P4P3G2+P4P3P2G1P1*=P4P3P2P1P0可得C4=G1*+P1*C0同理得C8=G2*+P2*C4C12=G3*+P3*C8C16=G4*+P4*C12其中Gi*为小组的本地进位,Pi*是将低位C0、C4等传到高位小组的条件。将C4代入C8、C8代入C12、C12代入C16得到关于C0和Pi*及Gi*表达式进位产生次序第二重进位链第一组C0C1C2C3……P1G1P4G4P1*G1*第二组C6C7……G5P8G8P2*G2*第三组C10C11……G9P12G12P3*G3*第四组C14C15……G13P16G16P4*G4*P13P9P5C16C12C8C4C5C9C131、产生第1小组的C1、C2、C3及各组本地进位Gi*和传递条件Pi*2、产生组间的进位信号C4、C8、C12、C163、产生第2、3、4小组的C5、C6、C7;C9、C10、C11;C13、C14、C15。至此进位信号全部形成,和数也随之产生。知识回顾1、说明串行加法器和并行加法器的区别?2、影响加法器运算速度的关键问题时什么?可采取的改进措施有哪些?理论依据是什么?1、说明串行加法器和并行加法器的区别?在串行加法器中,只有一个全加器,数据逐位串行送入加法器进行运算。01CFA01010101CLKAB计数器在并行加法器中有n个全加器,数据并行同时输入n个全加器中进行运算,根据进位信号产生方式的不同可分为串行进位的加法器和并行进位的加法器。而且在并行进位的加法器中又分为单重分组跳跃进位和多重分组跳跃进位两种方式。可采用单重或多重分组跳跃进位的方法,从不仅使每个小组内部为并行进位,而且使各个小组之间的进位关系也为并行进位。C0=G0+P0·C-1C1=G1+P1·G0+P1·P0·C-1C2=G2+P2·G1+P2·P1·G0+P2·P1·P0·C-1C3=G3+P3·G2+P3·P2·G1+P3·P2·P1·G0+P3·P2·P1·P0·C-1进位信号:Ci=Xi·Yi+(Xi+Yi)·Ci-1以Gi、Pi和Ci-1为输入的进位信号Ci=Gi+Pi·Ci-1或以Gi、Pi和Ci-1为输入的进位信号Ci=Gi+Pi·Ci-1++++G3P3G2P2G1P1G0C-1P0C2C1C0C3++++++++C3C2C1C0x3x2x1x0y3y2y1G0c-1y0G10G2G3P2P3P1P0练习:如下图所示,写出以Pi、Gi和C-1为输入的Ci的逻辑表达式C0=P0+G0·C-1C1=P1+G1·P0+G1·G0·C-1C2=P2+G2·P1+G2·G1·P1+G2·G1·G0·C-1C3=P3+G3P2+G3·G2·P1+G3·G2·G1·P0+G3·G2·G1·G0·C-1②双重分组跳跃进位将n位全加器分成几个大组,每个大组又包含几个小组,大组之间采用串行进位,各个大组中的小组的是高位进位是同时的并且小组内其他进位也是同时形成的,但小组内最高位与其他位并不是同时进位的。C4=G4+P4G3+P4P3G2+P4P3P2G1+P4P3P2P1P0C0令G1*=G4+P4G3+P4P3G2+P4P3P2G1P1*=P4P3P2P1P0可得C4=G1*+P1*C0同理得C8=G2*+P2*C4C12=G3*+P3*C8C16=G4*+P4*C12其中Gi*为小组的本地进位,Pi*是将低位C0、C4等传到高位小组的条件。将C4代入C8、C8代入C12、C12代入C16得到关于C0和Pi*及Gi*表达式进位产生次序第二重进位链第一组C0C1C2C3……P1G1P4G4P1*G1*第二组C6C7……G5P8G8P2*G2*第三组C10C11……G9P12G12P3*G3*第四组C14C15……G13P16G16P4*G4*P13P9P5C16C12C8C4C5C9C131、产生第1小组的C1、C2、C3及各组本地进位Gi*和传递条件Pi*2、产生组间的进位信号C4、C8、C12、C163、产生第2、3、4小组的C5、C6、C7;C9、C10、C11;C13、C14、C15。至此进位信号全部形成,和数也随之产生。§3·2算术逻辑单元ALU一、ALU电路ALU......KiAiBiFiSN741814位ALUF3F2F0F1S0S1S2S3MB2B3B1B0A2A3A1A0C-1Cn+4A=BGPB3~B0和A3~A0是两个操作数,F3~F0是输出结果。C–1是最低位的进位,Cn+4是SN74181向高位的进位;P、G可供先行(跳跃)进位使用。M用于区别是算术运算还是逻辑运算,S3~S0可产生16种不同的运算。SN74181算术运算是用补码实现的,其中减数的反码是内部电路形成的,而末位加1是通过C-1=0来实现的(C-1输入端前有一反相器)ALU为组合逻辑电路,在应用ALU时两个输入端口A和B必须与锁存器相连,而且在运算过程中锁存器的内容是不变的,其输出必须送到寄存器中保存。SN74181是采用并行进位方式的多功能ALU芯片,每片4位构成一组,组内是并行进位,四位进位是同时产生的,利用SN74181芯片可构成多位的ALU运算器。1、组间串行进位的16位ALUSN74181C0A4A1…B4B1…F4F3F2F1SN74181A8A5…B8B5…F8F7F6F5SN74181A12A9…B12B9…F12F11F10F9SN74181A16A13…B16B13…F16F15F14F132、组间并行进位的16位ALUSN74182是与SN74181配套的产品,是一个产生先行进位信号的部件,它可实现组与组之间的先行进位。SN74181C0A4A1…B4B1…P1F4F1SN74181A8A5…B8B5…G2P2F8F5SN74181A12A9…B12B9…G3P3F12F9SN74181A16A13…B16B13…GG4F16F13SN74182…………G1C0C4C8C12C16PP43、32位两重进位方式的ALUSN74181C0A
本文标题:组成原理课件---计算机中的逻辑部件和运算器分解
链接地址:https://www.777doc.com/doc-4257291 .html