组合逻辑电路
前言:
本章当中,数据选择器和译码器是比较重要的。因为这两个电路可以出题,来考察。相较于前两者,编码器,数据分配器,数值比较器,加法器,减法器,应该是记忆即可。
译码器与数据选择器的例题可以前去好好做一下。
下面尽是些课本概念,你看与不看都可。因为毕竟是笔者为记忆而写的,也有一个较为清晰的分块,你可选择且看一下的。
逻辑电路可分为两类:
- 组合逻辑电路(组合电路):任一时刻的稳态只取决于该时刻的输入,与原状态无关
- 时序逻辑电路(时序电路):除与现时的输入外,还与电路的原状态有关
半加器:
只考虑了本位的两个数二进制数相加,而没有考虑低位的进位
全加器:
不只是本位的两个二进制数的相加,来自低位的进位也一起相加
全加器真值表:
| Ai(被加数) | Bi(加数) | Ci (低位向本位的进位) | Ci+1(进位) | Si(本位和) |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 0 | 1 |
| 0 | 1 | 0 | 0 | 1 |
| 0 | 1 | 1 | 1 | 0 |
| 1 | 0 | 0 | 0 | 1 |
| 1 | 0 | 1 | 1 | 0 |
| 1 | 1 | 0 | 1 | 0 |
| 1 | 1 | 1 | 1 | 1 |
组合逻辑电路的设计
- 逻辑抽象:确定实际问题的逻辑含义
- 列真值表
- 用逻辑代数或卡诺图进行化简
- 写出逻辑表达式
- 画出逻辑电路图
中规模(MSI)组合逻辑电路
译码器
编码器
数据选择器
数据分配器
数码比较器
加法器
减法器
编码器
编码:将特定含义的信息用二进制代码表示的过程
编码器:实现编码功能的电路,m个输入信号、n位二进制代码输出。
m<=2n,当m=2n时,称为二进制编码器。
m=10,n=4时,称为二–十进制编码器
编码器分为:
普通编码器:任何时刻只允许输入一个有效信号,不允许出现多个输入同时有效的情况,否则编码器将产生错误的输出。
优先编码器:在一定条件下允许多个输入同时有效,能根据事先安排好的优先顺序只对优先级高的有效输入信号进行编码。
常见优先编码器:
二进制优先编码器:输入端和输出端均为低电平有效
其真值表为:
二–十进制优先编码器(BCD优先编码器)
输入,输出端均为低电平有效
给每个输出端加一个反相器,即可将反码输出的BCD码转换成正常的BCD码
译码器
译码:编码的逆过程
译码器有两种:
变量译码器(唯一地址译码器):常用于计算机中将一个地址代码转换成一个有效信号
显示译码器:用于驱动数码管显示数字或字符
n个输入端,m个输出端,m<=2n
-
二进制译码器
n位输入,2n位输出
输出端,低电平有效
E为使能端,低电平有效
当E=0时,允许译码器工作。当E=1时,译码器禁止工作,此时,所有Y均为高电平。
如果用Yi表示 i 端的输出,mi表示输入地址变量A1、A0的一个最小项,则E=0时,输出函数可以表示成:
下面是2–4译码器的表示符号:
对于3–8译码器:
只有当E1为高,E2,E3都为低时,该译码器才能有有效信号的输出。如有一个不满足,则译码器不工作,输出全为高。
下面是3–8译码器的表示符号:
译码器的扩展
通过采用两片3–8译码器可以构成一个4–16译码器:
由A3来对两片3–8译码器进行选择。
A1、A2、A0变化时,通过A3的选择,来进行不同的输出。
译码器的应用:
(1) 实现逻辑函数
(2) 实现存储系统的地址译码
(3) 带使能端的译码器可用作数据分配器或脉冲分配器例题:用译码器实现函数。
用特定的地址来选定译码器 -
二–十进制译码器
BCD译码器,功能是将输入的一位BCD码,译成10个高、低电平输出信号。
当输入一个BCD码时,就会在它所表示的十进制数的对应输出端产生一个低电平有效信号。
如果输入的是伪码(非法码),则均无低电平信号产生,即译码器拒绝翻译。
下面是它的逻辑符号:
它的真值表: -
显示译码器
数码显示器(数码管):用于显示数字、文字或符号的器件
显示译码器:用来驱动数码管显示数字或字符的组合逻辑部件。
下面是74LS47的逻辑符号:
D为输入
a/b/c/d/e/f/g:输出端,低电平输出
数据选择器(多路选择器,MUX)
n位地址输入,2n位数据输入,1位输出
在地址输入的控制下,从多路输入数据中选择一路输出。
D为数据输入端
A为地址输入端
E为使能端,低电平有效
下面是4选1MUX的逻辑符号:
其函数表达式为:
下面是8选1MUX的逻辑符号:
其函数表达式为:
数据选择器的扩展:
利用使能端进行扩展。
数据选择器的应用(有题):
实现多路信号的分时传送
实现组合逻辑函数
实现并行数据到串行数据的转换
产生序列信号