1、第4章 组合逻辑电路 第第4章章 组合逻辑电路组合逻辑电路 4.1 组合逻辑电路的分析组合逻辑电路的分析 4.2 组合逻辑电路的设计组合逻辑电路的设计 4.3 常用中规模组合逻辑器件及应用常用中规模组合逻辑器件及应用 4.4 组合逻辑电路中的竞争与冒险组合逻辑电路中的竞争与冒险 第4章 组合逻辑电路 4.1 组合逻辑电路的分析组合逻辑电路的分析 所谓逻辑电路的分析,就是找出给定逻辑电路输出和输入之间的逻辑关系,并指出电路的逻辑功能。分析过程一般按下列步骤进行:(1)根据给定的逻辑电路,从输入端开始,逐级推导出输出端的逻辑函数表达式。(2)根据输出函数表达式列出真值表。(3)用文字概括出电路的逻
2、辑功能。第4章 组合逻辑电路 【例4.1.1】分析图4.1.1所示组合逻辑电路的逻辑功能。解解:根据给出的逻辑图,逐级推导出输出端的逻辑函数表达式:ACBCABACBCABPPPFACPBCPABP321321,第4章 组合逻辑电路 图4.1.1例4.1.1的逻辑电路 第4章 组合逻辑电路 表表4.1.1例例4.1.1的真值表的真值表 A B CF0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 100010111 由真值表可以看出,在三个输入变量中,只要有两个或两个以上的输入变量为1,则输出函数F为1,否则为0,它表示了一种“少数服从多数”的逻辑关系。因此可以将该
3、电路概括为:三变量多数表决器。第4章 组合逻辑电路【例4-2】分析图4-3(a)所示电路,指出该电路的逻辑功能。图4.1.2例4.1.2电路 第4章 组合逻辑电路 解解(1)写出函数表达式。iiiiiiiiiiBACBACCBAS)(1(2)列真值表。Ai Bi CiCi+1 Si0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 10 00 10 11 00 11 01 01 1表表4.1.2例例4.1.2的真值表的真值表 第4章 组合逻辑电路 (3)分析功能。由真值表可见,当三个输入变量Ai、Bi、Ci中有一个为1或三个同时为1时,输出Si=1,而当三个变量中有两
4、个或两个以上同时为1时,输出Ci+1=1,它正好实现了Ai、Bi、Ci三个一位二进制数的加法运算功能,这种电路称为一位全加器。其中,Ai、Bi分别为两个一位二进制数相加的被加数、加数,Ci为低位向本位的进位,Si为本位和,Ci+1是本位向高位的进位。一位全加器的符号如图4.1.2(b)所示。如果不考虑低位来的进位,即Ci=0,则这样的电路称为半加器,其真值表和逻辑电路分别如表4.1.3和图4.1.3所示。第4章 组合逻辑电路 表4.1.3 半加器真值表 Ai BiCi+1 Si0 00 11 01 10 00 10 11 0图4.1.3 半加器 第4章 组合逻辑电路 4.2 组合逻辑电路的设计
5、组合逻辑电路的设计 工程上的最佳设计,通常需要用多个指标去衡量,主要考虑的问题有以下几个方面:(1)所用的逻辑器件数目最少,器件的种类最少,且器件之间的连线最简单。这样的电路称“最小化”电路。(2)满足速度要求,应使级数尽量少,以减少门电路的延迟。(3)功耗小,工作稳定可靠。第4章 组合逻辑电路 上述“最佳化”是从满足工程实际需要提出的。显然,“最小化”电路不一定是“最佳化”电路,必须从经济指标和速度、功耗等多个指标综合考虑,才能设计出最佳电路。组合逻辑电路可以采用小规模集成电路实现,也可以采用中规模集成电路器件或存储器、可编程逻辑器件来实现。虽然采用中、大规模集成电路设计时,其最佳含义及设计
6、方法都有所不同,但采用传统的设计方法仍是数字电路设计的基础。因此下面先介绍采用设计的实例。第4章 组合逻辑电路 组合逻辑电路的设计一般可按以下步骤进行:逻辑抽象。将文字描述的逻辑命题转换成真值表叫逻辑抽象,首先要分析逻辑命题,确定输入、输出变量;然后用二值逻辑的0、1两种状态分别对输入、输出变量进行逻辑赋值,即确定0、1 的具体含义;最后根据输出与输入之间的逻辑关系列出真值表。选择器件类型。根据命题的要求和器件的功能及其资源情况决定采用哪种器件。例如,当选用MSI组合逻辑器件设计电路时,对于多输出函数来说,通常选用译码器实现电路较方便,而对单输出函数来说,则选用数据选择器实现电路较方便。根据真
7、值表和选用逻辑器件的类型,写出相应的逻辑函数表达式。当采用SSI集成门设计时,为了获得最简单的设计结果,应将逻辑函数表达式化简,并变换为与门电路相对应的最简式。根据逻辑函数表达式及选用的逻辑器件画出逻辑电路图。第4章 组合逻辑电路 【例4.2.1】设计一个一位全减器。解:(1)列真值表。全减器有三个输入变量:被减数An、减数Bn、低位向本位的借位n;有两个输出变量:本位差Dn、本位向高位的借位C n+1,其框图如图4.2.1(a)所示。表4.2.1 全减器真值表 An Bn CnCn+1 Dn0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 10 01 11 11
8、00 10 00 0 1 1第4章 组合逻辑电路 图4.2.1 全减器框图及卡诺图 第4章 组合逻辑电路 (2)选器件。选用非门、异或门、与或非门三种器件。(3)写逻辑函数式。首先画出Cn+1和Dn的卡诺图,如图4.2.1(b)所示,然后根据选用的SSI器件将Cn+1、Dn分别化简为相应的函数式。由于该电路有两个输出函数,因此化简时应从整体出发,尽量利用公共项使整个电路门数最少,而不是将每个输出函数化为最简。第4章 组合逻辑电路 1()()nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnDA B CA B CA B CA B CABCCA B CA B CB CABCB
9、CABCB C第4章 组合逻辑电路 (4)画出逻辑电路。根据以上表达式画出的逻辑电路如图4.2.2所示。本例也可以采用其他SSI集成门实现,读者可以自行分析。图4.2.2全减器的逻辑图 第4章 组合逻辑电路【例【例4.2.2】用门电路设计一个将8421BCD码转换为余3码的变换电路。解解:(1)分析题意,列真值表。该电路输入为8421BCD码,输出为余3码,因此它是一个四输入、四输出的码制变换电路,其框图如图4.2.3(a)所示。根据两种BCD码的编码关系,列出真值表,如表4.2.2所示。由于8421BCD码不会出现10101111这六种状态,因此把它视为无关项。第4章 组合逻辑电路 图4.2
10、.3例4.2.2的电路框图及卡诺图 第4章 组合逻辑电路 A B C DE3 E2 E1 E00 0 0 00 0 0 10 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 11 0 1 01 0 1 11 1 0 01 1 0 11 1 1 01 1 1 10 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 11 0 1 01 0 1 11 1 0 0 表表4.2.2 例例4.2.2的真值表的真值表第4章 组合逻辑电路 (2)选择器件,写出输出函数表达式。题目没有具体指定用哪一种门电路,因此
11、可以从门电路的数量、种类、速度等方面综合折衷考虑,选择最佳方案。该电路的化简过程如图4-7(b)所示,首先得出最简与或式,然后进行函数式变换。变换时一方面应尽量利用公共项以减少门的数量,另一方面减少门的级数,以减少传输延迟时间,因而得到输出函数式为 DEDCDCCDDCEDCBDCBDCBDBCBDCBEBDBCABDBCAE0123)()()(第4章 组合逻辑电路 画逻辑电路。该电路采用了三种门电路,速度较快,逻辑图如图4.2.4所示。第4章 组合逻辑电路 图 4.2.4 8421 BCD码转换为余3码的电路 第4章 组合逻辑电路 4.3 常用常用MSI组合逻辑器件及应用组合逻辑器件及应用
12、4.3.1 编码器编码器 将数字、文字、符号或特定含义的信息用二进制代码表示的过程称为编码。能够实现编码功能的电路称为编码器(Encoder)。图4.3.1是编码器的原理框图,它有m个输入信号、n位二进制代码输出。m和n之间的关系为m2n。当m=2n时,称为二进制编码器。m=10,n=4时称为二-十进制(BCD)编码器。常用的编码器有普通编码器和优先编码器两类。普通编码器的特点是:任何时刻只允许输入一个有效信号,不允许出现多个输入同时有效的情况,否则编码器将产生错误的输出。优先编码器则在一定条件下允许多个输入同时有效,它能够根据事先安排好的优先顺序只对优先级别最高的有效输入信号进行编码。第4章
13、 组合逻辑电路 图4.3.1编码器的原理框图 第4章 组合逻辑电路 1.二进制优先编码器二进制优先编码器常用中规模优先编码器有74LS148(8线-3线优先编码器)、74LS147(10线-4线BCD优先编码器)。74LS148是一种带扩展功能的二进制优先编码器,其逻辑电路和逻辑符号如图4.3.2所示。在逻辑符号中,小圆圈表示低电平有效。第4章 组合逻辑电路 图4.3.2优先编码器74LS148 第4章 组合逻辑电路 表表4.3.174LS148的功能表的功能表 输入 输出 S1000000000 1 1 1 1 1 1 1 10 1 0 1 1 0 1 1 1 0 1 1 1 1 0 1 1
14、 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 11 1 10 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1 1 1 1 00 10 10 10 10 10 10 10 101234567IIIIIIII210Y Y YEXSYY第4章 组合逻辑电路 2.二二-十进制优先编码器十进制优先编码器二-十进制优先编码器也称BCD优先编码器。74LS147BCD优先编码器的逻辑符号如图4.3.3所示,功能表如表4.3.2所示。它有9个输入端 和4个输出端 (反码),均为低电平有效。应注意,74LS147没有I0输入,实际上当 均无效
15、时,输出 为1111,其反码为0000,即为BCD码的0输出,因此表中的第1行默认为I0输入。74LS147的输入、输出均为低电平有效,因此给每个输出端加一个反相器,即可将反码输出的BCD码转换为正常的BCD码。91 II30YY91 II30YY第4章 组合逻辑电路 图4.3.374LS147的逻辑符号第4章 组合逻辑电路 表表4.3.274LS147的功能表的功能表 1 1 1 1 1 1 1 1 1 0 0 1 0 1 1 0 1 1 1 0 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
16、 11 1 1 00 0 0 1 0 0 1 00 1 0 10 1 1 01 0 0 11 0 1 01 1 0 11 1 1 0123456789IIIIIIIII3210Y Y Y Y第4章 组合逻辑电路 4.3.2译码器译码器译码是编码的逆过程,译码器(Decoder)的逻辑功能是将输入二进制代码的原意“译成”相应的状态信息。译码器有两种类型:一类是变量译码器,也称唯一地址译码器,常用于计算机中将一个地址代码转换成一个有效信号;另一类是显示译码器,主要用于驱动数码管显示数字或字符。下面首先介绍变量译码器。变量译码器的原理框图如图4.3.4所示,它有n个输入端、m个译码输出端,m2n。译
17、码器工作时,对于n变量的每一组输入代码,m个输出中仅有一个为有效电平,其余输出均为无效电平。第4章 组合逻辑电路 图4.3.4变量译码器的原理框图 第4章 组合逻辑电路 1.二进制译码器二进制译码器二进制译码器有n位输入、2n位输出。常用的中规模集成芯片有74LS139(双2线-4线译码器)、74LS138(3线-8线译码器)、74LS154(4线-16线译码器)等。1)译码器的功能描述(1)2-4译码器。图4.3.5为2-4译码器的逻辑电路及逻辑符号,其功能表如表4.3.5所示。第4章 组合逻辑电路 图4.3.52-4译码器的逻辑电路与逻辑符号 第4章 组合逻辑电路 表表4.3.32-4译码
18、器的功能表译码器的功能表 E A1 A010000 0 1101 01 11 1 1 10 1 1 11 0 1 1 1 1 0 11 1 1 00123YYYY第4章 组合逻辑电路 从表4.3.3可以看出,当E=0时,24译码器的输出函数分别为:如果用 表示i端的输出,mi表示输入地址变量A1、A0的一个最小项,则输出函数可写成,013012011010AAYAAYAAYAAYiY(0,1,2,3)iiYm i可见,译码器的每一个输出函数对应输入变量的一组取值,当使能端有效(E=0)时,它正好是输入变量最小项的非。因此变量译码器也称为最小项发生器。第4章 组合逻辑电路 图4.3.63-8译码
19、器74LS138 第4章 组合逻辑电路 表 4.3.3 24译码器功能表 第4章 组合逻辑电路 (2)3-8译码器。3-8译码器有3位输入、8位输出。图4.3.6为74LS138的逻辑电路及逻辑符号。第4章 组合逻辑电路 表4.3.43-8译码器74LS138的功能表 第4章 组合逻辑电路 如果用 表示i端的输出,则输出函数为 iYBABAiiEEEEEEEiEmY221221)70(可见,当使能端有效(E=1)时,每个输出函数也正好等于输入变量最小项的非。第4章 组合逻辑电路 2)译码器的扩展利用译码器的使能端可以实现功能扩展。图4.3.7是采用2片3-8译码器74LS138构成4-16译码
20、器的逻辑图。第4章 组合逻辑电路 图4.3.7采用2片3-8译码器扩展成4-16译码器 第4章 组合逻辑电路 3)译码器的应用二进制译码器的应用很广,典型的应用有以下几种:(1)实现逻辑函数;(2)实现存储系统的地址译码;(3)带使能端的译码器可用作数据分配器或脉冲分配器。第4章 组合逻辑电路【例4.3.1】试用38译码器实现函数:)7,6,5,4,3,2,1()7,4,0(21mFmF 解:解:因 为 当 译 码 器 的 使 能 端 有 效 时,每 个 输出 ,因此只要将函数的输入变量加至译码器的地址输入端,并在输出端辅以少量的门电路,便可以实现逻辑函数。本题F1、F2均为三变量函数,首先令
21、函数的输入变量ABC=A2A1A0,然后将F1、F2变换为译码器输出的形式:iiiMmY第4章 组合逻辑电路 104704704721235670404FmmmmmmYYYFmmmmmmMMY Y实现F1、F2的逻辑电路如图4.3.8所示。F2变换为最大项相与的形式主要是为了减少3-8译码器的输出连线。第4章 组合逻辑电路 图4.3.8例4.3.1的逻辑电路 第4章 组合逻辑电路【例【例4.3.2】试用一片3-8译码器74LS138和少量门电路设计一个多地址译码电路。该译码电路有8根地址输入线A7A0,要求当地址码为C0HC7H时,译码器的输出Y0Y7分别被译中,且低电平有效。解:解:根据题意
22、列出多地址译码电路的输入、输出对应关系,如表4.3.5所示。第4章 组合逻辑电路 表表4.3.5例例4.3.2电路的输入、输出关系表电路的输入、输出关系表 A7 A6 A5 A4 A3 A2 A1 A0C0HC1HC2HC3HC4HC5HC6HC7H 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1 0 0 0 0 1 0 1 1 0 0 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 0 0 1 0 1 1 1 0 0 0 1 1 0 1 1 0 0 0 1 1 10 1 1 1 1 1 1 110 1 1 1 1 1 11 1 0 1 1 1 1 111
23、1 0 1 1 1 11 1 1 1 0 1 1 11 1 1 1 1 0 1 111 1 1 1 1 0 1 1 1 1 1 1 1 1 001234567YYYYYYYY第4章 组合逻辑电路 图4.3.9例4.3.2的电路图 第4章 组合逻辑电路 2.二二-十进制译码器十进制译码器二-十进制译码器也称BCD译码器,它的功能是将输入的一位BCD码(四位二进制代码)译成10个高、低电平输出信号,因此也叫4-10译码器。二-十进制译码器74LS42的逻辑符号如图4.3.10所示,其功能表如表4.3.6所示。第4章 组合逻辑电路 图4.3.10二-十进制译码器74LS42的逻辑符号 第4章 组合逻
24、辑电路 表表4.3.6二二-十进制译码器十进制译码器74LS42的功能表的功能表 第4章 组合逻辑电路 3.显示译码器显示译码器在数字系统中,经常需要将二进制代码表示的数字或字符等信息直观地显示出来,因此要用到数码显示器和显示译码器等逻辑部件。数码显示器是用来显示数字、文字或符号的器件,也称数码管;显示译码器是用来驱动数码管显示数字或字符的组合逻辑部件。下面分别加以介绍。第4章 组合逻辑电路 1)七段显示数码管数码显示器有多种,按显示方式可分为分段式、点阵式和重叠式;按发光材料可分为辉光显示器、荧光显示器、发光二极管显示器和液晶显示器等。目前普遍使用的七段式数字显示器主要有发光二极管和液晶显示
25、器两种。这里主要介绍七段发光二极管组成的数码管原理。第4章 组合逻辑电路 发光二极管(LED)由特殊的半导体材料砷化镓、磷砷化镓等制成,它可以单独使用,也可以组成分段式或点阵式LED显示器件。七段LED数码管(以下简称数码管)由7个发光二极管组成字型,外加正向电压时二极管导通,并发出一定波长的光,因而只要按照一定规律控制各发光段的亮、灭,就可以显示各种数字和符号。第4章 组合逻辑电路 数码管按照其发光二极管的连接方式不同,可分为共阳极和共阴极两种。共阴极是指数码管中所有发光二极管的阴极连在一起接低电平,而阳极分别由a、b、c、d、e、f、g输入信号驱动,当某个输入为高电平时,相应的发光二极管点
26、亮;共阳极数码管则相反,它的所有发光二极管的阳极连在一起接高电平,而阴极分别由a、b、c、d、e、f、g输入信号驱动,当某个输入为低电平时,相应的发光二极管点亮。共阳极数码管BS201B和共阴极数码管BS201A的逻辑符号及引脚图如图4.3.11所示。图中,dp为小数点,也是一个发光二极管,但一般显示译码器没有驱动输出,使用时需另加驱动。第4章 组合逻辑电路 图4.3.11BS201两种数码管的符号 第4章 组合逻辑电路 2)显示译码器显示译码器的输入是一位8421BCD码,输出是数码显示管各段的驱动信号,用a、b、c、d、e、f、g表示。由于数码管有共阴、共阳之分,因此常用的显示译码器也分两
27、类:一类译码器的输出为低电平有效,如74LS46、74LS47等,可驱动共阳极数码管;另一类译码器的输出为高电平有效,如74LS48、74LS49等,可驱动共阴极数码管。七段显示译码器74LS47的逻辑符号如图4.3.12所示,功能表如表4.3.7所示。其中,D3、D2、D1、D0为8421BCD码输入;为译码器的输出;LT为试灯输入;RBI(RippleBlankingInput)为纹波熄灭输入,也称纹波灭零输入;BI/RBO为熄灭输入/纹波灭零输出,它是输入/输出的公共端口。g、f、e、d、c、b、a第4章 组合逻辑电路 图4.3.12七段显示译码器 第4章 组合逻辑电路 输入 输 出 功
28、能及显示字符 LTRBID3 D2 D1 D00111111111110 1 0000 000000010010001101000101011001111000100110011111111110000000111111111111110000001100111100100100000110100110001001001100000000111100000000001100试灯输入纹波灭零输入熄灭输入0123456789表表4.3.774LS47的功能表的功能表 RBO/BI第4章 组合逻辑电路 图4.3.13具有灭0控制功能的数码显示系统 第4章 组合逻辑电路 4.3.3 数据选择器数据选择
29、器 数据选择器又称多路选择器(Multiplexer,简称MUX),其框图如图4-18(a)所示。它有2n位地址输入、2n位数据输入、1位输出。每次在地址输入的控制下,从多路输入数据中选择一路输出,其功能类似于一个单刀多掷开关,见图4-18(b)。第4章 组合逻辑电路 图 4.3.14 数据选择器第4章 组合逻辑电路 1.数据选择器的功能描述数据选择器的功能描述常用的集成数据选择器有74LS157(四2选1)、74LS153(双4选1)、74LS151(8选1)、74LS150(16选1)等。图4.3.15是4选1数据选择器的逻辑图及符号。图中,D0D3是数据输入端,也称为数据通道;A1、A0
30、是地址输入端,或称选择输入端;Y是输出端;A1、A0是使能端,低电平有效。当A=1时,输出Y=0,即无效;当E=0时,在地址输入A1、A0的控制下从D0D3中选择一路输出。4选1数据选择器的功能表见表4.3.8。第4章 组合逻辑电路 EA1 A0Y10000 0 00 11 01 10D0D1D2D3表4.3.84选1数据选择器的功能表 第4章 组合逻辑电路 图4.3.154选1数据选择器 第4章 组合逻辑电路 当E=0时,4选1 MUX的逻辑功能还可以用以下表达式表示:iiiDmDAADAADAADAAY30301201101001 式中,mi是地址变量A1、A0所对应的最小项,称地址最小项
31、。式(4-13)还可以用矩阵形式表示为 TmDDDDAADDDDAAAAAAAAY)()()(321001321001010101第4章 组合逻辑电路 式中(A1A0)m是由最小项组成的行阵,(D0D1D2D3)T是由D0、D1、D2、D3组成的列阵的转置。图4.3.16为8选1 MUX的逻辑符号,其功能表如表4.3.9所示,输出表达式为 TmiiiDDDDDDDDAAADmY)()(7654321001270第4章 组合逻辑电路 图 4.3.16 8选1MUX逻辑符号 第4章 组合逻辑电路 表表 4.3.9 8选选1 MUX功能表功能表 EA2 A1 A0Y100000000 0 0 00
32、0 10 1 00 1 11 0 01 0 11 1 01 1 10D0D1D2D3D4D5D6D7第4章 组合逻辑电路 2.数据选择器的扩展数据选择器的扩展当所采用的实际MUX器件的通道数少于所需传输的数据通道时,必须扩展MUX的通道数。通常可以利用使能端进行扩展。图4.3.17是将一片双4选1MUX扩展为8选1MUX的逻辑图。图中,A2是8选1MUX地址端的最高位,A0是最低位。还可以利用译码器选通各片MUX的使能端,控制各片轮流工作,读者可以自行分析。第4章 组合逻辑电路 图4.3.17用双4选1MUX构成8选1MUX 第4章 组合逻辑电路 3.数据选择器的应用数据选择器的应用数据选择器
33、的应用很广,典型应用有以下几个方面:作数据选择,以实现多路信号分时传送。实现组合逻辑函数。在数据传输时实现并串转换。产生序列信号。对于n个地址输入的MUX,其表达式为 210niiiYm D第4章 组合逻辑电路 其中mi是由地址变量An-1、A1、A0组成的地址最小项。Di为MUX的数据输入,称为mi的系数。当Di=1时,其对应的最小项mi在表达式中出现;当Di=0时,mi不出现。由于任何一个逻辑函数都可以写成最小项表达式,MUX的输出表达式与其相似,所以可以利用MUX实现组合逻辑函数。第4章 组合逻辑电路 【例4.3.3】试用8选1MUX实现逻辑函数F(A,B,C)=AB+AB+C。解:首先
34、写出F的最小项表达式。将F填入卡诺图,如图4.3.18所示。根据卡诺图可得:123457Fmmmmmm确定8选1MUX的地址输入,将A2、A1、A0分别接A、B、C且令D1=D2=D3=D4=D5=D7=1,D0=D6=0,则有 71234570iiiYm Dmmmmmm故F=Y,用8选1MUX实现逻辑函数的逻辑电路如图4.3.19所示。第4章 组合逻辑电路 图4.3.18例4.3.3的卡诺图 第4章 组合逻辑电路 图4.3.19例4.3.3的逻辑电路 第4章 组合逻辑电路【例4.3.4】试用4选1MUX实现三变量函数:(,)F A B CABCABCABCABC 解:解:(1)确定4选1MU
35、X的地址输入,将A1、A0分别接A、B,则F可写成 0012012Fm Cm CmCm CmmCm C第4章 组合逻辑电路(2)确定4选1MUX的数据输入。因Y=m0D0+m1D1+m2D2+m3D3,若使F=Y,则有D0=1,D1=C,D2=C,D3=0。因此F的表达式可写成 TmTmCCABDDDDAAYF)0,1()()()(321001第4章 组合逻辑电路(3)画出用4选1MUX实现F的逻辑电路,如图4.3.20所示。本题也可以采用卡诺图进行逻辑对照,求出MUX的数据输入,其过程如图4.3.21所示。首先画出F的三变量卡诺图,如图4.3.21(a)所示,选定MUX的地址输入A1、A0分
36、别接A、B后,在图(a)F的卡诺图中求出在A、B变量的各组取值下F与C变量的关系,从而得到图(b)F的卡诺图,将图(b)F的卡诺图与图(c)4选1MUX的卡诺图对照,便可求得MUX的数据输入D0=1,D1=C,D2=C,D3=0,其结果与代数法相同。第4章 组合逻辑电路 图4.3.20 例4.3.4的逻辑电路第4章 组合逻辑电路 图4.3.21例4.3.4的卡诺图对照法 第4章 组合逻辑电路 首先画出F的三变量卡诺图,如图4.3.21(a)所示,选定MUX的地址输入A1、A0分别接A、B后,在图(a)F的卡诺图中求出在A、B变量的各组取值下F与C变量的关系,从而得到图(b)F的卡诺图,将图(b
37、)F的卡诺图与图(c)4选1MUX的卡诺图对照,便可求得MUX的数据输入D0=1,D1=C,D2=C,D3=0,其结果与代数法相同。第4章 组合逻辑电路 2)实现并行数据到串行数据的转换用8选1MUX构成的并/串行转换电路如图4.3.22(a)所示,当8选1MUX的地址输入A2、A1、A0按图(b)所给的波形从000至111依次变化时,8选1MUX将并行输入数据10110101依次送至Y端串行输出。第4章 组合逻辑电路 图4.3.22用MUX实现并/串转换电路 第4章 组合逻辑电路 4.3.4数据分配器数据分配器数据分配器又称多路分配器(DEMUX),其功能与数据选择器相反,它可以将一路输入数
38、据按n位地址分送到2n个数据输出端上。图4.3.23为1-4DEMUX的逻辑符号,其功能表如表4.3.10所示。其中,D为数据输入;A1、A0为地址输入;Y0Y3为数据输出,E为使能端。第4章 组合逻辑电路 图4.3.231-4DEMUX的逻辑符号 第4章 组合逻辑电路 表表4.3.101-4DEMUX的功能表的功能表 E A1 A0Y0 Y1 Y2 Y31 0 0 00 0 10 1 00 1 11 1 1 1D 1 1 11 D 1 11 1 D 11 1 1 D第4章 组合逻辑电路 常用的DEMUX有1-4DEMUX、1-8DEMUX、1-16DEMUX等。从表4.3.10中可以看出,1
39、-4DEMUX与2-4译码器功能相似,如果将2-4译码器的使能端AKE-用作数据输入端D,如图4.3.24(a)所示,则2-4译码器的输出可写成 iiimDmEY(i=0,1,2,3)随着译码器输入地址的改变,可使某个最小项mi为1,则译码器相应的输出Yi=D,因而只要改变译码器的地址输入A、B,就可以将输入数据D分配到不同的通道上。因此,凡是具有使能端的译码器都可以用作数据分配器。图4.3.24(b)是将3-8译码器用作1-8DEMUX的逻辑图。其中:iiiDmMEYEEDE13210,第4章 组合逻辑电路 图4.3.24用译码器实现DEMUX 第4章 组合逻辑电路 数据分配器常与数据选择器
40、联用,以实现多通道数据分时传送。例如,发送端由MUX将各路数据分时送到公共传输线上,接收端再由分配器将公共传输线上的数据适时分配到相应的输出端,而两者的地址输入都是同步控制的,其示意图如图4.3.25所示。第4章 组合逻辑电路 图4.3.25多通道数据分时传送 第4章 组合逻辑电路 4.3.5数值比较器数值比较器数值比较器是对两个位数相同的二进制数进行数值比较,并判定其关系大小的组合逻辑电路,比较结果有AB、AB、FA=B、FAB、A=B、AB是反映低位比较结果的三个级联输入端。将级联输入端与其他比较器的输出连接,可组成位数更多的数值比较器。从表4.3.11中可以看出:第4章 组合逻辑电路 图
41、4.3.2674LS85的逻辑符号第4章 组合逻辑电路(1)两个4位二进制数从最高位A3和B3开始逐位进行比较,如果它们不相等,则该位的比较结果就可以作为两个数A和B的比较结果。(2)输出FA=B=1的条件是:A3=B3,A2=B2,A1=B1,A0=B0,而且级联输入端A=B=1,AB=0。第4章 组合逻辑电路 表表4.3.11数值比较器数值比较器74LS85的功能表的功能表 第4章 组合逻辑电路 2.数值比较器的扩展数值比较器的扩展数值比较器的扩展方式有串联和并联两种。1)串联扩展图4.3.27是将两片4位数值比较器74LS85扩展为8位数值比较器的连接图,其中,低位片74LS85(1)的
42、输出FAB、FA=B、FAB、A=B、AB连接,当高4位相等(A7A4=B7B4)时,就可以由低4位A3A0和B3B0来决定数值的大小。第4章 组合逻辑电路 图图4.3.27用用4位数值比较器扩展为位数值比较器扩展为8位数值比较器位数值比较器 第4章 组合逻辑电路 2)并联扩展当比较的位数较多,且速度要求较快时,可以采用并联方式扩展。例如,用五片4位比较器扩展为16位比较器,可按图4.3.28的方式连接。图中,将待比较的16位二进制数分成四组,各组的4位比较是并行进行的,再将每组的比较结果输入到第五片4位比较器来进行比较,最后得出比较结果。这种方式从数据输入到输出只需要两倍的4位比较器的延迟时
43、间,而如果采用串联方式时,则需要四倍的4位比较器的延迟时间。第4章 组合逻辑电路 图4.3.284位比较器扩展为16位比较器 第4章 组合逻辑电路 4.3.6加法器加法器1.串行进位加法器串行进位加法器在例4.1.2中已介绍了一位全加器电路。当要实现两个多位二进制数相加时,可采用并行相加、串行进位的方法来实现。图4.3.29是由4个全加器构成的4位二进制数加法电路,它的进位是由低位向高位逐位串行传递的,因此将这种进位方式称为串行进位方式。这种结构的加法器电路比较简单,但运算速度不高。为了克服这一缺点,可采用超前进位等方式。第4章 组合逻辑电路 图4.3.294位串行进位,并行相加的加法电路 第
44、4章 组合逻辑电路 2.超前进位加法器超前进位加法器为了提高运算速度,减少进位信号的传递时间,通常使用超前进位全加器。中规模4位二进制超前进位全加器74LS283的逻辑符号如图4.3.30(a)所示。其中,A4A1、B4B1分别为4位加数和被加数输入端;F4F1为4位和输出端;C0为进位输入端;C4为进位输出端。这种电路内部的进位信号不再逐级传递,而是采用了超前进位技术,即各级进位信号仅由加数、被加数和最低位的进位信号C0决定,而与其他进位无关,所以提高了运算速度。第4章 组合逻辑电路 图4.3.30超前进位全加器74LS283 第4章 组合逻辑电路 图4.3.30(b)是两片74LS283的
45、连接方法,其片间进位仍采用串行进位的方式,当片数增加时也会影响运算速度。如果片间进位也要用超前进位传输方式,则必须采用超前进位产生器和具有级联输出的超前进位加法器构成电路。图4.3.31(a)是超前进位产生器74LS182的逻辑符号,图(b)是74LS182和4位算术逻辑单元74LS181的连接图。第4章 组合逻辑电路 图4.3.31超前进位产生器74LS182 第4章 组合逻辑电路 3.加法器的应用加法器的应用加法器在数字系统中应用广泛,主要可以用来实现码组变换,加、减运算和乘法运算等,下面举例说明。【例【例4.3.5】试用4位二进制全加器74LS283实现一位余3BCD码到8421BCD码
46、的转换。解:解:因为对于同样一个十进制数,余3码比相应的8421BCD码多3,因此要实现余3码到8421BCD码的转换,只需从余3码减去(0011)即可。由于0011各位变反后成为1100,再加1,即为1101,因此,减(0011)同加(1101)等效。所以,在4位加法器的A3A0上接余3码的4位代码,B3、B2、B1、B0上接固定代码1101,就能实现转换,其逻辑电路如图4.3.32所示。第4章 组合逻辑电路 图4.3.32 例4.3.5电路第4章 组合逻辑电路【例4.3.6】试用4位二进制全加器74LS283构成一位8421BCD码加法电路。解:解:4位二进制加法器按二进制数规则进行加法运
47、算,运算结果也是用二进制数表示。十进制数加法的进位规则是“逢10进1”,且运算结果也应该用8421BCD码来表示,因此必须将二进制加法器的运算结果进行修正,才能得到等值的8421BCD码。两个一位十进制数相加时,加数、被加数的取值范围是09,其和的最大值是18。如果考虑低位8421BCD码可能会产生进位,则其和的最大值为19。表4.3.12列出了十进制数019与二进制数、8421BCD码的对应关系。从表中可以看出,在二进制加法器的相加结果S3S0大于1111后才能产生进位C4=1,而8421BCD码的D8D4D2D1大于1001后就有进位(D10=1)。如果将大于9以后的二进制数加6(0110
48、)进行修正,则可得到等值的8421BCD码。第4章 组合逻辑电路 表表4.3.12十进制数十进制数019与二进制数、与二进制数、8421BCD码的对应关系码的对应关系 第4章 组合逻辑电路 从表中还可看出,当8421BCD码有进位时,D10=1,因此可以将D10看做修正标志。当D10=0,即二进制数9(1001)时,不需要修正;当D10=1,即二进制数10(1010)时,需要修正。通过表4.3.12求出D10与C4、S3S0的逻辑关系并构成校正电路,则可实现二进制运算结果到8421BCD码的等值转换。从表4.3.12中可以看出,当输入C4=1或S3、S1同时为1,或S3、S2同时为1时,D10
49、就为1,因而修正标志D10可写成 D10=C4+S3S1+S3S2 第4章 组合逻辑电路 当D10=1时,需要对二进制加法器的运算结果进行修正,因此整个8421BCD码加法电路需要用2片74LS283,第片完成二进制数的相加操作,第片完成和的修正操作,其电路如图4.3.33所示。第4章 组合逻辑电路 图4.3.33一位8421BCD码加法器 第4章 组合逻辑电路 4.4 组合逻辑电路中的竞争与冒险组合逻辑电路中的竞争与冒险 1.竞争与冒险竞争与冒险 在组合电路中,某一输入变量经不同途径传输后,到达电路中某一会合点的时间有先有后,这种现象称为竞争。由于竞争而使电路输出发生瞬时错误的现象称为冒险。
50、第4章 组合逻辑电路 例如,一个简单组合电路如图4.4.1(a)所示,若不考虑门的延迟时间,则有F=AA=0,稳态时F应恒为0。若考虑门的延迟(设每个门的延迟均为tpd),则输入信号A需经非门延迟tpd后才得到A。当A变量发生跳变(01)时,由于A和A到达与门输入端有时间差,出现了A和A同时为1的情况,所以在输出端产生了正向尖峰脉冲,或称正向毛刺,如图4.4.1(b)所示。又如,在图4.4.2(a)所示电路中,其输出函数F=AB+AC,当B=C=1时,F=A+A,在稳态条件下,F应恒为1。但当A变量发生变化(10)时,由于门电路有延迟,AB和AC(即A和A)到达G门输入端有时间差,出现了A和A