25303:数字逻辑(第三版)

发布时间:2022-8-31 | 杂志分类:其他
免费制作
更多内容

25303:数字逻辑(第三版)

40 数字逻辑(第三版)图 2-7(a)中,只有一个最小项 m0,所以单独画圈,也就是说该函数已经是最简; 图 2-7(b)中,最小项 m1 和 m3 几何相邻,可以画圈合并,即 m m AB AB B 1 3 + =+= ; 图 2-7(c)中,最小项 m0 和 m1 几何相邻,可以画圈合并,即 m m AB AB A 0 1 + = += ; 图 2-7(d)中,最小项 m1 和 m0 几何相邻,可以画圈合并,同时最小项 m1和 m3几何相邻,也可以画圈合并,即 ( )( ) m m m m AB 10 13 + + + =+ ; 图 2-7(e)中,所有 4 个最小项都相邻,可以画圈合并,即 mmmm 0123 + ++=1。 根据上述讨论,可以发现任意 2(21)个相邻 1 方格合并可以消去一个变量。 (2)三变量卡诺图的典型卡诺圈 三变量卡诺图的典型卡诺圈除了以上二变量典型卡诺圈的情形外,还具有图 2-8 所示的一些典型卡诺圈。 AB C 00 01 11 10AB C 00 01 11 10ABC 00 01 11 10 0 1 0 0 1 0 1 0 0 1 0 1 1 ... [收起]
[展开]
25303:数字逻辑(第三版)
粉丝: {{bookData.followerCount}}
文本内容
第51页

40 数字逻辑(第三版)

图 2-7(a)中,只有一个最小项 m0,所以单独画圈,也就是说该函数已经是最简;

图 2-7(b)中,最小项 m1 和 m3 几何相邻,可以画圈合并,即 m m AB AB B 1 3 + =+= ;

图 2-7(c)中,最小项 m0 和 m1 几何相邻,可以画圈合并,即 m m AB AB A 0 1 + = += ;

图 2-7(d)中,最小项 m1 和 m0 几何相邻,可以画圈合并,同时最小项 m1和 m3几何相邻,

也可以画圈合并,即 ( )( ) m m m m AB 10 13 + + + =+ ;

图 2-7(e)中,所有 4 个最小项都相邻,可以画圈合并,即 mmmm 0123 + ++=1。

根据上述讨论,可以发现任意 2(21

)个相邻 1 方格合并可以消去一个变量。

(2)三变量卡诺图的典型卡诺圈

三变量卡诺图的典型卡诺圈除了以上二变量典型卡诺圈的情形外,还具有图 2-8 所示的一些

典型卡诺圈。

AB

C 00 01 11 10

AB

C 00 01 11 10

AB

C 00 01 11 10

0 1 0 0 1 0 1 0 0 1 0 1 1 1 1

1 0 0 0 0 1 1 0 0 1 1 0 0 0 0

(a) (b) (c)

AB

C 00 01 11 10

AB

C 00 01 11 10

AB

C 00 01 11 10

0 1 1 1 1 0 1 1 1 1 0 1 1 1 1

1 0 1 0 0 1 0 1 1 0 1 1 1 1 0

(d) (e) (f)

AB

C 00 01 11 10

AB

C 00 01 11 10

AB

C 00 01 11 10

0 1 0 0 1 0

1 0 0 1 0 1 1 1 1

1 1 1 1 1 1 0 1 1 0 1 1 1 1 1

(g) (h) (i)

图 2-8 三变量典型卡诺圈

图 2-8(a)中,最小项 m0 和 m4 相对相邻,可以画圈合并,即

m m ABC ABC BC 0 4 += + =

图 2-8(b)中,最小项 m0 和 m1 几何相邻又与 m4、m5 相对相邻,可以画圈合并,即

( )( ) m m m m AB AB B 01 45 ++ + =+=

图 2-8(c)中,最小项 m0、m2、m6 和 m4 处于一行为几何相邻,可以画圈合并,即

m m m m ABC ABC ABC ABC C 0264 + ++= + + + =

第52页

第 2 章 逻辑代数基础 41

其他情形请读者自行分析。

同样的原因,任意 4(22

)相邻的 1 方格合并可以消去两个变量。

(3)四变量卡诺图的典型卡诺圈

四变量卡诺图的典型卡诺圈除了以上二变量和三变量典型卡诺圈的情形外,还具有图 2-9 所示

的一些典型卡诺圈。

AB

CD 00 01 11 10

AB

CD 00 01 11 10

AB

CD 00 01 11 10

00 1 0 0 1 00 1 1 1 1 00 1 0 0 1

01 1 0 0 1 01 0 0 0 0 01 0 1 1 0

11 1 0 0 1 11 0 0 0 0 11 0 1 1 0

10 1 0 0 1 10 1 1 1 1 10 1 0 0 1

(a) (b) (c)

AB

CD 00 01 11 10

AB

CD 00 01 11 10

AB

CD 00 01 11 10

00 1 1 1 1 00 0 1 1 0 00 0 1 1 0

01 1 1 1 1 01 1 1 1 1 01 1 0 0 1

11 0 1 0 0 11 1 1 1 1 11 1 0 0 1

10 0 1 0 0 10 0 1 1 0 10 0 1 1 0

(d) (e) (f)

AB

CD 00 01 11 10

AB

CD 00 01 11 10

AB

CD 00 01 11 10

00 1 1 1 0 00 1 1 0 1 00 1 1 1 1

01 1 1 1 0 01 1 1 0 1 01 1 1 1 1

11 1 1 1 0 11 1 1 0 0 11 1 1 1 1

10 1 1 1 0 10 1 1 0 0 10 1 1 1 1

(g) (h) (i)

图 2-9 四变量典型卡诺圈

图 2-9(a)中,最小项 m0、m1、m3、m2 几何相邻又与 m8、m9、m11、m10 相对相邻,可以画圈

合并,即

( )( ) m m m m m m m m AB AB B 0 1 3 2 8 9 11 10 + ++ + ++ + = + =

图 2-9(c)中,最小项 m0、m2 相对相邻又与 m8、m10 相对相邻,可以画圈合并,即

第53页

42 数字逻辑(第三版)

( )( ) m m m m AB D ABD BD 0 2 8 10 +++ = + =

图 2-9(h)中,最小项 m0、m1、m3、m2 以及 m4、m5、m7、m6几何相邻,可以画圈合并,其

中最小项 m0、m1 又与 m8、m9 相对相邻,又可以画圈合并,即

( )( ) m m m m m m m m m m m m A BC 0132 457 6 0189 + + + + + + + + + + + =+

其他情形也请读者自行分析。

同样可以发现,任意 8(23

)个相邻 1 方格合并可以消去 3 个变量。

根据以上讨论,可归纳出 n 个变量卡诺图上最小项的合并规律。

① 卡诺圈中的小方格的数量必须为 2m 个(m≤n)。

② 卡诺圈中的 2m 个小方格含有 m 个不同变量,(n−m)个相同变量。

③ 卡诺圈中 2m 个小方格,可用一个含(n−m)个变量的“与”项表示,该“与”项由这些

最小项中的相同变量构成。

④ 当 m=n 时,卡诺圈覆盖了整个卡诺图,可用 1 表示,即 n 个变量的全部最小项之和为 1。

2-5-3 卡诺图化简

在图 2-7、图 2-8 和图 2-9 中,各个卡诺圈均有不同的特点,为了说明它们的特点并有规律

地化简逻辑函数,先定义如下几个基本概念。

蕴涵项:在函数的与或表达式中,每一个与项称为该函数的蕴涵项。对应在卡诺图中,它就

是一个卡诺圈。卡诺图越大,则它包含的 1 方格数越多,且对应此蕴涵项的变量数目越少。

质蕴涵:若函数中的蕴涵项不是该函数的其他蕴涵项的子集,则此蕴涵项称为质蕴涵,又称素

项或质项,在卡诺图中称为极大圈。如图 2-9(e)中的两个卡诺圈。

实质最小项:只被一个质蕴涵所覆盖的最小项称为实质最小项,又称实质 1 单元。在卡诺图中,

该最小项只被一个卡诺圈覆盖。如图 2-8(d)中的 011 方格,图 2-9(h)中的 1000 和 1001 方格。

必要质蕴涵:包含实质最小项的质蕴涵,即为必要质蕴涵。在卡诺图上称为必要极大圈。

卡诺图上的最小覆盖:挑选数目最少的质蕴涵(极大圈),它们覆盖了卡诺图上全部的 1 方格

(最小项),这就是最小覆盖。显然,用最小覆盖的结果生成的逻辑表达式就是最简的表达式。

1.卡诺图法化简逻辑函数的基本步骤

在上述定义的基础上,给出用卡诺图化简函数的基本步骤。

① 将逻辑函数表示在卡诺图上。

② 画出所有的极大圈,确定全部实质最小项并选出所有的必要极大圈。

③ 如果所选出的所有必要极大圈已覆盖了卡诺图上所有的 1 方格,那么所有必要极大圈的

集合就是卡诺图上的最小覆盖。

④ 如果还有 1 方格未被必要极大圈覆盖,那么再选择最少的极大圈覆盖剩余的 1 方格,即

获得最小覆盖。

⑤ 写出最小覆盖所对应的逻辑表达式。

2.将逻辑函数化简成最简与或表达式

【例 2-21】化简函数 Y ABCD m 1( , , , ) (0,2,4,5,7,8,10,13,15) =∑ 。

解:① 将函数 Y1(A,B,C,D)表示在图 2-10(a)中。

② 画出所有必要极大圈,如图 2-10(b)所示。

第54页

第 2 章 逻辑代数基础 43

③ 确定实质最小项,它们是 m2、m7、m8、m10、m13、m15。选择出相应的必要极大圈,它们是

a、b、c 或者是 a、b、d,这 3 个必要极大圈已经覆盖全部 1 方格。

④ 写出最简逻辑表达式:

Y A B C D a b c B D BD AC D 1(,, , ) =++= + +

Y A B C D a b d B D BD ABC 1(,, , ) =++ = + +

c d

AB

CD 00 01 11 10

AB

CD 00 01 11 10

00 1 1 0 1 00 1 1 0 1 a

01 0 1 1 0 01 0 1 1 0

11 0 1 1 0 11 0 1 1 0 b

10 1 0 0 1 10 1 0 0 1

(a)卡诺图 (b)必要极大圈

图 2-10 函数 Y1(A,B,C,D)的卡诺图和必要极大圈

【例 2-22】化简函数 Y ABCD m 2 ( , , , ) (2,3,6,7,8,10,12) = ∑ 。

解:① 将函数 Y2(A,B,C,D)表示在图 2-11(a)中。

② 画出所有必要极大圈,如图 2-11(b)所示。

③ 确定实质最小项,它们是 m3、m6、m7、m12。选择出相应的必要极大圈,它们是 a、b、c

或者是 a、b、d,这 3 个必要极大圈已经覆盖全部 1 方格。

④ 写出最简逻辑表达式

Y A B C D a b c AC AC D AB D 2 (,, , ) =++= + +

Y A B C D a b d AC AC D BCD 2 (,, , ) =++ = + +

a b

AB

CD 00 01 11 10

AB

CD 00 01 11 10

00 0 0 1 1 00 0 0 1 1 c

01 0 0 0 0 01 0 0 0 0

11 1 1 0 0 11 1 1 0 0

10 1 1 0 1 10 1 1 0 1 d

(a)卡诺图 (b)必要极大圈

图 2-11 函数 Y2(A,B,C,D)的卡诺图和必要极大圈

第55页

44 数字逻辑(第三版)

【例 2-23】化简函数 Y A B C D BCD BC ACD ABC 3 (,, , ) = ++ + 。

解:① 将函数 Y3(A,B,C,D)表示在图 2-12(a)中。

② 画出必要极大圈 a、b、c,如图 2-12(b)所示。

a b

AB

CD 00 01 11 10

AB

CD 00 01 11 10

00 0 1 1 0 00 0 1 1 0

01 1 1 1 0 01 1 1 1 0

11 1 0 0 1 11 1 0 0 1 c

10 0 0 0 1 10 0 0 0 1

(a)卡诺图 (b)必要极大圈

图 2-12 函数 Y3(A,B,C,D)的卡诺图和必要极大圈

③ 确定 a、b、c 这 3 个必要极大圈已经覆盖全部 1 方格。

④ 写出最简逻辑表达式:

Y A B C D a b c A BD BC ABC 3 (,, , ) =++= + +

从上述例子可以看出,用卡诺图法化简逻辑函数时,通常会出现可选取多个合并方向的小方

格,从而必要极大圈有多种画法,不是唯一的,因此同一逻辑函数的化简结果可能具有多样性。

卡诺图法化简的总原则是:在覆盖所有 1 方格的前提下,卡诺圈的个数达到最少,每个卡诺

圈达到最大。

3.将逻辑函数化简成最简或与表达式

上面介绍了用卡诺图求函数最简与或表达式的方法和步骤。而在某些情况下,需要求函数的

最简或与表达式。

有两种方法求函数的最简或与表达式。

① 如果已知函数是形如 Y ABCD m (,,, ) = ∑ i 这样的最小项之和的形式,即已知函数是与或

表达式,可以根据反演规则先求其反函数 Y 的最简与或表达式,再对表达式求反,即得 Y 的最简

或与表达式。

② 如果已知函数是形如 Y ABCD M (,,, ) =∏ i 这样的最大项之积的形式,即已知函数是或与

表达式,则可先根据对偶规则求 Y'的与或表达式,再对所得表达式求对偶。

在卡诺图上,反函数 Y 的最小项是与 0 方格一一对应的,因此合并卡诺图中所有的 0 方格便

可得到Y 的最简与或表达式。

【例 2-24】求函数 Y ABCD m 4 ( , , , ) (0 1 3 8 9 1112 1315) = ∑ ,,,,,,,, 的最简或与表达式。

解:作出函数 Y4(A,B,C,D)的卡诺图,如图 2-13 所示,合并卡诺图上的 0 方格得到 Y4 的最简

与或表达式

Y A B C D AB CD 4 (,,, ) = +

第56页

第 2 章 逻辑代数基础 45

对函数式两边求反得

Y ABCD A B C D 4 ( , , , ) ( )( ) =+ +

【例 2-25】求函数 Y ABCD M 5 ( , , , ) (4,5,6,7,12,13,15) =∏ 的最简或与表达式。

解:首先求 Y 的对偶式

5 ( , , , ) (0,1,2,3,8,9,10,11,14) ' Y ABCD m = ∑

作出对偶函数 Y5' 的卡诺图,如图 2-14 所示,合并卡诺图上的 1 方格得到 Y5'的最简与或表达式

' Y A B C D B ACD 5 (,, , ) = +

再对 Y5' 求对偶,即

Y ABCD BA C D 5 (,, , ) ( ) = ++

AB

CD 00 01 11 10

00 1 0 1 1

01 1 0 1 1

11 1 0 1 1

10 0 0 0 0

图 2-13 函数 Y4(A,B,C,D)的卡诺图和必要极大圈 图 2-14 函数 Y5'(A,B,C,D)的卡诺图和必要极大圈

2-5-4 无关项的卡诺图表示

在某些特殊电路中,其输出并不是与 2n 种输入组合都有关,而是仅与其中的一部分输入组合

有关,而与另一部分的输入组合无关。利用这一特点可以化简逻辑函数。

当函数输出与某些输入组合无关时,这些输入组合就称无关项,又称任意项或约束项。这里

的“无关”有两个含义:① 这些输入组合在正常操作中不会出现;② 即使这些输入组合可能出

现,但输出实质上与它们无关。换句话说,就是当输入出现这些组合时,其所对应的输出值可以

