组合逻辑电路

组合逻辑电路:无记忆,输入稳定且传播过程结束后,输出仅取决于当前输入

对比组合逻辑时序逻辑
输出取决于当前输入输入及内部状态
记忆功能无记忆有记忆
典型结构逻辑门组成的无反馈网络含存储元件,可有反馈

  • 数字逻辑电路的内部结构可看作由若干元件和若干结点互连而成
  • 元件本身又可以是一个数字逻辑电路
  • 结点分为输入结点(如 )、内部结点(如 )和输出结点(如 )
  • 组合逻辑电路的构成规则:
    1. 每个元件本身都是组合逻辑电路
    2. 输出结点不能互连,即同一结点只能由一个普通门输出驱动
    3. 输出结点不能反馈到输入端,即电路中不能形成反馈回路。

组合逻辑电路的分析

分析:已知电路,求逻辑功能

组合逻辑电路分析的一般步骤:

  1. 根据逻辑电路,从输入向输出,逐级写出中间结点的表达式
  2. 化简、变换,得到最简单的表达式
  3. 列真值表
  4. 根据真值表和逻辑表达式,对电路进行分析,确定其逻辑功能

补充:

  • 先辨认门型、反相小圆圈和连线结点;复杂电路保留中间变量,避免直接写长式。
  • 输出为 的情况较少时,可先求 。

例题

3人表决电路

至少两人赞成,输出为 。

不一致电路

仅 、 输出 ,其余组合输出

三位判偶

按图保留中间结点(注意异或结构):

输入中有偶数个 时输出 ,包括零个 。


组合逻辑电路的设计

设计:分析的逆过程,由功能需求构造电路。

逻辑电路设计的步骤

  • 最小化设计:要求设计的电路最简单
    • 电路中所使用的门种类数最少
    • 电路中门的个数最少
    • 电路中的连线最少
  • 标准化设计:写出函数的标准式,利用常见的中规模集成块,实现功能

最简表达式不一定对应最佳电路;应结合器件资源、门型、扇入和速度要求选择。

例题

开关报警

某设备有开关A、B、C,要求:只有开关A接通的条件 下,开关B才能接通;开关C只有在开关B接通的条件下 才能接通。违反这一规程,则发出报警信号。设计一个由与非门组成的能实现这一功能的报警控制电路

列出真值表,由真值表写出函数表达式并化简

用与非门实现:

交通灯故障检测

红、黄、绿三盏灯中,恰好一盏亮才正常。 其余五种组合均应报警

列出真值表,由真值表写出函数表达式并化简(卡诺图)

二进制转格雷码

设计一个码制转换电 路,输入4位二进制码,输 出为4位循环码(格雷码)

输入 ,输出 ,最高位均在左。列出真值表,由真值表写出函数表达式并化简(卡诺图)

BCD 四舍五入判断

输入为一位 8421 BCD 码 ; 输出 , 输出 。这里只判断是否进位。

注意:输入为有效BCD码,1010—1111可作无关项。

授受关系编码

授方编码为 ,受方编码为 :A、B、AB、O 分别编码为


定义 表示符合,则:


组合逻辑电路的优化实现

目标:在有效输入范围内保持功能,结合器件约束减少资源、改善速度

选择门型

原结构等效实现变换
与或式与非
或与式或非

例:

多输出共享公共逻辑

实际的数字系统中,通常有多个输出函数,可以作为整体考虑,使各式中的相同乘积项尽可能多,以减少门的个数

、 可各实现一次,供两个输出共用,避免重复用门

受限扇入与多级分解

  • 扇入数:一个门的输入端数
    • 如 用一个与门实现,扇入数为 4
  • 逻辑级数:从输入到输出,沿各条路径数经过的门数,取最大值
    • 反相器也算一级
    • 电路级数的增加会造成总延时的增加
  • 逻辑门电路的优化实现必须保证能够实现
    • 当输入端的个数超过物理实现的可能,就需要变换表达式
    • 变换方法可以是提取公因子或函数分解等

提取公因子

