1、第四章 组合逻辑模块及其应用上一章介绍了组合逻辑电路的分析与设计方法。随着微电子技术的发展, 现在许多常用的组合逻辑电路都有现成的集成模块,不需要我 们用 门电路设计。本章将介 绍编码器、译码器、数据选择器、数值 比较器、加法器等常用组合逻辑集成器件,重点分析这些器件的逻辑功能、实现原理及 应用方法。4.1 编码器一 编码器的基本概念及工作原理编码将字母、数字、符号等信息编成一组二进制代码。例:键控8421BCD码编码器。左端的十个按键S 0S 9代表输入的十个十进制数符号09,输入为低电平有效,即某一按键按下,对应的输入信号为0。输出对应的8421码,为4位码,所以有4个输出端A、B 、 C
2、、D。SSSSSSSSSS0123456789A B C D GS& & & & & 1VCC1k 10图4.1.1 键控8421BCD码编码器由真值表写出各输出的逻辑表达式为: 988SA276547654 SSB3232C97519751D表4.1.1 键控8421BCD码编码器真值表输 入 输 出S9 S8 S7 S6 S5 S4 S3 S2 S1 S0 A B C D GS1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 01 1 1 1 1 1 1 1 0 11 1 1 1 1 1 1 0 1 11 1 1 1 1 1 0 1 1 11 1 1 1 1 0 1
3、 1 1 11 1 1 1 0 1 1 1 1 11 1 1 0 1 1 1 1 1 11 1 0 1 1 1 1 1 1 11 0 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 10 0 0 0 00 0 0 0 10 0 0 1 10 0 1 0 10 0 1 1 10 1 0 0 10 1 0 1 10 1 1 0 10 1 1 1 11 0 0 0 11 0 0 1 1画出逻辑图,如图 4.1.1 所示。其中 GS 为控制使能标志,当按下 S0S 9 任意一个键时,GS=1,表示有信号输入;当 S0S 9 均没按下时,GS=0,表示没有信号输入,此时的输出代码 00
4、00 为无效代码。二 二进制编码器用 n 位二进制代码对 2n 个信号进行编码的电路称为二进制编码器。3 位二进制编码器有 8 个输入端 3 个输出端,所以常称为 8 线3 线编码器,其功能真值表见表 4.1.2,输入为高电平有效。表4.1.2 编码器真值表输 入 输 出I0 I1 I2 I3 I4 I5 I6 I7 A2 A1 A01 0 0 0 0 0 0 00 1 0 0 0 0 0 00 0 1 0 0 0 0 00 0 0 1 0 0 0 00 0 0 0 1 0 0 00 0 0 0 0 1 0 00 0 0 0 0 0 1 00 0 0 0 0 0 0 10 0 00 0 10
5、1 00 1 11 0 01 0 11 1 01 1 1由真值表写出各输出的逻辑表达式为:76542IA376321IA50用门电路实现逻辑电路。A&1&A0A21I 3I1I I1117 I41I16I 02I51 1图4.1.2 3位二进制编码器三 优先编码器优先编码器允许同时输入两个以上的编码信号, 编码 器给所有的输入信号规定了优先顺序,当多个输入信号同 时出现时,只 对其中优先级 最高的一个进行编码。74148 是一种常用的 8 线-3 线优先编码器。其功能如表 4.1.3 所示,其中 I0I 7为编码输入端,低电平有效。A 0A 2为编码输出端,也为低电平有效,即反码输出。其他功能
6、:(1)EI 为使能输入端,低电平有效。(2)优先顺序为 I7I 0,即 I7 的优先级最高,然后是 I6、I 5、I 0。(3)GS 为编码器的工作标志,低电平有效。(4)EO 为使能输出端,高电平有效。表4.1.3 74148优先编码器真值表输 入 输 出EI I0 I1 I2 I3 I4 I5 I6 I7 A2 A1 A0 GS EO1 0 1 1 1 1 1 1 1 10 00 0 10 0 1 10 0 1 1 10 0 1 1 1 10 0 1 1 1 1 10 0 1 1 1 1 1 10 0 1 1 1 1 1 1 11 1 1 1 11 1 1 1 00 0 0 0 10 0
7、 1 0 10 1 0 0 10 1 1 0 11 0 0 0 11 0 1 0 11 1 0 0 11 1 1 0 1其逻辑图如图所示。47I EII1 I2 I543I 6I IA0 1A 2AEO GS0I1 1 1 11 1 1 1 1 1 1 1 1 1 1 1& & & &( a)图4.1.3 74148优先编码器的逻辑图 四 编码器的应用1编码器的扩展集成编码器的输入输出端的数目都是一定的,利用编码器的输入使能端 EI、输出使能端 EO 和优先编码工作标志 GS,可以扩展编码器的输入输出端。图4.1.4所示为用两片74148优先编码器串行扩展实现的16线4线优先编码器。0I1I2
8、I3I4I5I6I7IA2 A1 A0GSEOEI 74148(2)I01I2II3I4I56I7IA2 1A 0AGSEOEI 74148(1)1X 2X X 56 0X7 XX3 XX4X14 915 X813XX 10 XX 1112 XXGSY0Y1Y2Y3EOEI0& & & &图4.1.4 串行扩展实现的16线4线优先编码器它共有16个编码输入端,用X 0X 15表示;有4个编码输出端,用Y 0Y 3表示。片1为低位片,其输入端I 0I 7作为总输入端X 0X 7;片2为高位片,其输入端 I0I 7作为总输入端X 8X 15。两片的输出端A 0、 A1、A 2分别相与,作为总输出端
9、Y 0、Y 1、Y 2,片2的GS端5作为总输出端Y 3。片1的输出使能端EO 作为电路总的输出使能端;片2的输入使能端EI作为电路总的输入使能端,在本电路中接0,处于允许编码状态。片2的输出使能端EO接片的输入使能端EI,控制片1工作。两片的工作标志GS相与,作为总的工作标志GS 端。电路的工作原理为:当片 2 的输入端没有信号输入,即 X8X 15 全为 1 时,GS2=1(即 Y3=1) ,EO 2=0(即 EI1=0) ,片 1 处于允许编码状态。设此时 X5=0,则片 1的输出为 A2A1A0=010,由于片 2 输出 A2A1A0=111,所以总输出 Y3Y2Y1Y0=1010。当
10、片 2 有信号输入,EO 2=1(即 EI1=1) ,片 1 处于禁止编码状态。设此时X12=0(即片 2 的 I4=0) ,则片 2 的输出为 A2A1A0=011,且 GS2=0。由于片 1 输出A2A1A0=111,所以总输出 Y3Y2Y1Y0=0011。2组成 8421BCD 编码器图 4.1.5 所示是用 74148 和门电路组成的 8421BCD 编码器,输入仍为低电平有效,输出为 8421DCD 码。工作原理为:当I 9、I 8无输入(即I 9、I 8均为高平)时,与非门G 4的输出 Y3=0,同时使74148的EI=0,允许74148工作,74148对输入I 0I 7进行编码。
11、如I 5=0,则A 2A1A0=010,经门G1、G 2、G 3处理后,Y 2Y1Y0=101,所以总输出Y 3Y2Y1Y0=0101。这正好是5的842lBCD码。当I 9或I 8有输入(低电平)时,与非门G 4的输出Y 3=1,同时使74148的EI=1,禁止74148工作,使A 2A1A0=111。如果此时I 9=0,总输出Y 3Y2Y1Y0=1001。如果I 8=0,总输出Y3Y2Y1Y0=1000。正好是9和8的842lBCD码。72I 0I1A6I 5I 4 II 3 I0I74148AEI EOGS2 1AI I457 I 16 2 III 03 II11I9 8IY0Y1Y2Y
12、3&G G GG1 2 34图4.1.5 74148组成8421BCD编码器4.2 译码器一 译码器的基本概念及工作原理译码器将输入代码转换成特定的输出信号。假设译码器有 n 个输入信号和 N 个输出信号,如果 N=2n ,就称为全译码器,常见的全译码器有 2 线4 线译码器、3 线8 线译码器、4 线16 线译码器等。如果 N2 n 6,称为部分译码器,如二一十进制译码器(也称作 4 线10 线译码器)等。下面以 2 线4 线译码器为例说明译码器的工作原理和电路结构。2 线4 线译码器的功能如表 4.2.1 所示。表4.2.1 2线4线译码器功能表输 入 输 出EI A B Y0 Y1 Y2
13、 Y31 0 0 00 0 10 1 00 1 11 1 1 10 1 1 11 0 1 11 1 0 11 1 1 0由表 4.2.1 可写出各输出函数表达式: BAEIY01I23用门电路实现 2 线4 线译码器的逻辑电路如图 4.2.1 所示。111ABEI& & & &Y0 Y1 Y2 Y3图4.2.1 2线4线译码器逻辑图二 集成译码器1.二进制译码器 7413874138 是一种典型的二进制译码器,其逻辑图和引脚图如图 4.2.2 所示。它有 3 个输入端 A2、A 1、A 0,8 个输出端 Y0Y7,所以常称为 3 线8 线译码器,属于全译码器。输出为低电平有效,G 1、G 2A
14、 和 G2B 为使能输入端。7& & & &Y4 Y5 Y6 Y73&2& &Y0&Y1Y YA0 A1 A2G1 G2AG2B&1 1 11 1 11( a)图4.2.2 74138集成译码器逻辑图表4.2.2 3线8线译码器74138 功能表输 入 输 出G1 G2A G2B A2 A1 A0 Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 1 10 1 0 01 0 01 0 01 0 01 0 01 0 01 0 01 0 0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 11
15、1 1 1 1 1 1 10 1 1 1 1 1 1 11 0 1 1 1 1 1 11 1 0 1 1 1 1 11 1 1 0 1 1 1 11 1 1 1 0 1 1 11 1 1 1 1 0 1 11 1 1 1 1 1 0 11 1 1 1 1 1 1 02.8421BCD 译码器 7442(自学)三 译码器的应用1译码器的扩展利用译码器的使能端可以方便地扩展译码器的容量。图4.2.4所示是将两片74138扩展为4线16线译码器。其工作原理为:当E1时,两个译码器都禁止工作,输出全1;当E0时,译码器工作。这时,如果A 3=0,高位片禁止,低位片工作,输出Y 0Y 7由输入二进制代码
16、A2AlA0决定;如果 A3=1,低位片禁止,高位片工作,输出Y 8Y 15由输入二进制代码8A2AlA0决定。从而实现了4线16线译码器功能。G1 G2AG2B74138(2)0A1A2A 1G 2AG 2BG74138(1)A 1 A2 A 012 AA 01A3A E016 2YY YY4 Y5 YY 3Y7914 10YY YY12Y13Y 11Y152Y7Y Y Y YY5 4 3 016 YY5Y7Y Y Y YY5 4 3 016 YYY8图4.2.4 两片74138扩展为4线16线译码器2实现组合逻辑电路 由于译码器的每个输出端分别与一个最小项相对应,因此辅以适当的门电路,便可
17、实现任何组合逻辑函数。例 4.2.1 试用译码器和门电路实现逻辑函数ACBL解:(1)将逻辑函数转换成最小项表达式,再转换成与非与非形式。=m3+m5+m6+m7= 7653m(2)该函数有三个变量,所以选用 3 线8 线译码器 74138。用一片 74138 加一个与非门就可实现逻辑函数L,逻辑图如图 4.2.5 所示。例 4.2.2 某组合逻辑电路的真值表如表 4.2.4 所示,试用译码器和门电路设计该逻辑电路。解:(1)写出各输出的最小项表达式,再转换成与非与非形式。ABCCBAL 74217421 mmF 653653G 6420420 (2)选用 3 线8 线译码器 74138。设
18、A=A2、B=A 1、C=A 0。将 L、F、G 的逻辑表达式与 74138 的输出表达式相比较,有:7421YL 1G 0A74138G2A 2B1 2AG AY 1YY Y2Y YY7 3Y456 0A B C1 0 0 L图 4.2.5 例 4.2.1逻 辑 图9653YF420G用一片74138加三个与非门就可实现该组合逻辑电路,逻辑图如图4.2.6所示。表4.2.4 例4.2.2 的真值表输 入 输 出A B C L F G0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 10 0 11 0 01 0 10 1 01 0 10 1 00 1 11 0 0可
19、见,用译码器实现多输出逻辑函数时,优点更明显。3构成数据分配器 数据分配器将一路输入数据根据地址选择码分配给多路数据输出中的某一路输出。它的作用与图 4.2.7 所示的单刀多掷开关相似。由于译码器和数据分配器的功能非常接近,所以译码器一个很重要的应用就是构成数据分配器。也正因为如此,市场上没有集成数据分配器产品,只有集成译码器产品。当需要数据分配器时,可以用译码器改接。 例 4.2.3 用译码器设计一个“1 线-8 线”数据分配器。3 121YGYY74138A 005Y2AG GY71Y Y2 Y4A6A2BA B C1 0 0图 4.2.6 例 4.2.2逻 辑 图FG LDn位 地 址
20、选 择 信 号0D1D2Dn-1数 据 分 配 器 示 意 图图 4.2.7数数据据输输出入10图 4.2.8 用译码器构成数据分配器四数字显示译码器在数字系统中,常常需要将数字、字母、符号等直观地显示出来,供人们读取或监视系统的工作情况。能够显示数字、字母或符号的器件称为数字显示器。在数字电路中,数字量都是以一定的代码形式出现的,所以这些数字量要先经过译码,才能送到数字显示器去显示。这种能把数字量翻译成数字显示器所能识别的信号的译码器称为数字显示译码器。常用的数字显示器有多种类型。按显示方式分,有字型重叠式、点阵式、分段式等。按发光物质分,有半导体显示器,又称发光二极管(LED)显示器、荧光
21、显示器、液晶显示器、气体放电管显示器等。目前应用最广泛的是由发光二极管构成的七段数字显示器。1七段数字显示器原理七段数字显示器就是将七个发光二极管(加小数点为八个)按一定的方式排列起来,七段a、b、c、 d、e 、f、g(小数点DP)各对应一个发光二极管,利用不同发光段的组合,显示不同的阿拉伯数字。图4.2.9 七段数字显示器及发光段组合图 (a)显示器 (b)段组合图 表 4.2.5 数据分配器功能表地址选择信号A2 A1 A0输出0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1D=D0D=D1D=D2D=D3D=D4D=D5D=D6D=D7 0 G1 G3
22、D1001D2DDD45DDD ace c Mg baM 11按内部连接方式不同,七段数字显示器分为共阴极和共阳极两种。图4.2.10 半导体数字显示器的内部接法 (a)共阳极接法 (b)共阴极接法半导体显示器的优点是工作电压较低(1.53V ) 、体积小、寿命长、亮度高、响应速度快、工作可靠性高。缺点是工作电流大,每个字段的工作电流约为10mA左右。2七段显示译码器 7448七段显示译码器7448是一种与共阴极数字显示器配合使用的集成译码器,它的功能是将输入的4位二进制代码转换成显示器所需要的七个段信号ag。表4.2.6为它的逻辑功能表。 ag为译码输出端。另外,它还有3个控制端:试灯输入端
23、LT、灭零输入端RBI、特殊控制端 BI/RBO。其功能为:(1)正常译码显示。LT=1,BI/ RBO=1 时,对输入为十进制数 l15 的二进制码(00011111)进行译码,产生对应的七段显示码。(2)灭零。当输入 RBI =0 ,而输入为 0 的二进制码 0000 时,则译码器的 ag 输出全 0,使显示器全灭;只有当 RBI =1 时,才产生 0 的七段显示码。所以 RBI 称为灭零输入端。(3)试灯。当 LT=0 时,无论输入怎样,ag 输出全 1,数码管七段全亮。由此可以检测显示器七个发光段的好坏。 LT 称为试灯输入端。(4)特殊控制端 BI/RBO。BI/ RBO 可以作输入
24、端,也可以作输出端。作输入使用时,如果 BI=0 时,不管其他输入端为何值,ag 均输出 0,显示器全灭, 。因此 BI 称为灭灯输入端。作输出端使用时,受控于 RBI。当 RBI=0,输入为 0 的二进制码 0000 时,RBO=0,用以指示该片正处于灭零状态。所以,RBO 又称为灭零输出端。将BI/RBO和RBI配合使用,可以实现多位数显示时的“无效0消隐”功能。在多位十进制数码显示时,整数前和小数后的0是无意义的,称为“无效0” 。 在图4.2.12所示的多位数码显示系统中,就可将无效0灭掉。从图中可见,由于整数部分7448除最高位的RBI接0、最低位的RBI 接1外,其余各位的 RBI
25、均接受高位的RBO输出信号。所以整数部分只有在高位是0,而且被熄灭时,低位才有灭零输入信号。同理,小数部分除最高位的RBI接1、最低位的RBI 接0外,其余各位均接受低位的RBO输出 beeffgg c f A0 12信号。所以小数部分只有在低位是0、而且被熄灭时,高位才有灭零输入信号。从而实现了多位十进制数码显示器的“无效0消隐”功能。表4.2.6 七段显示译码器7448的逻辑功能表输入 输入/输出 输出功能(输入) LT RBI A3 A2 A1 A0 BI/RBO a b c d e f g显示字形0123456789101112131415灭灯灭零试灯1 11 1 1 1 1 1 1
26、1 1 1 1 1 1 1 1 1 00 0 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 1 0 0 0 0 11111111111111110011 1 1 1 1 1 0 0 1 1 0 0 0 01 1 0 1 1 0 11 1 1 1 0 0 10 1 1 0 0 1 11 0 1 1 0 1 1 0 0 1 1 1 1 11 1 1 0 0 0 01 1 1 1 1 1 1 1 1 1 0 0 1 10 0 0
27、1 1 0 10 0 1 1 0 0 1 0 1 0 0 0 1 11 0 0 1 0 1 10 0 0 1 1 1 10 0 0 0 0 0 00 0 0 0 0 0 00 0 0 0 0 0 01 1 1 1 1 1 1偁 敁3 氲 枭 I A汁潁 椰流攳 攲 枭 瑁灁戱 枭 敁 汁 嘰攲 獁 枭 攳 汁 慁搱攰 硁乁 乁 敁 愲 攰 枭 挱 扁 伱 偁攳 枭 捁 脱A 枭 0 罁 脲 枭 10 0134.3 数据选择器4.3.1 数据选择器的基本概念及工作原理数据选择器根据地址选择码从多路输入数据中选择一路,送到输出。 它的作用与图 4.3.1 所示的单刀多掷开关相似。常用的数据选择器有
28、 4 选 1、8 选 1、16 选 1 等多种类型。下面以 4 选 1 为例介绍数据选择器的基本功能、工作原理及设计方法。四选一数据选择器的功能如表 4.3.1 所示。表4.3.1 4选1数据选择器功能表输 入 输 出G A1 A0 D3 D2 D1 D0 Y1 00 0 0 1010 1 0 1 011 0 0 1 0101 1 0 1 01根据功能表,可写出输出逻辑表达式D10D Y D1 1 杩n14GDADAY)( 3012010101由逻辑表达式画出逻辑图如图 4.3.2 所示。DA0123D10ADDGY 1&11111图4.3.2 4选1数据选择器的逻辑图二集成数据选择器7415
29、1 是一种典型集成 8 选 1 数据选择器,其逻辑图和引脚图如图 4.3.3 所示。它有8 个数据输入端 D0D7,3 个地址输入端 A2、A 1、A 0,2 个互补的输出端 Y 和 ,1 个使能输入端 G,使能端 G 仍为低电平有效。74151 的功能表如表 4.3.2 所示。三数据选择器的应用1数据选择器的通道扩展作为一种集成器件,最大规模的数据选择器是16选1。如果需要更大规模的数据选择器,可进行通道扩展。用两片 74151 和 3 个门电路组成的 16 选 1 的数据选择器电路如图 4.3.4 所示。D01D2D3D4D5D6D7DG 0A1A2AY Y74151(2)0D1DD2D3
30、4D5D6D7DG 0A1AA2Y Y74151(1)Y Y 1 11D12 43 5DD 2A 3D 0D DD13D D2 DDD D14 11 8 1910 1 DDA 615D A A 70图4.3.4 用两片74151组成的16选1数据选择器的逻辑图2实现组合逻辑函数 (1)当逻辑函数的变量个数和数据选择器的地址输入变量个数相同时,可直接用数据选择器来实现逻辑函数。 例 4.3.1 试用 8 选 1 数据选择器 74151 实现逻辑函数15ACBL解法 1:将逻辑函数转换成最小项表达式=m3+m5+m6+m7B将输入变量接至数据选择器的地址输入端,即A=A 2,B=A 1,C=A 0
31、。输出变量接至数据选择器的输出端,即L=Y。将逻辑函数L 的最小项表达式与 74151的功能表相比较,显然,L式中出现的最小项,对应的数据输入端应接1,L式中没出现的最小项,对应的数据输入端应接0。即D 3=D5=D6=D7=1;D 0=D1=D2=D4=0。画出连线图如图4.3.5所示。解法 2:作出逻辑函数 L 的真值表如表 4.3.3 所示。将输入变量接至数据选择器的地址输入端,即A=A 2,B=A 1,C=A 0。输出变量接至数据选择器的输出端,即L=Y。将真值表中L 取值为1的最小项所对应的数据输入端接1,L取值为0的最小项,对应的数据输入端接0。即D 3=D5=D6=D7=1;D
32、0=D1=D2=D4=0。画出连线图如图4.3.5所示。YA D 3474151G 7 DD D D 16 2 DY1 D D 02 A 5A 0A B CL01图 4.3.5 例 4.3.1逻 辑 图(2)当逻辑函数的变量个数大于数据选择器的地址输入变量个数时,不能用前述的简单办法。应分离出多余的变量,把它们加到适当的数据输入端。例 4.3.2 试用 4 选 1 数据选择器实现逻辑函数:ACBL解:由于函数 L 有三个输入信号 A、B、C,而 4 选 1 仅有两个地址端 A1和 A0,所以选 A、B接到地址输入端,且 A=A1,B=A 0。将 C 加到适当的数据输入端。画出连线图如图4.3.
33、6所示。4.4 数值比较器表4.3.3 L 的真值表A B C L0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 100010111A 3 DD 12 DY1 D 0A0A B 01 C4选 1数 据 选 择 器L图 4.3.6 例 4.3.2逻 辑 图16一 数值比较器的基本概念及工作原理数值比较器对两个位数相同的二进制整数进行数值比较并判定其大小关系。11位数值比较器1位数值比较器的功能是比较两个1位二进制数A和B的大小,比较结果有三种情况,即:AB 、A B、AB。其真值表如表 4.4.1所示。由真值表写出逻辑表达式:FAB = FAB =FAB = 由以上
34、逻辑表达式可画出逻辑图如图4.4.1所示。表4.4.1 1位数值比较器真值表2考虑低位比较结果的多位比较器1位数值比较器只能对两个1位二进制数进行比较。而实用的比较器一般是多位的,而且考虑低位的比较结果。下面以2位为例讨论这种数值比较器的结构及工作原理。2位数值比较器的真值表如表4.4.2所示。其中A 1、B 1、A 0、B 0为数值输入端,IAB 、I AB 、I AB 为级联输入端,是为了实现2位以上数码比较时,输入低位片比较结果而设置的。F AB 、F AB 、 FAB 为本位片三种不同比较结果输出端。表4.4.2 2位数值比较器的真值表数值输入 级联输入 输 出A1 B1 A0 B0
35、IAB IAB IAB FAB FAB FABA1B 1A1B 1A1B 1A1B 1A1B 1A1B 1A1B 1 A0B 0A0B 0A0B 0A0B 0A0B 0 1 0 00 1 00 0 11 0 00 1 01 0 00 1 01 0 00 1 00 0 1输 入 输出A B FAB FAB FAB0 00 11 01 1 0 0 10 1 01 0 00 0 1 17由此可写出如下逻辑表达式:FAB (A 1B 1)+(A 1B 1) (A0B 0)+(A 1B 1) (A0B 0) IAB FAB (A 1B 1+(A 1B 1) (A0B 0+(A 1B 1) (A0B 0)
36、 IAB FAB (A 1B 1) (A0B 0) IAB根据表达式画出逻辑图如图4.4.2所示。图中用了两个l位数值比较器,分别比较(A 1、B 1)和( A0、B 0) ,并将比较结果作为中间变量,这样逻辑关系比较明确。1111& 1& 1A1B1A1B1A0B01B1A0B0B00A 1 1&FABABFFABFABABFFABBA1010BA A图4.4.2 2位数值比较器逻辑图三 集成数值比较器及其应用1集成数值比较器 74857485是典型的集成4位二进制数比较器。其真值表如表4.4.3所示,电路原理与图4.4.2所示的2位二进制数比较器完全一样。2集成数值比较器的应用(1)单片应
37、用。一片7485可以对两个4位二进制数进行比较,此时级联输入端I AB 、I AB 、I AB 应分别接0、0、1。当参与比较的二进制数少于4位时,高位多余输入端可同时接0或1。(2)数值比较器的位数扩展。(a)串联扩展方式,如图4.4.4所示。A0B0A1B1A2B2A3B3FABFABABIABIABFABI7485( 1)A0B01A1BA2B23A3BABFABF IABABIABFIAB7485( 2)F ABFFAB AB2 BB 0 AA3 2 13 01B AA B6 BB 4 AA7 6 57 45B AA B001I0 ABABFAAB1FABAB2IAB 33 2ABAB
38、B IB 17485A 0B1 B3 00B A3 1B A 2 AA2F18图4.4.4 采用串联方式组成的8位数值比较器原则上讲,按照上述级联方式可以扩展成任何位数的二进制数比较器。但是,由于这种级联方式中比较结果是逐级进位的,工作速度较慢。级联芯片数越多,传递时间越长,工作速度越慢。因此,当扩展位数较多时,常采用并联方式。(b)并联扩展方式。图4.4.5所示是采用并联方式用5片7485组成的16位二进制数比较器。将16位按高低位次序分成4组,每组用1片7485进行比较,各组的比较是并行的。将每组的比较结果再经1片7485进行比较后得出比较结果。这样总的传递时间为两倍的7485的延迟时间。
39、若用串联方式,则需要4倍的7485的延迟时间。 B B33 A 1 A B B 鳳 A 00 0B 4图4.4.5 采用并联方式组成的16位数值比较器4.5 加法器一加法器的基本概念及工作原理1半加器半加器的真值表如表4.5.1所示。表中的A和B分别表示被加数和加数输入,S为本位和输出,C为向相邻高位的进位输出。由真值表可直接写出输出逻辑函数表达式:BASC可见,可用一个异或门和一个与门组成半加器,如图4.5.1所示。如果想用与非门组成半加器,则将上式用代数法变换成与非形式:ABBABS )()(19ABC由此画出用与非门组成的半加器。表4.5.1 半加器的真值表输 入 输出被加数 A 加数
40、B 和数S 进位数C0 00 11 01 10 01 01 00 1&ABSCABSC 图4.5.2 与非门组成的半加器 图4.5.3 半加器的符号 2全加器在多位数加法运算时,除最低位外,其他各位都需要考虑低位送来的进位。全加器就具有这种功能。全加器的真值表如表4.5.2所示。表中的A i和B i分别表示被加数和加数输入,C i-1表示来自相邻低位的进位输入。S i为本位和输出,C i为向相邻高位的进位输出。表4.5.2 全加器的真值表输 入 输 出Ai Bi CI-1 Si Ci 0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 10 0 1 0 1 0 0 1
41、 1 0 0 1 0 1 1 1 由真值表直接写出S i和C i的输出逻辑函数表达式,再经代数法化简和转换得:B 痀 201ii1ii1ii1iii CBACBASiiiiiii )()( 1ii1ii1ii1iii C-根据(4.5.5)和(4.5.6)式画出全加器的逻辑电路如图4.5.4(a)所示。图4.5.4(b)所示为全加器的代表符号。 愨 戨 图4.5.4 全加器 (a)逻辑图 (b)符号二 多位数加法器要进行多位数相加,最简单的方法是将多个全加器进行级联,称为串行进位加法器。图4.5.5所示是4位串行进位加法器,从图中可见,两个4位相加数A 3A2A1A0和B 3B2B1B0的各位同时送到相应全加器的输入端,进位数串行传送。全加器的个数等于相加数的位数。最低位全加器的C i-1端应接0。 01C1 SiiAiCC SBi1 S B 22A iSAC图4.5.5 4位串行进位加法器串行进位加法器的优点是电路比较简单,缺点是速度比较慢。因为进位信号是串行传递,图4.5.5中最后一位的进位输出C 3要经过四位全加器传递之后才能形成。如果位数增加,传输延迟时间将更长,工作速度更慢。为了提高速度,人们又设计了一种多位数快速进位(又称超前进位)的加法器。所谓快速进位,是指加法运算过程中