为 0,也可以为 1。

与无关项相关的函数就称为包含无关项的逻辑函数,或称为具有约束条件的逻辑函数。若以

di 表示无关项,则约束条件或称约束方程表示为 N = Σdi = 0。这说明包含无关项的逻辑函数,其

中的无关项出不出现在表达式中,对函数的逻辑功能并无影响。但是,适当地利用无关项,可以

使逻辑函数的表达式得到进一步的简化。

【例 2-26】一个 BCD 码输入素数检测器,当输入为素数时,输出为 1。求输出函数 Y 的最简

与或表达式。

解:设 BCD 码的输入为 B3B2B1B0,在正常操作时,最小项 m10~m15 永远不会出现,输出函数

表达式可以写为

4 4 Ym d = + ∑ ∑ (2,3,5,7) (10,11,12,13,14,15)

上式说明,函数 Y 对于最小项(2,3,5,7)必须为 1,对于最小项(10~15)可以为任意

值,对于其他最小项必须为 0。于是画出图 2-15(a)所示的卡诺图,图中 d 表示输入组合的无关

AB

CD 00 01 11 10

00 1 0 0 1

01 1 0 0 1

11 1 0 0 1

10 1 0 1 1

第57页

46 数字逻辑(第三版)

项,图中的卡诺圈是在不考虑无关项时绘得的。这样得到输出函数的表达式为

Y B BB BBB = + 3 21 320

B3B2

B1B0 00 01 11 10

B3B2

B1B0 00 01 11 10

00 0 0 d 0 00 0 0 d 0

01 0 1 d 0 01 0 1 d 0

11 1 1 d d 11 1 1 d d

10 1 0 d d 10 1 0 d d

(a)卡诺图 (b)修改后的卡诺图

图 2-15 BCD 码素数检测器函数的卡诺图

现在考虑无关项,对图 2-15(a)的卡诺圈进行修正,得到图 2-25(b),其中将无关项(10,11,

13,15)看成 1 方格,无关项(12,14)看成 0 方格,于是得到输出函数的表达式为

Y BB BB = + 21 20

比较上述两个函数表达式,显然后者更简化。

通过上述例子,这里给出用卡诺图化简含无关项的逻辑函数的一般规则:

① 画覆盖 1 方格的极大圈时要把 d 方格包含在内,画出尽可能大的圈;

② 不画仅覆盖 d 方格的圈,因为它对应的与项对于逻辑函数来说是不必要的;

③ 不能圈画任何 0 方格。

【例 2-27】化简函数 4 4 Ym d = + ∑ ∑ (4,5,13,15) (2,3,7,9,14) 。

解:设函数的变量为 A、B、C、D,作出函数 Y 的卡诺图,并画出必要极大圈,如图 2-16

所示,化简后的函数表达式为 Y ABC BD = + 。

AB

CD 00 01 11 10

00 0 1 0 0

01 0 1 1 d

11 d d 1 0

10 d 0 d 0

图 2-16 函数 4 4 Ym d = + ∑ ∑ (4,5,13,15) (2,3,7,9,14) 的卡诺图

小 结

本章主要介绍了逻辑代数的基本知识。

第58页

第 2 章 逻辑代数基础 47

逻辑代数是研究数字系统逻辑设计的基础理论。逻辑代数有一些重要的定律和规则需要熟练

掌握。逻辑变量只有 0 和 1 两种取值。逻辑代数中只有 3 种基本运算,即“与”运算、“或”运

算、“非”运算,这 3 种基本运算构成的各种复杂逻辑关系,用逻辑函数来描述。

逻辑函数有逻辑表达式、真值表、卡诺图及逻辑图 4 种表示法,它们各有特点,各适用于不

同的场合,它们之间可以相互变换。逻辑函数表达式有“和之积”及“积之和”两种基本形式,

相应的有标准“积之和”和标准“和之积”两种标准形式。一个函数的基本形式不唯一,标准形

式具有唯一性。可以通过代数转换法和真值表转换法两种方法求一个逻辑函数表达式的标准形式。

逻辑函数的化简介绍了 3 种方法:代数法、卡诺图法和蕴涵法。卡诺图法直观、方便易掌握,

代数法不受变量数目约束,蕴涵法规则性强,三者各有优点。

习 题

1. 应用逻辑代数,判断下式是否成立。

(1)假设 X 和 Y 为逻辑变量。当 X·Y = 0 且 X + Y = 1 时, X Y = 。

(2)假设 X 和 Y 为逻辑表达式。当 X·Y = 0 且 X + Y = 1 时, X Y = 。

2. 用真值表验证下列等式。

(1) AB AB A B A B + =+ + ( )( )

(2) AB BC CA A B B C C A + + =+ + + ( )( )( )

3. 求下列函数的反函数和对偶函数。

(1) Y AB AB BC =++

(2) Y A B A C BD E =+⋅++ + ( )( )

(3) Y AB ABC B CD =+ + ( )

(4) Y A B CD A =+ + [ ( )]

4. 用逻辑代数的定律证明下列等式。

(1) AB AB AB A B +++ =1

(2) ABC ABC AB BC AC + = ++ ( )

(3) BC D D B C AD B B D ++ + + =+ ( )( )

(4) ( ) AB AC AB AC + =+

5. 将下列函数表示成标准与或表达式以及标准或与表达式,并据此写出函数的真值表。

(1) Y A B C D AB ABCD BCD (,, , ) =+ +

(2) Y A B C D A C D B CD ( , , , ) ( )( ) =+ +

(3) Y A B C AB AC BC (,, ) =+ +

(4) Y ABC A C B C A B C ( , , ) ( )( )( ) = + + ++

6. 用代数法化简下列函数。

(1) Y AB BCD AB =+ +

(2) Y AC ABC ACD CD =+ + +

第59页

48 数字逻辑(第三版)

(3) Y AC B BD ACD = ++ ( )

(4) Y AB AC BC BC BD BD ADE F G =+++++ + + ( )

7. 用卡诺图法将下列函数化简成最简与或表达式和最简或与表达式。

(1) Y A B C AB A B C (,, ) ( ) = ++

(2) Y A B C D ACD BCD ACD BCD (,, , ) = +++

(3) Y ABCD A B A B C A C D ( , , , ) ( )( )( ) = + ++ ++

(4) Y ABC m ( , , ) (1,3,5,6,7) = ∑

(5) Y ABC M ( , , ) (0,1,3,4,5) = ∏

(6) Y ABCD m ( , , , ) (1,4,5,6,7,9,14,15) = ∑

(7) Y ABCD m ( , , , ) (1,3,4,5,6,8,10,14) = ∑

(8) Y ABCD m ( , , , ) (0,1,2,5,6,7,10,11,13,15) = ∑

(9) Y ABCD M ( , , , ) (1,7,9,13,15) =∏

(10) Y ABCD M ( , , , ) (2,4,6,10,11,12,13,14,15) =∏

8. 如图 2-17 所示的卡诺图,当 a,b,c 各取何值时能得到最简的与或表达式?

9. 卡诺图如图 2-18 所示。

(1)若 b a = ,当 a 取何值时能得到最简的与或表达式?

(2)a 和 b 各取何值时能得到最简的与或表达式?

AB

CD 00 01 11 10

00 1 1 1 0

01 a 0 b 0

11 0 0 c 0

10 1 1 1 0

图 2-17 题 8 卡诺图 图 2-18 题 9 卡诺图

AB

CD 00 01 11 10

00 1 0 b 1

01 1 0 1 1

11 0 0 0 0

10 1 1 1 a

第60页

数字系统中常用的各种数字部件,就其结构和工作原理而言可以分成两大类:组合逻辑

电路和时序逻辑电路,分别简称为组合电路和时序电路。

如果一个逻辑电路在任何时刻产生的稳定输出状态仅仅取决于该时刻各输入状态的组

合,而与过去的输入状态和输出状态无关,则称该逻辑电路为组合逻辑电路。而时序逻辑电

路的输出不仅取决于当时的输入,而且与过去的输入情况有关,也就是说,与过去的电路状

态有关。时序逻辑电路将在下一章讨论。

组合逻辑电路由输入变量、逻辑门和输出变量组成,逻辑门接收输入信号并产生输出信

号。该过程将给定的输入数据以二进制的形式转换成所需的输出数据。组合逻辑电路的一般

结构如图 3-1 所示。

图 3-1 组合逻辑电路的一般结构

图中,X1,X2,…,Xn 是电路的 n 个输入信号,F1,F2,…,Fm 是电路的 m 个输出信号。输

出信号是输入信号的逻辑函数,表示为

F fXX X ii n = (, ,, ) 1 2 " i m =1,2,3, , "

组合逻辑电路具有如下特点:

① 输入信号是单向传输的,电路中不存在任何反馈回路。

② 电路由逻辑门电路组成,不包含任何记忆元件,没有记忆能力。

本章首先介绍构成组合逻辑电路的单元电路——门电路,其次介绍组合逻辑电路的一般分析

和设计方法,并对组合逻辑电路中的竞争险象(又称“竞争-冒险”)问题进行一般性讨论,在此

基础上讨论部分常用组合逻辑标准构件。

3-1 门 电 路

实现基本逻辑运算和常用复合逻辑运算的逻辑器件统称为逻辑门电路。逻辑门电路是逻辑设

计的最小单位,不论其内部结构如何,都是组成数字系统的基本单元电路。了解逻辑门电路的内

部结构和工作原理,对数字逻辑电路的分析和设计是十分必要的。

3-1-1 二极管、三极管门电路

半导体器件都有导通和截止的开关作用,数字电路中的半导体二极管和半导体三极管一般是

以开关方式运用的。在二极管和三极管开关电路的基础上增加适当的元件,可以构成与门、或门

和非门。

第 章 3 组 合 逻 辑

输入 X1,X2,…,Xn 输出 组合逻辑电中路 F1,F2,…,Fm

第61页

50 数字逻辑(第三版)

1.二极管与门

二极管组成的与门电路的电路结构如图 3-2 所示,其逻辑符号如图 3-3 所示。

图 3-2 二极管组成的与门电路的电路结构 图 3-3 与门逻辑符号

A、B 为输入,输入信号为+5 V或0 V,F 为输出。其工作原理如下:

① 当输入端 A、B 输入都为 0 V 时,这时 VD1、VD2都处于正向导通状态。二极管两端保持

正向压降,那么 F 输出为+0.7 V。

② 当输入端 A、B 输入中有 0 V 和+5 V 时,此时与 0 V 输入端对应的二极管处于正向导通状

态,与+5 V 输入端对应的二极管处于反向截止状态,那么 F 输出为+0.7 V。

③ 当输入端 A、B 输入都为+5 V 时。这时电路处于等电位,F 输出为+5 V。

上述情形可归纳成表 3-1。在此基础上,假设输入+5 V 用 1 表示,0 V 用 0 表示;输出为 2.4 V

以上用 1 表示,1 V 以下用 0 表示。上述分析结果归纳起来可得到该电路所实现功能的真值表,

如表 3-2 所示。

表 3-1 二极管与门的功能表(单位:V) 表 3-2 二极管与门的真值表

A B F A B F

0 0 0.7 0 0 0

0 5 0.7 0 1 0

5 0 0.7 1 0 0

5 5 5 1 1 1

从真值表可以看出,只要有一个输入为 0,则输出一定为 0;只有当所有输入都为 1 时,输出

才为 1。因此该电路所实现的逻辑功能是与逻辑,可作为与门。

2.二极管或门

二极管组成的或门电路的电路结构如图 3-4 所示。A、B 为输入,输入信号为+5 V或0 V,F

为输出。其工作原理如下:

① 当输入端 A、B 输入都为 0 V 时,这时电路处于等电位,F 输出为 0.7 V。

② 当输入端 A、B 输入中有 0 V 和+5 V 时,此时与+5 V 输入端对应的二极管处于正向导通

状态,该二极管两端保持正向压降;与 0 V 输入端对应的二极管处于反向截止状态,那么 F 输出

为+4.3 V。

③ 当输入端 A、B 输入都为+5 V 时,这时 VD1、VD2 都处于正向导通状态。二极管两端保持

正向压降,那么 F 输出为+4.3 V。

上述情形可归纳成表 3-3。在此基础上,假设输入+5 V 用 1 表示,0 V 用 0 表示;输出为 2.4 V

+5V

R

F

VD1

VD2

A

B

&

与门

第62页

第 3 章 组合逻辑 51

以上用 1 表示,1 V 以下用 0 表示。上述分析结果归纳起来可得到该电路所实现功能的真值表,

如表 3-4 所示。

表 3-3 二极管或门的功能表(单位:V) 表 3-4 二极管或门的真值表

A B F A B F

0 0 0.7 0 0 0

0 5 4.3 0 1 1

5 0 4.3 1 0 1

5 5 4.3 1 1 1

从真值表可以看出,只要有一个输入为 1,则输出一定为 1;只有当所有输入都为 0 时,输出

才为 0。因此该电路所实现的逻辑功能是或逻辑,可作为或门,其逻辑符号如图 3-5 所示。

图 3-4 二极管组成的或门电路的电路结构 图 3-5 或门逻辑符号

3.三极管非门

非门又称反相器,三极管组成的非门电路的电路结构如图 3-6 所示。A 为输入,F 为输出。

其工作原理如下:

① 当 A 输入为+5 V 时,则三极管 VT 饱和导通,F 输出在+0.4 V 以下。

② 当 A 输入为 0 V 时,三极管 VT 截止,F 输出电位将接近于+5 V。

假设输入+5 V 时用 1 表示,0 V 用 0 表示;输出为 2.4 V 以上用 1 表示,1 V 以下用 0 表示。则

电路输入为 0 时,输出为 1;电路输入为 1 时,输出为 0。因此该电路所实现的逻辑功能是非逻辑,

可作为非门。三极管非门的功能表和真值表分别如表 3-5 和表 3-6 所示,其逻辑符号如图 3-7 所示。

表 3-5 三极管非门的功能表(单位:V) 表 3-6 三极管非门的真值表

A F A F

0 5 0 1

5 0.4 1 0

4.DTL 与非门

上面用开关元器件二极管、三极管实现了简单逻辑门电路,另外可以采用上述 3 种简单门电

路组成复合逻辑门电路。虽然采用二极管与、或门的组合,可扩大其逻辑功能,所实现的电路简

单、经济,但是在许多门互相连接时,由于二极管有正向压降,通过一级门电路以后,输出电平

对输入电平约有 0.7 V 的偏移。这样,经过一连串的门电路后,高低电平就会严重偏离原来的数

A

B

VD1

VD2

F

R

.1

+

或门

第63页

52 数字逻辑(第三版)

值,以致造成错误结果,而且二极管门负载能力较差。

图 3-6 三极管组成的非门电路的电路结构 图 3-7 非门逻辑符号

图 3-8 是一种早期的简单集成与非门电路结构原理图,它是由二极管与门和三极管非门串联

而成,称为二极管-三极管逻辑门,输入级为二极管,输出级为三极管的逻辑电路,简称 DTL

(Diode-Transistor Logic)电路。

图 3-8 DTL 与非门电路结构原理图

二极管 VD4、VD5与电阻 R1组成分压器对 P 点的电位进行变换。其工作原理如下:

① 当输入端 A、B、C 都是高电平时(如+5 V),二极管 VD1~VD3 均截止,而 VD4、VD5 和

VT 导通,UP约为 3×0.7 V,即 2.1 V,VD4、VD5呈现的电阻很小,使流入三极管的基极电流 IB足

够大,从而使三极管饱和导通,UF 约为 0.3 V,即输出为低电平。

