不知道在学完数电第四章——组合逻辑电路之后,大家一开始有没有跟我一样的感觉:这些芯片功能是啥??那些控制信号是啥??我应该怎么连接??但是,当题目做的有了一定的量之后,发现考来考去无非是几种类型,下面博主就和大家一起总结一下,也当作自己的复习
1. 编码器
74HC148优先编码器
和普通编码器有类似之处,它也是对输入的二进制信号进行编码,但是它允许多个高电平输入,但是只会对优先级最高的输入进行编码,正常工作时应使S’ = 0。
下面是它的功能表:
关于编码器的题型解读:
最常见的就是用几篇编码器连成一个更多位的编码器了,比如用4片8线-3线编码器组合成32线-5线编码器,这种问题不难:我们把编码器从高位芯片到低位芯片串联起来(比如说高位芯片的S’接到下一个低位芯片的
端这样),至于输出里面多出来的两位应该怎么连出来呢?
我们需要从
引出:
我们看看啊,本来我们的输出是不是
三位对吧,我们现在考虑
:因为4片芯片串联在了一起,所以最低位(我们约定为第4个芯片)所能够编码的二进制数的范围就是:0~7;第3个芯片所能够编译的二进制数的范围就是8 ~ 15,同理后面两个芯片的范围依次是:16 ~ 23、24 ~ 31。
那么我们就想啊,如果 = 11,那么表示输入的信号最小就是11000 = ,属于第一个芯片的工作范围,那么此时应该让第一个工作,其他芯片工作但无有效输入,即:
0 | 1 | 1 | 1 | 1 | 1 |
当 = 10,那么输入的最小值就是16,最大值为10111 = ,属于第二个芯片的工作范围,那么应该只让2芯片有有效输入:
1 | 0 | 1 | 1 | 1 | 0 |
后面的情况类似,这样,我们就可以通过真值表得到新增的输出 与 的关系,从而用门电路表示出来
2. 译码器
【基本功能】这是比较常见的3线-8线译码器,输入是一个三位二进制数:
,然后把这个三位二进制数译成0~7其中一个十进制数,并且在对应位置输出
【正常工作条件】当
= 1,
= 0时,该译码器才会正常工作
【输出表达式】:这个是很重要的,译码器的输出
满足:
例如:
、
关于译码器的题型解读:
- 用几片译码器连接成一个更大的译码器
- 用译码器产生给定的逻辑函数式
举个例子我来试着把它说明白:
一,试用两片3线-8线译码器组成一个4线-16线译码器
首先,译码器原本就是有三个输入
的,这些我们不用管,直接把他们连起来就行,现在重点来看看第四个输入,也就是最高位的输入
:我们这里定义芯片(2)位高位芯片,那么,当
= 1时,输入的四位二进制数最小就是1000,译出来就是8,因此,我们应该让(2)芯片工作,而(1)芯片禁止工作。 而结合我们刚刚说的,当
= 1、
= 0时,译码器正常工作,因此,
直接接
(这里就有了一个通法:当我们有新增的输入时,我们就先看当这个新增的输入为1时,二进制数最小是多少,然后看这个最小的二进制数对应的十进制数在那个芯片的范围,就把这个新增信号和该芯片的
连在一起)
然后,
接在
也满足了当
= 1时,(1)芯片不工作
二,用3线-8线译码器74HC138设计一个多输出的组合逻辑电路,电路的逻辑函数式为:
这种题目的套路是:
将每一个输出化简为最小项之和:
那么,我们就可以写出译码器的输出:
3. 数据选择器
我们来看看双四选一数据选择器的样子:
其实它只用一班也是可以的,就是变成四选一的数据选择器,我们就以上面一半的四选一为例分析
【各个引脚的作用】
是数据的输入端,
是选通地址输入端(作为确定选择哪一个的信号),
是选择之后的输出
【正常工作条件】:
= 0
【输出表达式】这个是相当重要的:
记忆方法:括号()里面的地址项是最小项!外面就是按照
的这个i的顺序乘上输入
关于数据选择器器的题型解读:
- 用几片数据选择器组成更大的数据选择器
- 用数据选择器产生给定的逻辑函数式
一,用双四选一数据选择器组成8选1数据选择器:
我们知道四选一数据选择器有2个地址输入,而八选一数据选择器有3个地址输入,因此,这多出来的一个地址输入就要从
里面拿来:由于数据选择器正常工作的要求是
,
下面的四选一是选高位数的,当 = 1时,数据最小就是100,也就是4,在下面那片数据选择器,因此,我们就要保证上面那篇数据选择器不工作。这就是本题的思路了
二,分别用四选一和八选一实现下面的逻辑函数:
首先,先把函数式化为最小项之和:
由于我们要先使用四选一数据选择器,那么,有两个地址输入端,我们选BC好了,那么Y可以化为:
如果使用八选一,那么情况就不一样了,因为我们将要有3个地址输入端了,这样A,B,C就得全部用上,这样一来,D的数值也就随之确定了,Y可以写成这样的形式:
4. 超前进位加法器
【各引脚的功能】 , 是两个加数, 是来自前一位的进位, 是向高位的进位, 表示当前各位置的和(这里特别提醒一下:如果只是用了一篇超前进位加法器芯片,也就是说没有低位向高位的进位,又或者说这个芯片就是做的最低位的加法运算时,那么这个芯片的CI端要接地!!)
超前进位加法器老是喜欢考察:用加法器实现减法。但是大家不用害怕,减法是可以变为加法的,方法就是把减数写成补码的形式,再和原来的被减数相加
大家还记得一个二进制数的补码怎么求吗?正数的:原码=反码=补码;而对于负数,补码等于其数值位按位j取a反,然后+1
首先来说说怎么实现按位取反:我们可以用异或门实现,异或门就是可以用来取反的
那么+1怎么实现?我们可以令CI = 1,即低位有向高位进1,那不就完成+1的操作了吗?
5. 数值比较器
我们来看看最后一个数值比较器:
【各引脚的功能】 , 分别是待比较的两个三位二进制数, 表示低位比较的结果(因为我们比较是先从低位开始比较的)注意:如果没有低位了,我们就可以令 ,Y表示比较的结果
常考的题型:
- 用多个数值比较器连接成一个更大的数值比较器
- 用一个数据比较器比较三个数的大小等等
一,用两片四位二进制数比较器连接成一个八位二进制数比较器
6.组合逻辑电路的竞争冒险现象:
这里先暂时简单提一下:如果这个组合逻辑电路输出的逻辑函数式可以化为: 或者是 的形式,那么说明该组合逻辑电路存在竞争冒险现象。
6.1 消除竞争冒险现象的方法:
- 接入滤波电容
- 引入选通脉冲
- 修改电路逻辑设计