第3章组合逻辑电路1.ppt
3.6 数值比较电路,数值比较电路是用来比较两个二进制数的大小或是否相等的电路。比较原理一位比较器四位比较器,比较原理,比较两个二进制数的大小要从最高位开始比较直至最低位。如对于A=A3A2A1A0和B=B3B2B1B0,若A3B3,以下各位不必比较,就可判断AB,反之,若A3B3,则AB;若A3=B3,则比较A2和B2的关系,直至最低位,从而可以确定A和B的关系;只有A和B各位都相等才能有A=B。,一位比较器,两个一位二进制数Ai和Bi的比较有三种结果:AiBi,AiBi,Ai=Bi。其真值表如表3-19所示。,由表可得出一位比较器的三个输出端的逻辑表达式分别为:,一位比较器逻辑图,四位比较器,中规模四位数值比较器CC14585(74LS85)的逻辑图和逻辑符号如图3-34所示。A3A2A1A0和B3B2B1B0为比较输入;AB、Ab、ab、a=b为级联输入。级联输入是为多片四位二进制数值比较器连接起来,实现更多位数比较而设置的。表3-20为其真值表。,注:只要两数最高位不等,就可以判断两数大小。其余各位可以为任意值。,若高位相等,则需要比较低位。,若A、B两数各位均相等,输出状态取决于级联输入状态。,四位比较器的外引脚排列图,八位二进制数比较时,若高四位相等,就得看低四位比较结果。用两片74LS85比较八位数时,高四位的输出就是八位数比较结果的输出。低四位片输出接到高四位片的级联输入,从而高四位相等时,高四位的输出取决于级联输入低四位的比较结果。,四位比较器的级联,实现逻辑图,例 试选用中规模集成电路实现下表所示电路。,解:若把A、B、C、D看成二进制数时,ABCD=0110时,F2=1;ABCD0110时,F3=1;上述分析结果是ABCD与二进制0110比较得出的。,0 1 1 0,因此选用四位二进制数值比较器较为方便。令A3A2A1A0=ABCD,B3B2B1B0=0110,AB时为F3。逻辑图如图所示。,例子的逻辑图,3.6 算数运算电路,二进制加法电路 二进制减法电路 算术逻辑单元(ALU),二进制加法电路,半加和全加的概念半加器(Half Adder)全加器(Full Adder)加法器串行加法器并行加法器 串行进位并行加法器 超前进位并行加法器BCD码加法器,半加和全加的概念,两个n位二进制数相加,是从最低有效位开始相加,得到“和数”并传送进位最后得到结果。最低位只有加数和被加数相加,称为半加;其余各位是加数、被加数和相邻低位的进位相加称为全加。,半加器(Half Adder),半加器:完成只有加数和被加数相加的电路,称为半加器,如最低位的加法。,半加器的逻辑符号及真值表,全加器(Full Adder),全加器:能够完成除了加数、被加数相加之外,还要加上相邻低位的进位的电路,称为全加器。,全加器的真值表,和,加数,被加数,低位来的进位,向高位的进位,全加器的逻辑符号和逻辑图,加法器,加法器:实现多位二进制数加法运算的电路。串行加法器:串行加法器采用串行运算方式,从二进制数的最低位开始,逐位相加至最高位,最后得出和数。并行加法器:并行加法器采用并行运算方式,将各位数同时相加,因而提高了运算速度。,并行加法器,按进位数传递方式可分为串行进位和并行进位两种方式并行加法器。串行进位并行加法器的全加器的个数等于相加数的位数。图3-38串行进位并行加法器的逻辑图。,串行进位并行加法器,全加器的个数等于加数的位数。优点是电路简单、连接方便;缺点是运算速度不高。最高位的运算,必须等到所有低位运算依次结束,送来进位信号之后才能进行。,超前进位并行加法器,超前进位并行加法器采用超前进位(并行进位)的方法,能够先判断出各位的进位是0还是1,因此四个全加器可同时相加,从而提高了运算速度。3-39为四位超前进位加法器74LS283的逻辑图。它由四个全加器和超前进位电路组成。每位全加器输出本位和Si、绝对进位Gi及产生相对进位用的Pi,Pi=AiBi。,每位全加器输出本位和Si,进位信号,令AiBi=Gi为绝对进位,PiCi为相对进位则Ci+1=Gi+PiCi,四位进位信号的逻辑表达式:,C1=A0B0+(A0B0)C0=G0+P0C0,C2=G1+P1C1=G1+P1(G0+P0C0)=G1+P1G0+P1P0C0,C3=G2+P2C2=G2+P2(G1+P1G0+P1P0C0)=G2+P2G1+P2P1G0+P2P1P0C0,C4=G3+P3C3=G3+P3(G2+P2G1+P2P1G0+P2P1P0C0)=G3+P3G2+P3P2G1+P3P2P1G0+P3P2P1P0C0,由这些表达式画出的超前进位电路实现了相对进位信号的快速传递。各位和如下式:S0=A0B0C0 S1=A1B1C1S2=A2B2C2S3=A3B3C和数信号与进位信号是同时产生的,不必逐级传送。因而,提高了运算速度。,74LS283的逻辑符号及外引脚排列图,例 试用两片74LS283构成八位二进制数加法器。,解:按照加法的规则,低四位的进位输出CO应接高四位的进位输入CI,而低四位的进位输入应接0。逻辑图如图所示。,BCD码加法器,BCD(Binary Coded Decimal)码是用二进制代码分别表示十进制数各位的代码组合。由于每位十进制数最大为9,所以BCD码相加时,其值超过9的位必须通过减10或加6加以调整。因此BCD码相加时,其和有需要调整和不需要调整两种情况:一种和数为0-9,不需要调整;另一种和数为10-18,需要调整,非BCD码需要调整,图为一位BCD码并行加法器逻辑图。,门G1、G2、G3用来产生加6的控制信号。当门G1、G2为1时,说明“和”输出端为10、11、12、13、14、15。当C5为1时,和数为16、17、18。,由四位串行进位并行加法器和十进制调整电路组成。,以上情形都需要向高位加法器传送进位信号C5,并对和S3、S2位加1,实现加6调整。,要实现多位BCD码相加,可以用若干个此电路组成多位BCD码加法器。,例:,试用74LS283实现8421码的加法运算。两个一位8421码相加之和,最小数是0000+0000=0000;最大数是1001+1001=11000(8421码的18)。74LS283为四位二进制加法器。用它进行8421码相加时,若和数小于等于9时,无需修正(加0000),即74283输出为8421码相加之和。当和数大于等于十进制数10时,需加6予以修正,加0110。,C=S3S2+S3S1,用C作为控制端,C=0时不修正,C=1修正加0110。逻辑图如图所示。,修正信号方程为C=CO+S3S2+S3S1,逻辑图如图所示,二进制减法电路,在计算机中,常常用加法器实现减法运算。二进制正、负数表示方法不同,实现减法运算的电路也不同。二进制正、负数的表示方法原码表示法补码表示法,原码表示法,原码表示法又称为符号-绝对值表示法。在二进制数最高位前增加一位符号位,符号位为0,表示是正数,符号位为1表示是负数。其余各位表示数的绝对值。如:A=+10010;B=10010。+10010原=010010;-10010原=110010。,补码表示法,一个正数的补码与其原码相同。如一个二进制正数A=+10110的原码A原=+10110原=010110,A补=+10110补=010110一个负数的补码为在符号位1不变的前提下,绝对值取反加1。取反得反码。如 110010 原码 101101 反码,也可以用2n-A的方法求出-A的补码。A补=2n A 其中n为A的位数。例如1310=11012,它的补码为:1101补=241101=10000 1101=0011如-10010的补码为25-10010=100000-10010=01110,再加上符号位,则-10010的补码为101110。与上面方法求得的补码相同。,补码表示法,减法电路,因为减正数等于加负数;减负数等于加正数。有了正、负数的补码表示法,就可以变减法为补码加法运算。用补码完成减法用补码表示正、负数,XY=X+Y补的补码加法运算。,二进制原码减法运算,二进制补码加法运算,补码运算结果仍为补码。差值为正时,补码原码相同,为十进制数3。,减法电路,补码运算的结果仍为补码。结果为正数,符号位为0,结果为负数,符号位为1。,再对1101求补得原码,即1101补=1011,结果为3。将加减运算变换成补码加法运算非常方便。,补码加法运算的步骤是:,把减法运算表示成加法运算;将两数各自求补;将求补后的两个补码相加,如有溢出则丢掉,对运算结果求补,得到原码。,2.求反电路,求反电路可以用异或门实现,如图3-40所示。,M=0时,,M=1时,,3.原码输出二进制减法电路,按照补码运算规则设计的减法电路如图3-41所示。两个四位二进制数A和B(最高位为符号位)做减法运算是变减法为补码的加法运算。,3.原码输出二进制减法电路,求反电路,在A3A2A1A0输入端送入-5的补码1011,B3B2B1B0输入端送入+2的补码0010。,-2的补码由C0=1控制求反电路对+2求反,送入1#74LS283实现 的运算。得中间结果 S3S2S1S0为-7的补码,符号位S3为1表示是负数的补码。,S3也控制门G1、G2、G3对数值部分S2S1S0(001)求反,求反后送入#74LS283与B3B2B1B0(0000)、C0(1)相加,实现对-7的补码再求补得-7的原码输出。,例如-5-2=-7用二进制数计算的过程描述如下:,对-7的补码再求补码:1001为1111。用负数减正数,结果为负数。,原码输出减法电路的设计原理是:,负数用补码表示,将减法变为加法。AB 补=A 补+B补,变成原码需要对AB补再求补一次,即AB补补=AB原。,算术逻辑单元(ALU),算术逻辑单元(Arithmetic Logic Unit,简称ALU)不仅能进行算术运算(如加减运算),而且能进行逻辑运算(与、与非、或、或非、异或、数码比较等)。它是在全加器的基础上,增加控制门和功能选择控制端构成的。算术逻辑单元输入端输入的二进制代码,可以是参加运算的数据,也可以是代表特定含义的信息。由于其功能全面,在计算机和数字装置中得到了广泛的应用。,ALU的基本组成原理,图3-42为一个功能简单的ALU的逻辑框图及其中某一位的逻辑图。,方式控制端:M=1,算术运算,M=0逻辑运算。,操作选择端,数据输入端,进位输入端,进位输出端,结果输出端,ALU的基本组成原理,ALU的基本组成原理,当方式控制端M=0时,进行逻辑运算。对应S1、S0的四种状态,ALU执行不同的操作。当M=1时,进行算术运算。由于进位输入有两个状态,所以ALU执行的操作也不同。如表3-22、3-23所示。,集成算术逻辑单元,图3-43是74181ALU中规模集成电路逻辑原理图。74181是在四位超前进位加法器基础上发展起来的,具有十六种逻辑运算功能和十六种算术运算功能。具有如下性能特点:在扩展字长时,可作高速超前进位运算。算术运算:加、减,左移一位;比较大小;12个其它算术运算。逻辑运算:异或;比较;与;与非;或;或非及其它逻辑运算。芯片上有75个等效门。,A3A2A1A0和B3B2B1B0是两个输入运算代码,F3F2F1F0是输出的运算结果,是进行算术加法运算时的进位输出,是来自低位的进位输入。当两个数完全相同时,FA=B=1。G、P是进位产生函数输出端和进位传送函数输出端,提供扩展位数、片间连接用。M是逻辑/算术运算控制端,S3S2S1S0为操作选择端。将输入变量和输出变量按正逻辑规定列出74181的运算功能见表3-24。,3.8 奇偶校验电路,在数字设备中,数据的传输是大量的,且传输的数据都是由若干位二进制代码0和1组合而成的。由于系统内部或外部干扰等原因就可能使数据信息在传输过程中产生错误,例如在发送端,待发送的数据是8位,有三位是1,到了接收端变成了四位是1,产生了误传。奇偶校验器就是能自动检验数据信息传送过程中是否出现误传的逻辑电路。,奇偶校验的基本原理,奇偶校验的基本方法就是在待发送的有效数据位之外再增加一位奇偶校验位(又称监督码)。,利用这一位将待发送的数据代码中含1的个数补成奇数(当采用奇校验)或者补成偶数(当采用偶校验),形成传输码。,在接收端通过检查接收到的传输码中1的个数的奇偶性判断传输过程中是否有误传现象。,传输正确则向接收端发出接收命令,否则拒绝接收或发出报警信号。,产生奇偶校验位(监督码),判断传输码中含1的个数奇偶性,奇偶校验的编码表,三位二进制码的奇校验系统联接方式,中规模集成奇偶发生器/校验器,如图是中规模集成奇偶发生器74180的逻辑图。,A、B、C、D、E、F、G、H是八位输入代码。,SOD和SE是奇偶控制端,WOD是奇校验端,WE是偶校验端,中规模集成奇偶发生器/校验器,如图是中规模集成奇偶发生器74180的引脚排列图。,中规模集成奇偶发生器/校验器,如图是中规模集成奇偶发生器74180的逻辑图。,中规模集成奇偶发生器/校验器,表3-27是74180的功能表。,SOD=1,SE=0,监督码引自WOD。,SOD=0 SE=1监督码引自WE。,、中规模集成奇偶发生器/校验器,图3-47是一个八位奇校验系统。,SOD=1,SE=0,监督码引自WOD。A-H是偶数,WOD=1,否则WOD=0。,如果WOD=1,SOD=1,SE=0,WOD2=1,正确。,如果WOD=0,SOD=0,SE=1,WOD2=1,正确。否则WOD2=0,错误。,