限定逻辑门的扇入数为3:

不计输入反相级:原式为“与→或”,共 2 级;提取后为“与→或→与”,共 3 级,各门扇入不超过 3。

函数分解

限定逻辑门的扇入数为3:

原来的四个三输入与项由四输入或门相加;分解后可用低扇入门实现。若 按与或门展开,再反相,最长路径可达五级。


组合逻辑电路的竞争险象现象

基本概念

  • 竞争(Race):输入变化经不同路径传播,到达某结点的时间不同

    • 信号通过连线和门都有一定的延迟时间,输入信号变化也需要一个过渡时间,多个输入信号发生变化有先后 、快慢的差异
  • 险象(Hazard):竞争使输出短时偏离预期,出现错误跳变或毛刺

  • 竞争-冒险:电路在信号电平变化的瞬间,可能与稳态下的逻辑功能不一致, 产生错误输出(尖峰脉冲)

  • 竞争不一定产生冒险,是否出现及脉宽大小,取决于输入变化和实际延迟

  • 真值表描述稳定结果,不包含变化过程

  • 输入稳定且所有传播结束后,输出才应符合稳态函数。

静态险象与动态险象

动态险象

  • 动态险象:若输入有变化时,其稳定输出信号也有变化(不会发生静态险象),而输出发生短暂的反复
    • 如:输出应该为1变0,而出现了1010
预期变化实际可能波形

图中 ,稳态有

但 G 及反相支路存在延迟,F 在转换时可能反复跳变。函数等价不代表瞬态波形相同。

静态险象

  • 静态险象:输入信号变化前后稳定状态输出的逻辑值相同,而在转换瞬间出现尖脉冲
名称预期输出实际波形毛刺
静态 0 险象保持 负毛刺
静态 1 险象保持 正毛刺
![[ch5-静态险象波形-056.png500]]
  • :若 A 已变为 ,反相支路尚未变为 ,两个输入短时同为 ,出现负毛刺
  • :若 A 已变为 ,反相支路尚未变为 ,两个输入短时同为 ,出现正毛刺

功能险象与逻辑险象

静态险象根据产生的条件分类

类型产生原因判断对象
功能险象多个输入变量同时变化,且变化的时间有差异函数与指定的输入转换
逻辑险象一个输入变量发生变化,通过两条或两条以上路径去影响输出逻辑值,且由于各个路径延时不同而造成的作用时间有差异具体门网络与路径延迟

功能险象

  • 功能险象:多个输入信号发生变化时,由于可能经 历的路径不同,所产生的险象
    • 逻辑函数本身所固有

例:,,始末均应输出 。

  • A 先变:输入— ;输出— ,有正毛刺
  • B 先变:输入— ;输出— ,无毛刺

逻辑险象

  • 逻辑险象:当输入信号只有一个发生变化,或者虽然有多个信号发生变化,但是没有发生功能险象的可能,由于门的延迟不同, 产生的险象

例:,,只有 C 变化。

所有相关输入均应输出 ;但 C 及 到达时间不同,可能使两个与项短时均为 ,产生负毛刺。


险象的判断

名称含义卡诺图对应
主要项不能再消去变量而仍保持蕴含关系不能再扩大的矩形
必要项至少存在一个主要项都不能覆盖的 最简覆盖中必须选取的主要项
多余项其覆盖的 已全部被其余已选项覆盖删去不改变稳态函数的圈

功能险象的判断方法

条件: 个输入中有 个变化(课件取 ),始末稳定输出相同;各变化变量翻转一次,先后顺序任意。

功能险象判断步骤

  1. 找不变变量:恒为 写原变量,恒为 写反变量,组成乘积项 Q
  2. 确定变化区域:检查 Q 为 的全部 个格,包含起点(起始输入对应的格子)、终点(最终输入对应的格子)及可能的中间状态
  3. 检查输出:区域内输出相同,无功能险象;输出不同,有功能险象的可能
  • 不变变量确定区域,变化变量决定路径。

