数字电子技术基础制作人:吴亚联湘潭大学信息工程学院第四章 组合逻辑电路
§ 4.1 概述
§ 4.2 组合逻辑电路的分析方法和设计方法
§ 4.3 若干常用的组合逻辑电路
§ 4.4 组合逻辑电路中的竞争 -冒险现象内容提要首先讲述组合逻辑电路的共同特点和一般的分析方法和设计方法;然后介绍几种常用的中规模组合逻辑电路的工作原理和使用方法;最后从物理概念上说明竞争 -冒险现象及其成因。
组合逻辑电路时序逻辑电路功能,输出 只取决于当前的输入逻辑电路组成,门电路(不存在记忆元件)
功能:
输出取决于当前的输入原来的状态组成:
组合电路记忆元件
4.1 概 述一、组合逻辑电路的特点二、逻辑功能的描述
电路的逻辑功能可以通过逻辑图来表示,
但更直观的方式是通过真值表和逻辑函数式来表达逻辑电路的功能。
S=(A?B)? CI
CO=(A? B)CI+AB
逻辑函数式任意组合逻辑电路的函数式:
n个输入变量,m个输出变量,其关系可以用下面函数式表示,
),.,,,,( 2111 naaafy?
),.,,,,( 2122 naaafy?
),.,,,,( 21 nmm aaafy?
…
分析:
设计:
给定逻辑图得到逻辑功能分析给定逻辑功能画出逻辑图设计组合逻辑电路的研究内容:
4.2 组合逻辑电路的分析方法和设计方法
1、由给定的逻辑图逐级写出逻辑函数式。
2、对逻辑式进行化简:
3、列出输入输出真值表;
卡诺图化简法公式化简法 最简与或式分析步骤
4、根据真值表和逻辑表达式,确定逻辑功能。
4.2.1 组合逻辑电路的分析方法逐级写逻辑式法
&
&
&
&A
B S
C1
BA?
ABA
BBA
1
2
3
4
5
BA?
BBAABA
一、逐级写逻辑式:
例 1,分析下图的逻辑功能。
二、对逻辑式进行化简:
BBAABAS
BBAABA )()(
BAC
BABA
BA
BBAABA
(德? 摩根定理)
(德? 摩根定理)
BBAABA
三、列真值表:
BABAS
BAC
输入 输出
A B S C
0 0
0 1
1 0
1 1
逻辑式:
三、列真值表:
0 0
1 0
1 0
0 1
输入 输出
A B S C
0 0 0 0
1 1 0 1
真值表:
0 1 1 0
1 0 1 0
四、确定逻辑功能:
BAS
BAC
半加器,两个一位二进制数相加,只求本位和,不考虑低位的进位信号。
逻辑功能:
半加器
1
例 2,分析下图的逻辑功能。(用 波形图 分析)
0
1
被封锁
1
=1
B
M
F
&
2
&
3
&
4
A
1
=0
1
0
被封锁
1
特点,M=1时选通 A路信号;
M=0时选通 B路信号。
M
&
2
&
3
&
4
A
B
1 F
选通电路例 4.2.1 试分析图 4.2.1电路的逻辑功能,指出该电路的用途。
输入变量
ABCD
输出变量 Y2,Y1,Y0
1:由逻辑图写函数式并化简
BDCDBDCDY0
2:写出真值表并分析规律
11
12
13
14
15
6
7
8
9
10
0
1
2
3
4
5
3:确定逻辑功能
★ 本电路的功能是,判断输入的 4位二进制数数值的范围,当输入?5时 Y0为 1;
6?输入?10时 Y1为 1; 11?输入?15时 Y2
为 1。
设计步骤:
1、由 逻辑问题 抽象出逻辑功能,列出 真值表 ;
2、由真值表写 逻辑函数式,并化简或变换成适当的形式;
3、选定器件,画出 逻辑电路图 。
4.2.2 组合逻辑电路的设计方法设计要求,按要求得到 最简单 的逻辑电路。
设计举例例 4.2.2 设计一个监视交通信号灯工作状态的逻辑电路。每一组信号灯由红、黄、绿三盏灯组成,正常工作情况下,任何时刻必有一 盏灯点亮,而且只允许有一盏灯点亮。而当出现其他五种点亮状态时,电路发生 故障,这时要求发出故障信号,以提醒维护人员前去修理。
一、逻辑抽象
将红、黄、绿的状态表示为 R,A,G输入变量,
故障信号输出变量以 Z表示,列出真值表:
二、写函数式并化简
Z=RAG+RA+RG+AG
三、选择 SSI器件并形式变换
选择与非门、或非门、与或非门等 SSI器件来实现上面的逻辑
例如选择与非门来实现,则将函数形式转换为与非 -与非式即可。
AGRGRAGARZ
AGRGRAGARZ
AGRGRAGARZ
四、画逻辑图例 2,设计三人表决电路。每人一个按键( A,B、
C),如果同意则按下,不同意则不按。结果用指示灯表示,多数同意时指示灯亮,否则不亮。
1,首先指明逻辑符号取,0”、
,1”的含义。
2,根据题意列出真值表。
A B C F
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
真值表三个按键 A,B,C按下时为
,1”,不按时为,0”。输出是 F,指示灯亮为,1”,否则为,0”。
A B C F
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
真值表 3,画出卡诺图,并用卡诺图化简:
A
BC
00 01 11 10
0
1
0 0 1 0
0 1 1 1
AB
AC
BC
CABCABF
4,根据逻辑表达式画出逻辑图。
CABCABF
&
1&
&
A
B
C F
(1) 用与门 -或门实现
CABCAB CABCAB
&
&
&
&
A
B
C F
CABCABF
(2) 用与非门实现
4.3 若干常用的组合逻辑电路二进制代码功能,将电路某种 特定的状态
( 高电平或低电平 ) 或 数字、符号 等转换 n位 二进制代码有
2n种不同的组合,可以表示 2n个信号。普通编码器优先编码器
4.3.1 编码器任何时刻只允许输入一个编码信号,否则输出将发生混乱。
允许同时输入两个以上编码信号。
3位二进制编码器 --8线 -3线编码器:
八个输入端为 I0?I7(八种状态),
与之对应的输出为 Y0,Y1,Y2,共三位二进制数。
一、普通编码器
8/3
线编码器
I0
I1
I2
I7
Y2
Y1
Y0
编码器的逻辑功能编码器
I0
I1
I2
I3
I4
I5
I6
I7
Y2
Y1
Y0
8线
|3
线编码器
编码器的输入为状态输入,每一个输入代表一个事物或状态,若用 高电平 1代表编码信号,即申请编码,则输出为此编码信号对应的二进制代码。如 I1为 1,其余都为 0,则表示 I1有编码信号,如果为 8421码编码规则,则输出为 001。
称输入 高电平有效,或 1有效。
0
1
0
0
0
0
0
0
输入 输出
I0 I1 I2 I3 I4 I5 I6 I7 Y2 Y1 Y0
1 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 1
0 0 1 0 0 0 0 0 0 1 0
0 0 0 1 0 0 0 0 0 1 1
0 0 0 0 1 0 0 0 1 0 0
0 0 0 0 0 1 0 0 1 0 1
0 0 0 0 0 0 1 0 1 1 0
0 0 0 0 0 0 0 1 1 1 1
0
0
1
输入 输出
I0 I1 I2 I3 I4 I5 I6 I7 Y2 Y1 Y0
1 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 1
0 0 1 0 0 0 0 0 0 1 0
0 0 0 1 0 0 0 0 0 1 1
0 0 0 0 1 0 0 0 1 0 0
0 0 0 0 0 1 0 0 1 0 1
0 0 0 0 0 0 1 0 1 1 0
0 0 0 0 0 0 0 1 1 1 1
75310 IIIIY
76321 IIIIY
76542 IIIIY
由功能表写出逻辑函数式:
利用了无关项化简
3位二进制编码器
1 0 0 0 0 0 0
0
0
1
思考两个问题
1、同时有两个以上的输入为编码信号 1时,编码器会有怎样的输出呢?
2、以上输入编码信号是以高电平 1为有效状态的,有没有输入编码信号以 0为有效状态的?
编码器
I0
I1
I2
I3
I4
I5
I6
I7
Y2
Y1
Y0
8线
|3
线编码器
1、两个输入同为编码信号
1 1 0 0 0 0 0
0
1
1
2、编码器输入低电平有效输入 输出
ī 0 ī 1 ī 2 ī 3 ī 4 ī 5 ī 6 ī 7 Y2 Y1 Y0
0 1 1 1 1 1 1 1 0 0 0
1 0 1 1 1 1 1 1 0 0 1
1 1 0 1 1 1 1 1 0 1 0
1 1 1 0 1 1 1 1 0 1 1
1 1 1 1 0 1 1 1 1 0 0
1 1 1 1 1 0 1 1 1 0 1
1 1 1 1 1 1 0 1 1 1 0
1 1 1 1 1 1 1 0 1 1 1
编码器
ī0
ī1
ī2
ī3
ī4
ī5
ī6
ī7
Y2
Y1
Y0
8线
|3
线编码器
1
0
1
1
1
1
1
1
0
0
1
输出端有效形式
输出端一般是正的形式,也有反 (非 )的形式。
编码器
I0
I1
I2
I3
I4
I5
I6
I7
Y2
Y1
Y0
8线
|3
线编码器输入 输出
I0 I1 I2 I3 I4 I5 I6 I7 Y2 Y1 Y0
1 0 0 0 0 0 0 0 1 1 1
0 1 0 0 0 0 0 0 1 1 0
0 0 1 0 0 0 0 0 1 0 1
0 0 0 1 0 0 0 0 1 0 0
0 0 0 0 1 0 0 0 0 1 1
0 0 0 0 0 1 0 0 0 1 0
0 0 0 0 0 0 1 0 0 0 1
0 0 0 0 0 0 0 1 0 0 0
0
1
0
0
0
0
0
0
1
1
0
ī0
ī1
ī2
ī3
ī4
ī5
ī6
ī7
2
1
0
线线编码器
0 1 1 1 1 1 1 1
1 0 1 1 1 1 1 1
1 1 0 1 1 1 1 1
1 1 1 0 1 1 1 1
1 1 1 1 0 1 1 1
1 1 1 1 1 0 1 1
1 1 1 1 1 1 0 1
1 1 1 1 1 1 1 0 0 0 0
二 —十进制编码器:
编码器
Y0
Y1
Y2
Y9
D
C
B
A
拨码盘产生二进制代码 (BCD码 )
功能,将十个状态(对应于十进制的十个代码)
编制成 8421码 。
十个输入 需要几位编码输出? 四位代码
43 2102
拨码盘特定的低电平
0 1
2
9
+E
0Y
R?10
1Y
2Y
9Y
二 —十进制编码器设计
1、由逻辑功能,列出真值表 (输入低电平有效 ):
输入
("0" 项 )
D
C
B
A
Y
0
0 0 0 0
Y
1
0 0 0 1
Y
2
0 0 1 0
Y
3
0 0 1 1
Y
4
0 1 0 0
Y
5
0 1 0 1
Y
6
0 1 1 0
Y
7
0 1 1 1
Y
8
1 0 0 0
Y
9
1 0 0 1
2、由表写逻辑式,并化为最简式。
输入
(,0,项)
D
C
B
A
Y
0
0 0 0 0
Y
1
0 0 0 1
Y
2
0 0 1 0
Y
3
0 0 1 1
Y
4
0 1 0 0
Y
5
0 1 0 1
Y
6
0 1 1 0
Y
7
0 1 1 1
Y
8
1 0 0 0
Y
9
1 0 0 1
98 YYD
7654 YYYYC
7632 YYYYB
97531 YYYYYA
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
或运算形式
98 YYD
3、用与非门实现,转换成“与非式”
98 YYD
两次求反法
7654 YYYYC
98 YYD
7632 YYYYB
97531 YYYYYA
用一级与非门实现。
用与非门实现的逻辑图,
1 2
9
0
+E
R?10
98 YYD
7654 YYYYC
7632 YYYYB
97531 YYYYYA
& C
& D
& B
& A 0
1
0
0
(低)
(高)
0Y
1Y
2Y
3Y
4Y
5Y
6Y
7Y
8Y
9Y
1
1
1
0
在前面介绍的编码器存在这样一个 问题,当输入信号同时有 两个或两个以上 有效时,输出将发生混乱。
二、优先编码器功能,允许同时输入两个以上编码信号,
并按照事先规定的 优先级别,对 优先权 最高的一个输入信号进行编码。
在数字系统中,特别是在计算机系统中,常常要控制多个对象,如打印机,磁盘驱动器,输入键盘等。 当某个时刻有两个以上设备请求服务时,
主机必须能按事先安排好的次序予以响应,这对每个外设而言就有一个 优先级别 的问题。
真值表输 入 输 出
1 0 0 0 0 0
× 1 0 0 0 1
× × 1 0 1 0
× × × 1 1 1
0I 1I 2I 3I 0Y1Y
优先级别:
3I 0I
低
3321 IIIY
33210 IIIIY
逻辑表达式:
2,8线 -3线优先编码器 74HC148
1,4线 -2线优先编码器输入编码信号
8根输入编码信号输出 3位代码输出编码代码
74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S
有编码信号输入无编码信号输入
1 0
1
1
1
1
1
0 1
ī0~ī7有编码输入,则 YEX为 0
ī0~ī7无编码输入,则 YS为 0
选通控制
( 1)电路结构:
74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S
编码信号输入,低电平 0有效代码输出,反的形式输出有编码信号输入低电平有效无编码信号输入低电平有效 选通控制低电平 0有效
( 2)逻辑功能,(见表 4.3.2)
① S=1,编码器处于非工作状态,YS=YEX=1;
输入端无编码信号,为非编码输出,
111YYY 012?
用于多片优先编码器的级联
YS=0,YEX=1;
输入端有编码信号,为反码输出,
由功能表可知,输入优先级别的次序依次为,7,6,…,0 。
YS=1,YEX=0;
012 YYY
讨论,的作用?YS
② S=0,编码器处于工作状态; S低电平有效例 4.3.1 试用两片 74HC148 接成 16线 -4线优先编码器。
16-4优先编码器
ī0ī1 ī2 ī3 ī4 ī5 ī6 ī7
Z0 Z1 Z2 YEX
YS S
ī8 ī9 ī10ī11ī12ī13ī14ī15
Z3设计目标:
74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S 74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S
功能表:
1 X X … X X … X X 1 1 1 1 1 1
0 1 1 … 1 1 … 1 1
0 X X … X X … X 0
…………
0 X X … X 0 1… 1 1
0 X X … 0 1 … 1 1
…………
0 0 1 … 1 1 … 1 1
1 1 1 1 1 0
0 0 0 0 0 1
…………
0 1 1 1 0 1
1 0 0 0 0 1
…………
1 1 1 1 0 1
I I,..II,..II 15 14 8 7 1 0S SYEXY 0 1 2 3 ZZZZ
74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S 74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S(1) (2)
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7 ī8 ī9 ī10ī11ī12ī13ī14ī15
16根输入线 ī0~ ī15,而每片 148只能提供 8根编码输入,所以使用 2片 148,每片各提供 8个输入,
总共 16个输入,其中 148(1)提供 ī0~ ī7,
148(2)提供 ī8~ ī15 。
优先权,
ī0 <ī1 <ī2 <… <ī6 <ī7 <ī8 <ī9 <… <ī14 <ī15
1、输入编码信号:
74HC148(1)输入 74HC148(2)输入如何保证 148(2) 比 148(1)优先权大呢?
74HC148(2) 74HC148(1)工作状况
74HC148(1)无效
74HC148(1)有效有编码无编码
S(1)YS(2)
1 1
0 0
S(1)=YS(2)
74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S 74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S(1) (2)
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7 ī8 ī9 ī10ī11ī12ī13ī14ī15
S(1)=YS(2)
2、输出:
Z3 Z2 Z1 Z0
0 0 0 0
::,:,:
0 1 1 1
1 0 0 0
::,:,:
1 1 1 1
对应输入情况
ī8 ~ ī15有编码输入
ī8 ~ ī15无编码输入
ī0 ~ ī7有编码输入
74HC148情况
74148(2)有编码
74148(1)不工作
74148(2)无编码
74148(1)有编码
0
1
YEX(1)YEX(2)
0 1
1 0
Z3=YEX(2)
74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S 74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S(1) (2)
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7 ī8 ī9 ī10ī11ī12ī13ī14ī15
&& &
Z3Z2 Z1 Z0
3、控制端:
应该仿照 8-3编码器 74HC148,还有 YEX,YS,S等。
下面设计 YEX,YS,S:
74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S 74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S(1) (2)
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7 ī8 ī9 ī10ī11ī12ī13ī14ī15
&& &
Z3Z2 Z1 Z0
&
YE
X
SSY
YEXYEX (1)YEX (2)
0 1 0
1 0 0
1 1 1
0 0 X
Y SY S (1)YS (2)
)2()1( EXEXEX YYY
0 0
0 1 1
1 0 X
1 1 1
)1(SS YY?
S (1)S (2)S
0 X
1 1 1
)2(SS?
思考题?
如何用 74HC148设计 32线 -5线优先编码器? (题 3.6)
74HC148,4片
方法一:用 2片 74HC148设计 16-4编码器;
然后用 2片 16-4设计 32-5编码器。
方法二:直接用 4片 74HC148设计 32-5编码器。
3、二 -十进制优先编码器 74LS147
74LS147
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y0 Y1 Y2
ī8 ī9
Y3
4.3.2 译码器二进制代码
(机器代码 )
转换 特定的输出状态
(控制信号 )
译码:
按功能分类二进制译码器显示译码器
——用于对电路进行逻辑控制
——用于电路输出的数字显示部分
n位二进制代码可译成 2n种电路状态。
译码器,具有译码功能的逻辑电路。
(代码变换器)
是编码的逆过程二 -十进制译码器
321 SSSS?
&
1
1
1
1
1
1&
&& && & & & &
1
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
A0 A1 A2
&
1S
3S2S
S 0
1 1 1 1 1 1 11
S高电平有效。 即 S1=1,S2=S3=0时,允许译码!
2,二进制译码器,3 - 8线译码器 74HC138
图 4.3.8
输入选择 允许 (使能 )输出数 据 输 出管脚图
+5V
地
1 2 3 4 5 6 7 8
16 15 14 13 12 11 10 9
1S 7Y
DDU
GND
74HC138
3S
2Y1Y0Y 3Y 4Y 5Y 6Y
2S
A0 A1 A2
表 4.3.5 74HC138功能表使能端 选择输入端 输 出 端
32 SS?1S
1 1 1 1 1 1 1 1 1
0 1 1 1 1 1 1 1 1
1 0 0 0 0 0 1 1 1 1 1 1 1
1 0 0 0 1 1 0 1 1 1 1 1 1
1 0 0 1 0 1 1 0 1 1 1 1 1
1 0 0 1 1 1 1 1 0 1 1 1 1
1 0 1 0 0 1 1 1 1 0 1 1 1
1 0 1 0 1 1 1 1 1 1 0 1 1
1 0 1 1 0 1 1 1 1 1 1 0 1
1 0 1 1 1 1 1 1 1 1 1 1 0
7Y0Y 1Y 2Y 3Y 4Y 5Y 6Y
A2 A1 A0
允许译码条件下( S=1),各 输出逻辑式 为:
0m?
三个变量的全部 最小项 的译码输出。
利用 3-8线译码器可以很方便的实现 逻辑函数
1m?
2m?
4m?
5m?
6m?
7m?
3m?
0120 AAAY
0125 AAAY
0126 AAAY
0127 AAAY
0124 AAAY
0123 AAAY
0122 AAAY
0121 AAAY 01270 Y~Y AAA是双 2-4线集成译码器 74LS139:
(其中含两个 2-4译码器)
输 入 输 出使能端使能端 输 入 输 出+5V
地管脚图 S1
0A1 1A1
0A1 1A1 0Y1 1Y1 2Y1 3Y1
0A2 1A2ccU
GND
3Y2
2Y21Y20Y21A20A2S2
74LS139
2S 2Y0 2Y1 2Y2 2Y3
1S 1Y0 1Y1 1Y2 1Y3
例 1、如何用 74HC138设计 4-16线译码器?
74HC138
( 1)
A2
A1
A0
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
S1
S2
S3
74HC138
( 2)
A2
A1
A0
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
S1
S2
S3
4-16
译码器
A2
A1
A0
A3
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
Y8
Y9
Y10
Y11
Y12
Y13
Y14
Y15
1、设计 16个输出
2、设计 4个输入 Z
0
Z1
Z2
Z3
Z4
Z5
Z6
Z7
Z8
Z9
Z10
Z11
Z12
Z13
Z14
Z15
A3
A2
A1
A0
:::
Z71110
Z151111
:::
Z80001
Z00000
输出 Z0~Z15输入 A3A2A1A0
A3 74LS138工作状态
0 ( 1)输出
1 ( 2)输出
S1( 1) S1( 2)
1 0
0 1
3)1(1 AS?
3)2(1 AS?
1
00
00
例 2,用 3-8线译码器实现逻辑函数:
X Y ZZYXZYXZYXZ)Y,F ( X,
解:
7420 mmmmF
7420 mmmm
7420 YYYY
因此,附加一个与非门即可实现该逻辑函数。
74HC138
A2
A1
A0
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
S1
S2
S3
X
Y
Z
1
0
0
F
&
例 3,3线 -8线译码器构成数据分配器数据分配器,将一个数据源来的数据根据要求送到多个不同的通道上去的器件。
数据分配示意图
Y0
数据输入
n位地址输入
1n2Y?
根据 3线 -8线译码器的逻辑图图 4.3.8可写出:
D
D 数据输出地址输入
0123210121 AAA)SS(SAAASY
…
3线 -8线译码器作数据分配器使用:
当 S1=1,A2A1A0=001时,
当 S1=1,A2A1A0=010时,
A0
A1
A2
EN
7654 3210 YYYYYYYY
S1 74138
2S 3S
DSY 31
DSY 32
A0
A1
A2
二,二 -十进制译码器这种译码器有 4个输入端,10个输出端。它把 0000~1001十组输入信号译成对应的 10个高、低电平输出信号。
图 4.3.11二 -十进制译码器
74HC42
1010~1111
伪码输入真值表见表 4.3.6
二进制代码
(机器代码 )
译码特定的输出信号控制 数码显示器,
直观地显示数字量。
译码显示系统:
二 -十进制代码显示译码器数码显示器三、显示译码器
LED,LCD
LED七段显示器:
a
b
c
d
e
f g
每个发光字段是一个 发光二极管( PN结):
磷砷化镓( GaAsP)
共阴极数码管共阳极数码管
1、七段字符显示器共阴极 LED七段显示器工作示意图:
“1”
a b g
共阳极 LED七段显示器工作示意图:
“0”
a b g
+5v
七段 字符 显示器,显示 数字情况(以共阴极七段 字符 显示器为例)
a
b
c
d
f g
0?9 a b c d e f g
1 0 1 1 0 0 0 0
2 1 1 0 1 1 0 1
e
0 1 1 1 1 1 1 0
3 1 1 1 1 0 0 1
4 0 1 1 0 0 1 1
9 1 1 1 1 0 1 1
8 1 1 1 1 1 1 1
2,7448,BCD—七段显示译码器 /驱动器逻辑图见图 4.3.16输出高电平有效,用以驱动共阴极显示器。其功能表如下:
十进制或功能输 入 BI/
RBO
输 出 字形
LT RBI A3 A2 A1 A0 Ya Yb Yc Yd Ye Yf Yg
0 1 1 0 0 0 0 1 1 1 1 1 1 1 0
1 1 X 0 0 0 1 1 0 1 1 0 0 0 0
2 1 X 0 0 1 0 1 1 1 0 1 1 0 1
15 1 X 1 1 1 1 1 0 0 0 1 1 1 1
消 隐 X X X X X X 0 0 0 0 0 0 0 0
灭 零 1 0 0 0 0 0 0 0 0 0 0 0 0 0
灯 测 试 0 X X X X X 1 1 1 1 1 1 1 1
7448逻辑功能
A3
A2
A1
A0
LT
BI/RBO
RBI
Ya
Yb
Yc
Yd
Ye
Yf
Yg
7448
8421
码输入灯测试输入灭 0输入灭灯输入 /灭 0输出
0
1
1
1
1
1
1
1
译码输出
0
0
0
0
0
0
0
0
0
0
0
0
0
X
X
X
X
0?
7448应用实例一用 7448直接驱动 BS201数码管
1
0
a~g
1 1
LT
RBI RBO
a~g
D C B A
0 0 0 0
LT
RBI RBO
a~g
D C B A
0 1 0 0
a~g
LT
RBI RBO
D C B A
0 0 0 0
a~g
D C B A
0 0 0 0
RBI RBO
D C B A
0 0 0 0
LT LT
RBI RBO
下面举一个利用 7448实现 多位数字译码显示 的例子,
通过它了解各 控制端 的用法,特别是如何 动态灭 0,实现无意义位的消隐。
0 0 0 1
7448应用实例二
4.3.3 数据选择器在数字信号的传输过程中,有时需要从多路输入数据中选出某一路数据,完成此功能的逻辑器件称为 数据选择器,即所谓多路开关。
D3
D2
D1
D0
Y
选择端输入数据输出数据
A1 A0功能示意图,
数据选择器双 4选 1数据选择器 74HC153
双 4选 1数据选择器 74HC153
74HC153
1 2 3 4 5 6 7 8
16 15 14 13 12 11 10 9
DDU
32D
S2
22D 12D 02D
Y20A
GND
31D 21D 11D 01D Y11A
选择端选择端使能端:
低电平有效使能端:
低电平有效 数据输入端数据输入端输出端输出端
S1
1,功能表:
使能端 选 择 端 输出端
S A1 A0 Y
0 0 0 D0
0 0 1 D1
0 1 0 D2
0 1 1 D3
1 0 禁止状态工作状态
(输入地址代码)
2,逻辑式:
使能端 选 择 端 输出端
S A1 A0 Y
0 0 0 D0
0 0 1 D1
0 1 0 D2
0 1 1 D3
1 0
功能表
)( 301201101001 DAADAADAADAASY
101001 DAADAA(Y )301201 DAADAA?
)0(3 0 SDm iii
八选一集成数据选择器 74HC151
输入 输出
A 2 A 1 A 0 Y
X X X 1 0 1
0 0 0 ~ 1 1 1 0 D 0 ~ D 7
S
功能表
Y
0D 7D
74HC151的逻辑电路图如图 4.3.24所示。
)0(
7
0
SDmY ii
i
例 4.3.4 试用两个带附加控制端的 4选 1数据选择器组成一个 8选 1数据选择器。
D0
D1
D2
D3
D4
D5
D6
D7
A2
双
4
选
1
数据选择器
D20
D21
D22
D23
Y2
D10
D11
D12
D13 Y1
S1
S2
A1 A0
A0
A1
1
1
Y
A2=0:(1)工作
A2=1:(2)工作二、用数据选择器设计组合逻辑电路例 4.3.5 试用 4选 l数据选择器实现例 4.2.2的交通信号灯监视电路。
RAGGRAGARAGRGARZ
301201101001 )()()()( DAADAADAADAAY
4选 1的函数形式为:
将 Z变换为 Y的表示形式,即:
令 R?A1,A? A0,有:
1)()()()( RAGARGARGARZ
如果 D0=G,D1=G,D2=G,D3=1A
1 =R,A0=A
Z=Y
画逻辑图
4
选
1
D3
D2
D1
D0
Y
A1 A0
R A
G 1
1
Z
D0=G,D1=G,D2=G,D3=1
A1 =R,A0=A
例 2、试用 8选 1数据选择器 74HC151产生逻辑函数,XYZYXYZXL
解,XYZYXYZXL
X Y ZZXYZYXYZX
将 L写成如下形式:
77665533 DmDmDmDmL
因为 74HC151的输出?
7
0i
iiDmY
所以,当 D0=D1=D2=D4=0,D3=D5=D6=D7=1
时,有 L=Y。
如下图,
D0 D1 D2 D3 D4 D5 D6 D7
S
A2
A1A
0
Y
74HC151XY
Z
0
1
XYZYXYZXL
D0=D1=D2=D4=0,D3=D5=D6=D7=1
4.3.4 加法器
◆ 加法器是计算机系统中最常用的算术运算单元,它是计算机 CPU中算术运算器的基本单元。
◆其他算术运算如减、乘、除等都可以由加法运算演变而来。
◆加法器一次能计算的数据的长度就是加法器的长度,常用的 8,16,32位等,当然最简单的是 1位的加法器。
1、半加器
A B S CO
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
S=A?B
CO=A?B
◆ A,B为两个 1位数,不考虑来自低位的进位,A、
B相加的结果为 S,产生的进位为 CO,称半加。
一,1位加法器
2、全加器
CI A B S CO
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
化为最简:
S=A?B?CI
CO=AB+ACI+BCI
= CI( A+B )+AB
若不化为最简:
CO= CI( A?B )+AB
◆ 如果将两个对应位的加数和来自低位的进位相加,则为全加。
由半加器构成全加器半加器半加器?1
A
B
CI
S
CO
s'
s'
c'
c'
全加器,
半加器,
A? B
A? B
CI?(A? B)
S=A?B?CI
CO=AB+ACI+BCI= CI( A?B )+AB
S=A?B
CO=A?B
A?B?CI
CI( A?B )+AB
管脚图
SN74LS183
1
1A 1B 1CI 1CO 1S GND
2 3 4 5 6 7
NC
2CI 2CO 2S2A 2BVcc
14 13 12 11 10 9 8
NC
输入输入 输出甩空甩空输入 输出输出双全加器 74LS183:
CI CO
CI CO
CI CO
CI CO
C-1
0
C0 C1 C2 C3
S0 S1 S2 S3
A0 B0 A1 B1 A2 B2 A3 B3
二,多位加法器若有多位数相加,则可采用 并行相加串行进位 的方式来完成。例如,有两个 4位二进制数 A3A2A1A0
和 B3B2B1B0相加,可以用 4个全加器来构成,其原理图如下图所示。
低位的进位输出端接高位的进位输入端,因此,
任一位的加法运算必须在低位的运算完成之后才能进行,这种进位方式称为 串行进位 。
1.串行进位加法器串行进位的特点是电路简单,缺点是运算速度慢。
全加器的输出:
iiii CIBAS
iiiiii CIBABACO )(
2.超前进位加法器为了提高运算速度,必须设法减少或消除由于进位信号逐级传递所消耗的时间。
定义两个中间变量 Gi 和 Pi,
iii BAG? iii BAP
高位的进位输入信号是否有可能只由加数和被加数来判断,而与低位的进位无关?
iiii CIPGCO则:
这两个函数都与进位信号无关。
iiii CIPGCO
由上式可得各进位位的分步式:
CO0=G0+P0CI0
CO1= G1+P1CI1 =G1+P1G0+P1P0CI0
CO2=G2+P2G1+P2P1G0+P2P1P0CI0
CO3=G3+P3G2+P3P2G1+P3P2P1G0+P3P2P1P0CI0
可见进位信号只与函数 Gi,Pi和 CI0有关,而 CI0是最低位的进位输入,其值为 0,所以各位进位信号是可以 并行 产生的。
当 Ai=Bi=1时,Gi=1,COi=1,即产生进位,所以 Gi称为进位生成函数 。 若 Pi=1,即 Ai+Bi=1时,COi= Gi + CIi,低位的进位能传送到高位的进位输出端,故 Pi称为进位传送函数。
根据超前进位概念构成的集成 4位超前进位加法器 74LS283的逻辑图见图 4.3.29。
CI
S3 S2 S1 S0 CO
74LS283
B3 B2 B1 B0
A3 A2 A1 A0
4.3.5 数值比较器
1,先从高位比起,高位大的,数值一定大;
2,若高位相等,则需再比较低位数,
最终结果由低位的比较结果决定;
3,比较结果应有三个标志:
A=B
A<B
A>B
比较大小的规则(三条):
数值比较器
A
B
E(equal:A=B)
S(small:A<B)
L(large:A>B)
数值比较器 示意图:
一,1位数值比较器设计:
A=a
输入
B=b
1.列出真值表:
输入 输出
a b
L
a>b
E
a=b
S
a<b
0 0 0 1 0
0 1 0 0 1
1 0 1 0 0
1 1 0 1 0
0 0 1
1 1 1
0 1 1
1 0 1
1位数值比较器真值表
2.由真值表写逻辑式:
baabbaE
( 同或运算 )
baS? baL?
输入 输出
a b
L
a>b
E
a=b
S
a<b
0 0
0 0
0 0
0 0
0 0 1
1 1 1
0 1 1
1 0 1
3.画出逻辑图,
逻辑符号,
(a<b)S
(a=b)E
(a>b)L
a
b
S
E
L
比较器
a
b
b
a &
&
1
1
1
ba
ba
babaE
ba
A=a3a2a1a0
输入:
B=b3b2b1b0
比较规则:
自高而低,
逐位比较。
输出:
Y (A=B)
Y (A<B)
Y (A>B)
二、多位数值比较器四位数值比较器的功能表:
a3 >b3 1 0 0
a3=b3 a2=b2 a1= b1 a0 =b0 0 1 0
a3=b3 a2=b2 a1= b1 a0 <b0 0 0 1
a3=b3 a 2=b2 a1= b1 a0 >b0 1 0 0
a3=b3 a2=b2 a1<b1? 0 0 1
a3=b3 a2=b2 a1> b1? 1 0 0
a3=b3 a2<b2 0 0 1
a3=b3 a2>b2 1 0 0
a3 <b3 0 0 1
比 较 输 入 输 出
a3 b3 a2 b2 a1 b1 a0 b0 Y(A>B) Y (A=B) Y(A<B)
根据比较规则,可得 四位数值比较器逻辑式:
BAY BA )(
)ba)(ba)(ba)(ba( 00112233
112233223333)( ))(()( babababababaY BA
00112233 ba)ba)(ba)(ba(
)()()( BABABA YYY
(备注:没考虑次低位的比较结果)
4位数码比较器 74LS85
逻辑电路图如图 4.3.32所示。
112233223333)( ))(()( BABABABABABAY BA
00112233 ))()(( BABABABA
)(00112233
00112233
112233223333)(
))()()((
))()((
))(()(
BA
BA
IBABABABA
BABABABA
BABABABABABAY
)(00112233 ))()()(( BAIBABABABA
)(00112233)( ))()()(( BABA IBABABABAY
1,0 )()()( BABABA III
电路结构不同,扩展端的用法就 可能不同,使用时应加以注意。
不进行片接时,其扩展端应满足:
74
LS
8
5
A3
YA<B
YA=B
YA>B
A2
A1
A0
B3
B2
B1
B0
I(A<B)
I(A=B)
I(A>B)
例 4.3.8 试用两片 74LS85 组 成 一个 8位数值比较器,
74
LS
8
5
A3
YA<B
YA=B
YA>B
A2
A1
A0
B3
B2
B1
B0
I(A<B)
I(A=B)
I(A>B)
74
LS
8
5
A3
YA<B
YA=B
YA>B
A2
A1
A0
B3
B2
B1
B0
I(A<B)
I(A=B)
I(A>B)(1) (2)
C3
C2
C1
C0
D3
D2
D1
D0
C7
C6
C5
C4
D7
D6
D5
D4
0
1
0
YC<D
YC=D
YC>D
思考,七位 二进制数值比较器?
C7=D7
例 2:挑出 等于和大于 5的四位二进制数。
方案一 设,输入 B=0101 ~ 5 ;X=x3x2x1x0 。
x3
x2
x1
x0
I(A>B)
I(A<B)
Y(A>B)
Y(A=B)
Y(A<B)
A1 B1A0 B0A3 B3A2 B2
I(A=B)74LS85
“1”
输出 F2。
1
1
&F2 GH
HGHGF 2
1
0
0
例 2:挑出 等于和大于 5的四位二进制数。
方案二 设,输入 B=0100 ~ 4 ;X=x3x2x1x0 。
x3
x2
x1
x0
F2
“1”
输出 F2 。
I(A>B)
I(A<B)
Y(A>B)
Y(A=B)
Y(A<B)
A1 B1A0 B0A3 B3A2 B2
I(A=B)74LS85 1
0
0
4.4 组合逻辑电路中的竞争 -冒险现象前面我们系统的介绍了组合逻辑电路的分析和设计,这些分析和设计都是在输入、输出处于 稳定 的逻辑电平下进行的。
为了保证系统工作的可靠性,有必要观察一下当输入信号逻辑电平发生 变化 的瞬间电路的工作情况。
首先我们来看一个最简单的例子:
4.4.1竞争 -冒险现象及其成因图 4.4.1 由于竞争而产生的尖峰脉冲我们把门电路 两个输入信号同时向相反逻辑电平跳变 (一个从 1变为 0,另一个从 0变为 1)的现象叫 竞争 。
由于竞争而在电路输出端 可能产生 尖峰脉冲
( glitch )的现象叫 竞争 -冒险。
产生原因信号存在 前后沿 过渡时间不一致问题;
门电路的 tpd(传输延迟时间)不一样。
4.4.1竞争 -冒险现象及其成因图 4.4.2 2线- 4线译码器中的竞争-冒险现象
( a) 电路图 ( b) 电压波形图
1) 引入 封锁脉冲 —在输入信号发生竞争期间,封锁门的输出;封锁脉冲必须与输入信号的转换同步。
2) 引入 选通脉冲 —等电路达到新稳态后,再输出。
前封中选
3) 接入滤波电容 —吸收和削弱窄脉冲。 后滤
4) 修改逻辑设计,增加 冗余项。 添项
4.4.3 消除竞争 -冒险现象的方法例 1:消除竞争 -冒险的电路
&
1
A
&
2
&
4
1 B
B
1
BAY?3
&
3
A
ABY?2
ABY?1
ABY?0
前封中选
>?t
Cf
Cf
(几十至几百皮法 )
后滤波形关系
t
B
t
A
t
B
A
t
t
t
t
封锁脉冲选通脉冲例 2,修改逻辑设计
CAABCAABF
当,F=A+ =1时,有竞争 -冒险的可能 ; 为 消除 之,可以 添加 冗余项 BC:
1CB A
BCCAABF
当 B=C=1时,始终有 F=1,所以 A的变化不会引起竞争 -冒险,使可靠性提高。即 B=C=1时:
11 AABCCAABF
添项
A
&
1
1
B
&
2 &
3
C
&
4
“1”
“1”
A F
添项:
(封 3号门)
0BC?
CAABF
BCCAABF
冗余项
1 1
1 1
A
BC
0
1
00 01 11 10
C
B
利用卡诺图判断并消除竞争冒险:
习题课(第四章)
1、已知:组合逻辑电路的功能如右表所示,试用中规模集成器件( MSI)实现之。可以附加少量的门电路。
1 1 1 1
输 入 输出
A B C F
0 0 0 00 0 1 1
0 1 0 10 1 1 0
1 0 0 1
1 0 1 0
1 1 0 0
2、分别用 四选一数据选择器
( 74LS153) 和 2-4线译码器
( 74LS139) 实现逻辑函数,(两种方法 )
CABCBAF),,(
3、设计三个四位数的比较器,可以对 A,B,C 进行比较,能判断:
( 1)三个数是否相等。
( 2)若不相等,判断 A是最大还是最小。
4、写出下图所示数据选择器电路的输出函数,并化为最小项之和的形式。(使能端都为有效电平)
A
1 =1
=1
D0
D1
D2
D3
S1 S0
Y
0
A A
A
B C
=1
=1
D0
D1
D2
D3
S1 S0
YA
1
A
A
0
1
B C
D0
D1
S
D
F(A,B,C,D)
中规模组合逻辑集成器件的灵活应用一、设计方法及步骤,逻辑函数式对照法
1.由功能确定输入、输出量,写出逻辑式;
2.把要用的 MSI逻辑函数式变换成与所求逻辑式相类似的形式:
中规模集成逻辑器件都是为了实现专门的逻辑功能而设计,但是通过适当的连接,可以实现一般的逻辑功能。 用中规模组件设计逻辑电路,
可以减少连线、提高可靠性。
下面介绍用数据选择器和译码器设计组合逻辑电路的方法及 MSI电路的分析方法。
其中:,2.把要用的 MSI逻辑函数式变换成与所求逻辑式相类似的形式”中又分这样几种情况
:
1 若两者形式上 完全相同,则该种 MSI效果最好。
2 若 MSI函数式更丰富,则可将 多出 的输入变量和乘积项 适当处理,也可以较方便地得到所需要的逻辑式;
3 若 MSI函数式仅是所要产生的逻辑 式的 一部分,可以通过 扩展方法 得到所需逻辑 式。
适中 (最好 )
多项 (删除 )
少项 (扩展 )
★ 若要产生 单输出 逻辑函数时,
可 先考虑数据选择器 。
★ 若要产生 多输出 逻辑函数时,
使 用译码器 +门电路 较有利。
3.接线,画出逻辑图。
扩展方法:
用使能端 或 其它输入端 扩展,适当加其他门电路;
采用 多片 MSI进行适当 连接 。
一般地,
二、分析方法及步骤:
由逻辑图得逻辑式得逻辑功能代入 MSI的逻辑函数式
1 1 1 1
输 入 输出
A B C F
0 0 0 00 0 1 1
0 1 0 1
0 1 1 0
1 0 0 1
1 0 1 0
1 1 0 0
设计:
1,由表写式:
A B CCBACBACBAF
F是 单输出 逻辑函数,可考虑用 数据选择器 (方案一 ):
双 4选 1数据选择器 —
74HC153
题 1.已知组合电路逻辑功能如表所示,试用中规模集成器件实现之。
习题课解答
74HC153函数式:
2.与 F式对照:
0?S
MSI没有 C端,可以用输入数据端改接:
即,D0 =D3 =C
D1 =D2 = C
第三根输入线 ( C,)
分送给对应的数据输入端。
C
A B CCBACBACBAF
301201101001 DAADAADAADAAY
令,A1 = A,A0 = B ;
3.画出逻辑图:
输入信号
F
A
B
1C
C
D0 =D3 =C; D1 =D2 =C。
1D0
Y1
1D1 1D2 1D3
74HC153 (1)A
0
A1
S1(低 )(高 )
总选中
A B CCBACBACBAF
方案二,用 8选 1数据选择器 74HC151实现令 =0,MSI始终被选中:S
使能端 选 择 端 输出端
S A2 A1 A0 Y W
1 0 1
0 0 0 0 D0 D0
0 0 0 1 D1 D1
0 0 1 0 D2 D2
0 0 1 1 D3 D3
0 1 0 0 D4 D4
0 1 0 1 D5 D5
0 1 1 0 D6 D6
0 1 1 1 D7 D7
74HC151功能表:
10120012 DAAADAAAY
70126012 DAAADAAA
30122012 DAAADAAA
50124012 DAAADAAA
1.将 Y与 F式相对照:
1) F式中 不出现 的项,令其对应的数据 Di=0;
于是 消去 这些项。
2) F式中 出现 的项,令其对应的数据 Di=1;
于是 保留 这些项。
3012201210120012 DAAADAAADAAADAAAY
7012601250124012 DAAADAAADAAADAAA
发现 Di 数据似乎多余,改接:
A B CCBACBACBAF
若令,A2 = A,A1 = B,A0 = C;
令 D0 = D3 = D5 = D6 =0,消去 相应的项;
令 D1 = D2 = D4 = D7 =1,保留 相应的项。
FA B CCBACBACBAY即,
A B CCBACBACBAF
7421 mmmm
2.画出逻辑图:
F
D7
Y
D6 D5 D4 D3
s
D2 D1 D0
74HC151A
1
A0
A2
C
A
B
选择信号
“1”
选中方案三,用 3-8线译码器 —74HC138实现假设,使能端被选中
0Y i?
1 1 1
输 入 输出
A2 A1 A0
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
0Y
1Y
2Y
3Y
4Y
5Y
6Y
7Y
00120 mAAAY
10121 mAAAY
20122 mAAAY
30123 mAAAY
40124 mAAAY
50125 mAAAY
60126 mAAAY
70127 mAAAY
74HC138功能表:
两次求反法:
AB CCBACBACBAF
AB CCBACBACBAF即:
A B CCBACBACBAF
待设计的逻辑式:
7421 mmmm
2.画出逻辑图:
7Y 6Y 5Y 4Y 3Y 2Y 1Y 0Y
74HC138
A1 A0A2
2S
1S
“1”B CA
&
F
3S
题 2,分别用 四选一数据选择器 和 2-4线译码器实现逻辑函数,
方案一,用双四选一数据选择器 74HC153实现
1.与 F式对照,且令 A1 = A,A0 = B ;
则 D3=1,使 Y中 保留 AB;因为 MSI没有 C端,
可以 用 输入数据端扩展,D0= D1= D2= C。
时:0?S
301201101001 DAADAADAADAAY
CABCBAF),,(
C)BABABAAB()CC(ABF
CBACBABCAAB
2.画出逻辑图,D0 =D1 =D2 =C; D3 =1。
输入信号
(三位)
F
A
B
C
1D0
Y1
1D1 1D2 1D3
74HC153 (1)A
0
A1
E1
“1”
方案二,用 双 2-4线译码器 74HC139实现
CBACBABCACABA B C
13567 mmmmm
CBACBABCACABA B CF
CABCBAF),,(
CBACBABCAAB
方法一,
74HC139只有两个代码输入端,现在 F有 三个输入变量,可以利用 74HC139中两个 2-4线译码器 的 使能端扩展 为 3-8线译码器。
2,逻辑图,CBACBABCACABAB CF
1A 0A
0Y1Y2Y3Y
S74HC139(2)
1A 0A
0Y1Y2Y3Y
S74HC139(1)
1
A B C
A=1
选中
A=0
选中
F
方法二:
让 74HC139中 两个 2-4线译码器同时使能,利用它们的输入端进行组合:
CABF
CBBCAB
)BB(CAB
CBBCABF
CBBCABF
两次求反
CABCBAF),,(
2,
逻辑图
1A 0A
0Y1Y2Y3Y
S74HC139(1)
1A 0A
0Y1Y2Y3Y
S74HC139(2)
CBBCABF
A B C
AB BC
CB
F
题 3,设计三个四位数的比较器,可以对 A,B、
C 进行比较,能判断:
( 1)三个数是否相等。
( 2)若不相等,判断 A是最大还是最小。
比较原则:
先将 A与 B比较,再 A与 C比较:
可以用两片 74LS85实现。
若 A=B A=C,则 A=B=C;
若 A>B A>C,则 A最大;
若 A<B A<C,则 A最小。
1,A=B=C 1,A最小1,A最大
I(A>B)
I(A<B)
Y(A>B)Y(A=B)Y(A<B)
I(A=B)
B2 B0A2 A2 B3 B1A3 A1
74LS85
(1)
I(A>B)
I(A<B)
Y(A>B) Y(A=B)Y(A<B)
I(A=B)
B2 B0A2 A0 B3 B1A3 A1
74LS85
(2)
& & &
C1
C0
C3C
2C,B:
B1
B0
B3
B2
A1
A0
A3A
2A:
1
0
0
1
0
0
题 4,写出下图所示数据选择器电路的输出函数,并化为最小项之和的形式。(使能端都为有效电平)
A
1 =1
=1
D0
D1
D2
D3
A1 A0
Y
0
A A
A
B C
=1
=1
D0
D1
D2
D3
A1 A0
YA
1
A
A
0
1
B C
D0
D1
A
D
F(A,B,C,D)
10),,,( DDDDDCBAF
解:
ABCACBCABACBD0
)(101 AABCCBCBACBD
BCABCCBCBA
BDDCADBCADCBADCBADCBADCBAF),,,(
)15,13,10,9,7,6,5,4,0(),,,( mDCBAF
本章小结一,组合电路的分析方法,逐级写逻辑式法。
二,组合电路的设计方法:
1,用门电路构成:
逻辑式卡诺图最简与或式列真值表写式填图画出逻辑图:
化简化简与或门实现与非门实现两次求反四、竞争 -冒险现象:理解
2,用中规模组件设计逻辑电路:
逻辑函数式对照法,较灵活。
三、典型器件
1,编码器,
2,译码器二进制译码器,
显示译码器,
4,加法器全加器,
半加器
5,数码比较器,
3,数据选择器,
74139,74138
7448
74LS183,74LS283
74HC153,74HC151
74LS85
74148
对集成电路的 要求要求
(“三会”)
1,会认管脚电源端控制端数据端
2,看懂功能表
3,会正确使用控制端第四章结 束例:利用 2—4线 译码器 分时地传送数据。
三态门 三态门 三态门 三态门AE BE CE DE
总线
A B C D
74LS139
(1)
0Y
1Y 2Y
3Y
0A
1AS
三态门 三态门 三态门 三态门AE BE CE DE
总线
A B C D
总选中输 入选择端例:利用 2—4线译码器 分时 地传送数据。
0Y
1Y 2Y
3Y
0A
1A
S
2-4线译码器
A B C D
三态门 三态门 三态门 三态门AE BE CE DE
总线脱离总线数据
=0
=0
0 1 1 1
题 3,试用 一片 4位数值比较器 74LS85实现两个 5位二进制数的并行比较。必要时可用门电路。
解,设两个 5位二进制数分别为 A=A4A3A2A1A0,
B=B4B3B2B1B0 。输出为 YA>B,YA=B,YA<B 。
A1 A2 A3 A4 B1 B2 B3 B4
74LS85
YA>B YA=B YA<B
IA>BIA=B IA<B
YA>B YA=B YA<B 1)先比较 A和 B的高 4位;
2) A和 B的高 4位相等时
,比较 A0和 B0,A0和 B0
相等,则 YA=B=1; A0和
B0不相等时,电路的输出状态由加到级联输入端为 1的输入端决定。A1 A2 A3 A4 B1 B2 B3 B4
B0A0 IA>B IA=B
0 0
0 1
1 0
1 1
IA<B
0 1 0
0 0 1
1 0 0
0 1 0
A0 B0
=
IA=B输入的优先级最高。
§ 4.1 概述
§ 4.2 组合逻辑电路的分析方法和设计方法
§ 4.3 若干常用的组合逻辑电路
§ 4.4 组合逻辑电路中的竞争 -冒险现象内容提要首先讲述组合逻辑电路的共同特点和一般的分析方法和设计方法;然后介绍几种常用的中规模组合逻辑电路的工作原理和使用方法;最后从物理概念上说明竞争 -冒险现象及其成因。
组合逻辑电路时序逻辑电路功能,输出 只取决于当前的输入逻辑电路组成,门电路(不存在记忆元件)
功能:
输出取决于当前的输入原来的状态组成:
组合电路记忆元件
4.1 概 述一、组合逻辑电路的特点二、逻辑功能的描述
电路的逻辑功能可以通过逻辑图来表示,
但更直观的方式是通过真值表和逻辑函数式来表达逻辑电路的功能。
S=(A?B)? CI
CO=(A? B)CI+AB
逻辑函数式任意组合逻辑电路的函数式:
n个输入变量,m个输出变量,其关系可以用下面函数式表示,
),.,,,,( 2111 naaafy?
),.,,,,( 2122 naaafy?
),.,,,,( 21 nmm aaafy?
…
分析:
设计:
给定逻辑图得到逻辑功能分析给定逻辑功能画出逻辑图设计组合逻辑电路的研究内容:
4.2 组合逻辑电路的分析方法和设计方法
1、由给定的逻辑图逐级写出逻辑函数式。
2、对逻辑式进行化简:
3、列出输入输出真值表;
卡诺图化简法公式化简法 最简与或式分析步骤
4、根据真值表和逻辑表达式,确定逻辑功能。
4.2.1 组合逻辑电路的分析方法逐级写逻辑式法
&
&
&
&A
B S
C1
BA?
ABA
BBA
1
2
3
4
5
BA?
BBAABA
一、逐级写逻辑式:
例 1,分析下图的逻辑功能。
二、对逻辑式进行化简:
BBAABAS
BBAABA )()(
BAC
BABA
BA
BBAABA
(德? 摩根定理)
(德? 摩根定理)
BBAABA
三、列真值表:
BABAS
BAC
输入 输出
A B S C
0 0
0 1
1 0
1 1
逻辑式:
三、列真值表:
0 0
1 0
1 0
0 1
输入 输出
A B S C
0 0 0 0
1 1 0 1
真值表:
0 1 1 0
1 0 1 0
四、确定逻辑功能:
BAS
BAC
半加器,两个一位二进制数相加,只求本位和,不考虑低位的进位信号。
逻辑功能:
半加器
1
例 2,分析下图的逻辑功能。(用 波形图 分析)
0
1
被封锁
1
=1
B
M
F
&
2
&
3
&
4
A
1
=0
1
0
被封锁
1
特点,M=1时选通 A路信号;
M=0时选通 B路信号。
M
&
2
&
3
&
4
A
B
1 F
选通电路例 4.2.1 试分析图 4.2.1电路的逻辑功能,指出该电路的用途。
输入变量
ABCD
输出变量 Y2,Y1,Y0
1:由逻辑图写函数式并化简
BDCDBDCDY0
2:写出真值表并分析规律
11
12
13
14
15
6
7
8
9
10
0
1
2
3
4
5
3:确定逻辑功能
★ 本电路的功能是,判断输入的 4位二进制数数值的范围,当输入?5时 Y0为 1;
6?输入?10时 Y1为 1; 11?输入?15时 Y2
为 1。
设计步骤:
1、由 逻辑问题 抽象出逻辑功能,列出 真值表 ;
2、由真值表写 逻辑函数式,并化简或变换成适当的形式;
3、选定器件,画出 逻辑电路图 。
4.2.2 组合逻辑电路的设计方法设计要求,按要求得到 最简单 的逻辑电路。
设计举例例 4.2.2 设计一个监视交通信号灯工作状态的逻辑电路。每一组信号灯由红、黄、绿三盏灯组成,正常工作情况下,任何时刻必有一 盏灯点亮,而且只允许有一盏灯点亮。而当出现其他五种点亮状态时,电路发生 故障,这时要求发出故障信号,以提醒维护人员前去修理。
一、逻辑抽象
将红、黄、绿的状态表示为 R,A,G输入变量,
故障信号输出变量以 Z表示,列出真值表:
二、写函数式并化简
Z=RAG+RA+RG+AG
三、选择 SSI器件并形式变换
选择与非门、或非门、与或非门等 SSI器件来实现上面的逻辑
例如选择与非门来实现,则将函数形式转换为与非 -与非式即可。
AGRGRAGARZ
AGRGRAGARZ
AGRGRAGARZ
四、画逻辑图例 2,设计三人表决电路。每人一个按键( A,B、
C),如果同意则按下,不同意则不按。结果用指示灯表示,多数同意时指示灯亮,否则不亮。
1,首先指明逻辑符号取,0”、
,1”的含义。
2,根据题意列出真值表。
A B C F
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
真值表三个按键 A,B,C按下时为
,1”,不按时为,0”。输出是 F,指示灯亮为,1”,否则为,0”。
A B C F
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
真值表 3,画出卡诺图,并用卡诺图化简:
A
BC
00 01 11 10
0
1
0 0 1 0
0 1 1 1
AB
AC
BC
CABCABF
4,根据逻辑表达式画出逻辑图。
CABCABF
&
1&
&
A
B
C F
(1) 用与门 -或门实现
CABCAB CABCAB
&
&
&
&
A
B
C F
CABCABF
(2) 用与非门实现
4.3 若干常用的组合逻辑电路二进制代码功能,将电路某种 特定的状态
( 高电平或低电平 ) 或 数字、符号 等转换 n位 二进制代码有
2n种不同的组合,可以表示 2n个信号。普通编码器优先编码器
4.3.1 编码器任何时刻只允许输入一个编码信号,否则输出将发生混乱。
允许同时输入两个以上编码信号。
3位二进制编码器 --8线 -3线编码器:
八个输入端为 I0?I7(八种状态),
与之对应的输出为 Y0,Y1,Y2,共三位二进制数。
一、普通编码器
8/3
线编码器
I0
I1
I2
I7
Y2
Y1
Y0
编码器的逻辑功能编码器
I0
I1
I2
I3
I4
I5
I6
I7
Y2
Y1
Y0
8线
|3
线编码器
编码器的输入为状态输入,每一个输入代表一个事物或状态,若用 高电平 1代表编码信号,即申请编码,则输出为此编码信号对应的二进制代码。如 I1为 1,其余都为 0,则表示 I1有编码信号,如果为 8421码编码规则,则输出为 001。
称输入 高电平有效,或 1有效。
0
1
0
0
0
0
0
0
输入 输出
I0 I1 I2 I3 I4 I5 I6 I7 Y2 Y1 Y0
1 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 1
0 0 1 0 0 0 0 0 0 1 0
0 0 0 1 0 0 0 0 0 1 1
0 0 0 0 1 0 0 0 1 0 0
0 0 0 0 0 1 0 0 1 0 1
0 0 0 0 0 0 1 0 1 1 0
0 0 0 0 0 0 0 1 1 1 1
0
0
1
输入 输出
I0 I1 I2 I3 I4 I5 I6 I7 Y2 Y1 Y0
1 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 1
0 0 1 0 0 0 0 0 0 1 0
0 0 0 1 0 0 0 0 0 1 1
0 0 0 0 1 0 0 0 1 0 0
0 0 0 0 0 1 0 0 1 0 1
0 0 0 0 0 0 1 0 1 1 0
0 0 0 0 0 0 0 1 1 1 1
75310 IIIIY
76321 IIIIY
76542 IIIIY
由功能表写出逻辑函数式:
利用了无关项化简
3位二进制编码器
1 0 0 0 0 0 0
0
0
1
思考两个问题
1、同时有两个以上的输入为编码信号 1时,编码器会有怎样的输出呢?
2、以上输入编码信号是以高电平 1为有效状态的,有没有输入编码信号以 0为有效状态的?
编码器
I0
I1
I2
I3
I4
I5
I6
I7
Y2
Y1
Y0
8线
|3
线编码器
1、两个输入同为编码信号
1 1 0 0 0 0 0
0
1
1
2、编码器输入低电平有效输入 输出
ī 0 ī 1 ī 2 ī 3 ī 4 ī 5 ī 6 ī 7 Y2 Y1 Y0
0 1 1 1 1 1 1 1 0 0 0
1 0 1 1 1 1 1 1 0 0 1
1 1 0 1 1 1 1 1 0 1 0
1 1 1 0 1 1 1 1 0 1 1
1 1 1 1 0 1 1 1 1 0 0
1 1 1 1 1 0 1 1 1 0 1
1 1 1 1 1 1 0 1 1 1 0
1 1 1 1 1 1 1 0 1 1 1
编码器
ī0
ī1
ī2
ī3
ī4
ī5
ī6
ī7
Y2
Y1
Y0
8线
|3
线编码器
1
0
1
1
1
1
1
1
0
0
1
输出端有效形式
输出端一般是正的形式,也有反 (非 )的形式。
编码器
I0
I1
I2
I3
I4
I5
I6
I7
Y2
Y1
Y0
8线
|3
线编码器输入 输出
I0 I1 I2 I3 I4 I5 I6 I7 Y2 Y1 Y0
1 0 0 0 0 0 0 0 1 1 1
0 1 0 0 0 0 0 0 1 1 0
0 0 1 0 0 0 0 0 1 0 1
0 0 0 1 0 0 0 0 1 0 0
0 0 0 0 1 0 0 0 0 1 1
0 0 0 0 0 1 0 0 0 1 0
0 0 0 0 0 0 1 0 0 0 1
0 0 0 0 0 0 0 1 0 0 0
0
1
0
0
0
0
0
0
1
1
0
ī0
ī1
ī2
ī3
ī4
ī5
ī6
ī7
2
1
0
线线编码器
0 1 1 1 1 1 1 1
1 0 1 1 1 1 1 1
1 1 0 1 1 1 1 1
1 1 1 0 1 1 1 1
1 1 1 1 0 1 1 1
1 1 1 1 1 0 1 1
1 1 1 1 1 1 0 1
1 1 1 1 1 1 1 0 0 0 0
二 —十进制编码器:
编码器
Y0
Y1
Y2
Y9
D
C
B
A
拨码盘产生二进制代码 (BCD码 )
功能,将十个状态(对应于十进制的十个代码)
编制成 8421码 。
十个输入 需要几位编码输出? 四位代码
43 2102
拨码盘特定的低电平
0 1
2
9
+E
0Y
R?10
1Y
2Y
9Y
二 —十进制编码器设计
1、由逻辑功能,列出真值表 (输入低电平有效 ):
输入
("0" 项 )
D
C
B
A
Y
0
0 0 0 0
Y
1
0 0 0 1
Y
2
0 0 1 0
Y
3
0 0 1 1
Y
4
0 1 0 0
Y
5
0 1 0 1
Y
6
0 1 1 0
Y
7
0 1 1 1
Y
8
1 0 0 0
Y
9
1 0 0 1
2、由表写逻辑式,并化为最简式。
输入
(,0,项)
D
C
B
A
Y
0
0 0 0 0
Y
1
0 0 0 1
Y
2
0 0 1 0
Y
3
0 0 1 1
Y
4
0 1 0 0
Y
5
0 1 0 1
Y
6
0 1 1 0
Y
7
0 1 1 1
Y
8
1 0 0 0
Y
9
1 0 0 1
98 YYD
7654 YYYYC
7632 YYYYB
97531 YYYYYA
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
或运算形式
98 YYD
3、用与非门实现,转换成“与非式”
98 YYD
两次求反法
7654 YYYYC
98 YYD
7632 YYYYB
97531 YYYYYA
用一级与非门实现。
用与非门实现的逻辑图,
1 2
9
0
+E
R?10
98 YYD
7654 YYYYC
7632 YYYYB
97531 YYYYYA
& C
& D
& B
& A 0
1
0
0
(低)
(高)
0Y
1Y
2Y
3Y
4Y
5Y
6Y
7Y
8Y
9Y
1
1
1
0
在前面介绍的编码器存在这样一个 问题,当输入信号同时有 两个或两个以上 有效时,输出将发生混乱。
二、优先编码器功能,允许同时输入两个以上编码信号,
并按照事先规定的 优先级别,对 优先权 最高的一个输入信号进行编码。
在数字系统中,特别是在计算机系统中,常常要控制多个对象,如打印机,磁盘驱动器,输入键盘等。 当某个时刻有两个以上设备请求服务时,
主机必须能按事先安排好的次序予以响应,这对每个外设而言就有一个 优先级别 的问题。
真值表输 入 输 出
1 0 0 0 0 0
× 1 0 0 0 1
× × 1 0 1 0
× × × 1 1 1
0I 1I 2I 3I 0Y1Y
优先级别:
3I 0I
低
3321 IIIY
33210 IIIIY
逻辑表达式:
2,8线 -3线优先编码器 74HC148
1,4线 -2线优先编码器输入编码信号
8根输入编码信号输出 3位代码输出编码代码
74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S
有编码信号输入无编码信号输入
1 0
1
1
1
1
1
0 1
ī0~ī7有编码输入,则 YEX为 0
ī0~ī7无编码输入,则 YS为 0
选通控制
( 1)电路结构:
74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S
编码信号输入,低电平 0有效代码输出,反的形式输出有编码信号输入低电平有效无编码信号输入低电平有效 选通控制低电平 0有效
( 2)逻辑功能,(见表 4.3.2)
① S=1,编码器处于非工作状态,YS=YEX=1;
输入端无编码信号,为非编码输出,
111YYY 012?
用于多片优先编码器的级联
YS=0,YEX=1;
输入端有编码信号,为反码输出,
由功能表可知,输入优先级别的次序依次为,7,6,…,0 。
YS=1,YEX=0;
012 YYY
讨论,的作用?YS
② S=0,编码器处于工作状态; S低电平有效例 4.3.1 试用两片 74HC148 接成 16线 -4线优先编码器。
16-4优先编码器
ī0ī1 ī2 ī3 ī4 ī5 ī6 ī7
Z0 Z1 Z2 YEX
YS S
ī8 ī9 ī10ī11ī12ī13ī14ī15
Z3设计目标:
74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S 74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S
功能表:
1 X X … X X … X X 1 1 1 1 1 1
0 1 1 … 1 1 … 1 1
0 X X … X X … X 0
…………
0 X X … X 0 1… 1 1
0 X X … 0 1 … 1 1
…………
0 0 1 … 1 1 … 1 1
1 1 1 1 1 0
0 0 0 0 0 1
…………
0 1 1 1 0 1
1 0 0 0 0 1
…………
1 1 1 1 0 1
I I,..II,..II 15 14 8 7 1 0S SYEXY 0 1 2 3 ZZZZ
74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S 74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S(1) (2)
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7 ī8 ī9 ī10ī11ī12ī13ī14ī15
16根输入线 ī0~ ī15,而每片 148只能提供 8根编码输入,所以使用 2片 148,每片各提供 8个输入,
总共 16个输入,其中 148(1)提供 ī0~ ī7,
148(2)提供 ī8~ ī15 。
优先权,
ī0 <ī1 <ī2 <… <ī6 <ī7 <ī8 <ī9 <… <ī14 <ī15
1、输入编码信号:
74HC148(1)输入 74HC148(2)输入如何保证 148(2) 比 148(1)优先权大呢?
74HC148(2) 74HC148(1)工作状况
74HC148(1)无效
74HC148(1)有效有编码无编码
S(1)YS(2)
1 1
0 0
S(1)=YS(2)
74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S 74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S(1) (2)
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7 ī8 ī9 ī10ī11ī12ī13ī14ī15
S(1)=YS(2)
2、输出:
Z3 Z2 Z1 Z0
0 0 0 0
::,:,:
0 1 1 1
1 0 0 0
::,:,:
1 1 1 1
对应输入情况
ī8 ~ ī15有编码输入
ī8 ~ ī15无编码输入
ī0 ~ ī7有编码输入
74HC148情况
74148(2)有编码
74148(1)不工作
74148(2)无编码
74148(1)有编码
0
1
YEX(1)YEX(2)
0 1
1 0
Z3=YEX(2)
74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S 74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S(1) (2)
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7 ī8 ī9 ī10ī11ī12ī13ī14ī15
&& &
Z3Z2 Z1 Z0
3、控制端:
应该仿照 8-3编码器 74HC148,还有 YEX,YS,S等。
下面设计 YEX,YS,S:
74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S 74HC148
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y2 Y1 Y0 YEX
YS S(1) (2)
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7 ī8 ī9 ī10ī11ī12ī13ī14ī15
&& &
Z3Z2 Z1 Z0
&
YE
X
SSY
YEXYEX (1)YEX (2)
0 1 0
1 0 0
1 1 1
0 0 X
Y SY S (1)YS (2)
)2()1( EXEXEX YYY
0 0
0 1 1
1 0 X
1 1 1
)1(SS YY?
S (1)S (2)S
0 X
1 1 1
)2(SS?
思考题?
如何用 74HC148设计 32线 -5线优先编码器? (题 3.6)
74HC148,4片
方法一:用 2片 74HC148设计 16-4编码器;
然后用 2片 16-4设计 32-5编码器。
方法二:直接用 4片 74HC148设计 32-5编码器。
3、二 -十进制优先编码器 74LS147
74LS147
ī0 ī1 ī2 ī3 ī4 ī5 ī6 ī7
Y0 Y1 Y2
ī8 ī9
Y3
4.3.2 译码器二进制代码
(机器代码 )
转换 特定的输出状态
(控制信号 )
译码:
按功能分类二进制译码器显示译码器
——用于对电路进行逻辑控制
——用于电路输出的数字显示部分
n位二进制代码可译成 2n种电路状态。
译码器,具有译码功能的逻辑电路。
(代码变换器)
是编码的逆过程二 -十进制译码器
321 SSSS?
&
1
1
1
1
1
1&
&& && & & & &
1
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
A0 A1 A2
&
1S
3S2S
S 0
1 1 1 1 1 1 11
S高电平有效。 即 S1=1,S2=S3=0时,允许译码!
2,二进制译码器,3 - 8线译码器 74HC138
图 4.3.8
输入选择 允许 (使能 )输出数 据 输 出管脚图
+5V
地
1 2 3 4 5 6 7 8
16 15 14 13 12 11 10 9
1S 7Y
DDU
GND
74HC138
3S
2Y1Y0Y 3Y 4Y 5Y 6Y
2S
A0 A1 A2
表 4.3.5 74HC138功能表使能端 选择输入端 输 出 端
32 SS?1S
1 1 1 1 1 1 1 1 1
0 1 1 1 1 1 1 1 1
1 0 0 0 0 0 1 1 1 1 1 1 1
1 0 0 0 1 1 0 1 1 1 1 1 1
1 0 0 1 0 1 1 0 1 1 1 1 1
1 0 0 1 1 1 1 1 0 1 1 1 1
1 0 1 0 0 1 1 1 1 0 1 1 1
1 0 1 0 1 1 1 1 1 1 0 1 1
1 0 1 1 0 1 1 1 1 1 1 0 1
1 0 1 1 1 1 1 1 1 1 1 1 0
7Y0Y 1Y 2Y 3Y 4Y 5Y 6Y
A2 A1 A0
允许译码条件下( S=1),各 输出逻辑式 为:
0m?
三个变量的全部 最小项 的译码输出。
利用 3-8线译码器可以很方便的实现 逻辑函数
1m?
2m?
4m?
5m?
6m?
7m?
3m?
0120 AAAY
0125 AAAY
0126 AAAY
0127 AAAY
0124 AAAY
0123 AAAY
0122 AAAY
0121 AAAY 01270 Y~Y AAA是双 2-4线集成译码器 74LS139:
(其中含两个 2-4译码器)
输 入 输 出使能端使能端 输 入 输 出+5V
地管脚图 S1
0A1 1A1
0A1 1A1 0Y1 1Y1 2Y1 3Y1
0A2 1A2ccU
GND
3Y2
2Y21Y20Y21A20A2S2
74LS139
2S 2Y0 2Y1 2Y2 2Y3
1S 1Y0 1Y1 1Y2 1Y3
例 1、如何用 74HC138设计 4-16线译码器?
74HC138
( 1)
A2
A1
A0
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
S1
S2
S3
74HC138
( 2)
A2
A1
A0
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
S1
S2
S3
4-16
译码器
A2
A1
A0
A3
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
Y8
Y9
Y10
Y11
Y12
Y13
Y14
Y15
1、设计 16个输出
2、设计 4个输入 Z
0
Z1
Z2
Z3
Z4
Z5
Z6
Z7
Z8
Z9
Z10
Z11
Z12
Z13
Z14
Z15
A3
A2
A1
A0
:::
Z71110
Z151111
:::
Z80001
Z00000
输出 Z0~Z15输入 A3A2A1A0
A3 74LS138工作状态
0 ( 1)输出
1 ( 2)输出
S1( 1) S1( 2)
1 0
0 1
3)1(1 AS?
3)2(1 AS?
1
00
00
例 2,用 3-8线译码器实现逻辑函数:
X Y ZZYXZYXZYXZ)Y,F ( X,
解:
7420 mmmmF
7420 mmmm
7420 YYYY
因此,附加一个与非门即可实现该逻辑函数。
74HC138
A2
A1
A0
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
S1
S2
S3
X
Y
Z
1
0
0
F
&
例 3,3线 -8线译码器构成数据分配器数据分配器,将一个数据源来的数据根据要求送到多个不同的通道上去的器件。
数据分配示意图
Y0
数据输入
n位地址输入
1n2Y?
根据 3线 -8线译码器的逻辑图图 4.3.8可写出:
D
D 数据输出地址输入
0123210121 AAA)SS(SAAASY
…
3线 -8线译码器作数据分配器使用:
当 S1=1,A2A1A0=001时,
当 S1=1,A2A1A0=010时,
A0
A1
A2
EN
7654 3210 YYYYYYYY
S1 74138
2S 3S
DSY 31
DSY 32
A0
A1
A2
二,二 -十进制译码器这种译码器有 4个输入端,10个输出端。它把 0000~1001十组输入信号译成对应的 10个高、低电平输出信号。
图 4.3.11二 -十进制译码器
74HC42
1010~1111
伪码输入真值表见表 4.3.6
二进制代码
(机器代码 )
译码特定的输出信号控制 数码显示器,
直观地显示数字量。
译码显示系统:
二 -十进制代码显示译码器数码显示器三、显示译码器
LED,LCD
LED七段显示器:
a
b
c
d
e
f g
每个发光字段是一个 发光二极管( PN结):
磷砷化镓( GaAsP)
共阴极数码管共阳极数码管
1、七段字符显示器共阴极 LED七段显示器工作示意图:
“1”
a b g
共阳极 LED七段显示器工作示意图:
“0”
a b g
+5v
七段 字符 显示器,显示 数字情况(以共阴极七段 字符 显示器为例)
a
b
c
d
f g
0?9 a b c d e f g
1 0 1 1 0 0 0 0
2 1 1 0 1 1 0 1
e
0 1 1 1 1 1 1 0
3 1 1 1 1 0 0 1
4 0 1 1 0 0 1 1
9 1 1 1 1 0 1 1
8 1 1 1 1 1 1 1
2,7448,BCD—七段显示译码器 /驱动器逻辑图见图 4.3.16输出高电平有效,用以驱动共阴极显示器。其功能表如下:
十进制或功能输 入 BI/
RBO
输 出 字形
LT RBI A3 A2 A1 A0 Ya Yb Yc Yd Ye Yf Yg
0 1 1 0 0 0 0 1 1 1 1 1 1 1 0
1 1 X 0 0 0 1 1 0 1 1 0 0 0 0
2 1 X 0 0 1 0 1 1 1 0 1 1 0 1
15 1 X 1 1 1 1 1 0 0 0 1 1 1 1
消 隐 X X X X X X 0 0 0 0 0 0 0 0
灭 零 1 0 0 0 0 0 0 0 0 0 0 0 0 0
灯 测 试 0 X X X X X 1 1 1 1 1 1 1 1
7448逻辑功能
A3
A2
A1
A0
LT
BI/RBO
RBI
Ya
Yb
Yc
Yd
Ye
Yf
Yg
7448
8421
码输入灯测试输入灭 0输入灭灯输入 /灭 0输出
0
1
1
1
1
1
1
1
译码输出
0
0
0
0
0
0
0
0
0
0
0
0
0
X
X
X
X
0?
7448应用实例一用 7448直接驱动 BS201数码管
1
0
a~g
1 1
LT
RBI RBO
a~g
D C B A
0 0 0 0
LT
RBI RBO
a~g
D C B A
0 1 0 0
a~g
LT
RBI RBO
D C B A
0 0 0 0
a~g
D C B A
0 0 0 0
RBI RBO
D C B A
0 0 0 0
LT LT
RBI RBO
下面举一个利用 7448实现 多位数字译码显示 的例子,
通过它了解各 控制端 的用法,特别是如何 动态灭 0,实现无意义位的消隐。
0 0 0 1
7448应用实例二
4.3.3 数据选择器在数字信号的传输过程中,有时需要从多路输入数据中选出某一路数据,完成此功能的逻辑器件称为 数据选择器,即所谓多路开关。
D3
D2
D1
D0
Y
选择端输入数据输出数据
A1 A0功能示意图,
数据选择器双 4选 1数据选择器 74HC153
双 4选 1数据选择器 74HC153
74HC153
1 2 3 4 5 6 7 8
16 15 14 13 12 11 10 9
DDU
32D
S2
22D 12D 02D
Y20A
GND
31D 21D 11D 01D Y11A
选择端选择端使能端:
低电平有效使能端:
低电平有效 数据输入端数据输入端输出端输出端
S1
1,功能表:
使能端 选 择 端 输出端
S A1 A0 Y
0 0 0 D0
0 0 1 D1
0 1 0 D2
0 1 1 D3
1 0 禁止状态工作状态
(输入地址代码)
2,逻辑式:
使能端 选 择 端 输出端
S A1 A0 Y
0 0 0 D0
0 0 1 D1
0 1 0 D2
0 1 1 D3
1 0
功能表
)( 301201101001 DAADAADAADAASY
101001 DAADAA(Y )301201 DAADAA?
)0(3 0 SDm iii
八选一集成数据选择器 74HC151
输入 输出
A 2 A 1 A 0 Y
X X X 1 0 1
0 0 0 ~ 1 1 1 0 D 0 ~ D 7
S
功能表
Y
0D 7D
74HC151的逻辑电路图如图 4.3.24所示。
)0(
7
0
SDmY ii
i
例 4.3.4 试用两个带附加控制端的 4选 1数据选择器组成一个 8选 1数据选择器。
D0
D1
D2
D3
D4
D5
D6
D7
A2
双
4
选
1
数据选择器
D20
D21
D22
D23
Y2
D10
D11
D12
D13 Y1
S1
S2
A1 A0
A0
A1
1
1
Y
A2=0:(1)工作
A2=1:(2)工作二、用数据选择器设计组合逻辑电路例 4.3.5 试用 4选 l数据选择器实现例 4.2.2的交通信号灯监视电路。
RAGGRAGARAGRGARZ
301201101001 )()()()( DAADAADAADAAY
4选 1的函数形式为:
将 Z变换为 Y的表示形式,即:
令 R?A1,A? A0,有:
1)()()()( RAGARGARGARZ
如果 D0=G,D1=G,D2=G,D3=1A
1 =R,A0=A
Z=Y
画逻辑图
4
选
1
D3
D2
D1
D0
Y
A1 A0
R A
G 1
1
Z
D0=G,D1=G,D2=G,D3=1
A1 =R,A0=A
例 2、试用 8选 1数据选择器 74HC151产生逻辑函数,XYZYXYZXL
解,XYZYXYZXL
X Y ZZXYZYXYZX
将 L写成如下形式:
77665533 DmDmDmDmL
因为 74HC151的输出?
7
0i
iiDmY
所以,当 D0=D1=D2=D4=0,D3=D5=D6=D7=1
时,有 L=Y。
如下图,
D0 D1 D2 D3 D4 D5 D6 D7
S
A2
A1A
0
Y
74HC151XY
Z
0
1
XYZYXYZXL
D0=D1=D2=D4=0,D3=D5=D6=D7=1
4.3.4 加法器
◆ 加法器是计算机系统中最常用的算术运算单元,它是计算机 CPU中算术运算器的基本单元。
◆其他算术运算如减、乘、除等都可以由加法运算演变而来。
◆加法器一次能计算的数据的长度就是加法器的长度,常用的 8,16,32位等,当然最简单的是 1位的加法器。
1、半加器
A B S CO
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
S=A?B
CO=A?B
◆ A,B为两个 1位数,不考虑来自低位的进位,A、
B相加的结果为 S,产生的进位为 CO,称半加。
一,1位加法器
2、全加器
CI A B S CO
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
化为最简:
S=A?B?CI
CO=AB+ACI+BCI
= CI( A+B )+AB
若不化为最简:
CO= CI( A?B )+AB
◆ 如果将两个对应位的加数和来自低位的进位相加,则为全加。
由半加器构成全加器半加器半加器?1
A
B
CI
S
CO
s'
s'
c'
c'
全加器,
半加器,
A? B
A? B
CI?(A? B)
S=A?B?CI
CO=AB+ACI+BCI= CI( A?B )+AB
S=A?B
CO=A?B
A?B?CI
CI( A?B )+AB
管脚图
SN74LS183
1
1A 1B 1CI 1CO 1S GND
2 3 4 5 6 7
NC
2CI 2CO 2S2A 2BVcc
14 13 12 11 10 9 8
NC
输入输入 输出甩空甩空输入 输出输出双全加器 74LS183:
CI CO
CI CO
CI CO
CI CO
C-1
0
C0 C1 C2 C3
S0 S1 S2 S3
A0 B0 A1 B1 A2 B2 A3 B3
二,多位加法器若有多位数相加,则可采用 并行相加串行进位 的方式来完成。例如,有两个 4位二进制数 A3A2A1A0
和 B3B2B1B0相加,可以用 4个全加器来构成,其原理图如下图所示。
低位的进位输出端接高位的进位输入端,因此,
任一位的加法运算必须在低位的运算完成之后才能进行,这种进位方式称为 串行进位 。
1.串行进位加法器串行进位的特点是电路简单,缺点是运算速度慢。
全加器的输出:
iiii CIBAS
iiiiii CIBABACO )(
2.超前进位加法器为了提高运算速度,必须设法减少或消除由于进位信号逐级传递所消耗的时间。
定义两个中间变量 Gi 和 Pi,
iii BAG? iii BAP
高位的进位输入信号是否有可能只由加数和被加数来判断,而与低位的进位无关?
iiii CIPGCO则:
这两个函数都与进位信号无关。
iiii CIPGCO
由上式可得各进位位的分步式:
CO0=G0+P0CI0
CO1= G1+P1CI1 =G1+P1G0+P1P0CI0
CO2=G2+P2G1+P2P1G0+P2P1P0CI0
CO3=G3+P3G2+P3P2G1+P3P2P1G0+P3P2P1P0CI0
可见进位信号只与函数 Gi,Pi和 CI0有关,而 CI0是最低位的进位输入,其值为 0,所以各位进位信号是可以 并行 产生的。
当 Ai=Bi=1时,Gi=1,COi=1,即产生进位,所以 Gi称为进位生成函数 。 若 Pi=1,即 Ai+Bi=1时,COi= Gi + CIi,低位的进位能传送到高位的进位输出端,故 Pi称为进位传送函数。
根据超前进位概念构成的集成 4位超前进位加法器 74LS283的逻辑图见图 4.3.29。
CI
S3 S2 S1 S0 CO
74LS283
B3 B2 B1 B0
A3 A2 A1 A0
4.3.5 数值比较器
1,先从高位比起,高位大的,数值一定大;
2,若高位相等,则需再比较低位数,
最终结果由低位的比较结果决定;
3,比较结果应有三个标志:
A=B
A<B
A>B
比较大小的规则(三条):
数值比较器
A
B
E(equal:A=B)
S(small:A<B)
L(large:A>B)
数值比较器 示意图:
一,1位数值比较器设计:
A=a
输入
B=b
1.列出真值表:
输入 输出
a b
L
a>b
E
a=b
S
a<b
0 0 0 1 0
0 1 0 0 1
1 0 1 0 0
1 1 0 1 0
0 0 1
1 1 1
0 1 1
1 0 1
1位数值比较器真值表
2.由真值表写逻辑式:
baabbaE
( 同或运算 )
baS? baL?
输入 输出
a b
L
a>b
E
a=b
S
a<b
0 0
0 0
0 0
0 0
0 0 1
1 1 1
0 1 1
1 0 1
3.画出逻辑图,
逻辑符号,
(a<b)S
(a=b)E
(a>b)L
a
b
S
E
L
比较器
a
b
b
a &
&
1
1
1
ba
ba
babaE
ba
A=a3a2a1a0
输入:
B=b3b2b1b0
比较规则:
自高而低,
逐位比较。
输出:
Y (A=B)
Y (A<B)
Y (A>B)
二、多位数值比较器四位数值比较器的功能表:
a3 >b3 1 0 0
a3=b3 a2=b2 a1= b1 a0 =b0 0 1 0
a3=b3 a2=b2 a1= b1 a0 <b0 0 0 1
a3=b3 a 2=b2 a1= b1 a0 >b0 1 0 0
a3=b3 a2=b2 a1<b1? 0 0 1
a3=b3 a2=b2 a1> b1? 1 0 0
a3=b3 a2<b2 0 0 1
a3=b3 a2>b2 1 0 0
a3 <b3 0 0 1
比 较 输 入 输 出
a3 b3 a2 b2 a1 b1 a0 b0 Y(A>B) Y (A=B) Y(A<B)
根据比较规则,可得 四位数值比较器逻辑式:
BAY BA )(
)ba)(ba)(ba)(ba( 00112233
112233223333)( ))(()( babababababaY BA
00112233 ba)ba)(ba)(ba(
)()()( BABABA YYY
(备注:没考虑次低位的比较结果)
4位数码比较器 74LS85
逻辑电路图如图 4.3.32所示。
112233223333)( ))(()( BABABABABABAY BA
00112233 ))()(( BABABABA
)(00112233
00112233
112233223333)(
))()()((
))()((
))(()(
BA
BA
IBABABABA
BABABABA
BABABABABABAY
)(00112233 ))()()(( BAIBABABABA
)(00112233)( ))()()(( BABA IBABABABAY
1,0 )()()( BABABA III
电路结构不同,扩展端的用法就 可能不同,使用时应加以注意。
不进行片接时,其扩展端应满足:
74
LS
8
5
A3
YA<B
YA=B
YA>B
A2
A1
A0
B3
B2
B1
B0
I(A<B)
I(A=B)
I(A>B)
例 4.3.8 试用两片 74LS85 组 成 一个 8位数值比较器,
74
LS
8
5
A3
YA<B
YA=B
YA>B
A2
A1
A0
B3
B2
B1
B0
I(A<B)
I(A=B)
I(A>B)
74
LS
8
5
A3
YA<B
YA=B
YA>B
A2
A1
A0
B3
B2
B1
B0
I(A<B)
I(A=B)
I(A>B)(1) (2)
C3
C2
C1
C0
D3
D2
D1
D0
C7
C6
C5
C4
D7
D6
D5
D4
0
1
0
YC<D
YC=D
YC>D
思考,七位 二进制数值比较器?
C7=D7
例 2:挑出 等于和大于 5的四位二进制数。
方案一 设,输入 B=0101 ~ 5 ;X=x3x2x1x0 。
x3
x2
x1
x0
I(A>B)
I(A<B)
Y(A>B)
Y(A=B)
Y(A<B)
A1 B1A0 B0A3 B3A2 B2
I(A=B)74LS85
“1”
输出 F2。
1
1
&F2 GH
HGHGF 2
1
0
0
例 2:挑出 等于和大于 5的四位二进制数。
方案二 设,输入 B=0100 ~ 4 ;X=x3x2x1x0 。
x3
x2
x1
x0
F2
“1”
输出 F2 。
I(A>B)
I(A<B)
Y(A>B)
Y(A=B)
Y(A<B)
A1 B1A0 B0A3 B3A2 B2
I(A=B)74LS85 1
0
0
4.4 组合逻辑电路中的竞争 -冒险现象前面我们系统的介绍了组合逻辑电路的分析和设计,这些分析和设计都是在输入、输出处于 稳定 的逻辑电平下进行的。
为了保证系统工作的可靠性,有必要观察一下当输入信号逻辑电平发生 变化 的瞬间电路的工作情况。
首先我们来看一个最简单的例子:
4.4.1竞争 -冒险现象及其成因图 4.4.1 由于竞争而产生的尖峰脉冲我们把门电路 两个输入信号同时向相反逻辑电平跳变 (一个从 1变为 0,另一个从 0变为 1)的现象叫 竞争 。
由于竞争而在电路输出端 可能产生 尖峰脉冲
( glitch )的现象叫 竞争 -冒险。
产生原因信号存在 前后沿 过渡时间不一致问题;
门电路的 tpd(传输延迟时间)不一样。
4.4.1竞争 -冒险现象及其成因图 4.4.2 2线- 4线译码器中的竞争-冒险现象
( a) 电路图 ( b) 电压波形图
1) 引入 封锁脉冲 —在输入信号发生竞争期间,封锁门的输出;封锁脉冲必须与输入信号的转换同步。
2) 引入 选通脉冲 —等电路达到新稳态后,再输出。
前封中选
3) 接入滤波电容 —吸收和削弱窄脉冲。 后滤
4) 修改逻辑设计,增加 冗余项。 添项
4.4.3 消除竞争 -冒险现象的方法例 1:消除竞争 -冒险的电路
&
1
A
&
2
&
4
1 B
B
1
BAY?3
&
3
A
ABY?2
ABY?1
ABY?0
前封中选
>?t
Cf
Cf
(几十至几百皮法 )
后滤波形关系
t
B
t
A
t
B
A
t
t
t
t
封锁脉冲选通脉冲例 2,修改逻辑设计
CAABCAABF
当,F=A+ =1时,有竞争 -冒险的可能 ; 为 消除 之,可以 添加 冗余项 BC:
1CB A
BCCAABF
当 B=C=1时,始终有 F=1,所以 A的变化不会引起竞争 -冒险,使可靠性提高。即 B=C=1时:
11 AABCCAABF
添项
A
&
1
1
B
&
2 &
3
C
&
4
“1”
“1”
A F
添项:
(封 3号门)
0BC?
CAABF
BCCAABF
冗余项
1 1
1 1
A
BC
0
1
00 01 11 10
C
B
利用卡诺图判断并消除竞争冒险:
习题课(第四章)
1、已知:组合逻辑电路的功能如右表所示,试用中规模集成器件( MSI)实现之。可以附加少量的门电路。
1 1 1 1
输 入 输出
A B C F
0 0 0 00 0 1 1
0 1 0 10 1 1 0
1 0 0 1
1 0 1 0
1 1 0 0
2、分别用 四选一数据选择器
( 74LS153) 和 2-4线译码器
( 74LS139) 实现逻辑函数,(两种方法 )
CABCBAF),,(
3、设计三个四位数的比较器,可以对 A,B,C 进行比较,能判断:
( 1)三个数是否相等。
( 2)若不相等,判断 A是最大还是最小。
4、写出下图所示数据选择器电路的输出函数,并化为最小项之和的形式。(使能端都为有效电平)
A
1 =1
=1
D0
D1
D2
D3
S1 S0
Y
0
A A
A
B C
=1
=1
D0
D1
D2
D3
S1 S0
YA
1
A
A
0
1
B C
D0
D1
S
D
F(A,B,C,D)
中规模组合逻辑集成器件的灵活应用一、设计方法及步骤,逻辑函数式对照法
1.由功能确定输入、输出量,写出逻辑式;
2.把要用的 MSI逻辑函数式变换成与所求逻辑式相类似的形式:
中规模集成逻辑器件都是为了实现专门的逻辑功能而设计,但是通过适当的连接,可以实现一般的逻辑功能。 用中规模组件设计逻辑电路,
可以减少连线、提高可靠性。
下面介绍用数据选择器和译码器设计组合逻辑电路的方法及 MSI电路的分析方法。
其中:,2.把要用的 MSI逻辑函数式变换成与所求逻辑式相类似的形式”中又分这样几种情况
:
1 若两者形式上 完全相同,则该种 MSI效果最好。
2 若 MSI函数式更丰富,则可将 多出 的输入变量和乘积项 适当处理,也可以较方便地得到所需要的逻辑式;
3 若 MSI函数式仅是所要产生的逻辑 式的 一部分,可以通过 扩展方法 得到所需逻辑 式。
适中 (最好 )
多项 (删除 )
少项 (扩展 )
★ 若要产生 单输出 逻辑函数时,
可 先考虑数据选择器 。
★ 若要产生 多输出 逻辑函数时,
使 用译码器 +门电路 较有利。
3.接线,画出逻辑图。
扩展方法:
用使能端 或 其它输入端 扩展,适当加其他门电路;
采用 多片 MSI进行适当 连接 。
一般地,
二、分析方法及步骤:
由逻辑图得逻辑式得逻辑功能代入 MSI的逻辑函数式
1 1 1 1
输 入 输出
A B C F
0 0 0 00 0 1 1
0 1 0 1
0 1 1 0
1 0 0 1
1 0 1 0
1 1 0 0
设计:
1,由表写式:
A B CCBACBACBAF
F是 单输出 逻辑函数,可考虑用 数据选择器 (方案一 ):
双 4选 1数据选择器 —
74HC153
题 1.已知组合电路逻辑功能如表所示,试用中规模集成器件实现之。
习题课解答
74HC153函数式:
2.与 F式对照:
0?S
MSI没有 C端,可以用输入数据端改接:
即,D0 =D3 =C
D1 =D2 = C
第三根输入线 ( C,)
分送给对应的数据输入端。
C
A B CCBACBACBAF
301201101001 DAADAADAADAAY
令,A1 = A,A0 = B ;
3.画出逻辑图:
输入信号
F
A
B
1C
C
D0 =D3 =C; D1 =D2 =C。
1D0
Y1
1D1 1D2 1D3
74HC153 (1)A
0
A1
S1(低 )(高 )
总选中
A B CCBACBACBAF
方案二,用 8选 1数据选择器 74HC151实现令 =0,MSI始终被选中:S
使能端 选 择 端 输出端
S A2 A1 A0 Y W
1 0 1
0 0 0 0 D0 D0
0 0 0 1 D1 D1
0 0 1 0 D2 D2
0 0 1 1 D3 D3
0 1 0 0 D4 D4
0 1 0 1 D5 D5
0 1 1 0 D6 D6
0 1 1 1 D7 D7
74HC151功能表:
10120012 DAAADAAAY
70126012 DAAADAAA
30122012 DAAADAAA
50124012 DAAADAAA
1.将 Y与 F式相对照:
1) F式中 不出现 的项,令其对应的数据 Di=0;
于是 消去 这些项。
2) F式中 出现 的项,令其对应的数据 Di=1;
于是 保留 这些项。
3012201210120012 DAAADAAADAAADAAAY
7012601250124012 DAAADAAADAAADAAA
发现 Di 数据似乎多余,改接:
A B CCBACBACBAF
若令,A2 = A,A1 = B,A0 = C;
令 D0 = D3 = D5 = D6 =0,消去 相应的项;
令 D1 = D2 = D4 = D7 =1,保留 相应的项。
FA B CCBACBACBAY即,
A B CCBACBACBAF
7421 mmmm
2.画出逻辑图:
F
D7
Y
D6 D5 D4 D3
s
D2 D1 D0
74HC151A
1
A0
A2
C
A
B
选择信号
“1”
选中方案三,用 3-8线译码器 —74HC138实现假设,使能端被选中
0Y i?
1 1 1
输 入 输出
A2 A1 A0
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
0Y
1Y
2Y
3Y
4Y
5Y
6Y
7Y
00120 mAAAY
10121 mAAAY
20122 mAAAY
30123 mAAAY
40124 mAAAY
50125 mAAAY
60126 mAAAY
70127 mAAAY
74HC138功能表:
两次求反法:
AB CCBACBACBAF
AB CCBACBACBAF即:
A B CCBACBACBAF
待设计的逻辑式:
7421 mmmm
2.画出逻辑图:
7Y 6Y 5Y 4Y 3Y 2Y 1Y 0Y
74HC138
A1 A0A2
2S
1S
“1”B CA
&
F
3S
题 2,分别用 四选一数据选择器 和 2-4线译码器实现逻辑函数,
方案一,用双四选一数据选择器 74HC153实现
1.与 F式对照,且令 A1 = A,A0 = B ;
则 D3=1,使 Y中 保留 AB;因为 MSI没有 C端,
可以 用 输入数据端扩展,D0= D1= D2= C。
时:0?S
301201101001 DAADAADAADAAY
CABCBAF),,(
C)BABABAAB()CC(ABF
CBACBABCAAB
2.画出逻辑图,D0 =D1 =D2 =C; D3 =1。
输入信号
(三位)
F
A
B
C
1D0
Y1
1D1 1D2 1D3
74HC153 (1)A
0
A1
E1
“1”
方案二,用 双 2-4线译码器 74HC139实现
CBACBABCACABA B C
13567 mmmmm
CBACBABCACABA B CF
CABCBAF),,(
CBACBABCAAB
方法一,
74HC139只有两个代码输入端,现在 F有 三个输入变量,可以利用 74HC139中两个 2-4线译码器 的 使能端扩展 为 3-8线译码器。
2,逻辑图,CBACBABCACABAB CF
1A 0A
0Y1Y2Y3Y
S74HC139(2)
1A 0A
0Y1Y2Y3Y
S74HC139(1)
1
A B C
A=1
选中
A=0
选中
F
方法二:
让 74HC139中 两个 2-4线译码器同时使能,利用它们的输入端进行组合:
CABF
CBBCAB
)BB(CAB
CBBCABF
CBBCABF
两次求反
CABCBAF),,(
2,
逻辑图
1A 0A
0Y1Y2Y3Y
S74HC139(1)
1A 0A
0Y1Y2Y3Y
S74HC139(2)
CBBCABF
A B C
AB BC
CB
F
题 3,设计三个四位数的比较器,可以对 A,B、
C 进行比较,能判断:
( 1)三个数是否相等。
( 2)若不相等,判断 A是最大还是最小。
比较原则:
先将 A与 B比较,再 A与 C比较:
可以用两片 74LS85实现。
若 A=B A=C,则 A=B=C;
若 A>B A>C,则 A最大;
若 A<B A<C,则 A最小。
1,A=B=C 1,A最小1,A最大
I(A>B)
I(A<B)
Y(A>B)Y(A=B)Y(A<B)
I(A=B)
B2 B0A2 A2 B3 B1A3 A1
74LS85
(1)
I(A>B)
I(A<B)
Y(A>B) Y(A=B)Y(A<B)
I(A=B)
B2 B0A2 A0 B3 B1A3 A1
74LS85
(2)
& & &
C1
C0
C3C
2C,B:
B1
B0
B3
B2
A1
A0
A3A
2A:
1
0
0
1
0
0
题 4,写出下图所示数据选择器电路的输出函数,并化为最小项之和的形式。(使能端都为有效电平)
A
1 =1
=1
D0
D1
D2
D3
A1 A0
Y
0
A A
A
B C
=1
=1
D0
D1
D2
D3
A1 A0
YA
1
A
A
0
1
B C
D0
D1
A
D
F(A,B,C,D)
10),,,( DDDDDCBAF
解:
ABCACBCABACBD0
)(101 AABCCBCBACBD
BCABCCBCBA
BDDCADBCADCBADCBADCBADCBAF),,,(
)15,13,10,9,7,6,5,4,0(),,,( mDCBAF
本章小结一,组合电路的分析方法,逐级写逻辑式法。
二,组合电路的设计方法:
1,用门电路构成:
逻辑式卡诺图最简与或式列真值表写式填图画出逻辑图:
化简化简与或门实现与非门实现两次求反四、竞争 -冒险现象:理解
2,用中规模组件设计逻辑电路:
逻辑函数式对照法,较灵活。
三、典型器件
1,编码器,
2,译码器二进制译码器,
显示译码器,
4,加法器全加器,
半加器
5,数码比较器,
3,数据选择器,
74139,74138
7448
74LS183,74LS283
74HC153,74HC151
74LS85
74148
对集成电路的 要求要求
(“三会”)
1,会认管脚电源端控制端数据端
2,看懂功能表
3,会正确使用控制端第四章结 束例:利用 2—4线 译码器 分时地传送数据。
三态门 三态门 三态门 三态门AE BE CE DE
总线
A B C D
74LS139
(1)
0Y
1Y 2Y
3Y
0A
1AS
三态门 三态门 三态门 三态门AE BE CE DE
总线
A B C D
总选中输 入选择端例:利用 2—4线译码器 分时 地传送数据。
0Y
1Y 2Y
3Y
0A
1A
S
2-4线译码器
A B C D
三态门 三态门 三态门 三态门AE BE CE DE
总线脱离总线数据
=0
=0
0 1 1 1
题 3,试用 一片 4位数值比较器 74LS85实现两个 5位二进制数的并行比较。必要时可用门电路。
解,设两个 5位二进制数分别为 A=A4A3A2A1A0,
B=B4B3B2B1B0 。输出为 YA>B,YA=B,YA<B 。
A1 A2 A3 A4 B1 B2 B3 B4
74LS85
YA>B YA=B YA<B
IA>BIA=B IA<B
YA>B YA=B YA<B 1)先比较 A和 B的高 4位;
2) A和 B的高 4位相等时
,比较 A0和 B0,A0和 B0
相等,则 YA=B=1; A0和
B0不相等时,电路的输出状态由加到级联输入端为 1的输入端决定。A1 A2 A3 A4 B1 B2 B3 B4
B0A0 IA>B IA=B
0 0
0 1
1 0
1 1
IA<B
0 1 0
0 0 1
1 0 0
0 1 0
A0 B0
=
IA=B输入的优先级最高。