1、第3章 常用组合逻辑模块及其应用,本章提要 本章主要介绍中规模常用组合逻辑模块及其应用。 包括加法器及其应用、编码器及其应用、译码器及其应用、数据比较器及其应用、数据选择器及其应用和数据分配器及其应用及其检测电路。 并介绍用中规模集成电路构成的组合电路的设计。 本章难点 l 编码器、译码器及其应用。用中规模集成电路构成的组合电路的设计,第二章中组合逻辑电路的设计是基于逻辑门电路的设计,对于一些常用的组合逻辑电路,事实上并不需要我们用逻辑门来设计,因为它们有现成的模块。本章的主要内容就是介绍各种常用的(MSI)组合逻辑模块的功能、原理及应用方法等,SSI、MSI、LSI、VLSI,第3章 常用组
2、合逻辑模块及其应用 3.1 加法器,加法器是一种最基本的算术运算电路,其功能是实现两个二进制数的加法运算,3.1.1 半加器和全加器原理 1半加器,两个一位二进制数相加称为半加。实现半加的逻辑电路称为半加器。,国标符号,常用符号,半加器真值表,2全加器,本位的两个二进制数及来自低位的进位数三者相加称为全加。实现全加的逻辑电路称为全加器,全加器逻辑功能,国际符号,常用符号,全加器真值表,3.1.2 加法器典型模块及其应用,实现多位二进制加法运算的电路称为加法器,加法器,串行加法器,并行加法器,串行进位并行加法器,超前进位并行加法器,采用串行运算方式,是从二进制数的最低位开始逐位相加至最高位,最后
3、得出和数。串行加法器在低位完成加法运算确定了进位信号之后,高位才能进行加运算。其内部只有一个全加器,每次只送入一位进行加法运算,完成n位数加法运算需要n+1个时钟周期。速度慢,并行运算方式,每一位用一个全加器,各位数同时相加,各位的和并行输出,这种并行加法器的两个相加数的各位同时送到相应全加器的输入端,进位数是串行传送的。典型模块T1283。速度较快,超前进位就是每一位全加器的进位直接由并行输入的被加数、加数及外部输入进位C0同时决定,不必逐级等待低位送来的进位信号。典型模块CC4008。速度快,用全加器构成多位加法器,被加数,加数,和数,例 设A=A3A2A1A0及N=N3N2N1N0都是4
4、位二进制正整数,且AN。试用T1283及最少的门电路构成4位减法电路。,已知被减数A3A2A1A0大于减数N3N2N1N0。在二进制减法运算中,一般采用将减数求补,再与被减数相加的方法求差D3D2D1D0。4位二进制数N3N2N1N0的补码为,被加数,减数,差,不用,例:P=1101,Q=1010,C0=1。求P+Q,1011,0101,1,0001,1,加法器的级联 利用两片级联组成八位并行加法器,低位片,高位片,例:A=10101010,B=01100111。求A+B,0101,0101,1110,0110,1000,1000,1,1,第3章 常用组合逻辑模块及其应用 3.2 数据比较器,
5、比较两数的大小,或检查两数是否相等,3.2.1 数据比较器工作原理,两个四位二进制数比较,比较结果,先从高位比较起:,A=A3A2A1A0,B=B3B2B1B0,AB,A=B,AB,若A3B3,不论低位数大小如何,有AB,A3B3,不论低位数大小如何,有AB;,若A3=B3,A2B2,则AB,A3=B3,A2B2,则AB,若A3=B3,A2=B2,A1B1,则AB,A3=B3,A2=B2,A1B1,则AB;,若A3=B3,A2=B2,A1=B1,A0B0,则AB;A3=B3,A2=B2,A1=B1,A0B0,则AB;,若A3=B3,A2=B2,A1=B1,A0=B0,则A=B。,四位二进制数比
6、较器的真值表,3.2.2 数据比较器典型模块,逻辑符号,两比较数之一,两比较数之一,控制输入端,比较结果输出,引脚图,74LS85功能表,3.2.3 数据比较器的应用,1并行比较器,两个四位二进制数A=A3 A2 A1 A0, B= B3 B2 B1 B0进行并行比较。,2分段比较器 (串联型分段比较器),16位分段比较器,当高位数组A15B15A12B12相等时,输出状态由串联输入端决定,而在其他情况下,则高四位就可决定是AB,还是AB,总的输出与串联输入无关,2分段比较器 (并联型分段比较器),24位分段比较器,当A1923B1923时,其两个输出FAB和FAB和FAB和FAB和FAB和F
7、AB的输出是0还是1无关紧要的。,当单元1出现相等情况时,单元6将自动选择单元2进行比较,并依次比较下去。最低位单元(单元5)的接法则不同,它的3个输出端分别接至单元6的相应的控制输入端,而控制输入端AB和AB接0,而A=B必须接1,以保证在A=B时,单元6的FA=B有输出,3.3 编码器与译码器,3.3.1 编码器原理,编码就是用二进制数码来表示一个给定的十进制数或字符,输入,输出,需要编码的信号,编码后的二进制信号,m2n,输入使能端,输出使能端,优先标志输出端,编码器的功能就是从m个输入信号中选中一个并编成一组二进制代码并行输出,4线-2线编码器真值表,在数字设备中,任何数据和信息都是用
8、代码表示的。所用的编码不同,实现这些编码的电路也不同,故编码器又可分为二进制编码器(用n位二进制代码对2n个信号进行编码)、二十进制编码器(将十进制数09编成二进制代码的电路就是二一十进制编码器)等。有一类编码器,任意时刻只允许一个输入信号有效,输出只对这个信号进行编码。而另一类编码器在同一时刻允许多个有效信号输入,输出只对优先级别最高的信号进行编码,这一类编码器称为优先编码器。目前常用的中规模集成电路编码器都是优先编码器,它们使用起来非常方便。故以后提到的编码器都是优先编码器。,输入,输出,使能控制端,用于控制译码器的工作状态和译码器间的级联,3.3.2 变量译码器原理,译码器-把二进制代码
9、或二十进制代码(BCD码)翻译成十进制数字或字符,并直接显示出来。或者翻译成控制信号去执行操作等,这种翻译过程称为译码。译码是编码的逆过程。实现译码的电路称为译码器,把二进制代码的所有组合状态都翻译出来的译码器我们又称为变量译码器,常用的有二进制译码器,2线4线 译码器真值表,3线8线译码器 4线16线译码器 n线2n线译码器 对应一组变量输入,在输出中只有一个为有效电平,其余均为无效电平,3.3.3 码制变换译码器原理,将输入的二进制代码转换成其他进制的译码器称为码制变换译码器,常用的二十进制译码器,它是实现4位二进制代码翻译成1位十进制数字的电路(4线10线译码器 ),二十进制译码器真值表
10、,输出低电平有效,3.3.4 显示译码器原理,用十进制数字显示器显示其测量结果或处理结果,显示器件,字型重叠式,共阴极数码管需要输出高电平有效的译码器去驱动,共阳极数码管需要输出低电平有效的译码器去驱动,分段式,点矩阵式,2,5,7,9,7段显示译码器真值表,驱动共阴极LED,3.3.5 编码器与译码器典型模块,1编码器典型模块-(1)二进制编码器典型模块74LS148,8线3线优先编码器,优先编码器允许许多个输入信号同时有效,但只对其中优先级别最高的有效输入信号编码,而对级别低的不响应,74LS148优先编码器功能表,EI=1时,无论输入信号I7I0是什么电平,输出都是1,不进行正常编码,正
11、常编码(EI=0)时,EO=1,只要有一个输入信号有效,GS就变成低电平,无有效输入信号,EI=0时,C、B、A据I7I0的优先级别编码,转至EWB/74LS148,3.3.5 编码器与译码器典型模块,1编码器典型模块-(2)二十进制编码器典型模块74LS147,二十进制优先编码器,9线4线 编码器,74LS147优先编码器功能表,若无有效信号输入即9个输入信号全为“1”,代表输入十进制数0,则DCBA=1111(0的反码),转至EWB/74LS147,3.3.5 编码器与译码器典型模块,2译码器典型模块-(1)变量译码器典型模块 74LS138,3线8线译码器,8个输出端,使能信号,3个输入
12、端,74LS138译码器功能表,当E3=“0”时,无论其他输入信号是什么,输出都是高电平,即无效信号,E1+ E2为高电平时,输出也都是无效信号,E3=“1”,E1+E2=“0”时,输出信号Y0Y7才取决于输入信号C、B、A组合,转至EWB/74LS138,3.3.5 编码器与译码器典型模块,2译码器典型模块-(2)码制变换译码器典型模块 74LS42,74LS42真值表,转至EWB/74LS42,3.3.5 编码器与译码器典型模块,2译码器典型模块-(3)显示译码器典型模块 74LS47,引脚图,功能图,输出低电平有效,驱动共阳极数码管的七段译码器,转至EWB/74LS47,显示译码器74L
13、S47功能表,LT=1、RBI=1正常译码输出,RBO=1,3.3.6 编码器与译码器的应用,1优先编码器的扩展,例 试用8线3线优先编码器74LS148构成一个16线-4线优先编码器。编码输入为I0I15,其中以I0的优先权最低,I15的优先权最高,编码输出为:D,C,B,A。,转至EWB/16-4,3.3.6 编码器与译码器的应用,2译码器的扩展,例 试用两片3线8线译码器74LS138构成4线16线译码器,转至EWB/4-16,3.3.6 编码器与译码器的应用,4显示系统,例 试用八片共阳极数码管和七段显示译码器74LS47连接成一个8位数字显示器的译码电路,能将数字00009.900显
14、示成9.9,8位数字显示器用8块74LS47译码器组成,将第一块(从左至右)的RBI(灭零输入)接地,即RBI=0,因这块译码器的输入为0000,所以本位的十进制数字0不显示,并且本位的RBO(灭零输出)为“0”,将其连接到第二块的RBI端,又因第二块译码器的输入也是0000,所以第二块的十进制数0不显示。第三、第四块译码器亦然。第五块是个位数不需要灭零,故RBI=1。小数点后面的3位小数是最低的2位需要进行灭零处理。此图表示的8位数若全为零,则会显示0.0,3.4 数据选择器和数据分配器 3.4.1 数据选择器,地址码,输出端,数据输入端,数据选择器又称多路选择器,它是一个多路输入、单路输出
15、的组合电路,作用类似于一个单刀多掷开关(能够将并行数据转换成串行数据输出,A1、A0为控制信号,数据选择器根据A1、A0的取值不同,选取D3D0中的一个输出,4选1多路选择器功能表,输出逻辑表达式 :,A1A0=00 Y=D0 A1A0=01 Y=D1 A1A0=10 Y=D2 A1A0=11 Y=D3,电路实现,门电路实现,门电路、译码器实现,4选1、8选1、16选1,3.4.2 数据选择器典型模块74151,功能图,引脚图,转至EWB/74151,74151功能表(8选1),使能端S=1时,各输入端被封锁,总的输出端Y=0,使能端S =0时,电路开放,选择器正常工作,根据选择控制端A0A2
16、选择D0D7中的一路输出,3.4.3 数据选择器的应用 1将并行输入的数据转换成串行数据输出 2数字波形发生器的使用,3.4.3 数据选择器的应用 3函数发生器,例 用8选1数据选择器实现下述组合逻辑函数,(1)先将函数写成最小项之和形式,(2)由最小项表达式的变量个数,确定数据选择器的规模,因 为四变量,故可选用8选1数据选择器74151,其选择输入变量 对应逻辑函数的A、B、C,而D作为数据输入端,(a),(b),(3)比较(a)、(b)两表达式,确定相应的输入量,D0= D1=D D2=1 D3= 0 D4=0 D5= D6= 1 D7=0,用8选1数据选择器实现函数F,可以用2n选1数
17、据选择器来实现n+1个变量的逻辑函数,其中n个变量作为地址输入,剩下的那个变量以原变量或反变量的形式接到相应的数据输入端即可,3.4.3 数据选择器的应用 4数据选择器扩展,数据选择器通常可作为多路开关使用,利用它的使能(选通)S端,将数片数据选择器连接起来,可扩展它的通道数,当S=0时,则芯片处于工作状态,芯片处于禁止状态。根据A2A1A0的取值,输出低8路数据D0D7中的一路。当S=1时,则芯片工作,芯片处于禁止状态。根据A2A1A0的取值,输出高8路数据D0D7中的一路。这样就实现了16选1的功能,256选1数据选择器,16个74150构成前级选择器,256个数据输入信号 分别16个一组
18、依次作为16个选择器数据输入端,A、B、C、D、E、F、G、H中,取后四个变量作为前级数据选择信号,在E、F、G、H作用下,这16个选择器分别选出一路信号送至相应的 端。后级数据选择器则在选择信号A、B、C、D作用下,从f0f15的16个前级数据选择器输出中选一路fi送入输出端,从而完成在八位选择信号作用下从256路中选出一路,3.4.4 数据分配器及其应用,将一路数据分配到多路装置的电路称为数据分配器。它的功能和数据选择器相反,类似一个单刀多掷波段开关。能够将串行数据变为并行数据输出,将一路数据分配到多路装置的电路称为数据分配器。它的功能和数据选择器相反,类似一个单刀多掷波段开关。能够将串行
19、数据变为并行数据输出,控制信号A1、A0的作用下。将输入信号Z分配到相应的输出端D0 、D1 、D2 、D3 上,输入端,数据输出端,地址端,串行1101,四路数据分配器真值表,任何带使能端的译码器均可作数据分配器使用,只要将数据从译码器的使能端输入,译码器的译码输入端作为地址控制端即可,转至EWB/3.29,将数据分配器与数据选择器配合使用,可以构成双刀多掷开关,构成总线串行数据传输系统,实现1路总线按地址输入信号的要求传送多路数据中某一路数据,这种结构也称为总线开关,3.5 奇偶检测电路,在计算机和数字通信系统中,代码在传送、存储过程中,由于线路本身的缺陷、传输线上的噪声、干扰或其他偶然原
20、因,会使代码出现差错,将1变成0或0变成1。 为了检查代码是否出错,通常采用的方法叫做奇偶校验,它是奇校验和偶校验的通称。这种方法,是在由多位二进制代码组成的信息位外,再添加一位附加位0或1,构成编码系统。该附加位称为奇(或偶)校验位。如果组成信息位和校验位中1的总个数为奇数,称为奇校验;反之,称为偶校验。,奇(偶)发生器确定在n-1位信息位外应添加的校验位是1还是0,以构成奇(偶)数个1。代码传送后,再由奇(偶)校验器对传送的n位代码进行校验,查看它是否有奇(偶)数个1,如果是奇(偶)数个1,表明代码无误;否则,表示出错。由它的输出表示是否出错,据此可确定是否重发信息、停机或进行其他处理,3
21、.5.1 奇偶检测原理,奇偶检验码,如采用奇检验方式,接收端收到的检验码为0100,1101,0011,那么很容易看出,前两个码组中1的个数是奇数,是正确的。后一个码组中的1的个数是偶数,是错误的,称为非法码,3.5.2 奇偶检测电路及应用,检验位产生器的原理图。根据异或门的逻辑功能;当信息码中1的个数为偶数时,异或的结果为0;经反相后P为1;当信息码中1的个数为奇数时,异或的结果为1,经反相后P为0;将运算的结果作为检验位P,并随信息码一起发送,奇检测器的原理电路,它是将信息位和检验码一起作为检测器的输入信号。输出端F为检测信号。 信息码中1的个数为偶数时,检验位P为1,则输入信号中1的总个
22、数为奇数,检测器异或运算的结果F应为1。 当信息码中1的个数为奇数时,检验位P为0,检测器异或运算的结果F也同样为1。,当F为1时表明传输正确。当F为0时,表明传输错误,发出报警信号,9位奇偶发生器/校验器,CT1180功能表,奇偶编码和校验,当发送端发送的8位信息中“1”的个数为奇数时,FE输出为“0”,FE输出端接到另一奇偶校验器的SOD端,经反相器再接入SE端,此时SE=1,SOD=0,八位信息码接入奇偶校验器的八个输入端。此时若信息码中的“1”为奇数个,监督位FE=0,奇偶编码输出FOD=1,接收端接收信息。如FOD输出为“0”,说明传输中出现差错,接收端被禁止接收信息。,3.6 用中
23、规模集成电路实现组合电路的设计,1用数据选择器实现组合逻辑函数, 若逻辑变量的个数与数据选择器地址输入端的数目相等,则组合逻辑函数的全部最小项便和数据选择器的数据输入端的个数一样多。这时用数据选择器可以很方便地实现逻辑函数。 当逻辑函数的变量个数多于数据选择器地址输入端的数目时,应分离出多余的变量。将余下的变量和地址输入端一一对应连接,而将分离出来的变量按一定规则接到数据输入端。这样从数据选择器的数据输出端便可得到组合逻辑函数。,例3.6 用4选1数据选择器实现组合逻辑函数。,解:,4选1数据选择器的标准表达式,对照比较以上两式后可得:A1=A,A0=B,D0=0,D1= D2=C,D3=1,
24、例3.7 用8选1数据选择器及少量门电路实现组合逻辑函数:,解:将函数表达式F中B,C,D作为选择输入变量,写成最小项表达式:,8选1数据选择器输出逻辑表达式:,比较以上两式有:A2=B,A1=C,A0=D,D0=1,D1=D3=D4=D6=0,D5=A,D2=D7=,2用译码器实现组合逻辑函数,3.6 用中规模集成电路实现组合电路的设计, 列出给定函数的最小项表达式。 根据逻辑变量的个数选择合适的译码器。 确定译码器输入端与输入变量的对应关系,用译码器的各输出端作为变量,写出符合所要求的逻辑函数的表达式。 根据表达式,画出连线图。,例如,3线8线译码器74LS138,其输出端Y0Y7分别可以
25、得到输入变量A2、A1、A0的8个最小项的反函数。各输出断的表达式为:,74LS138真值表幻灯片 39,如果要实现逻辑函数,只要令A2=A,A1=B,A0=C,可得:,例3.8 试用译码器74LS138实现下列逻辑函数:,解:写出上式的最小项表达式,令译码器A2=A,A1=B,A0=C,则有:,3利用译码器构成1位全加器,3.6 用中规模集成电路实现组合电路的设计,该图中A2=Ai,A1=Bi,A0=Ci-1,选通端E3=1,E2=E1=0,可得输出:,=,符合全加器和数信号的逻辑表达式。,符合全加器进位信号的逻辑表达式。,8421BCD码变换成余3码,余3码变换成BCD码,用MSI设计组合
26、逻辑电路的一般方法: 逻辑抽象,写出逻辑函数表达式。 将所得逻辑函数表达式变换成与所用MSI的逻辑函数表达式相类似的形式。 将MSI的逻辑函数表达式与所需得到的逻辑函数表达式对照比较,有以下四种情况: 需要产生的逻辑函数与某种MSI的逻辑函数在形式上完全一致,此时,使用这种MSI效果最好。 MSI的逻辑函数式比所需得到的逻辑函数式更加丰富,例如,当两者都是与或表达式,但MSI的函数式中包含更多的输入变量及乘积项时,则只要对这些多出的输入变量和乘积项作适当处理(即将有些输入端固定接1或0),也可以较为方便地得到所需要的逻辑函数。 MSI的函数式是要求产生的逻辑函数的一部分,这时可以通过扩展的办法,将几片联用或附加少量其他电路,获得所需的逻辑函数。 若某种MSI电路的逻辑函数式与希望得到的函数式之间很少有共同之处时,不宜用这种MSI来实现。 一般来说,在产生单输出逻辑函数时,以使用数据选择器为宜;在产生多输出逻辑函数时,使用译码器并附加门电路较为有利;在输出函数的输出恰好等于输入代码表示的数值加上另外一个常数或由同一组输入变量组成的代码时,使用全加器最简单。 根据逻辑函数式对照比较的结果,选定MSI,作逻辑图。,