第8讲 常用组合逻辑功能器件_第1页
第8讲 常用组合逻辑功能器件_第2页
第8讲 常用组合逻辑功能器件_第3页
第8讲 常用组合逻辑功能器件_第4页
第8讲 常用组合逻辑功能器件_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数字电子技术根底第8讲主讲孙霞安徽理工大学电气工程系第四章常用组合逻辑功能器件4.1集成全加器4.2编码器4.3译码器4.4数据分配器与数据选择器4.5数字比较器4.1集成全加器全加器(Fulladder)除了可用作二进制数的加法运算外,还可应用在其它方面。例如,二进制数的减法运算、乘法运算,BCD码的加法、减法,码组变换,数码比较,奇偶检验以及一些组合电路的设计等方面。集成全加器就是一块芯片上含有多个独立的全加器。常用的有双全加器、四位全加器等。双全加器国产型号有很多,例如,TTL型的CT54LS183,CMOS型的CC661等等。CT54LS183的外部引脚排列如下图。芯片中的两个全加器可以单独使用,也可以组成2位串行进位加法器。2位串行进位加法器的接线如下图。图4.1.1双全加器的CT54LS183引脚图图4.1.22位串行进位加法器4.1.1多位二进制数加法器如果要进行多位数相加,例如,有两个4位二进制数A3A2A1A0和B3B2B1B0相加,可以利用两片双全加器或一片4位全加器组成4位串行进位加法器,其原理图如下图。图中,每一位的进位输出CO可作为高一位的进位输入CI,令C-1=0,就可以实现4位二进制数的加法运算。图4.1.34位串行进位加法器所谓“串行进位〞就是任一位的加法运算,它必须在低一位的加法运算完成之后才能进行。这种方式的优点是电路简单,缺点是速度较慢。如果要提高运算速度,可以采用“超前进位〞加法器。在此加法器中,每一位的进位只由被加数和加数决定,而与低位的进位无关,即各级的进位可以同时产生,故速度提高了。有关超前进位的电路结构,请读者参阅其他教材。超前进位加法器广泛应用于高速数字计算机、数据处理系统和控制系统。4.1.2多位二进制数减法器为简化系统结构,在机器中一般不另外设置减法器,而是利用“加补码〞的方法,使加法器实现减法运算。下面先介绍一下此方法的原理,在此根底上再用全加器组成减法器。

1.原码、反码和补码我们这里的讨论只限于数值码(即不包括符号位)。前面论述的自然二进制码称为原码,二进制正数的原码、反码和补码都相同;二进制负数的反码就是将原码中的各位取反,补码就是反码加1。2.由加补码完成减法运算我们知道减去某个数,等于加上这个负数。例如:A-B=A+(-B)。而二进制负数在机器中有三种表示方法:原码、反码和补码。当二进制负数采用补码形式时(在有限位数的条件下),就可以将减法运算转为加法运算,即A-B=A+(-B)A+B*,式中B*为(-B)的补码。下面通过几个求补码的例子来帮助理解“减某数〞就等于“加某数的补码〞。例求12的补码。假设某时钟停在10点,现要校准到6点,可以有两种拨法:一种是倒拨:10点-4点=6点另一种是顺拨:10点+8点=6点这两种拨法的结果是相同的,这是因为对时钟来说,加12等于不加,即x+12=x,故10点+8点=6点+12点=6点(12自然消失)。在时钟的数字系统中,12是最大的数,称为“模〞(mod)。(-4)与(+8)对模12互为补数,或称(-4)的12的补码是12+(-4)+8。其它如(-5)与(+7),(-6)与(+6)等等都是对模12互为补数。互补的两数符号相异(即一正、一负)。当我们将(-4)的补码(+8)求出后,就可以变10-4为10+8了。上面讨论的是被减数大于减数的情况。当被减数小于减数时,得到的是和数的补码,然后再求补就是结果。例如,要将时钟从6点校准到10点,那么有:①顺拨:6+4=10。②倒拨:6-8=-2,然后再求出(-2)的补码(+10)就是结果了。例4.1.2求10的补码。假设A、B两地相距1000km,设A处路标(起点)为0,B处路标(终点)为1000。现要计算从A向B前进5km后又退回2km处的路标。解:有两种计算方法:①做减法5-2=3②做加法(加补码)在此3位十进制数字系统中,1000是最大的数,称为模。我们先求出(-2)的10的补码为103+(-2)1000-2=+998自然丧失5+9981003然后做加法(这里最大的数1000自然丧失。)这两种计算方法的结果是相同的。现引申到一般的3位十进制数字系统中,变减法为加法的条件是在≤10+3的有限位数内。例如,A=876,B=536,求A-B=?解:①做减法876-536=340

