数电 第四章:组合逻辑电路


数电 第四章:组合逻辑电路

考纲:
    掌握组合逻辑电路的分析和设计;掌握组合逻辑电路的竞争冒险判别及消除方法。
    掌握常用组合逻辑模块电路(主要包括优先编码器、译码器、数据选择器、加法器和比较器)的电路功能、逻辑关系、扩展和应用。

组合逻辑电路的特点

①. 功能上,任意时刻的输出仅仅取决于该时刻的输入,与电路原来的状态无关

②. 结构上,不含记忆(存储)元件

4.1 组合逻辑电路的分析和设计方法

4.1.1 分析方法

从电路的输入到输出逐级写出逻辑函数式, 最后得到表示输出与输入关系的逻辑函数式, 然后用公式化简法或卡诺图化简法将得到的函数式化简或变换,以使逻辑关系简单明了。

4.1.2 设计方法

①. 进行逻辑抽象

  • 分析因果关系,确定输入/输出变量
  • 定义逻辑状态的含义(赋值)
  • 列出真值表

②. 写出函数式

③. 选定器件类型

④. 根据所选器件对逻辑式化简(用门)、变换(用MSI),或进行相应的描述(PLD)

⑤. 画出逻辑电路图

4.2 常用的组合逻辑电路

4.2.1 优先编码器

编码器的逻辑功能:将输入的每一个高、低电平信号编成一个对应的二进制代码。

优先编码器的特点:允许同时输入两个以上的编码信号,但只对其优先权最高的一个进行编码。

8线-3线优先编码器74HC148

8线-3线优先编码器74HC148的输入和输出均以低电平作为有效信号

8线-3线优先编码器74HC148

附加输出信号的状态及含义

两片8线-3线优先编码器扩展为16线-4线优先编码器


二-十进制优先编码器

在常用的优先编码器电路中,除了二进制编码器以外,还有一类称为二-十进制优先编码器,可以将$I’_0\sim I_9’ $这10个输入信号分别编成10个BCD代码。

二-十进制优先编码器74LS147

二-十进制编码器74LS147功能表

4.2.2 译码器

译码器的逻辑功能是将每个输入的二进制代码译成对应的输出高、低电平信号或另外一个代码。是编码的反操作。

二进制译码器

3线-8线译码器

3线-8线译码器真值表

74HC138是用CMOS门电路组成的3线-8线译码器,有3个附加的控制端$S_1、S_2’$和$S_3’$,当$S_1=1、S’_2+S_3’=0$时,译码器处于工作状态;否则,译码器被禁止,所有的输出端被封锁在高电平。其真值表为:

3线-8线译码器74HC138的功能表

带控制输入端的译码器也可以看做一个完整的数据分配器,此时可以将$S_1$看做数据输入端,$A_2A_1A_0$作为地址输入端。

用两片74HC138接成的4线-16线译码器

二-十进制译码器

逻辑功能:将输出BCD码的10个代码译成10个高、低电平输出信号。

对于BCD代码以外的伪码(1010~1111),$Y’_0\sim Y’_9$均无低电平信号产生,译码器拒绝“翻译”。

二-十进制译码器74HC42

二-十进制译码器74HC42的真值表

显示译码器

半导体数码管

BCD-七段显示译码器的真值表

BCD-七段显示译码器7448

7448的附加控制信号:

  • 灯测试输入-$LT’$:当$LT’=0$时,$Y_a\sim Y_g$全部置为1
  • 灭零输入-$RBI’$:当$A_3A_2A_1A_0=0000,RBI’=0$时,灭灯,消零
  • 灭灯输入/灭零输出-$BI’/RBO’$:作为输入端使用时称输入控制端,无论输入状态是什么都可将数码管熄灭;作为输出端使用时,只有当输入为$A_3A_2A_1A_0=0000$且有灭零输入信号$RBI’=0$时,$RBO’$才会给出低电平,即表示译码器已将本来应该显示的零熄灭了

利用$RBI’$和$RBO’$的配合,实现多位显示系统的灭零控制:整数部分只有高位是零,且被熄灭的情况下,低位才有灭零输入信号。同理,小数部分只有在低位是零,且被熄灭时,高位才有灭零输入信号。

有灭零控制的8位数码显示系统

用译码器设计组合逻辑电路

原理:$n$位二进制译码器可给出$n$变量的全部最小项。

举例

4.2.3 数据选择器

双4选1数据选择器

逻辑功能:在数字信号的传输过程中,从一组输入数据中选出一路作为输出。

双4选1数据选择器74HC153

输出的逻辑式可写为:

$S’=0$时数据选择器工作;$S’=1$时禁止,输出被封锁为低电平。

用两个4选1数据选择器接成的8选1数据选择器

用数据选择器设计组合逻辑电路

基本原理:具有$n$位地址输入的数据选择器,可产生任何形式的输入变量不大于$n+1$的组合函数。

数据选择器的逻辑式为:

例如要求产生的逻辑函数为:

4.2.4 加法器

1位加法器

半加器:不考虑来自低位的进位

全加器:将两个1位二进制数及来自低位的进位相加

多位加法器

串行进位加法器

串行进位加法器

超前进位加法器

基本原理:加到第i位的进位输入信号是两个加数第i位以前各位$(0\sim j-1)$的函数,可在相加前由A,B两数确定。

优点是快,缺点是电路复杂。

双全加器74LS283

用加法器设计组合电路

若要产生的逻辑函数能化成输入变量与输入变量或者输入变量与常量在数值上相加的形式,这时用加法器设计比较简单。

比如设计一个代码转换电路,将十进制代码的8421码转换为余3码:

代码转换电路

4.2.5 数值比较器

1位数值比较器

多位数值比较器

原理:从高位比起,只有高位相等,才比较下一位。

四位数值比较的逻辑函数式:

其中$I_{(A>B)},I_{(A<B)},I_{(A=B)}$是来自低位的比较结果。

数值比较器74LS85

将两片74LS85接成8位数值比较器

4.3 组合逻辑电路中的竞争-冒险现象

4.3.1 竞争-冒险现象及成因

将门电路两个输入信号同时向相反的逻辑电平跳变(1→0,0→1)的现象称为竞争

竞争不一定都会产生尖峰脉冲

由于竞争而在电路输出端可能产生尖端脉冲的现象称为竞争-冒险

由于竞争而产生的尖峰脉冲

4.3.2 检查竞争-冒险现象的方法

只要输出端的逻辑函数在一定条件下能简化成:

则可判定存在竞争-冒险现象。例如:

$Y=AB+A’C$,当$B=C=1$有$Y=A+A’$

$Y=(A+B)\cdot (B’+C)$,当$A=C=0$有$Y=BB’$

4.3.3 消除竞争-冒险现象的方法

一、接入滤波电容

尖峰脉冲很窄,只要在输出端并接一个很小的滤波电容$C_f$,就足以把尖峰脉冲的幅度削弱至电路的阈值电压以下。

二、引入选通脉冲

引入选通脉冲,高电平出现在电路到达稳定状态以后,所以输出不会出现尖峰脉冲。

三、修改逻辑设计

增加冗余项。

这种方法使用范围很有限,增加冗余项BC以后仅仅消除了在B=C=1时,由于A的状态改变所导致的竞争-冒险

题型总结


文章作者: Mat Jenin
文章链接: http://matjenin.xyz
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Mat Jenin !
  目录