② 在 3 个输入端 A、B、C 当中,只要有一个为低电平 0.3 V 时,UP将为(0.3+0.7) V=1 V。此

时,三极管 VT 截止,UF 约为+VCC,即输出为高电平。

可见此逻辑门具有与非逻辑关系。与非门的真值表如表 3-7 所示,逻辑符号如图 3-9 所示。

表 3-7 与非门的真值表

A B C F

0 0 0 1

0 0 1 1

0 1 0 1

0 1 1 1

1 0 0 1

1 0 1 1

1 1 0 1

1 1 1 0

+5V

Rc

F

Rb

A VT

1

非门

A

B

C

VD3

VD2

VD1

R1

P

VD4 VD5

R3

VT

F

R2

+VCC(+5V)

图 3-9 与非门逻辑符号

&

第64页

第 3 章 组合逻辑 53

从电路结构上看,DTL 电路由二极管与门通过两个二极管 VD4、VD5 连接三极管非门而成。

VD4、VD5的作用是改变使三极管进入导通时 P 点的电位(约 2.1 V),使输入端的干扰不易通过它

们反映到三极管的基极,从而提高了抗干扰能力,VD4、VD5 的作用是电平转移,所以 VD4、VD5

称为电平转移二极管。

3-1-2 TTL 门电路

TTL 门电路是晶体管-晶体管逻辑(Transistor-Transistor Logic)电路的简称。目前,TTL 电路

被广泛地用于中小规模集成逻辑电路中,因为这种电路的功耗大、线路复杂,不宜制作大规模集

成逻辑电路。

1.典型 TTL 与非门

上面介绍的 DTL 与非门,存在的不足之处是

工作速度较慢。因而,在此基础上产生了 TTL 电

路。TTL 与非门的典型电路结构如图 3-10 所示。

图中 VT1为多发射极管,它的 3 个发射结起

着图 3-8 中输入二极管 VD1~VD3 的作用,组成

了输入级;VT1的集电结代替了图 3-8 中的 VD4,

而另一只三极管 VT2 的发射结代替了 VD5,组成

了中间级,VT5 组成了输出级,起着图 3-8 中 VT

的作用,其中 VT3 和 VT4组成复合管,作为由输出管 VT5 组成的反相器的有源负载。

2.TTL 与非门的主要外部特性参数

(1)输出高电平 UOH和输出低电平 UOL

输入端在施加规定的电平下,使输出端为高电平时的输出电压值称为输出高电平 UOH。如果

用正与非门测试,一个输入端接低电平,其余输入端接 4.5 V,被测输出端抽出电流,其余输出端

开路,测试输出端的电压值。UOH的典型值约为 3.4 V,产品规范值 UOH≥2.7 V。

输入端在施加规定的电平下,使输出端为低电平时的输出电压值称为输出低电平 UOL。如果

用正与非门测试,所有输入端接高电平,被测输出端注入电流,其余输出端开路,测试输出端的

电压值。UOL 的典型值约为 0.25 V,产品规范值 UOL≤0.4 V。

(2)开门电平 UON和关门电平 UOFF

实际门电路中,高电平或低电平都不可能是标称的逻辑电平,而是在一个范围内。通常把最

小高电平称为开门电平 UON,最大低电平称为关门电平 UOFF。

开门电平 UON 和关门电平 UOFF在电路中是很重要的参数,它们反应了电路的抗干扰能力。实

际传输的高电平电压值与开门电平之间的差值称为高电平噪声容量 UNH,关门电平与实际传输的

低电平电压值之间的差值称为低电平噪声容量 UNL。一般 TTL 门电路的高电平噪声容量较低电平

噪声容量大。

(3)扇入系数 NI和扇出系数 NO

门电路允许的输入端数目,称为该门电路的扇入系数 NI。在使用时,若要求门电路的输入端数

目超过该门电路的扇入系数,则可使用“与扩展器”或者“或扩展器”来增加输入端数目,也可用

分级实现的方法来减少对门电路输入端数目的要求。若使用所要求的输入端数目比门电路的扇入系

A

B

C

VT1 VT2

VT3

R3 R5

R1 R2 R4

VT4

VT5

F

VCC(+5V)

图 3-10 典型的 TTL 与非门电路

第65页

54 数字逻辑(第三版)

数小,则可将不用的输入端接高电平(+5 V)或接低电平(地),这要根据门电路的逻辑功能而定。

一般门电路只有一个输出端,但常与下一级的多个门电路的输入端连接。一个门电路的输出

端所能连接的下一级同类门电路输入端的个数,称为该门电路的扇出系数 NO。NO反映了该门电路

的负载能力。一般门的扇出系数为 8,驱动门的扇出系数可达 25。

(4)平均传输延迟时间 tpd

当在门电路的输入端加一变化信号时,需经过一定的时间间隔才能从输出端得到一个相应信

号,这个时间间隔称为该门电路的延迟时间。通常,以信号的上升或下降沿的 50%处计时,开门

时的延时称为开门延时 tpd(ON),关门时的延时称为关门延时 tpd(OFF)。通常,二者不等,平均延迟时间

则定义为二者的平均值,即

tpd ( 1

2 = tpd(ON) + tpd(OFF) )

显然,平均延迟时间越小,门电路的响应速度越快。

以上,以 TTL 门电路为例,对逻辑门电路的外部性能指标进行了介绍,至于每种实际门的具

体参数可查阅有关手册和产品说明书。

3.TTL 三态门

三态输出门简称三态门,有 3 种输出状态:输出高电平、输出低电平和输出高阻态,前两种

状态为工作状态,后一种状态为禁止状态。在禁止状态下,其输出高阻相当于开路,表示与其他

电路无关,不是一种逻辑值。

图 3-11 所示给出了三态与非门的电路结构和逻辑符号。该电路是在一般与非门的基础上,

附加了使能控制端和控制电路构成的。

TTL 三态与非门的工作原理如下:

① 当控制信号 EN=1 时,二极管 VD 反偏,此时电路功能与一般与非门并无区别。

② 当控制信号 EN=0 时,一方面因为 VT1 有一个输入端为低电平,使得 VT2、VT5 截止。另

一方面由于二极管 VD 导通,迫使 VT3 的基极电位变低,致使 VT3、VT4 也截止,这样输出 F 便被

悬空,即处于高阻状态。

因为该电路是在 EN=1 时为正常工作状态,所以称为使能端高电平有效的三态与非门。如

果是低电平有效,则在逻辑符号的控制端加一个小圆圈,并将控制信号写成 EN ,如图 3-12

所示。

(a)电路结构 (b)逻辑符号

图 3-11 TTL 三态与非门的电路结构和逻辑符号 图 3-12 几种常见三态门逻辑符号

&

∇ F

A

B

F

VT5

VT4

R3 R5

VT3

VT2

VT1

VD

R1 R R2 4

EN

A

B

VCC(+5V)

A

B

EN

A

B

EN

F

A

B

EN

F

A

B

EN

F F

&

&

&

&

(a) (b)

(c) (d)

EN

第66页

第 3 章 组合逻辑 55

三态与非门主要应用于总线传送,它既可以用于单向数据传送,又可以用于双向数据传送。

图 3-13 为用三态门构成的单向数据总线。当某个三态门的控制端 EN 为 0 时,该逻辑门处于

工作状态,数据经反相器送至总线。为了保证数据传送的正确性,任意时刻 n 个三态门的控制端

只能有一个为 0,其余为 1,即只允许一个数据端与总线接通,其余均断开,以便实现 n 个数据分

时传送。

图 3-14 为用两种不同控制输入的三态门构成的双向数据总线。图中 EN =0 时,G1 门工作,

G2 门处于高阻态,数据 D1 被取反后送至总线; EN =1 时,则正好相反,从而实现了数据的分时

双向传送。

图 3-13 用三态门构成的单向数据总线 图 3-14 用三态门构成的双向数据总线

多路数据通过三态门共享总线,实现数据分时传送的方法,在计算机和其他数字系统中被广

泛应用。

4.常用的 TTL 集成电路芯片

先简单介绍有关集成门电路的最基本的型号编码知识。

型号说明:

C T 74 LS 00 C J

① ② ③ ④ ⑤ ⑥ ⑦

① C:中国。

② T:TTL 集成电路。

③ 74/54:国际通用 74/54 系列;

④ L:低功耗系列;H:高速系列;S:肖特基系列;空白:标准系列;LS:低功耗肖特基系

列;AS:先进肖特基系列;ALS:先进低功耗肖特基系列;

⑤ 00:与非门(功能编码)。

⑥ C:0~70 ℃(只出现在 74 系列);M:−55~125 ℃(只出现在 54 系列)。

⑦ D:多层陶瓷双列直插封装;J:黑瓷低熔玻璃双列直插封装;P:塑料双列直插封装;F:

多层陶扁平封装。

图 3-15 所示为几种常见的门电路引脚排列图。图中芯片均采用正逻辑,图 3-15(a)为四 2

输入与非门,即由四个二输入的与非门构成;图 3-15(b)为四 2 输入或非门;图 3-15(c)为六

反相器;图 3-15(d)为四 2 输入与门;图 3-15(e)为三 3 输入与非门;图 3-15(f)为双 4 输

入与非门;图 3-15(g)为四异或门;图 3-15(h)为双 2 线与或非门。图中 NC 引脚表示无连接

(No Connection)。

BUS

G1

G2

Gn An

A2

A1

∇ 1

∇ 1

∇ 1

D1 1

∇ D2

EN 1

G1

G2

G3

1

ENn

EN 2

EN1

第67页

56 数字逻辑(第三版)

(a)74LS00 (b)74LS02

(c)74LS04 (d)74LS08

(e)74LS10 (f)74LS20

(g)74LS86 (h)74LS51

图 3-15 几种常见的门电路引脚排列图

1 2 3 4 5 6 7

1A 1B 2A 2B 2C 2Y GND

&

&

&

14 13 12 11 10 9 8

VCC 1C 1Y 3C 3B 3A 3Y

&

&

14 13 12 11 10 9 8

VCC 2D 2G NC 2B 2A 2Y

1 2 3 4 5 6 7

1A 1B NC 1C 1D 1Y GND

14 13 12 11 10 9 8

VCC 4B 4A 4Y 3B 3A 3Y

=1 =1

=1 =1

& &

&

& &

.1

14 13 12 11 10 9 8

VCC 2D 2C NC 2B 2A 2Y

1 2 3 4 5 6 7

1A 1B 1Y 2A 2B 2Y GND

1 2 3 4 5 6 7

1A 2A 2B 2C 2D 2Y GND

VCC 4B 4A 4Y 3B 3A 3Y

14 13 12 11 10 9 8

& &

& &

.1

VCC 4Y 4B 4A 3Y 3B 3A

14 13 12 11 10 9 8

1 2 3 4 5 6 7 1 2 3 4 5 6 7

1A 1B 1Y 2A 2B 2Y GND 1Y 1A 1B 2Y 2A 2B GND

1 2 3 4 5 6 7

1A 1Y 2A 2Y 3A 3Y GND

1 2 3 4 5 6 7

1A 1B 1Y 2A 2B 2Y GND

1 1 1

1 1 1

& &

& &

14 13 12 11 10 9 8 14 13 12 11 10 9 8

VCC 6A 6Y 5A 5Y 4A 4Y VCC 4B 4A 4Y 3B 3A 3Y

.1 .1

.1

74LS00 74LS02

74LS04 74LS08

74LS10 74LS20

74LS86 74LS51

第68页

第 3 章 组合逻辑 57

3-1-3 CMOS 门电路

以 MOS(Metal-Oxide-Semiconductor)管作为开关元件的门电路称为 MOS 门电路。由于 MOS

型集成门电路具有制造工艺简单、集成度高、功耗小以及抗干扰能力强等优点,因此在数字集成

电路产品中占据相当大的比例。与 TTL 门电路相比,MOS 门电路的速度较低。

MOS 门电路有 3 种类型:使用 P 沟道管的 PMOS 电路、使用 N 沟道管的 NMOS 电路和同时使

用 PMOS 和 NMOS 管的 CMOS 电路。其中 CMOS 性能更优,因此 CMOS 门电路是应用较为普遍的

逻辑电路之一。

1.CMOS 非门

图 3-16 所示是由一个 N 沟道增强型 MOS 管 VTN和一个 P 沟道增强型 MOS 管 VTP组成的 CMOS

非门。

两管的栅极相连作为输入端,两管的漏极相连作为输出端。VTN的源极接地,VTP的源极接电

源。为了保证电路正常工作,VDD需要大于 VTP管开启电压 UTP的绝对值和 VTN管开启电压 UTN的

和,即 VDD > UTN + |UTP|。当 Ui=0 V 时,VTN截止,VTP导通,Vo≈VDD为高电平;当 Ui=VDD时,VTN

导通,VTP截止,Uo≈0 V 为低电平。因此实现了非逻辑功能。

CMOS 非门除了有较好的动态特性外,由于 CMOS 非门电路工作时总有一个管子导通,所以

当带有电容负载时,给电容充电和放电都比较快。CMOS 非门的平均传输延迟时间约为 10 ns。另

外,由于它处在开关状态下总有一个管子处于截止状态,因而电流极小,电路的静态功耗很低,

一般为微瓦(μW)数量级。

2.CMOS 与非门

图 3-17 所示为一个两输入端的 CMOS 与非门电路,它由两个串联的 NMOS 管和两个并联的

PMOS 管构成。每个输入端连到一个 PMOS 管和一个 NMOS 管的栅极。

图 3-16 CMOS 非门电路 图 3-17 CMOS 与非门电路

当输入 A、B 均为高电平时,VTN1和 VTN2导通,VTP1和 VTP2截止,输出端为低电平;当输入

A、B 中至少有一个为低电平时,对应的 VTN1和 VTN2中至少有一个截止,VTP1和 VTP2中至少有一

个导通,输出 F 为高电平。因此,该电路实现了与非逻辑功能。

3.CMOS 或非门

图 3-18 所示是一个两个输入端的 CMOS 或非门电路,它由两个并联的 NMOS 管和两个串联

的 PMOS 管构成。每个输入端连接到一个 NMOS 管和一个 PMOS 管的栅极。

Ui

VDD

VTP

Uo

VTN

A

B

VDD

VTP2

VTP1

F

VTN2

VTN1

第69页

58 数字逻辑(第三版)

当输入 A、B 均为低电平时,VTN1和 VTN2截止,VTP1和 VTP2导通,输出 F 为高电平;只要输入

端 A、B 中有一个为高电平,则对应的 VTN1和 VTN2中至少有一个导通,VTP1和 VTP2中便至少有一个

截止,使输出 F 为低电平。因此,该电路实现了或非逻辑功能。或非门的逻辑符号如图 3-19 所示。

图 3-18 CMOS 或非门电路 图 3-19 或非门的逻辑符号

4.CMOS 三态门

图 3-20 所示是一个低电平使能控制的三态非门,从电路结构上看,该电路是在 CMOS 非门

的基础上增加了 NMOS 管 VTN2和 PMOS 管 TP2构成的。当使能控制端 EN =1 时,TN2和 TP2同时截

止,输出 F 呈高阻状态;当使能控制端 EN =0 时,TN2和 TP2 同时导通,非门正常工作,实现 F= A

的功能。与 TTL 三态门一样,CMOS 三态门也可用于总线传输。

5.CMOS 传输门

图 3-21(a)所示是一个 CMOS 传输门的电路图,它由一个 NMOS 管 VTN和一个 PMOS 管 TP

并联构成,其逻辑符号如图 3-21(b)所示。图中,VTN和 VTP的结构和参数对称,两管的源极连