从逻辑表达式判断: 如果由不变的 个输入变量组成的乘积项 Q 不是逻辑表达式中的乘积项或者多余项,则 个变量发生变化时,就有发生功能险象的可能。

例题

C 恒为 ,A、B 变化,故 ;检查全部 的格,即 。

的输出为 ,其余为 ,故有功能险象的可能:

  • A 先变:,输出 。
  • B 先变:,输出始终为 。

A 恒为 ,B、C 变化,故 ;检查全部 的格,即 。

的输出为 ,其余为 ,故有功能险象的可能:

  • B 先变:,输出 。
  • C 先变:,输出始终为 。

逻辑险象的判断方法

先排除功能险象,再检查实际电路是否有持续覆盖。以下为两级与或/或与网络的静态险象判据。

逻辑险象判断步骤

对于二级 与或 / 或与 表达式网络:

  1. 先排除功能险象的可能
  2. 若与或式有一个与项始终为 1;或与式有一个或项始终为 0,就无逻辑险象的可能,否则有,(找Q)
  3. 画出卡诺图,做出表达式乘积项各自对应的 1 圈(或与式则做出各项对应的 0 圈)。同功能画出变化区域,若区域不能被一个圈完整覆盖,则有逻辑险象的可能
  • 不同支路需要交接,旧项已失效、新项尚未接替时,可能产生毛刺

多级网络及还须按实际路径延迟逐级画波形判断

例题

的变化不变条件功能险象逻辑险象与依据
可能先按功能险象处理
无可能,缺少持续覆盖项
无可能, 与 交接,缺少 共同覆盖
无无

消去竞争-冒险

取样或选通输出

  • 方法:输入变化时关闭选通,待电路稳定后再开放,只读取稳定输出
  • 选通:用一个控制信号,决定什么时候允许结果通过
选通门有效取样脉冲
与门、与非门正脉冲:高电平时开放
或门、或非门负脉冲:低电平时开放
  • 取样窗口:位于输出稳定区间(施加正脉冲)
    • 取样可避开功能、逻辑险象的影响,不代表内部毛刺已消失。

修改逻辑设计

方法:保持稳态函数不变,改写产生险象的结构,或增加不含变化变量的覆盖项,使输出在支路交接时仍能保持

消去互补相乘结构

固定不变变量后,若原结构化为 ,两条路径延迟不同可能使两输入短时同为 。可展开原式,消去互补相乘项,再按等价式重新连接电路。

例题

当 、A 变化时,原结构化为 ,可能产生正毛刺。

按后式构造与或网络, 时各与项均被固定的 截断,输出保持 。

电路更加复杂,最简与最优的矛盾

增加冗余项,补足共同覆盖

网络补项方法作用
与或网络补圈,使相邻 有共同与项覆盖避免负毛刺
或与网络补圈,使相邻 有共同或项覆盖避免正毛刺
  • 找到分别含变化变量 、 的两项,补入不含 X 的一致项,覆盖两项交接的区域: /
    • 本质就是在补圈

例题

,补入冗余覆盖:

  • 蓝圈 、:分别持续覆盖 、 的区域。
  • 绿圈 :使 时 C、D 的多输入转换也有持续覆盖。

输出端并联电容

方法:输出端并联电容,利用充放电过程抑制足够窄的脉冲。

  • 黑线 含窄毛刺;滤波后的红线 来不及跟随窄脉冲充分变化,可使后级不识别该毛刺。
  • 代价:正常跳变也会变慢,延迟增大;不宜随意用于中间级。
  • 条件:效果取决于脉宽、输出驱动、负载与电平阈值,不能保证滤除任意毛刺,需按实际电路验证。

方法比较

方法适用情况主要条件与代价
修改逻辑、增加冗余覆盖消除相应逻辑险象改变门网络,可能增加门数;不能消除功能险象
取样/选通避开功能、逻辑险象的影响必须保证读取时刻和窗口位于稳定区间
输出电容滤波抑制两类险象产生的足够窄脉冲降低速度;不能保证滤除任意宽度的毛刺