②做加法(加补码)先求出(-536)的10的补码为103+(-536)1000-536=+464然后做加法876+4641340自然丧失可见这两种计算方法的结果相同。由此可推广到n位十进制数字系统中,变减法为加法的条件是在≤10n的有限位数内,求(-x)的10的补码的一般式为10n+(-x)=10n-x式中,n为此数字系统中的最大位数-1。同样,当A<B时,得到的是和数的补码,需再求一次补就是结果,请读者自行分析。例4.1.3求2的补码。(以后凡对2的补码都可简称为补码。)同理,对于n位二进制数字系统,变减法为加法的条件是在≤2+n的有限位数内,求(-x)的补码的一般式为2n+(-x)2n-x式中,n为此数字系统中的最大位数-1。例如,在4位二进制数字系统中(条件是在≤24的有限位数内),A=1000,B=0100,求A-B=?解:①做减法-②做加法(加补码)在此4位二进制数字系统中最大的数是:称为模。先求出(-0100)的补码为:-然后做加法-自然丧失(这里最大的数10000自然丧失,即8+12=16+4=4,16自然丧失。)可见,结果相同。不难分析,当A≥B时,得到的和数是原码,当A<B时,得到的是和数的补码。上面虽然介绍了用加补码来做减法,但实际上在例和例中,并没有真正解决减法问题,这是因为在求补码的过程中仍然在做减法。然而,2的补码却完全不同,它可以防止求补码过程中的减法。因为对二进制而言,(-x)的补码除了可以由模2n-x得到之外,还可以很方便地通过另一个途径:“将原码中的各位取反,再加1〞来得到。3.用全加器构成减法器如果要进行多位数相减,例如,有两个4位二进制数A3A2A1A0和B3B2B1B0相减,可以将减数B经过非门(求反)后再输入,并使最低位的进位输入端C-1=1,以实现加1,由此求得B的补码。其逻辑图如下图。当A≥B时,C3=1,这时输出的和数为原码。当A<B时,C3=0,输出为和数的补码。图4.1.44位二进制减法器4.1.3二—十进制(BCD码)加法器BCD码加法器能满足机器直接采用十进制运算,并以十进制形式输出运算结果的需要。

下面介绍用4位全加器构成的一位8421BCD码加法器。例如,有两个8421码A3A2A1A0和B3B2B1B0相加。由于4位二进制数相加是逢十六进一,而8421码相加是逢十进一,故用4位全加器构成8421码加法器时,必须解决一个“如何使逢十六进一变成逢十进一〞的问题,也即当加法器的和数Si超过9时,应使Si加6,强迫加法器进位,以此到达逢十进一的目的。为此要设计一个“过9加6〞的校正电路。Si超过9的情况有两种:①和数S3S2S1S0在1010~1111(10~15)的范围内时:最小项m10~m15为1,用卡诺图化简可得逻辑表达式为F′=S3S2S3S1,如下图。②和数S3S2S1S0≥10000(16)时:全加器的最高位C3=1,产生进位。故可得满足加法器进位条件的逻辑表达式为F=S3S2+S3S1+C3

当用与非门实现时:在图中,A与B并行输入到第一个4位全加器中,进行A+B的运算:

①当A+B的和数S3S2S1S0<1001(即<9)时:过9加6电路输出F为0,使B’3B’2B’1B’0=0000。再将A’i=Si与B’i=0并行输入到第二个4位全加器中,进行Si+0的运算,最后输出为S’i=Si。

图4.1.5Si过9化简00011110S1S0S3S200011111111110S3

S2S3