在一起作为传输门的输入端,漏极连在一起作为输出端。VTN的衬底接地,VTP的衬底接电源,两

管的栅极分别与一对互补的控制信号 C 和 C 相接。

图 3-20 CMOS 三态门 图 3-21 CMOS 传输门及其逻辑符号

当控制端 C=1(VDD), C =0(0 V)时,若输入电压 Ui 在 0 V~VDD范围内变化,则两管中至

少有一个导通,输入和输出之间呈低阻状态,相当于开关接通,即输入信号 Ui在 0 V~VDD范围内

都能通过传输门。

+

.1

A

B VTN1

VTN2

F

VDD

VTP1

VTP2

A

VTN2

VTN1

F

VTP1

VTP2

VDD

EN

1

(a)电路 (b)逻辑符号

A

EN

1

V Y Ui TG Uo

C

C

(b)逻辑符号

Ui

VDD

Uo

C

VTP

VTN

C

(a)CMOS 传输门电路

第70页

第 3 章 组合逻辑 59

当控制端 C=0(0 V),C =1(VDD)时,输入信号 Ui在 0 V~VDD范围内变化,两管总是处于截止状态,

输入和输出之间呈高阻状态(107

Ω),信号 Ui不能通过,相当于开关断开。

由此可见,变换两个控制端的互补信号,可以使传输门接通或断开,从而决定输出端的模拟

信号(0 V~VDD 之间的任意电平)是否能传送到输出端。所以,传输门实质上是一种传输模拟信

号的压控开关。

由于 MOS 管的结构是对称的,即源极和漏极可以互换使用,因此,传输门的输入端和输出端

可以互换使用,即 CMOS 传输门具有双向性,故又称可控双向开关。

6.CMOS 逻辑门电路的系列及主要参数

(1)CMOS 逻辑门电路的系列

① 基本的 CMOS 4000 系列。

② 高速的 CMOS HC 系列。

③ 与 TTL 兼容的高速 CMOS HCT 系列。

(2)CMOS 逻辑门电路主要参数的特点

① 输出高电平 UOH(min)=0.9 VDD;输出低电平 UOL(max)=0.01 VDD。所以,CMOS 门电路的逻辑摆幅

(即高低电平之差)较大。

② 阈值电压 Uth 约为 VDD/2。

③ CMOS 非门的关门电平 UOFF为 0.45 VDD,开门电平 UON为 0.55 VDD。因此,其高、低电平噪

声容限均达 0.45 VDD。

④ CMOS 电路的功耗很小,一般小于 1 mW/门。

⑤ 因为 CMOS 电路有极高的输入阻抗,故其扇出系数 NO很大,可达到 50。

3-2 组合逻辑分析

对于给定的组合逻辑电路,找出其输出与输入之间的逻辑关系的过程称为逻辑电路分析。所

谓组合逻辑分析就是根据给定的组合逻辑电路写出描述其逻辑功能的逻辑函数,确定输入与输出

之间的逻辑操作关系。一旦得到了逻辑功能描述,则可以进行如下工作:

① 确定在不同输入组合下电路的功能以及是否满足原说明的功能要求。

② 变化逻辑表达式,以便用不同的电路结构实现同一逻辑功能或化简逻辑表达式,从而得

到最简逻辑表达式以简化电路。

③ 把表达式转化为标准形式以便能使用更方便的电路结构。如与或表达式可以直接应用于

可编程逻辑阵列(PLA)中。

④ 在分析更大的包含此电路的逻辑系统时,可直接利用此电路的逻辑描述。

对于给定的组合逻辑电路图来说,可以有几种方法得到电路的逻辑描述。最基本的逻辑描述

方法是真值表,另外也可采用逻辑表达式,此时常常要根据需要对逻辑表达式进行化简或变换。

3-2-1 分析步骤

一般按照下列步骤进行组合逻辑电路的分析。

① 根据给定的逻辑电路,写出逻辑函数表达式。为写出组合逻辑电路的函数表达式,可根

第71页

60 数字逻辑(第三版)

据电路中信号传输的方向,逐级写出表达式。可从输入向输出方向写,也可从输出向输入方向写。

② 表达式变换及化简。与实际电路对应的表达式通常不是理论上常用的形式,不便于理解

其表达的逻辑关系,需要对表达式进行变换,得到逻辑函数的标准表达式或最简式。根据需要决

定是否需要化简,化简方法通常利用代数法或卡诺图法。

③ 根据表达式列出真值表。真值表详尽地给出了电路输入、输出取值关系,它直观地描述

了电路的逻辑功能。

④ 逻辑功能评述。根据真值表和函数表达式,对电路的逻辑功能进行概括,给出相应的文

字描述。必要时,对原电路的设计方案进行评定,提出改进意见。

以上分析步骤是针对一般情况而言的,在实际应用中可以根据问题的复杂程度和具体要求进

行适当的取舍。下面举例说明组合逻辑电路的分析过程。

3-2-2 分析实例

【例 3-1】分析图 3-22 所示的组合逻辑电路。

解:① 根据给定的逻辑电路图,写出逻辑函数表达式。

F AB AB = +

② 表达式变换或化简。

F ABAB A B A B AB AB = =+ += + ( )( )

③ 根据输出函数表达式列出真值表。该函数的真值表如表 3-8 所示。

图 3-22 例 3-1 的逻辑电路图

④ 逻辑功能评述。由真值表可知,该电路在输入 A、B 同时取值都为 0 或都为 1 时,输出 F

的值为 1,即两个输入相同时输出为 1,该电路实现“同或”逻辑功能。

【例 3-2】分析图 3-23(a)所示的组合逻辑电路。

(a)原电路 (b)简化后电路

图 3-23 例 3-2 的逻辑电路图

解:① 根据给定的逻辑电路图,写出逻辑函数表达式。根据电路中各逻辑门的功能,从输

入端开始逐级写出函数表达式如下:

A

B

C

P1

P4

P2

P3

P5

F

A

B

C

F .1

=1

=1

1

.1

&

&

&

& .1

表 3-8 例 3-1 的真值表

A B F

0 0 1

0 1 0

1 0 0

1 1 1

A

B

F

1

1

&

&

.1

第72页

第 3 章 组合逻辑 61

P1 = A, P2 = + B C , P3 = BC

P4 12 ==+ PP A B C ( ) , P5 3 = = AP ABC

F = = +⋅ P P A B C ABC 4 5 ( )

② 化简输出函数表达式。

F A B C ABC = +⋅ ( )

A B C ABC ( )

AB AC AB AC

ABAC

= ++

=+++

=⊕+⊕

③ 根据化简后的函数表达式列出真值表。该函数的真值表如表 3-9 所示。

④ 逻辑功能评述。由真值表可知,该电路在仅当 A、B、C 取

值都为 0 或都为 1 时输出 F 的值为 0,其他情况均为 1。换言之,

当输入取值一致时输出为 0,否则为 1,可见该电路具有检查输入信

号是否一致的逻辑功能,一旦输出为 1 则表明输入不一致。因此通

常称该电路为“不一致电路”。

由分析可知,该电路的设计方案并不是最简的。根据化简后的

输出函数表达式可采用异或门和或门实现给定逻辑功能的逻辑电

路,如图 3-23(b)所示。

【例 3-3】分析图 3-24(a)所示的逻辑电路。

解:根据给出的逻辑电路图可写出输出函数表达式

S AB A AB B = ⋅⋅ ⋅

C AB =

用代数法对输出函数表达式化简,得

( )( )

S AB A AB B

AB A AB B

A BA A BB

AB AB

= ⋅⋅ ⋅

= ⋅+ ⋅

=+ ++

= +

C AB AB = =

根据化简后的表达式列出真值表如表 3-10 所示。

图 3-24 例 3-3 的逻辑电路图

表 3-10 例 3-3 的真值表

A B S C

0 0 0 0

0 1 1 0

1 0 1 0

1 1 0 1

表 3-9 例 3-2 的真值表

A B C F

0 0 0 0

0 0 1 1

0 1 0 1

0 1 1 1

1 0 0 1

1 0 1 1

1 1 0 1

1 1 1 0

A

B S

C

A

B

S

C

Σ &

&

&

&

1

CO

(a)逻辑电路 (b)半加器符号

第73页

62 数字逻辑(第三版)

由真值表可以看出,若将 A、B 分别看作一位二进制数,则 S 是 AB 相加的“和”,C 是相加

产生的“进位”。该电路通常称为半加器(Half Adder),它能实现 1 位二进制数加法运算。半加器

已有小规模集成电路,其逻辑符号如图 3-24(b)所示。

以上例子说明了组合逻辑电路分析的一般方法。通过对电路的分析,不仅可以找出电路输入/

输出之间的关系,确定电路的逻辑功能,同时还能对某些不合理的设计进行改进和完善。

3-3 组合逻辑设计

逻辑设计又称逻辑综合,是指根据给定的实际问题,找出一个能解决该问题的最简单的逻辑

电路来加以实现。逻辑设计是数字技术中的一个重要课题,任何一个可描述的事件或过程,都可

以进行严格的逻辑设计,然后用数字逻辑器件加以实现。

3-3-1 设计步骤

由于实践应用中提出的各种设计要求一般是以文字的形式描述的,所以逻辑设计的首要任务

是将设计问题转化为逻辑问题,即将文字描述的设计要求抽象为一种逻辑关系。就组合逻辑电路

而言,就是抽象出描述问题的逻辑表达式。

组合逻辑电路的设计是分析的逆过程,一般可按如下步骤进行:

① 分析设计要求,把用文字描述的设计要求抽象成输出变量与输入变量的逻辑关系。

② 根据分析出的逻辑关系,通过真值表或其他方式列出逻辑函数表达式。

③ 根据所选择的门的类型,变换并化简逻辑表达式。

④ 画出逻辑电路图或电路原理图。

⑤ 按照工程实际要求,对所设计的电路进行综合评价。

上述步骤中,关键是第①步,这对采用小规模集成电路或中、大规模电路都是必需的。第②、

③步主要针对以小规模集成电路为基本元件进行设计所需的步骤,它是各种简化逻辑函数的方法

的应用,至于以中规模集成电路为基础的设计,将在 3-5 节中介绍。第④、⑤步将以如何减少集

成电路块的数量为目标,充分利用集成电路中的门,并减少电路中信号通过门的级数,以减少信

号延时,还将讨论组合电路中的竞争和险象。

设计好的逻辑电路还与设计者的实际经验有着密切的关系。只有通过大量的实践才能掌握设

计的方法和技巧。

3-3-2 问题的描述

在设计组合逻辑电路时,其设计要求往往以文字描述的形式给出。要设计出电路,必须把文

字描述的设计要求,抽象为逻辑表达式。这是完成组合逻辑设计的第一步,也是最重要的一步,

但这一步并无具体的规则可循。

由于实际问题千变万化,如何从文字描述的设计要求抽象为一个逻辑表达式,尚无系统的方

法。目前采用的方法仍是以设计者的经验为基础的试凑方法。通常的思路是先由文字描述的设计

要求建立所设计电路的输入、输出真值表,然后由真值表建立逻辑表达式。对于变量较多的情况,

第74页

第 3 章 组合逻辑 63

则可设法建立简化真值表,甚至由设计要求直接建立逻辑表达式。

对逻辑问题的描述通常可以从下面 3 种方法入手:

① 根据问题的描述,列出输入与输出的真值表,然后给出逻辑表达式。

② 如果变量较多,则可以列出简化真值表,然后给出逻辑表达式。

③ 根据设计要求直接写出逻辑函数的表达式。

在实际设计中,究竟采用哪种方法,主要取决于设计者对设计要求的理解、分析和经验。下

面通过具体例子,说明各种思路的描述方法。

1.逻辑问题的真值表描述

【例 3-4】某汽车驾驶员培训班进行结业考试。有 3 名评判员,其中 A 为主评判员,B 和 C

为副评判员。在评判时,按照少数服从多数原则,但若主评判员认为合格,亦可通过。试写出驾

驶员通过考试的逻辑表达式。

解:根据设计要求,设定 3 个输入变量 A、B、C。

A 表示主裁判 A 意见,A=1,主裁判 A 认为合格;A=0,主裁判 A 认为不合格。

B 表示副裁判 B 意见,B=1,副裁判 B 认为合格;B=0,副裁判 B 认为不合格。

C 表示副裁判 C 意见,C=1,副裁判 C 认为合格;C=0,副裁判 C 认为不合格。

设定输出变量为 F。F=1 表示驾驶员结业考试通过;F=0 表示驾驶员结业考试不通过。

根据给出的逻辑条件,可写出表 3-11(a)所示真值表。

故 F 的逻辑表达式为

F =++++ ABC ABC ABC ABC ABC

另外,根据分析也可直接给出问题的简化真值表,如表 3-11(b)所示,则

F A BC = +

表 3-11 例 3-4 的真值表

(a)真值表 (b)简化真值表

A B C F A B C F

0 0 0 0 d 1 1 1

0 0 1 0 1 d d 1

0 1 0 0

0 1 1 1

1 0 0 1

1 0 1 1

1 1 0 1

1 1 1 1

【例 3-5】试给出 1 位二进制全加器的逻辑表达式。

解:设全加器的输入、输出端分别为 Ai 表示被加数,Bi 表示

加数,Ci-1 表示低位向本位的进位,Si 表示本位和输出,Ci 表示

本位向高位的进位。其框图如图 3-25 所示,根据 1 位二进制数 图 3-25 1 位全加器逻辑符号

Ai Σ

Bi

Ci−1

Si

CI CO Ci

第75页

64 数字逻辑(第三版)

的运算规则可得出真值表,如表 3-12 所示。

根据真值表作卡诺图,如图 3-26 所示。

表 3-12 1 位全加器真值表

Ai Bi Ci−1 Si Ci

0 0 0 0 0

0 0 1 1 0

0 1 0 1 0

0 1 1 0 1

1 0 0 1 0

1 0 1 0 1

1 1 0 0 1

1 1 1 1 1

故 Si、Ci 的逻辑表达式为

11 11

1

i i ii ii i ii i iii

iii

S A BC ABC AB C ABC

ABC

− − −−

=++ +

=⊕⊕

C AB AC BC i ii ii ii =+ + − − 1 1

【例 3-6】已知 X 和 Y 是两个两位二进制正整数,写出判别 X > Y 的逻辑表达式。

解:在设计“X 是否大于 Y”的判别电路时,首先要列出表征 X > Y 的逻辑表达式。不难理解,

该电路有 4 个输入变量:A、B、C 和 D,分别表示 X 和 Y 的高低位,1 个输出变量:F,它表明 X

> Y 还是 X ≤Y。由题意可知:X > Y 时,F = 1,即 AB > CD 时,F = 1;AB≤CD 时,F = 0。

比较多位数大小的方法,是从高位开始比较,高位大则大,高位相同则比较相邻的低位。根

据这一比较方法,只需列出使 F = 1 的变量取值组合,如表 3-13 所示。与完整的真值表相对而言,

把只包含 F = 1 的真值表称为简化真值表。表中“d ”表示可取值为 0 或 1。

表 3-13 X > Y 的简化真值表

X Y

A B C D

F

1 d 0 d 1

0 1 0 0 1

1 1 1 0 1

故 F 的逻辑表达式为

F =+ + AC ABC D ABCD

本例中,是通过简化真值表列出逻辑表达式的,而简化真值表是通过对设计要求的分析建立

的。简化真值表常用在具有控制端的电路功能的描述方面。

2.逻辑问题的直接表达式描述

【例 3-7】已知某客机的安全起飞装置在同时满足下列条件时,发出允许滑跑信号。

AiBi

Ci- 1 00 01 11 10

0 0 1 0 1

1 1 0 1 0

