第三章 组合逻辑电路的分析
与设计
3.2 编码器
3.3 译码器
3.4 算术运算电路
3.1 组合逻辑电路的分析方法和设计方法
3.1 组合逻辑电路的分析方法和设计方法
一,组合逻辑电路的特点
电路任一时刻的输出状态只决定于该时刻各输
入状态的组合, 而与电路的原状态无关 。
组合电路就是由门电路组合而成, 电路中没有记忆单元,
没有反馈通路 。
每一个输出变量是全部
或部分输入变量的函数:
L1=f1( A1,A2,…,Ai)
L2=f2( A1,A2,…,Ai)
……
Lj=fj( A1,A2,…,Ai)
? ?
组合
逻辑
电路
A
1
A
2
A
i
L 1
L 2
L j
二、组合逻辑电路的分析方法
分析过程一般包含以下几个步
骤:
例 3.1,组合电路如图所示, 分析该电路的逻辑功能 。
组合逻辑
电路
逻辑表达式 最简表达式 真值表 逻辑功能
化简
变换
&
&
&
&
≥1A
B
C
L
P
解,( 1)由逻辑图逐级写出表达式(借助中间变量 P)。
( 2) 化简与变换:
( 3) 由表达式列出真值表 。
ABCP ?
CPBPAPL ??? A B CCA B CBA B CA ???
CBAABCCBAABCCBAABCL ????????? )(
( 4) 分析逻辑功能,
当 A,B,C三个变量不一致
时, 输出为, 1”,所以这个
电路称为, 不一致电路, 。
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
A B C
0
1
1
1
1
1
1
0
L
真值表
三,组合逻辑电路的设计方法
设计过程的基本步骤:
例 3.2,设计一个三人表决电路, 结果按, 少数服从多数, 的原则决定 。
解,( 1) 列真值表:
( 3) 用卡诺图 化简 。
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
A B C
0
0
0
1
0
1
1
1
L
三人表决电路真值表
A
BC
0
00 01
1
11 10
A
B
C
1 1 1
10 0 0
0
实际逻辑
问题
最简(或最
逻辑图
化简
变换
真值表 逻辑表达式 合理)表达式
得最简与 — 或表达式:
( 4)画出逻辑图,
ACBCABL ???
( 5) 如果, 要求用与非门实现该逻辑电路, 就应将表
达式转换成 与非 —与非 表达式:
画出逻辑图,
ACBCABACBCABL ??????
&
&
&
≥1
L
A
B
C
B
C
&
A &
L
&
&
例 3.2,在举重比赛中,有俩名副裁判,一名主
裁判。当两名以上裁判(必须包括主裁判在内)
认为运动员上举杠铃合格,按动电钮,裁决合
格信号灯亮,试用与非门设计该电路。
解,设主裁判为变量 A,副裁判分别为 B和 C;
按电钮为 1,不按为 0。表示成功与否的灯为 Y,
合格为 1,否则为 0。
( 1)根据逻辑要求列出真值表。
A B C Y A B C Y
0 0 0
0 0 1
0 1 0
0 1 1
0
0
0
0
1 0 0
1 0 1
1 1 0
1 1 1
0
1
1
1
真 值 表
( 2)由真值表写出表达式:
A B CCABCBAmmmY ?????? 765
A B
C 00 01 11 10
0
1
1
1
1
ACAB ??
( 3)化简:
Y=AB+AC
( 4)画出逻辑电路图:
A
B
A
C
Y
&
&
&
A B Y
0 0
0 1
1 0
1 1
0
1
1
0
BABAY ??
例 3.3,设计一个楼上、楼下开关的控制逻辑电路来控制楼
梯上的路灯,使之在上楼前,用楼下开关打开电灯,上楼
后,用楼上开关关灭电灯;或者在下楼前,用楼上开关打
开电灯,下楼后,用楼下开关关灭电灯。
解,
设楼上开关为 A,楼下开关为 B,灯泡为 Y。并设 A,B闭合
时为 1,断开时为 0;灯亮时 Y为 1,灯灭时 Y为 0。
( 1)根据逻辑要求列出真值表。
(2)由真值表写逻辑表达式:
BABAY ??
A
B
Y
&
&
& &
BAY ??
( 3)变换:
用与非门实现 图( a)
用异或门实现 图 (b)
A
B
Y=1
图( a) 图( b)
3.2 编码器
一,编码器的基本概念及工作原理
编码 —— 将特定含义的输入信号(文字, 数字, 符号)
转换成二进制代码的过程, 能够实现编码功能的数字电
路称为编码器。
一般而言,N个不同的信号,至少需要 n位二进制数编
码。
N和 n之间满足下列关系,
2n≥N
常见的编码器有 8线 -3线(有 8个输入端,3个输出端),
16线 — 4线( 16个输入端,4个输出端)等等。
例 1:设计一个 8线 -3线的编码器
解:
( 1)确定输入输出变量个数,由题意知输入为 I0~ I88个,
输出为 A1,A2, A3。
( 2)编码表见下表:(输入为高电平有效)
一,二进制编码器,
输 入
输 出
0
A
2 1
AA
1 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0
0 0 1 0 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 0 1 0 0 0
0 0 0 0 0 1 0 0
0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 1
1
I
2
I
54 6
II
0 3
I
7
II I
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
编码器真值表
76542 IIIIA ?
76321 IIIIA ?
75310 IIIIA ?
(3)由真值表写出各输出的逻辑表达式为:
用门电路实现逻辑电路:
A
&
1
&&
A
0
A
2
1
I
1
I
1 1
1
3
1
I
1
I I
5 2 0
1 1
I
67 4
I I
二, 二进制编码器 (以二-十进制编码器为例)
二 -十进制编码器是指用四位二进制代码表示一位十
进制数的编码电路(输入 10个互斥的数码,输出 4位二进
制代码)
1,BCD码:常用的几种 BCD码
8421码,5421码,2421码、余三码,
2,10线- 4线编码器
例 2:设计一个 8421 BCD码编码器
解,
输入信号 I0~ I9代表 0~ 9共 10个十进制信号,输
出信号为 Y0~ Y3相应二进制代码,
列编码表
97531
975310
7632
76321
7654
76542
98
983
IIIII
IIIIIY
IIII
IIIIY
IIII
IIIIY
II
IIY
?
?????
?
????
?
????
?
??
I
9
I
8
I
7
I
6
I
5
I
4
I
3
I
2
I
1
I
0
Y
3
Y
2
Y
1
Y
0
(a ) 由或门构成
≥ 1≥ 1 ≥ 1≥ 1
I
9
I
8
I
7
I
6
I
5
I
4
I
3
I
2
I
1
I
0
(b) 由与非门构成
Y
3
Y
2
Y
1
Y
0
&& &&
三,优先编码器,是指当多个输入同时有信号时,电路
只对其中优先级别最高的信号进行编码。
例 3 电话室有三种电话,按由高到低优先级排序依次是火
警电话,急救电话,工作电话,要求电话编码依次为 00、
01,10。试设计电话编码控制电路。
解,
(1)根据题意知,同一时间电话室只能处理一部电话,假
如用 A,B,C分别代表火警,急救、工作三种电话,设电
话铃响用 1表示,铃没响用 0表示。当优先级别高的信号有
效时,低级别的则不起作用,这时用 × 表示;
用 Y1,Y2
(2) 列真值表,
表 3 例 3的真值表
输 入 输 出
A B C Y1 Y2
1 × ×
0 1 ×
0 0 1
0 0
0 1
1 0
CBAY ?1
BAY ?2
( 3) 写逻辑表达式
(4) 画优先编码器逻辑图如图 3所示。
&
&
1
1
A
B
Y
1
C
Y
2
图 3 例 3的优先编码逻辑图
在优先编码器中优先级别高的信号排斥级别低的,即具有单
方面排斥的特性 。
74LS148的符号图和管脚图
I
0
I
1
I
2
I
3
I
4
I
5
I
6
I
7
S
Y
0
Y
1
Y
2
Y
EX
Y
s
9
7
6
14
15
10
11
12
13
1
2
3
4
5
7 4 L S 1 4 8
1
2
3
4
5
6
7
8
7 4 L S 1 4 8
16
15
14
13
12
11
10
9
I
4
I
5
I
6
I
7
S ( E )
Y
2
Y
1
G N D
V
CC
Y
S
Y
EX
I
3
I
2
I
1
I
0
Y
0
( a ) ( b )
S 7I 6I 5I 4I 3I 2I 1I 0I 2Y 1Y 0Y EXY
输入使能端 输 入 输 出 扩展 使能输出
1 × × × × × × × × 1 1 1 1 1
0 1 1 1 1 1 1 1 1 1 1 1 1 0
0 0 × × × × × × × 0 0 0 0 1
0 1 0 × × × × × × 0 0 1 0 1
0 1 1 0 × × × × × 0 1 0 0 1
0 1 1 1 0 × × × × 0 1 1 0 1
0 1 1 1 1 0 × × × 1 0 0 0 1
0 1 1 1 1 1 0 × × 1 0 1 0 1
0 1 1 1 1 1 1 0 × 1 1 0 0 1
0 1 1 1 1 1 1 1 0 1 1 1 0 1
74LS148 功 能 表
SY
优先编码器 74LS148的应用
74LS148编码器的应用是非常广泛的。 例如,常用计算
机键盘,其内部就是一个字符编码器。它将键盘上的大、
小写英文字母和数字及符号还包括一些功能键(回车、空
格)等编成一系列的七位二进制数码,送到计算机的中央
处理单元 CPU,然后再进行处理、存储、输出到显示器或
打印机上。 74LS148 编码器监控炉罐的温度,
若其中任何一个炉温超过标准温度或低于标准温度,则检
测传感器输出一个 0电平到 74LS148编码器的输入端,编码
器编码后输出三位二进制代码到微处理器进行控制。
3.3 译码器
一.译码器的基本概念及工作原理
译码:编码的逆过程,即将输入代码, 翻
译, 成特定的输出信号。
译码器:实现译码功能的数字电路。
分类,变量译码器和显示译码器。
二.变量译码器-译出输入变量的状态 。
1、二进制译码器:输入端为 n个,则输出端
为 2n个,且对应于输入代码的每一种状态,
2n个输出中只有一个为 1(或为 0),其余全为
0(或为 1)
2线 — 4线译码器
3线 — 8线译码器
4线 — 16线译码器
例:用与非门设计 3线 — 8线译码器
A
2
A
1
A
0
Y
0
Y
1
Y
2
Y
3
Y
4
Y
5
Y
6
Y
7
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 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0
0 0 1 0 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 0 1 0 0 0
0 0 0 0 0 1 0 0
0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 1
解:( 1)列出译码表:
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
0127
0126
0125
0124
0123
0122
0121
0120
AAAY
AAAY
AAAY
AAAY
AAAY
AAAY
AAAY
AAAY
( 2)写出各输出函数表达式:
( 3)画出逻辑电路图:
& & & & & & & &
1 1 1
A
2
A
1
A
0
Y
7
Y
6
Y
5
Y
4
Y
3
Y
2
Y
1
Y
0
2、集成译码器
16 15 1 4 1 3 1 2 11 1 0 9
74L S 138
1 2 3 4 5 6 7 8
V
C C
Y
0
Y
1
Y
2
Y
3
Y
4
Y
5
Y
6
A
0
A
1
A
2
G
2A
G
2B
G
1
Y
7
G N D
74L S 138
Y
0
Y
1
Y
2
Y
3
Y
4
Y
5
Y
6
Y
7
A
0
A
1
A
2
G
2A
G
2B
G
1
Y
0
Y
1
Y
2
Y
3
Y
4
Y
5
Y
6
Y
7
A
0
A
1
A
2
ST
B
ST
C
ST
A
( a ) 引脚排列图 ( b ) 逻辑功能示意图
( 1),集成二进制译码器 74LS138
功能表如下:
输 入
使 能 选 择
输 出
G
1
2G
A
2
A
1
A
0
01234567 YYYYYYYY
× 1
0 ×
1 0
1 0
1 0
1 0
1 0
1 0
1 0
1 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 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 0
1 1 1 1 1 1 0 1
1 1 1 1 1 0 1 1
1 1 1 1 0 1 1 1
1 1 1 0 1 1 1 1
1 1 0 1 1 1 1 1
1 0 1 1 1 1 1 1
0 1 1 1 1 1 1 1
其中 BA GGG 222 ??
(2)集成 8421 BCD码译码器 74LS42
16 15 1 4 1 3 1 2 11 1 0 9
74 L S 42
1 2 3 4 5 6 7 8
V
CC
A
0
A
1
A
2
A
3
Y
9
Y
8
Y
7
Y
0
Y
1
Y
2
Y
3
Y
4
Y
5
Y
6
G ND
74 L S 42
A
0
A
1
A
2
A
3
Y
0
Y
1
Y
2
Y
3
Y
4
Y
5
Y
6
Y
7
Y
8
Y
9
Y
0
Y
1
Y
2
Y
3
Y
4
Y
5
Y
6
Y
7
Y
8
Y
9
A
0
A
1
A
2
A
3
(a ) 引脚排列图 (b ) 逻辑功能示意图
功 能 表
3、变量译码器的应用
( 1)实现逻辑函数
由于译码器的每个输出端分别与一个最小项相
对应,因此辅以适当的门电路,便可实现任何组
合逻辑函数。
例 1 试用译码器和门电路实现逻辑函数
ACBCABY ???
解:
( 1)将逻辑函数转换成最小项表达式,再转换成与
非 — 与非形式。
A B CCABCBABCAY ????
=m3+m5+m6+m7
=
( 2)该函数有三个变量,所以选用 3线 — 8线译码
器 74LS138。
用一片 74LS138加一个与非门就可实现逻辑函数
Y,逻辑图如图 1所示。
7653 mmmm ???
1
G
0
A
74LS138
G
2A 2B1 2
AG A
Y 1YY Y2Y YY 7 3Y456 0
A B C1 0 0
Y
图 1 例 1逻辑图
( 2)译码器的扩展
G1 G2A G2B
74LS138(2)
0A1A2A 1G 2AG 2BG
74LS138(1)
A 1 A2 A 0
+5v
2
AA
01
A
3
A
_
016 2YY YY4 Y5 YY 3Y7914 10YY YY12
Y13 Y 11Y15
2Y7Y Y Y YY5 4 3 016 YY5Y7Y Y Y YY5 4 3 016 YY
Y 8
用两片 74LS138扩展为 4线 — 16线译码器
当 A=0时,低位片 74LS138(1)工作,对输
入 A3,A2,A1,A0进行译码,还原出 Y0~ Y7,
则高位禁止工作;
当 A=1时,高位片 74LS138(2)工作,还原
出 Y8 ~ Y1 5,而低位片禁止工作。
三、显示译码器,
? 按显示方式分,有字型
重叠式、点阵式、分
段式等。
? 按发光物质分,有半导
体显示器(又称发光
二极管 (LED)显示
器)、荧光显示器、
液晶显示器、气体放
电管显示器等
它通常由译码器、驱动器和显示器等部分组成
1.七段数字显示器原理
按内部连接方式不同,七段数字显示器分为共阴极和共阳极
两种
图 2
( a) 管脚排列图 ; (b) 共阴极接线图 ; (c) 共阳级接线图
a
b
c
d
e
f g
h
9 8 7 6
2 3 4 5
·¤
a
b
c
d
e
f
g
(?¤)h
R
a
b
c
d
e
f
g
(?¤)h
R
10
g f a b
e d c (·)h
1
+ VCC
a
b
c
d
e
f b
c
a
b
d
e
g
a
b
c
d
g b
c
f g
a
c
d
f g
a
c
d
e
f g
a
b
c
a
b
c
d
e
f g
a
b
c
d
f g
图 3 七段数字显示器发光段组合图
2.七段显示译码器 74LS48
A
0
7 4 L S 4 8
Y
a
A
1
A
2
LT
I
B
/ Y
BR
7
1
2
3
4
5
1
2
3
4
5
6
7
8
16
15
14
13
12
11
10
9
7 4 L S 4 8
G N D
V
CC
Y
f
Y
g
Y
a
Y
b
Y
c
Y
d
Y
e
A
2
LT
( a ) ( b )
A
3
I
BR
6
A
1
I
B
/ Y
BR
I
BR
A
3
A
0
Y
b
Y
c
Y
d
Y
e
Y
f
Y
g
图 4 74LS48
74LS48显示译码器的功能表
为试灯输入,当 =0时,/ =1时,若
七段均完好,显示字形是, 8”,该输入端
常用于检查 74LS48显示器的好坏 ; 当
=1时,译码器方可进行译码显示。 用来动
态灭零,当 = 1时,=0,输入
A3A2A1A0=0000 / =0使数字符
的各段熄灭; / 为灭灯输入 /灭灯输出,
当 =0时不管输入如何,数码管不显示数
字; 为控制低位灭零信号,=1时,说明
本位处于显示状态 ;若 =0,且低位为零,
则低位零被熄灭。
LT LT BI BRY
LT
BRILT
BRI
/
BI BRY
BI
BRI
BRY
BI
BRY
BRY
3.4算术运算电路
一、加法器的基本概念及工作原理
加法器 —— 实现两个二进制数的加法运算
1.半加器 —— 只能 进 行本位加 数,被加 数
的加法 运 算而不考 虑 低位 进 位。
BABABAS ????
ABC ?
列出半加器的真值表:
由真值表直接写出表达式,
画出逻辑电路图。
A
B
C
S
&
=1
ABBABABABBAABBAABABABABAS ?????????????? )()(
ABBABA ????
ABABC ??
如果想用与非门组成半加器,则将上式用代数法变
换成与非形式:
由此画出用与非门组成的半加器和逻辑符号
&
&
&
&
&
A
B
S
C
A
B
S
C

CO
2,全加器 —— 能同时进行本位数和相邻低位的进
位信号的加法运算
iA

iB
分别是被加数和加数,
1?iC
为相邻低位的进位,
iS
为本位的和,
iC
为本位的进位。
1iii1iii1iii1iiii ???? ???? CBACBACBACBAS
1iii1iii1iii )()( ??? ??????? CBACBACBA
1iii1iii1iii1iiii ???? ???? CBACBACBACBAC
1i-iiii )C( ???? BABA
由真值表直接写出逻辑表达式,再经代数法化简和转换得:
=1
=1
A
B
S
Ci
i
i
iC i - 1
&
≥1

CO
A
B
i
i
i - 1C C i
S i
CI
根据逻辑表达式画出全加器的逻辑电路图,
二、多位数加法器
4位串行进位加法器
i
B C
i - 1i
A
S
ii
C
B C
-10
A
0
0
S

B
i i - 1
CA
i
i
S
i
C
1 01
A CB
1
S

B
i i - 1
CA
i
i
S
i
C
2 12
A CB
2
S

B
i i - 1
CA
i
i
S
i
C
3 23
A CB
3
S

C
3
由图可以看出多位加法器是将低位全加器的
进位输出 CO接到高位的进位输入 CI.因此,
任一位的加法运算必须在低一位的运算完成
之后才能进行,这种方式称为串行进位。这
种加法器的逻辑电路比较简单,但它的运算
速度不高。为此,可采用超前进位的加法器,
使每位的进位只由加数和被加数决定,而与
低位的进位无关 。
本章小结
1,组合逻辑电路的特点是,电路任一时刻
的输出状态只决定于该时刻各输入状态的
组合,而与电路的原状态无关。组合电路
就是由门电路组合而成,电路中没有记忆
单元,没有反馈通路。
2,组合逻辑电路的 分析步骤 为:写出各输出端的
逻辑表达式 → 化简和变换逻辑表达式 → 列出真值
表 → 确定功能。
3,组合逻辑电路的 设计步骤 为:根据设计求
列出真值表 → 写出逻辑表达式 (或填写卡诺图 )
→ 逻辑化简和变换 → 画出逻辑图
4.具有特定功能常用的一些组合逻辑功能如编
码器,译码器,比较器, 全加器等,介绍了它
们的逻辑功能,集成芯片及集成电路的扩展和
应用。其中,编码器和译码器功能相反,都设
有使能控制端,便于多片连接扩展 ;数字比较器
用来比较数的大小;加法器用来实现算术运算 。
谢谢收看