S1图4.1.6一位8421码加法器②当A+B的和数S3S2S1S0≥1010(即≥10)时:过9加6电路输出F为1,使B’3B’2B’1B’0=0110。再将A’i=Si与B’i=6并行输入到第二个4位全加器中,进行Si加6的运算,强迫加法器输出S’3S’2S’1S’0=0000,并由F端向高位发出进位信号1。可见,该电路能实现8421码加法运算。4.5编码器4.2.1编码器(Encoder)在1.2节中已介绍过编码就是把假设干个0和1按一定的规律编排在一起,编成不同的“代码〞,并赋予每个代码以固定的含意。本节将介绍能实现编码功能的编码器。我们已经知道,一位二进制代码可以表示两个信号,n位二进制代码可以表示2n个不同的信号。故对于N个输入信号的编码,可由2n≥N来确定输出二进制编码的位数n。当N=2n时,称为“全编码〞;当N<2n时,称为“局部编码〞。1.二进制编码器将一般的信号编成二进制代码的电路称为二进制编码器。例要求把0、1、…、7这8个十进制数编成二进制代码。第一步,确定二进制代码的位数n。因为23=8,故取n=3,即这是一个3位二进制编码器,有8个输入端,3个输出端。第二步,列编码器真值表(简称编码表)。假设8个输入端分别用拨码盘开关S7,S6,...,S0来控制,代表7~0这8个数;3个输出端用A、B、C来表示,那么可列出这8个数与代码之间对应关系的编码表,如表所示。表4.2.1二进制编码表第三步,由编码表列出该二进制编码器每一位的逻辑表达式。A=S4+S5+S6+S7B=S2S3+S6+S7C=S1+S3+S5+S7第四步,化简逻辑式,画逻辑图。因为A、B、C已经是最简与或式了,所以可直接画逻辑图,如下图。图中,当拨码盘开关置于某个位置时,就相当于输入某个数,这时就会有一组对应的二进制代码输出。例如,当开关接通S5时,那么S5=1,其余的开关位置均为0,对应的编码输出为ABC=101。图4.2.13位二进制编码器2.二—十进制编码器将十进制数0、1、…、9编成二—十进制代码的电路,称为二—十进制编码器。因为是对10个数字进行编码,又因为24=16>10,取n=4,故编码器应有10个输入端,4个输出端。二—十进制编码的方案很多,下面介绍键控8421BCD码编码器。假设该编码器的10个输入端分别用按键开关S9~S0来控制,代表9~0这10个数;4个输出端用A、B、C、D来表示,由节知道,8421码是选用4位二进制数的前10个码组0000~1001来代表十进制的0~9这10个数码的,故可列出编码表如表所示。表4.2.28421BCD码编码表由编码表可得表达式为A=S9+S8B=S7+S6+S5+S4C=S7+S6+S3+S2D=S9+S7+S5+S3+S1其逻辑图如下图。编码器的工作原理同上,不再赘述。3.集成优先编码器集成优先编码器广泛应用于计算机的优先级中断控制电路,各种优先报警电路、键盘编码等。在许多数字系统、特别是计算机系统中,都含有键盘输入局部,要求按一个键就产生一个与该键相对应的编码。上述键控8421BCD码编码器虽然电路简单,但当同时按下两个以上的键时,即发生“重键现象〞时,输出就会出错。而在实际应用中,往往要求一个主机能控制几个部件按次序地进行工作。例如,要求微机的主机能控制打印机、磁盘驱动器、输入键盘等,并允许几个工作部件能同时向主机输入信号(即发出效劳请求),而主机在同一时刻内只能对其中的一个输入信号作出效劳响应。为此,要按轻重缓急,排出允许操作的先后次序,即按优先级别来控制好这些操作对象,故提出了优先编码器。优先编码器的功能是允许几个输入信号同时输入,而编码器只对事先排定的优先顺序中优先权最高的一个输入信号进行编码,并输出对应的编码。下面介绍中规模集成优先编码器。本章介绍的中规模集成组合逻辑组件,均不具体讨论其内部的电路结构,而只通过分析集成芯片的真值表来了解、掌握它的逻辑功能,到达灵活运用的目的。国产集成优先编码器有两大类,一类是10线—4线编码器,例如CT54LS147、CC40147等等。另一类是8线—3线编码器,例如CT54LS148等等。下面以CT54LS148为例来介绍优先编码器的逻辑功能。图4.2.38/3线优先编码器CT54LS148逻辑图图4.2.48/3线优先编码器CT54LS148引脚图表4.2.3CT54LS148优先编码器真值表由逻辑图及真值表可知,该器件有8个输入端,分别用来表示0~7这8个数;3个输出端。此外,电路还设置了使能输入端、使能输出端EO和优先扩展输出端

。另外,通过对真值表的分析还可知:①输入为低电平有效。上面的非号表示低电平有效,即有输入时。②按“高位优先〞的原那么进行编码。中优先权最高的是,最低的是。当某位输入为0时,如果比此位优先权高的各位都为1(即都无输入),那么此位就上升为优先权最高位,这时电路仅对此位进行编码。具体为:当时,那么无论是1或0,电路都只对进行编码。③输出低电平有效(即有输出时),且对应于优先权最高的输入可进行“取反〞输出。④端称为“使能输入端〞(Enable)、或“选通输入端〞、或“输入控制端〞。端的低电平有效。⑤EO端称为“使能输出端〞、或“选通输出端〞、或“选通端〞,它受端的控制。当禁止编码时,EO=1,表示此时无编码输出。当允许编码时:假设EO=1,那么表示有编码输入。假设EO=0,那么表示无编码输入。利用EO端的功能,将高位芯片的EO端接低位芯片的端,可以实现多片CT54LS148的串联使用(见下例)。⑥端称为“优先扩展输出端〞。其特点是:当时,与EO相反;当

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论