(a)Si

AiBi

Ci- 1 00 01 11 10

0 0 0 1 0

1 0 1 1 1

(b)Ci

图 3-26 例 3-5 的卡诺图

第76页

第 3 章 组合逻辑 65

① 发动机启动开关接通。

② 飞行员入座,且座位保险带扣上。

③ 乘客入座且座位保险带扣上,或座位上无乘客。

试定出允许滑跑信号的逻辑表达式。

解:由题意可知,该装置的输入变量为

发动机启动信号:S;

飞行员入座信号:A;

飞行员座位保险带扣上信号:B;

乘客座位状态信号:Mi(i=1,2,3,…,n);

乘客座位保险带扣上信号:Ni(i=1,2,3,…,n);

该装置的输出变量为:F。

设当允许客机滑跑的条件满足时,F = 1;否则,F = 0。

由题意可知,只有当 3 个条件:① 发动机启动 S = 1;② 飞行员入座 A = 1 且飞行员座位保

险带扣上 B = 1;③ 乘客条件同时满足时,F = 1。乘客条件可理解为:有乘客 Mi = 1 且保险带扣

上 Ni = 1 或无乘客 Mi = 0。

据此可列出下列逻辑表达式:

( )

11 1 2 2 2

1 12 2

1

( )( ) ( )

( )( ) ( )

nn n

n n

n

i i

i

F S AB MN M M N M M N M

SAB N M N M N M

SAB N M

=

= ⋅ ⋅ ⋅ + ⋅ + ⋅⋅⋅ +

= + + ⋅⋅⋅ +

= + ∏

本例中,所要设计电路的逻辑表达式是通过对设计要求的分析直接列出的,既不通过真值表,

也不通过简化真值表。

3-3-3 设计实例

通过下面的设计过程,了解如何应用前面所介绍的方法设计常用的组合逻辑电路。

【例 3-8】试设计 1 位二进制全加器。

解:设全加器的输入、输出端分别为 Ai 表示被加数,Bi 表示加数,Ci-1 表示低位向本位的进

位,Si 表示本位和输出,Ci 表示本位向高位的进位。根据例 3-5 可知

SABC ii i i =⊕⊕ −1

C AB AC BC AB A B C i ii ii ii ii i i i = + + = ⋅⊕⋅ −− − 11 1 ( )

其对应的逻辑电路图如图 3-27 所示。

【例 3-9】设计一个房间报警电路。如果意外事件发生输入 PANIC 为 1;或如果使能输入

ENABLE 为 1,出口标志输入 EXITING 为 0,并且房间没有加密,则报警输出 ALARM 为 1。如果

窗(WINDOW)、门(DOOR)及车库(GARAGE)输入都是 1,则房间加密(SECURE)。

解:根据题意可直接写出逻辑表达式

ALARM PANIC ENABLE EXITING SECURE

SECURE WINDOW DOOR GARAGE

ALARM PANIC ENABLE EXITING WINDOW DOOR GARAGE

=+ ⋅ ⋅

= ⋅⋅

= + ⋅ ⋅ ⋅⋅

第77页

66 数字逻辑(第三版)

逻辑表达式对应的逻辑电路图如图 3-28 所示。

图 3-27 1 位二进制全加器逻辑电路图 图 3-28 房间报警电路逻辑电路图

从上述例子可以看出,从命题描述得到逻辑表达式,再按逻辑表达式画出逻辑图,则逻辑图

中可能包含与、或、非门。这种混合各种类型门的电路往往对集成电路(IC)器件的利用不充分,

而且通常输出端带非的门其速度比输出端不带非的门要快。为了提高电路的速度,提高器件的利

用率从而减少 IC 器件的数量,提高电路的可靠性,还需要对从逻辑表达式直接画出的电路图进行

变换,尽可能使用同一类型的输出端带非的门来实现。

【例 3-10】人类有 4 种基本血型:A 型、B 型、AB 型和 O 型。O 型血可以输给任意血型的人,

而他自己只能接受 O 型;AB 型可以接受任意血型,但只能输给 AB 型;A 型能输给 A 型或 AB 型,

可接受 A 型或 O 型;B 型能输给 B 型或 AB 型,可以接受 B 型或 O 型。

设计一个逻辑电路,其输入是一对要求“输送-接受”的血型,当符合上述规则时,电路给

出对应的指示。

解:① 确定输入、输出变量个数。在设计一个组合逻辑电路时,选定的变量多少,会影响

结果的简易程度,一般而言,变量少,电路较简单。当然,由于电路应用于实际,在确定变量时,

编码应易于理解。

本例中,输入是一对“输送-接受”的血型,由于“输送-接受”的血型数为 4,则各需 2 个

变量,可用变量 AB 表示输送血型,CD 表示接受血型。输出表示是否可以进行输血,则可用 1 个

输出变量 F。

可假设(编码):AB、CD 取值为 00 表示 O 型;01 表示 A 型;10 表示 B 型;11 表示 AB 型。

F 取值为 1 表示可以输血,符合以上的输血规则。

② 确定输入与输出的关系。根据编码及上面的输血规则,可填写出真值表或直接用卡诺图

表示。

表达逻辑关系,主要是要找出逻辑表达式,实际问题转换成真值表及卡诺图都比较容易,为

了得到表达式,用真值表表示后,还是要转换成卡诺图表示,因此,在实际设计中,常直接填写

卡诺图,并且在多数情况下,直接用卡诺图表示更方便。

本逻辑函数的真值表如表 3-14 所示,卡诺图如图 3-29(a)所示。

GARAGE

DOOR

WINDOW

EXITING

ENABLE

PANIC ALARM

1

& 1

&

.1

Ci−1

Ci

Si

Ai Bi

&

& &

=1

=1

第78页

第 3 章 组合逻辑 67

CD

AB 00 01 11 10

00 1 1 1 1

01 0 1 1 0

11 0 0 1 0

10 0 0 1 1

(a)

CD

AB 00 01 11 10

00 1 1 1 1

01 1 0 0 1

11 1 0 0 0

10 1 1 0 0

(b)

图 3-29 例 3-10 的卡诺图

表 3-14 例 3-10 的真值表

A B C D F

0 0 0 0 1

0 0 0 1 1

0 0 1 0 1

0 0 1 1 1

0 1 0 0 0

0 1 0 1 1

0 1 1 0 0

0 1 1 1 1

1 0 0 0 0

1 0 0 1 0

1 0 1 0 1

1 0 1 1 1

1 1 0 0 0

1 1 0 1 0

1 1 1 0 0

1 1 1 1 1

由于卡诺图中“0”块较少,且集中相邻,圈“0”块所得到的表达式要简单一些,则可用反

函数或者用或与式表达。

F = + AC BD 或 F ACB D =+ + ( )( )

在本设计中,没有规定使用何种门电路,因此,表达式的形式选定比较灵活,如果设计中有

要求,则必须根据要求选择表达式的形式。如果指定用与非门,则必须对卡诺图圈“1”,得与或

式;如果指定用或非门,则必须对卡诺图圈“0”,得或与式。

③ 变换表达式。如果以上式去实现实际电路,要用到 3 种门电路:与、或、非,起码需要 3

种集成芯片,不太经济,实际应用中,应把表达式转换为只含一种运算(门电路)的表达式形式,

常用与非-与非式或者或非-或非式表示。

本例表达式可转换成

F =+++ =+++++ AC BD AAC BBD

该逻辑电路可用 5 个 2 输入或非门完成。可选用前面介绍的集成电路 74LS02 芯片两片。

④ 画逻辑电路图并考虑工程问题(略)。

⑤ 讨论:

z 74LS02 内部有 4 个或非门,选用两片,有 3 个门没有使用。从表达式看, A 和 B 各用一

个或非门,使门数正好超过 4。是否可以在设计时,进行一定的调整,使门数降到 4 或 4

以下呢?

z 如果做成实际电路,通常需要用显示器件表示处理结果,如选用发光二极管。TTL 电路在

输出高电平时的负载能力较弱,如果直接接发光二极管,不能正常发光。

第79页

68 数字逻辑(第三版)

为了解决上面问题,对设计的编码进行以下修改。

可假设血型编码为:

AB 取值为 00 表示 O 型、01 表示 A 型、10 表示 B 型、11 表示 AB 型;

CD 取值为 00 表示 AB 型、01 表示 B 型、10 表示 A 型、11 表示 O 型;

F 取值为 1 表示可以输血,符合以上的输血规则。

即输送约定没有变,接受约定变了。

卡诺图如图 3-29(b)所示。

则 F BD AC = +

F =+=⋅= ⋅ ⋅ BD AC BD AC BD AC BD AC ( )( )

即用 4 个 2 输入与非门(一片 74LS00)即可。

再加上外围辅助电路,就可完成本设计,设计结果如图 3-30 所示。

在图 3-30 中,单刀双掷开关 A、B、C 和 D 产生 4 个输入量的输入信号,绿色 LED(发光二

极管)及红色 LED 显示结果。绿色 LED 发光,表示可以输血,红色 LED 发光,表示不能输血;

红绿色 LED 都发光,电路工作不正常,红绿色 LED 都不亮,电路没有工作。电路的操作及原理

请读者自己分析。

图 3-30 例 3-10 的设计结果

从本例可以看出,对实际问题的分析,直接影响电路的设计,分析(表示)越成功,则电路

越简单,即使按照同一思想设计,外围电路的安排不同,电路的使用效果也是不同的,因此,在

设计一个电路时,对实际问题的分析是首要问题,并对设计反复推敲。

读者可自己动手,修改编码,用不同的逻辑解决该实际问题(该逻辑可以只用 3 个 2 输入的

同类运算实现)。

3-3-4 不完全项设计

从原理上讲,按上面介绍的方法,能够设计任何组合电路了。然而,对于某些特殊设计问题,

按上述方法进行设计,所得的结果却不是最简的。例如,当设计问题要求无反变量输入、电路有

多个输出、要求所设计的电路级数满足一定速度指标等,按上面的方法去设计,结果往往不是最

简的。由于逻辑器件的发展,特别是可编程阵列逻辑器件的出现,这些要求似乎变得不是很重要,

因此,通常不介绍有关无反变量、多输出和考虑电路级数的设计,有兴趣的读者请参阅有关参考

书,在此,仅介绍输入变量彼此有一定约束关系的设计——不完全项(任意项)的电路设计。

现在举例说明如何找出任意项,如何利用任意项进行电路设计。

A B C D

绿 红

4.7 kΩ VCC(+5V)

220Ω 220Ω

F

&

&

&

&

血型输血例题

第80页

第 3 章 组合逻辑 69

AB

CD 00 01 11 10

00 1 1 d 1

01 0 0 d 0

11 0 0 d d

10 1 1 d d

(a)不考虑无关项

AB

CD 00 01 11 10

00 1 1 d 1

01 0 0 d 0

11 0 0 d d

10 1 1 d d

(b)利用无关项

图 3-31 例 3-11 的卡诺图

【例 3-11】设计一个组合逻辑电路,用于判断 1 位二进制数(BCD 码)是否为偶数。

解:由题意可知,该电路输入为 1 位二进制数的 BCD 码,设用 A、B、C 和 D 表示,输出为

对其值进行判断的结果,用 F 表示。当 ABCD 为 0、2、4、6、8 时,输出 F 为 1,否则为 0。因

为根据 BCD 码的编码规则,ABCD 的取值组合不允许为 1010~1111,所以该问题为包含无关项的

逻辑问题,与上述 6 种组合对应的最小项为无关项,即在这些取值组合下输出 F 的值可以随意指

定为 1 或 0,记为 d。据此,可建立描述该问题的真值表,如表 3-15 所示。

根据真值表可写出 F 的逻辑表达式为

F ABCD m d ( , , , ) (0,2,4,6,8) (10,11,12,13,14,15) = + ∑ ∑

用卡诺图化简函数 F 时,若不考虑无关项,如图 3-31(a)所示合并 1 方格,则可得 F 的最

简表达式为

F A B C D AD BCD (,,, ) = +

如果利用无关项进行化简,如图 3-31(b)所示,根据需要将无关项 d(10, 12, 14)当成 1 处理,

而把 d(11, 13, 15)当成 0 处理,则可得最简表达式为

F(,, , ) ABCD D=

表 3-15 例 3-11 的真值表

A B C D F

0 0 0 0 1

0 0 0 1 0

0 0 1 0 1

0 0 1 1 0

0 1 0 0 1

0 1 0 1 0

0 1 1 0 1

0 1 1 1 0

1 0 0 0 1

1 0 0 1 0

1 0 1 0 d

1 0 1 1 d

1 1 0 0 d

1 1 0 1 d

1 1 1 0 d

1 1 1 1 d

显然后者要比前者更简单,最后得到的逻辑电路图十分简单。(略)

【例 3-12】试设计一个操作码形成器。当按下“×”“+”“−”各个操作键时,要求分别产生

乘法、加法和减法的操作码 01、10、11。

解:① 确定输入、输出变量个数。由题意可知,所要设计电路的输入变量为 3 个:A、B、C;

输出变量为 2 个:F、G。假设对应按键被按下时,相应输入变量的取值为“1”;否则,取值为“0”。

第81页

70 数字逻辑(第三版)

A 为“1”时,FG 为“01”;B 为“1”时,FG 为“10”;C 为“1”时,FG 为“11”。

② 确定输入与输出的关系。对于键盘操作有要求,不应同

时按下 2 个或 2 个以上的按键。本例所按键为操作键,在操作

上是有限制的,即受到约束,输入变量 A、B 和 C 的取值不能

同时为“1”。但 A、B 和 C 可以都不为“1”,表示没有操作键

被按下,可用 FG 所剩下的取值形式“00”表示。可填写卡诺

图,如图 3-32 所示。

图 3-32 同时表示了 2 个函数 F 和 G,一个卡诺图中表示多个逻辑函数,这样的卡诺图称为

复合卡诺图。复合卡诺图在多输出电路设计中经常用到,它能更清晰地表达逻辑函数,填写方便。

但在使用时应当注意,由于复合卡诺图中填写了多个函数的取值,在化简逻辑函数时,往往不进

行实际的画圈,要获得最简式,要求使用者有一定的经验。

通过卡诺图,可得到逻辑函数的最简式为

F BC = + G AC = +

如果不考虑任意项,逻辑函数的最简式只能为

F = + ABC ABC G ABC ABC = +

③ 变换表达式。(略)

④ 画逻辑图并考虑工程问题。(略)

最后,顺便指出,有约束的逻辑函数,可以很方便地从函数的卡诺图中表示,得到函数的表

达式。如本例逻辑函数可表示为

(1,2) (3,5,6,7)

(1,4) (3,5,6,7)

Fm d

Gm d

= +

= +

∑ ∑

∑ ∑ 或

0

F BC

G AC

AB AC BC

= +

= +

+ + =

约束方程可以通过对 d 方格进行画圈得到。如果理解是圈“1”(得与或式),由于被约束,则

不能为“1”即为“0”,约束方程表示为 AB +AC +BC =0;如果理解是圈“0”(得或与式),由于

被约束,则不能为“0”即为“1”,约束方程表示为 ( )( )( ) 1 A BACB C + + += 。在此提出注意:

不能用对偶定理进行转换,从约束方程的一种形式转换得到约束方程的另一种形式的表达式。

3-4 组合逻辑电路的险象

前面讨论组合逻辑电路时,是把各逻辑门电路看成理想的逻辑门来处理的,只研究了输入和

输出稳定状态之间的关系,即认为输入变化与相应的输出变化是同时发生的,而没有考虑实际电

路在信号传送过程中的延时问题。实际上,信号经过任何电路都会产生时间延迟,这就使得当电

路所有输入达到稳定状态时,输出并不是立即达到稳定状态。

本节讨论组合电路由于传输延时而产生的问题及相应的处理方法。

3-4-1 险象的产生

在实际电路中,信号经过同一电路中的不同路径所产生的延迟一般是各不相同的。各路径上

延迟时间的长短与信号经过的门的级数有关,与具体逻辑门的延迟大小有关。因此,同一输入信

BC

A 00 01 11 10

0 00 11 dd 10

1 01 dd dd dd

图 3-32 例 3-12 的卡诺图

第82页

第 3 章 组合逻辑 71

号经过不同路径到达输出端的时间也就有先有后,这种现象称为竞争现象。在逻辑电路中,竞争

现象是随时随地都可能出现的,可以更广义地把竞争现象理解为多个信号到达某一点有时差所引

起的现象。

电路中竞争现象的存在,使得输入信号的变化可能引起输出信号出现非预期的错误输出,这

一现象称为险象。并不是所有的竞争都会产生险象。

下面进一步分析组合逻辑电路产生竞争险象的原因。

试考虑逻辑函数 F AB AC = + ,按照这个表达式,可以画出其逻辑图(电路),如图 3-33(a)

所示。

假设输入变量 B = C =1,将 B、C 的值代入函数表达式,得 F = A A + ,理论上无论 A 为何值,

该函数表达式 F 的值应恒为“1”,即当 B = C =1 时,不论 A 是 0 还是 1,是否发生变化,输出 F

的值都应保持 1 不变。现在要讨论的是当考虑电路存在延迟时,该电路的实际输入、输出关系。

主要关心当 B = C =1 时,A 的变化会使电路引起怎样的输出响应。为分析方便,假定每个门的延

迟时间一致为 tpd,则可用图 3-33(b)所示的时序图来说明。

(a)逻辑电路 (b)时序图

图 3-33 具有险象的逻辑电路及时序图

输入信号 A,一方面经过一个 tpd 由 G2 输出信号 a;另一方面经过一个 tpd 由 G1 反相输出信号 b

后,再经过一个 tpd 由 G3 输入信号 c。信号 a、c 是由同一个 A 信号经不同路径传输而得到的两个

信号在输出门 G4竞争,当 A 信号出现下跳时(时序图上“*”处),信号 a、c 出现了一个 tpd 的时

间内同时为低电平,根据门 G4的或逻辑特性,输出 F 经一个 tpd 必然会出现一个负跳变的尖脉冲。

也就是说,在“*”处竞争的结果产生了险象。

和与或表达式对应的逻辑电路可能会出现险象,同样和或与表达式对应的逻辑电路也会出现

险象。如: F A BAC =+ + ( )( ) ,当 B = C = 0 时,则应有 F AA = = 0 的理论结果。如果考虑实际

电路的延迟,当 A 信号出现上跳时,会出现一个正跳变的尖脉冲。

可按错误输出脉冲信号的极性分为“0”型险象与“1”型险象。若错误输出信号为负脉冲,

则称为“0”型险象;反之,若错误输出信号为正脉冲,则称为“1”型险象。

3-4-2 险象的判断

判断一个电路是否可能产生险象的方法有代数法和卡诺图法。

由前面对竞争和险象的分析可知,当某个变量 A 同时以原、反变量的形式出现在函数表达式

中,且在一定条件下该函数表达式可变成 A + A 的形式时,则与该函数表达式对应的电路在 A 发

生变化时,可能由于竞争而产生险象。同理,如果函数表达式可以变成 AA的形式时,则相应的

电路在 A 发生变化时也可能由于竞争而产生险象。

A

B

C

G2

G1

G3

G4

F

b

c

a

1

&

&

.1

c

a

b

A

F

* *

第83页

72 数字逻辑(第三版)

代数法是从函数表达式的结构来判断是否具有产生险象的条件。具体方法是:首先检查函数

表达式中是否存在具备竞争能力的变量,即是否有某个变量同时以原、反变量的形式出现在函数

表达式中。若有,则在不做任何化简的条件下,判断是否存在其他变量的特殊取值组合,使函数

表达式变成只剩 A + A 或者 AA 的形式,若存在这样的特殊取值组合,则说明对应的逻辑电路可

能产生险象,这样的特殊取值组合即是出现险象的条件。下面举例说明。

【例 3-13】已知描述某组合电路的逻辑函数表达式为 F = ++ AC AB AC ,试判断该逻辑电路

是否可能产生险象。

解:表达式中变量 A、C,以原、反形式出现,具有竞争能力。

变量 A:要使表达式中 A 单独出现,则 C 应为 1;要使 A 单独出现,则 B 应为 1 或 C 为 0。

可见,当 B = C =1 时, F AA = + ,则 A 变化时可能使电路产生险象。

变量 C:要使表达式中 C 单独出现,则 A 应为 1;要使 C 单独出现,则 A 应为 1 即 A 为 0。

可见,不可能出现 FCC = + 的形式,则电路不会因为变量 C 而产生险象。

判断险象的另一种方法是卡诺图法。采用卡诺图来判断险象比代数法更直观、方便。具体方

法是:首先画出函数卡诺图,并画出和函数表达式中各项

对应的圈。然后观察卡诺图,若发现某两个圈存在“相切”

关系,即两圈之间存在不被同一圈包含的相邻块,则该电

路可能产生险象。

还是以例 3-13 为例,画出函数的卡诺图,如图 3-34

所示。

注意:在画卡诺图时,卡诺图中的圈应完全与电路的结构相对应,否则可能影响分析结果。

观察卡诺图可发现,包含 m2、m3 块的圈和包含 m5、m7 块的圈“相切”,m3、m7 块不被同一圈

所包含,这说明相应电路可能产生险象。如果把 m5、m7 块圈起来,所对应的变量取值为 BC = 11,

这一结论和代数法所得到的结论是一致的。

3-4-3 险象的解决

险象是一种伪信号,在某些电路中可能会引起电路操作的错误。为了使电路可靠地工作,设

计者应当设法消除或避免电路中可能出现的险象。

针对险象出现的原因和特点,常用以下方法。

1.用增加冗余项的方法消除险象

增加冗余项的方法是通过在函数表达式中增加对应的项,使原函数不可能在某种条件下变成

A + A 或者 AA的形式,从而消除可能产生的险象。

对于例 3-13 所示函数: F AC AB AC = ++ ,当 BC = 11 时,输入 A 的变化使电路输出可能

产生险象,解决的办法是如何保证当 BC = 11 时,输出保持为“1”。显然,若函数表达式中包含

“与”项 BC,则可达到这一目的。这是化简公式配项法在实际中的一种典型应用。

可见,增加的冗余项就是原出现险象的条件所对应的项。

冗余项的选择也可以通过卡诺图法来实现。具体方法是,若卡诺图上某两个圈“相切”,则用

一个圈将它们圈起来,这个圈所对应的项就是要增加的冗余项。

2.增加惯性延时环节

这一方法是根据险象的特点提出的,选用时,应注意电路本身的特点。

AB

C 00 01 11 10

0 1 1 0 0

1 0 1 1 1

图 3-34 例 3-13 的卡诺图

第84页

第 3 章 组合逻辑 73

险象又称毛刺,是因为伪信号的时间大约只有一个 tpd的时间,很窄;如果逻辑电路在较慢速

度下工作,可以在组合电路输出端连接一个惯性延时环节。通常采用 RC 电路作惯性延时环节,

如图 3-35 所示。

RC 电路实际上是一个低通滤波器。险象在通过 RC 电路后能基本被滤掉,保留的仅仅是一些

幅度极小的毛刺,由于数字电路有较高的抗干扰能力,它们不再对电路的可靠性产生影响。

采用这种方法时必须适当选择惯性环节的时间常数(τ = RC),一般要求τ 大于尖脉冲的宽度,

以便能将尖脉冲“削平”;但也不能太大,否则,将使正常输出信号的变形太大。

3.选通法

由于组合电路中的险象总是发生在输入信号发生变化的过程中,且险象总是以尖脉冲的形式

输出。因此,只要对输出波形从时间上加以选择和控制,利用选通脉冲选择输出波形的稳定部分,

而有意避开可能出现的尖脉冲,便可获得正确的输出。

选通法的电路原理图如图 3-36 所示。选通法主要是对输出门加以控制。对于不同性质的输出

门,选通信号的选择是不同的:与性质的门选通信号用正脉冲;或性质的门选通信号用负脉冲。在

选通脉冲到来之前,该选通信号封锁输出门,使险象脉冲无法输出;当选通脉冲到来时,开启输出

门,使电路送出稳定的输出信号。通常把这种在时间上让信号有选择地通过的方法称为选通法。

图 3-35 增加惯性延时环节 图 3-36 选通法的电路原理图

3-5 常用的中规模组合逻辑构件的使用

根据集成度的大小,集成电路分成 SSI(小规模集成电路)、MSI(中规模集成电路)、LSI(大

规模集成电路)和 VLSI(超大规模集成电路)4 种。一般地,在小规模集成电路中仅是基本器件

(如逻辑门和触发器)的集成,在中规模集成电路中是逻辑部件(如译码器)的集成,而在大规模

集成电路和超大规模集成电路中则是一个数字子系统或整个数字系统(如微处理器和存储器)的

集成。因此,采用中、大规模集成电路组成数字系统具有体积小、功耗低、可靠性高等优点,且

易于设计、调试和维护。

各种中规模通用集成电路本身就是一种完美的逻辑设计作品,使用时只需适当地进行连接,

就能实现预定的逻辑功能。另外,由于它们所具有的通用性、灵活性及多功能性,使之除完成基

本功能之外,还能以它们为基本部件组成电路,有效地实现各种逻辑功能。因此,必须熟悉其功

能、特点和使用方法,这样才能恰当地、灵活地、充分地利用它们完成各种逻辑电路的设计。

本节主要讨论最常用的几种中规模通用集成电路及其应用。使用中规模集成电路进行设计

时,重点在于掌握整个逻辑部件的逻辑功能,即逻辑部件的外部特性,作为使用者来说,对于中

规模集成电路内部逻辑实现的细节,只要作一般的了解即可。

组合电路

R

F

A

B

C

C

F

采样脉冲

&

&

&

1

第85页

74 数字逻辑(第三版)

3-5-1 译码器

译码器是计算机以及其他数字系统中广泛使用的多输入多输出组合逻辑部件。译码器的功能是

对具有特定含义的输入代码进行“翻译”,将其转换成相应的输出信号。输入代码的位数小于输出

代码,并且输入代码字与输出代码字是一对一的映射,即不同的输入编码字产生不同的输出编码字。

译码器的种类很多,常见的有二进制译码器、二-十进制数字显示译码器。

1.二进制译码器

二进制译码器又称 n−2n 译码器,它的功能是将 n 个输入变量变换成 2n 个输出函数,且每个

输出函数对应于 n 个输入变量的一个最小项。因此,二进制译码器一般具有 n 个输入端、2n 个输

出端和一个(或多个)使能输入端。在使能输入端为有效电平时,对应每一组输入代码,仅一个

输出端为有效电平,其余输出端为无效电平(与有效电平相反)。有效电平可以是高电平(称为

高电平译码),也可以是低电平(称为低电平译码)。常见的 MSI 二进制译码器有 2-4 线(2 输入

4 输出)译码器、3-8 线译码器和 4-16 线译码等。

(1)二进制译码器原理

图 3-37 给出了一个 2-4 线译码器的框图、逻辑图和真值表,其中输入代码字 BA 表示 0~3

的一个数,输出代码字为 Y3Y2Y1Y0,EN 为输入使能端。显然,当 EN=0 时,Yi=0;当 EN=1 时,Yi=mi

(mi 为输入 BA 组成的最小项),因此统一起来就有 Yi=EN·mi。

(a)框图 (b)逻辑图

EN B A Y3 Y2 Y1 Y0

0 d d 0 0 0 0

1 0 0 0 0 0 1

1 0 1 0 0 1 0

1 1 0 0 1 0 0

1 1 1 1 0 0 0

(c)真值表

图 3-37 2-4 线译码器

(2)双 2-4 线译码器 74LS139

双 2-4 线译码器是在一片器件内封装了两个完全独立且结构相同的二进制 2-4 线译码器,采用

低电平译码,其逻辑图、功能表、引脚图以及逻辑符号如图 3-38 所示。将功能表中的 H 和 L 分别

换成 1 和 0,即得到 2-4 线译码器的真值表。图中,A、B 为输入端,Y 0 、Y1、Y 2 、Y 3 为输出端,

G 为使能端,其作用是禁止或选通译码器。其功能可描述为,当使能端有效( G =0)时Y m i i = 。

A

B

EN

2-4

译码器 Y0

Y1

Y2

Y3

A

B

EN

Y0

Y1

Y2

Y3

&

&

&

&

1

1

第86页

第 3 章 组合逻辑 75

(a)逻辑图 (b)功能表

(c)引脚图 (d)逻辑符号

图 3-38 双 2-4 线译码器 74LS139

(3)3-8 线译码器 74LS138

74LS138 是一种常用的二进制 MSI 器件,它的逻辑图、功能表、引脚图和逻辑符号如图 3-39

所示。图中 C、B 和 A 为输入端,Y 0 、Y1、Y 2 、Y 3 、Y 4 、Y 5 、Y 6 和 Y 7 为输出端,G1、G2A

和 G2B 为使能端,它的作用是禁止或选通译码器。由功能表可知,无论 C、B 和 A 取何值,输出

Y 0 ,…,Y 7 中有且仅有一个为 0(低电平有效),其余都为 1。因此,当使能输入均有效(G1=1,

G2A =0, G2B =0)时,有 Y m i i = 。

2.BCD 码译码器

数字显示译码器是不同于上述译码器的另一种译码器。在数字系统中,通常需要将数字量直

观地显示出来,一方面供人们直接读取处理结果,另一方面用以监视数字系统工作情况。因此,

数字显示电路是许多数字设备不可缺少的部分。

74LS47 是一种常用的 BCD 码数字显示译码器,它的输入编码是 4 位 BCD 码,输出为 7 位编

码字。与二进制译码器不同的是,它的输出编码字中不是仅有 1 位为 1(或 0),而是按照输入的

BCD 码编码字使对应的某些输出端为 1(或 0),以驱动 LED(发光二极管)或 LCD(液晶显示器)

显示 1 位十进制数。

1/2 74LS139

G Y0

Y1

Y2

Y3

A

B

1 G 1A 1B 1Y0 1Y1 1Y2 1Y3 GND

1 2 3 4 5 6 7 8

A B Y0 Y1 Y2 Y3

G A BY0 Y1 Y2

Y3

G

VCC 2 G 2A 2B 2Y0 2Y1 2Y2 2Y3

16 15 14 13 12 11 10 9

输入

使能端

H

G

L

L

L

L

输入端 输出

B A

× ×

L L

L H

H L

H H

Y0 Y1 Y2 Y3

H H H H

L H H H

H L H H

H H L H

H H H L

1 G

1

1A

1B

2 G

2A

2B

4

5

6

7

12

11

10

9

1

1

1

1

1

1

1

1

1

1

&

&

&

&

&

&

&

&

1Y 0

2

3

15

14

13

1Y1

1Y 2

1Y 3

2Y 0

2Y1

2Y 2

2Y 3

第87页

76 数字逻辑(第三版)

(a)逻辑图 (b)功能表

(c)引脚图 (d)逻辑符号

图 3-39 74LS138 译码器

由 7 段组成的 1 位十进制数的显示器件结构如图 3-40 所示。当适当地驱动 a、b、c、d、e、

f、g 中的某些段发光时,则可获得 0~9 中的十进制数。大多数现代的 7 段显示器件都可以由 7

段译码器 74LS47 直接驱动,它的逻辑图、功能表和引脚图如图 3-41 所示。

g

a

b

c

d

e

f

图 3-40 7 段显示器件结构

c

f b

e

d

g

a

输入

使能端 输入端

G1 G2

X H

L X

H L

H L

H L

H L

H L

H L

H L

C B A

×××

×××

L L L

L L H

L H L

L H H

H L L

H L H

H H L

H H H

输出

Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7

H H H H H H H H

H H H H H H H H

L H H H H H H H

H L H H H H H H

H H L H H H H H

H H H L H H H H

H H H H L H H H

H H H H H L H H

H H H H H H L H

H H H H H H H L

16 15 14 13 12 11 10 9

VCC Y0 Y1 Y2 Y3 Y4 Y5 Y6

1 2 3 4 5 6 7 8

A B C G A2 G B2 G1 Y7 GND

Y0 Y1 Y2 Y3 Y4 Y5

A Y6

B C G2A G2B G1 Y7

数据输出

74LS138

G1

G2A

G2B

A

B

C

Y0

Y1

Y2

Y3

Y4

Y5

Y6

Y7

A

B

C

1

2

3

6

4

5

G1

G2A

G2B

&

1

1

1

1

1

1

&

&

&

&

&

&

&

&

15

14

13

12

11

10

9

7

Y7

Y6

Y5

Y4

Y3

Y2

Y1

Y0

选择输入 使能输入

&

&

&

&

&

&

&

&

1

1

7 段数码管显示

74LS138 芯片:

芯片实物图

138 芯片:实验 1-

实验箱介绍

138 芯片:实验 2-

实验前准备

138 芯片:实验 3-

实验原理与过程

138 芯片:实验 4-

实验结果与分析

138 芯片:

引脚介绍

第88页

第 3 章 组合逻辑 77

根据所使用的发光二极管数码管的不同,数字显示译码器的内部结构也不相同,根据所需显

示的字形的不同,数字显示译码器的内部结构也不同。但有一点相同,数码发光二极管需提供的

电流较大,因此数字显示译码器器件应具有驱动能力,它们也被称为译码驱动器。

由功能表可以看出,为了增强器件的功能,在 74LS47 中还设置了一些辅助端。这些辅助端

的功能如下:

① 试灯输入端 LT :低电平有效。当 LT =0 时,数码管的 7 段应全亮,与输入的译码信号无

关。该输入端用于测试数码管的好坏。

② 动态灭零输入端 RBI :低电平有效。当 LT =1、 RBI =0 且译码输入全为 0 时,该位输出

不显示,即 0 字被熄灭;当译码输入不全为 0 时,该位正常显示。该输入端用于消隐无效的 0。

如数据 0034.50 可显示为 34.5。

(a)逻辑图

图 3-41 七段译码器 74LS47

(7)

(1)

(2)

(6)

(4)

(3)

(5)

(14)

(15)

(9)

(10)

(11)

(12)

(13)

1 .1

输入

A

输入

B

输入

C

输入

D

BI RBO /

LT

RBI

&

&

&

&

&

&

&

&

&

&

&

1

&

&

&

&

&

&

.1

.1

.1

.1

.1

.1

&

&

&

灭灯输入/动

态灭零输出

试灯

输入

动态灭

零输入

1

1

1

1

1

1

&

&

&

&

输出

a

输出

b

输出

c

输出

d

输出

e

输出

f

输出

g

1

1

1

1

&

第89页

78 数字逻辑(第三版)

(b)功能表

(c)引脚图

图 3-41 7 段译码器 74LS47(续)

③ 灭灯输入/动态灭零输出端 BI RBO / :这是一个特殊的端,有时用作输入,有时用作输出。

当 BI RBO / 作为输入使用,且 BI RBO / =0 时,数码管 7 段全灭,与译码输入无关;当 BI RBO / 作

为输出使用时,受控于 LT 和 RBI :当 LT =1 且 RBI =0 时,BI RBO / =0;其他情况下 BI RBO / =1。

该端主要用于显示多位数字时,将多个译码器之间进行连接。

3.二进制译码器的级联

在要求输入变量数 n 较大的电路中,可用多个二进制译码器级联以达到设计的要求。

【例 3-14】用两个 3-8 线译码器组成 4-16 线译码器。

解:用两片 74LS138(U1、U2)级联起来,如图 3-42 所示。把输入的最高位 N3分别接到 U1

的 G2A 和 U2 的 G1,N2、N1、N0同时接到 U1和 U2 的 C、B、A,整个级联电路的使能输入为 EN ,

分别接到 U1的 G2B 和 U2 的 G2A 。

设 EN =0 时,如果 N3 =0,则 U2 的输出无效(均为 1),而 U1 按 N2N1N0 译码

Fm i i i = = 0~7

VCC

输出

f g a b c d e

16 15 14 13 12 11 10 9

f g a b c d e

B C

LT BI RBO / RBI

D A

1 2 3 4 5 6 7 8

输入 输入

B C 试灯

输入

动态

灭零

输出

动态 GND

灭零

输入

D A

No.

0

1

2

3

4

5

6

7

12

13

14

15

8

9

10

11

BI

RBI

LT

输入

LT RBI D C B A BI RBO / 输出

abc d e f g

H

H

H

H

H

H

H

H

H

H

H

H

H

H

H

H

×

H

L

H

×

×

×

×

×

×

×

×

×

×

×

×

×

×

×

×

L

×

L L L L

L L L H

L L H L

L L H H

L H L L

L H L H

L H H L

L H H H

H L L L

H L L H

H L H L

H L H H

H H L L

H H L H

H H H L

H H H H

× × × ×

L L L L

× × × ×

H

H

H

H

H

H

H

HH

H

H

H

H

H

H

H

L

L

×

ON

OFF

ON

ON

OFF

ON

OFF

ON

ON

ON

OFF

OFF

OFF

ON

OFF

OFF

OFF

OFF

ON

ON

ON

ON

ON

ON

OFF

OFF

ON

ON

ON

OFF

OFF

ON

OFF

OFF

OFF

OFF

OFF

ON

ON

ON

OFF

ON

ON

ON

ON

ON

ON

ON

OFF

ON

OFF

OFF

OFF

OFF

OFF

OFF

ON

ON

OFF

ON

ON

OFF

ON

ON

OFF

ON

OFF

ON

ON

OFF

ON

ON

OFF

OFF

OFF

ON

ON

OFF

ON

OFF

OFF

OFF

ON

OFF

ON

OFF

ON

OFF

OFF

OFF

ON

OFF

OFF

OFF

ON

ON

OFF

OFF

OFF

ON

ON

ON

OFF

ON

ON

OFF

OFF

ON

ON

ON

OFF

OFF

OFF

ON

OFF

OFF

ON

ON

ON

ON

ON

OFF

ON

ON

ON

ON

ON

ON

ON

OFF

OFF

OFF

ON

74LS47 译码器

第90页

第 3 章 组合逻辑 79

如果 N3 =1,则 U1的输出无效,而 U2按 N2N1N0 译码,mi 为 N3N2N1N0 有效的对应最小项

Fmi i i = = 8~15

总的级联译码器的输出位逻辑表达式为

F EN m i i i =+ = 0~15

4.二进制译码器应用举例

(1)用二进制译码器实现组合逻辑函数

n−2n 线译码器的输出对应 n 变量函数的 2n 个最小项。任何组合逻辑函数总能表示为最小项之

和的标准形式。因此,辅以适当的 SSI 门电路就可以实现任意的组合逻辑函数。

【例 3-15】用译码器实现函数 3 F m =∑ (1,4,6,7) 。

解:该函数为 3 个输入变量,设为 x、y、z,因此可用 3-8 线译码器实现。

3

1467

1467

1467

F m (1,4,6,7)

mmmm

mmmm

mm mm

=

=+++

=+++

=⋅⋅⋅

按上式得到的逻辑图如图 3-43 所示。要注意的是,输入变量 z、y、x 必须按正确的顺序连接

到译码器的输入端 C、B、A。

图 3-42 用两片 74LS138 级联设计 4-16 线译码器 图 3-43 用 3-8 线译码器实现逻辑函数

【例 3-16】用译码器设计 1 位全加器。

解:根据例 3-5 的真值表可知

3

3

(1,2,4,7)

(3,5,6,7)

i

i

S m

C m

=

=

用一片 74LS138 的 3-8 线译码器和一片 74LS20 的双与非门组成的 1 位全加器电路,如图 3-44

所示。

从上例可以看出,译码器也可以实现多输出函数。

74LS138

x

y

z

1

F

A

B

C

G1

G2B

G2A

Y0

Y1

Y2

Y3

Y4

Y5

Y6

Y7

&

+5V

R

N0

N1

N2

N3

EN

74LS138

G1

G2A

G2B

A

B

C

F0

F1

F 2

F3

F 4

F5

F6

F7

Y0

Y1

Y2

Y3

Y4

Y5

Y6

U1

74LS138

G1

G2A

G2B

A

B

C

F8

F10

F11

F12

F13

F14

F15

Y0

Y1

Y2

Y3

Y4

Y5

Y6

U2

F9

Y7

Y7

第91页

80 数字逻辑(第三版)

在逻辑函数的最小项表达式中,当最小项的数目小于或等于 4 时,采用译码器实现是很方便

的;当最小项数目大于 4 时,由于没有输入端数大于 4 的 SSI 与非门,因此需设计多输入端的与

非门,这将增加输出门的级数,采用译码器实现是不妥当的。因为随着译码器的输入变量的增加,

其最小项数以及输出端数呈指数趋势增加,且需要多个译码器级联,这在速度和成本上均难以接

受。但这一设计思想可推广到可编程逻辑器件(PLD)的应用中,这将在第 8 章讨论。

图 3-44 用 3-8 线译码器实现一位全加器逻辑图

(2)将译码器作为数据分配器

在数据传输过程中,常常需要将一路数据分配到多个装置中去,执行这种功能的电路称为数

据分配器。这种电路相当于一个单刀多掷开关,在任何时候只有一路数据输出端和输入端相连,

而连接到哪个输出端,是在地址码输入的控制下选择的。

图 3-45(a)为四路数据分配器的等效说明电路,图 3-45(b)是它的逻辑符号,图 3-45(c)

是逻辑电路图。图中 D 为传送数据输入端,A1、A0 为地址码输入端,Y3、Y2、Y1、Y0为输出的数

据通道。从图 3-45(c)中很容易看出,当 A1A0= 00 时,数据 D 从 Y0中通过,即 Y0 =D,其他输

出皆为 0;当 A1A0= 01 时,数据 D 从 Y1中通过,即 Y1 =D,其他输出皆为 0,其余类推。这种分

配器称为 1-4 多路分配器。

(a)等效说明电路 (b)逻辑符号 (c)逻辑电路图

图 3-45 1-4 多路分配器原理

输入数据 D 实际上仅为 0 或 1,输出通路中仅有一路与 D 一致,其余通路上皆为 0。数据分

配器的一般表达式为

Yi = D

式中,i 为地址码 An−1…A0 的十进制值。

74LS139 译码器中的 2-4 线译码器可作为 1-4 数据分配器。将使能端 G 作为数据输入端,即

D 接至 G 端;数据输入端 B、A 作为地址选择 A1、A0,在从图 3-38 的功能表上很容易得到 Yi = D,

如图 3-46(a)所示。

同理,3-8 线译码器 74LS138 可作为 1-8 数据分配器。将 G2A (或 G2B )作为数据输入端,

Si

Ci

74LS138

Ci−1

Bi

Ai

1

G2A

G2B

G1

C

B

A

Y7

Y6

Y5

Y4

Y3

Y2

Y1

Y0

&

&

Y0

Y1 Y2

Y3

D

Y3 Y1 Y2 Y3

A1

A0 D

D

A1 A0

Y0 Y1 Y2 Y3

1

&

1

& & &

第92页

第 3 章 组合逻辑 81

G1、 G2B (或 G2A )还是作为使能端,数据端 C、B、A 作为地址选择 A2A1A0,则有 Yi = D,如

图 3-46(b)所示。

(a)74LS139 (b)74LS138

图 3-46 将译码器作为数据分配器

3-5-2 编码器

编码器按照被编码信号的不同特点和要求,有各种不同的类型,最常见的有二-十进制编码

器(又称 BCD 码编码器)和优先编码器。编码器的功能恰好与译码器相反,它是对输入信号按一

定的规律进行编排,使每组输出代码具有一特定的含义。

二-十进制编码器执行的逻辑功能是将十进制的 0~9 这 10 个数字分别编成 4 位 BCD 码。这

种编码器由 10 个输入端代表 10 个不同数字,4 个输出端代表 BCD 码。

优先编码器是数字系统中实现优先权管理的一个重要逻辑部件。它与二-十进制编码器的最

大区别是:二-十进制编码器的输入信号是互斥的,即任何时候只允许一个输入端为有效信号(只

允许按下一个键)。而优先编码器的输入不是互斥的,它允许多个输入端同时为有效信号。优先编

码器的每个输入具有不同的优先级别,当多个输入信号有效时,它能识别输入信号的优先级别,

并对其中优先级别最高的一个进行编码,产生相应的输出代码。

74LS147 是典型的 8421BCD 码优先编码器,74LS148 是典型的 8-3 线优先编码器,应用十分

广泛。

1.8-3 线优先编码器 74LS148

图 3-47 给出了 74LS148 的逻辑图、功能表、引脚图和逻辑符号。74LS148 的输入/输出均为

低电平有效,其中 EI 为输入使能端, EO 、 GS 为输出使能信号, Ii (i = 0~7)为 8 个输入信

号, Ai (i = 0~3)为 3 个输出信号。当输入 EI 有效且无一个 Ii 有效时,输出 EO 才有效;当输

入 EI 有效且至少有一个 Ii 有效时,输出 GS 才有效。8 个输入中优先权不同,I0 最低,I7最高,3

个输出表示的是优先权高的有效输入信号的编码(反码),即优先编码。

2.优先编码器应用举例

在多微处理机系统中,需要对各处理机争用总线作出仲裁。为了提高仲裁速度,通常采用并

行优先权仲裁方式。如果对各处理机争用总线的优先权进行分配,则可用优先编码器及译码器构

成优先权裁决。图 3-48 是一个总线互联结构的 8 个处理单元争用总线的并行优先权裁决逻辑示

意图,当某处理单元 MPUi 发出总线请求 BRi 并收到总线优先输入 BPi ,则此处理机即可占用总

线;如果发出 BRi 而未收到有效的 BPi ,则此处理机不可能占用总线。

D

1/2 74LS139

B A

A1 A0

Y0

Y1

Y2

Y3

A2 A1 A0

CBA

1

D

G

G2A

G2B

G1

Y0

Y1

Y2

Y3

Y4

Y5

Y6

Y7

第93页

82 数字逻辑(第三版)

(a)逻辑图

(b)功能表

图 3-47 优先编码器 74LS148

输入

EI

H

L

L

L

L

L

L

L

L

L

0 1 2 3 4 5 6 7

×

H

×

×

×

×

×

×

×

L

×

H

×

×

×

×

×

×

L

H

×

H

×

×

×

×

×

L

H

H

×

H

×

×

×

×

L

H

H

H

×

H

×

×

×

L

H

H

H

H

×

H

×

×

L

H

H

H

H

H

×

H

×

L

H

H

H

H

H

H

×

H

L

H

H

H

H

H

H

H

输出

A2 A1 A0

H H H

H H H

L L L

L L H

L H L

L H H

H L L

H L H

H H L

H H H

GS EO

H H

H L

L H

L H

L H

L H

L H

L H

L H

L H

10 0

11 1

12 2

13 3

1 4

2 5

3 6

4

7

5 EI

15 EO

14 GS

9 A0

7

A1

6

A2

.1

.1

.1

.1

&

&

&

&

&

&

&

&

&

&

&

&

&

1

1 1

1

1 1

1 1

1 1

1

1

第94页

第 3 章 组合逻辑 83

(c)引脚图 (d)逻辑符号

图 3-47 优先编码器 74LS148(续)

图 3-48 并行优先权裁决电路

3-5-3 多路选择器

多路选择器又称数据选择器或多路开关,是一种多路输入、单路输出的组合逻辑电路,其逻

辑功能是从多路输入中选中一路送至输出端,选中的输入端由选择变量控制。通常,对于一个具

有 2n 路输入和一路输出的多路选择器有 n 个选择控制变量,控制变量的每种取值组合对应选中一

路输入送至输出。常见的 MSI 多路选择器有 4 路选择器、8 路选择器和 16 路选择器。

1.4 输入 2 位多路选择器 74LS153

74LS153 是一个 4 输入 2 位多路选择器,其逻辑图、引脚图、功能表和逻辑符号如图 3-49 所

示。其中Gi 为使能端(低电平有效),B 和 A 为选择控制端,从图中可知,对于任意一位 Yi

(i =1,2),

当 BA=00 时,Yi=Ci0;当 BA=01 时,Yi=Ci1;当 BA=10 时,Yi=Ci2;当 BA=11 时,Yi=Ci3。即在 BA

的控制下,依次选中 Ci0~Ci3 端的信息送至输出端 Yi。其表达式为

3

0123

0

i i i i i j ij

j

Y B AC BAC B AC BAC m C

=

=+++= ∑ (i =1,2)

式中,mj 为选择变量 BA 组成的最小项;Cij 为输入数据,取值等于 0 或 1。

2.8 输入 1 位多路选择器 74LS151

图 3-50 为 8 选 1 数据选择器 74LS151 的逻辑图、引脚图、功能表和逻辑符号。如图 3-50 所

示,该逻辑电路是与或非结构,每个与门都由选通(使能)信号 S 和数据选择信号 A、B、C 控制。

由图 3-50 可知,当 S =0 时,两个互反输出 Y 和 W 的表达式为

7

0

i i

i

Y mD

=

= ∑ 7

0

i i

i

W mD Y

=

= ∑ =

VCC Eo GS 3 2 1 0 A0

16 15 14 13 12 11 10 9

Eo GS 3 2 1 0

4

5 6 7 EI A2 A1

1 2 3 4 5 6 7 8

EI A2 A1 GND

AD

74LS148

EI

I0

I1

I2

I3

I4

I5

I6

I7

A2

A1

A0

GS

EO

BUS

MPU7

MPU6

MPU0

BP7

BP6

0

BR6

BP0

BR0

74LS148 74LS138

EI

I7

I6

I5

I4

I3

I2

I1

I0

1

G2A

G2B

A

B

C

A2

A1

A0

GS

EO

Y0

Y1

Y2

Y3

Y4

Y5

Y6

Y7

G1 BR7

第95页

84 数字逻辑(第三版)

式中,mi 为选择变量 CBA 组成的最小项,Di 为输入数据,取值等于 0 或 1。类似地,可以写出

2n 路选择器的输出表达式

2 1

0

n

i i

i

Y mD

=

= ∑ 。

(a)逻辑图

(b)功能表

(c)引脚图 (d)逻辑符号

图 3-49 多路选择器 74LS153

选择进入 数据输入 使能 输出

B A

× ×

L L

L L

L H

L H

H L

H L

H H

H H

× × × ×

L × × ×

H × × ×

× L × ×

× H × ×

× × L ×

× × H ×

× × × L

× × × H

C0 C1 C2 C3 G Y

H

L

L

L

L

L

L

L

L

L

L

H

L

H

L

H

L

H

数据 1

选择

数据 2

1

6

5

4

3

2

14

10

11

12

13

15

G2

C23

C22

C21

C20

A

B

C13

C12

C11

C10

G1

&

&

&

&

.1

.1

&

&

&

&

1

Y2

Y1

1

VCC

数据输入

输出

选择

2G

2C3 2C2 2C1 2D0 2Y

B B A A

G2

使能 A

C23 C22 C21 C20 Y2

16 15 14 13 12 11 10 9

1 2 3 4 5 6 7 8

GND

输出

数据输入

使能 选择

G1 B C13 C12 C11 G10 Y1

1C3 1C2 1C1 1C0 1Y

1G B A B A

1

1

74LS153

A

B

C10

C11

C12

C13

C20

C21

C22

C23

Y1

Y2

G1

G2

1

1

第96页

第 3 章 组合逻辑 85

(a)逻辑图

(b)功能表 (c)引脚图 (d)逻辑符号

图 3-50 8 选 1 数据选择器 74LS151

3.多路选择器应用举例

(1)作为逻辑函数产生器

【例 3-17】试用 74LS151 8 选 1 数据选择器产生逻辑函数 F ABC ABC AB =++ 。

解:根据多路选择器输出表达式

2 1

0

n

i i

i

Y mD

=

= ∑ 的特点,可采用两种不同规模的 MUX 实现给定

逻辑函数。

方法一:采用 8 路数据选择器 74LS151。

把逻辑函数 F =++ ABC ABC AB 变换成最小项表达式

数据

输入

数据选择

(二进制)

=1 7

4

3

2

1

15

14

13

12

11

10

9 C

B

A

D7

D6

D5

D4

D3

D2

D1

D0

G

&

&

&

&

&

&

&

&

5

6

Y

W

输入 输出

选择

C B A Y W

H

L

L

L

L

L

L

L

L

L

D0

D1

D2

D3

D4

D5

D6

D7

H

D0

D1

D2

D3

D4

D5

D6

D7

G

74LS151

G

A

B

C

D0

D1

D2

D3

D4

D5

D6

D7

Y

W

D4 D5 D6 D7 A B

S

D3 C

D2 D1 D0 Y W

1 2 3 4 5 6 7 8

16 15 14 13 12 11 10 9

VCC 4 5 6 7 AB C

数据输入 数据选择

3 2 1 0 Y

数据输入 输出

W 输出 使能

×

L

H

L

H

L

H

L

H

×

L

L

H

H

L

L

H

H

×

L

L

L

L

H

H

H

H

第97页

86 数字逻辑(第三版)

F ABC ABC ABC ABC m m m m = + + + =+++ 3567

则取数据输入端 D3 =1、D5 =1、D6 =1、D7 =1(接 VCC),其余数据输入端取 0(接地),使能端 G 接

地,函数的输入变量 A、B 和 C 分别接 74LS151 的数据选择端 C、B 和 A,则在 74LS151 的正相

输出端 Y 产生了所需函数。逻辑图如图 3-51(a)所示。

显然这种 n 变量函数用 2n 路数据选择器(n 个选择输入端)来实现比较简单,不需要其他的

辅助器件,但是不能充分利用数据输入端,因而并不经济。

方法二:采用 4 路数据选择器 74LS153。

把逻辑函数 F = ABC + ABC + AB变换成最小项表达式

01 2 3

0 ()

0 1

F AB C AB C AB C AB C

AB AB C AB C AB C C

m mC m C m

= ⋅+ ⋅+ ⋅+ ⋅

= ⋅+ ⋅ + ⋅ + ⋅ +

= ⋅+ ⋅ + ⋅ + ⋅

式中,mi 为变量 A 和 B 的最小项。依次取 C10 =0、C11 =C、C12 =C、C13 =1,使能端 G1接地,函数

的输入变量 A 和 B 分别接 74LS153 的数据选择端 B 和 A,则在 74LS153 的输出端 Y1 产生了所需函

数。逻辑图如图 3-51(b)所示。

(a)方法一图 (b)方法二图

图 3-51 例 3-17 的逻辑图

该方法还可以采用真值表和卡诺图的方法求解。分别如表 3-16 和图 3-52 所示。在表 3-16

中比较 F(Y1)和 C 的取值即可求得 C1i。同样在卡诺图中比较 F(Y1)和 C 的取值也可求得 C1i。

显然这种 n 变量函数用 2n−1

路数据选择器(n−1 个选择输入端)来实现要相对复杂一些,可

能需要其他的辅助器件(集成反相器),但是可以比较充分地利用数据输入端。

表 3-16 用真值表求解例 3-17

mi A B C F(Y1) C1i

0 0 0 0 m0

0 0 1 0

C10=0

0 1 0 0 m1

0 1 1 1

C11=C

1 0 0 0 m2

1 0 1 1

C12=C

1 1 0 1 m3

1 1 1 1

C13=1

1Y F

1/2 74LS153

A

B

1C0

1C1

1C2

1C3 1

C

0

0

A

B

Y Y

W

D7

D6

D5

D4

D3

D2

D1

D0

C

B

A

74LS151

0

C

B

A

0

1

G

1G

【例 3-17】例题

第98页

第 3 章 组合逻辑 87

【例 3-18】用 8 路数据选择器实现四变量函数 F m = ∑ (1,2,4,5,10,11,14,15) 。

解:设函数的变量为 ABCD,用卡诺图法求解,如图 3-53(a)所示,在图中比较 F(Y)和 D

的取值可求得 Di。逻辑图如图 3-53(b)所示。

AB

CD 00 01 11 10

0 0 0 1 0 0

0 1 1 1 0 0

1 1 0 0 1 1

1 0 1 0 1 1

↓ ↓ ↓ ↓

D0=D

D1= D

D2=1

D3=0

D3=0

D7=1

D4=0

D5=1

(a)卡诺图 (b)逻辑图

图 3-53 例 3-18 的卡诺图法求解及逻辑图

其他方法请读者自己尝试。此例中的函数还可以用 4 路数据选择器来实现,虽然能更充分地

利用数据选择器的输入端,但此时除了反相器外,还需要更多的辅助器件(如异或门、或门等),

这样做就不经济了。

(2)用译码器和多路选择器设计比较器

【例 3-19】用 3-8 线译码器和 8 路数据选

择器构造一个 3 位二进制等值比较器。

解:设比较器的两个 3 位二进制数分别为

A2A1A0 和 B2B1B0,将译码器和多路选择器按

图 3-54 所示进行连接,即可实现 A2A1A0和 B2B1B0

的等值比较。

由图 3-54 可知,当译码器的使能端 G2A 、

G2B 接地,G1 接 VCC,电路处于工作状态。若

AB

C 00 01 11 10

0 0 0 1 0

1 0 1 1 1

↓ ↓ ↓ ↓

C10=0 C11=C C13=1 C12=C

图 3-52 用卡诺图法求解例 3-17

74LS151

0

C

B

A

D

1

0

Y F

W

A

B

C

D0

D1

D3

D4

D5

D6

D7

G

D

Y F

W

D7

D6

D5

D4

D3

D2

D1

D0

C

B

A

G

74LS151

0

B0

B1

B2

1

0

0

74LS138

A0

A1

A2

A

B

C

G1

G2A

G2B

Y0

Y1

Y2

Y3

Y4

Y5

Y6

Y7

D2

图 3-54 例 3-19 的比较器逻辑图

第99页

88 数字逻辑(第三版)

A2A1A0 = B2B1B0,则多路选择器的输出 Y=0,否则 Y=1。例如,当 A2A1A0=010 时,译码器 Y 2 =0,

其余均为 1。若多路选择器选择控制变量 B2B1B0= A2A1A0=010,则选通 D2 送至输出端 Y,由于

D2= Y 2 =0,故 Y=0;若 B2B1B0≠010,则多路选择器会选择 D2 之外的其他数据送至输出端 Y,由于

与其余数据输入端相连的译码器输出均为 1,故 Y=1。

用类似的方法,采用合适的译码器和多路选择器可构成多位二进制等值比较器。

(3)用多路选择器和多路分配器设计数据分时传送系统

多路选择器可以从几个数据源中选择一个传送到总线,多路分配器接收从总线传来的数据并

分配给多个目标设备中的任意一个。因此,通过一条总线就可以把 n 个源数据及 m 个目标设备连

接起来。在源地址选择信号 SELi 和目标地址选择信号 SELj 的控制下,分时使用总线。图 3-55 所

示是用 74LS151 和 74LS138 构成的 8 路数据通过一条总线分时传送的原理示意图。

图 3-55 MUX/DMUX 分时传送-接收原理示意图

3-5-4 比较器

比较器是对两个位数相同的二进制整数进行比较并判断其大小关系的逻辑器件。两个 n 位二

进制数 A 和 B 比较的结果,有 3 种情况:A>B、A<B 和 A=B。两数相比,高位的比较结果起着决

定性作用,即高位不等便可确定两数大小,高位相等再进行低一位的比较,所有位均相等才表示

两数相等。所以,n 位二进制数的比较过程是从高位到低位逐位进行的,也就是说,n 位二进制

数比较器可由 n 个 1 位二进制数比较器组成。

1.1 位二进制数比较器原理

表 3-17 列出了 1 位二进制数比较器的真值表。从真值表中可以看出,该比较器有两个 1 位

输入 A、B,以及三个比较结果输出 F1、F2、F3。当 A>B 时,F1=1;当 A<B 时,F2=1;当 A=B 时,

F3=1。由真值表可列出比较器的逻辑表达式并转换成如下形式:

F1 = AB , F2 = AB

F3 12 = + = + =+ AB AB AB AB F F

根据逻辑表达式画出 1 位二进制数比较器的逻辑电路如图 3-56 所示。

2.4 位二进制数比较器 74LS85

4 位二进制数比较器由 4 个 1 位二进制数比较器组成,用于对两个 4 位二进制数 A 和 B 的各

74LS138

DstDj

(目标数据)

1

C B A

SELi SELj

74LS151

D0

D1

D2

D3

D4

D5

D6

D7

C B A

Y

W SrcDi

(源数据)

G

G2A

G1

G2B

Y0

Y1

Y2

Y3

Y4

Y5

Y6

Y7

第100页

第 3 章 组合逻辑 89

位两两进行比较。74LS85 是 MSI 4 位二进制数比较器,该芯片的逻辑图、功能表和引脚图如图 3-57

所示。

表 3-17 1 位二进制数比较器真值表

B A F1 F2 F3

0 0 0 0 1

1 0 0 1 0

0 1 1 0 0

1 1 0 0 1

图 3-56 1 位二进制数比较器的逻辑电路

在 74LS85 的电路图中,除了两个 4 位二进制数输入端外,还有 3 个用于扩展的级联输入端

“A>B”、“A<B”和“A=B”,其逻辑功能相当于在 4 位二进制数比较器的最低位 A、B 后增添了一

位更低的比较数位。利用级联输入端,可实现比较器的串联扩展和并联扩展。

(a)逻辑图

图 3-57 4 位二进制数比较器 74LS85

B

A

F1

F3

F2

1

1

&

&

.1

(15)

(1)

A3

B3

A2 (13)

B2

(14)

A<B

A=B

A>B (4)

(3)

(2)

(12)

(11)

A1

B1

A0 (10)

B0

(9)

&

&

&

&

&

&

&

&

&

&

&

&

.1

.1

.1

.1

&

&

&

&

&

&

&

&

&

&

&

&

&

&

(5) A>B

(6) A=B

(7) A<B

&

百万用户使用云展网进行书册翻页效果制作,只要您有文档,即可一键上传,自动生成链接和二维码(独立电子书),支持分享到微信和网站!
收藏
转发
下载
免费制作
其他案例
更多案例
免费制作
x
{{item.desc}}
下载
{{item.title}}
{{toast}}