Skip to content

【数字IC面试八股文(竞争冒险、亚稳态、同步)】组合逻辑竞争冒险【0型冒险和1型冒险及其消除方法】

  • Version
    • linhuangnan
    • 2024-03-05
    • 竞争冒险
    • review

Info

  • 什么是竞争和冒险
  • 怎么识别竞争冒险
  • 如何消除冒险

什么是竞争和冒险

(大疆2020芯片工程师校招)组合逻辑电路中的冒险是由于( )引起的。

A、电路有多个输出

B.、电路未达到最简

C、逻辑门类型不同

D、电路中的时延

答案:D

竞争

在一个组合电路当中,当某一个变量经过两条以上的路径到达输出端的时候,由于每条路径上的延迟时间的不同,到达终点的时间就会有先有后,这一现象称作竞争。

冒险

在具有竞争现象的组合电路中,当某个变量发生变化的时候,比如说从 1 跳到 0,或者说从 0 跳到 1,如果真值表所描述的逻辑关系或者功能遭受到短暂的破坏,在输出端出现一个不应有的尖脉冲 毛刺,这种现象就叫 冒险。

冒险是由竞争造成的,而竞争是因为电路中的时延不同,所以选D,

冒险是因为电路中的时延问题导致。

但是有竞争的时候不一定会出现冒险。

怎么识别竞争冒险

公式法

写出逻辑表达式,当某些逻辑变量取特定值 0 或 1 时

若逻辑表达式能转换为 A·(~A),则该电路存在1型冒险(该为 0 的时候出现了为 1 的错误数据,1 型冒险);

若逻辑表达式能转换为 A+(~A),则该电路存在0型冒险(该为 1 的时候出现了为 0 的错误数据,0 型冒险)。

297

卡诺图法

画出其卡诺图,

若输入变量在卡诺圈内改变时,则输出不会有冒险现象;

若输入变量是在相邻卡诺圈的相邻处发生变化,并且是从一个卡诺圈进入另一个卡诺圈,则有可能产生逻辑冒险现象。(卡诺图相切)

如下图所示,

当A=1、C=0,B由0->1时,在卡诺圈内变化,不会出现冒险;

当B=C=1,A由0>1时,在卡诺圈内变化,不会出现冒险。

当A=B=1,C从0>1时,相当于输入变量A、B、C从110变化到111,此时的变化是从一个卡诺圈变化进入另一个卡诺圈,该电路输出存在冒险现象。

298

如何消除冒险

增加冗余项

如下图,增加一个冗余项AB,这样状态变化时也是在卡诺圈内变化,此时逻辑表达式不是最简表达式,但是消除了冒险。

299

增加选通信号(高电平)

输入端加入选通信号,针对 A+(~A) 的 0 型冒险,避开毛刺。

引入封锁脉冲(低电平)

输入端加入封锁脉冲信号,针对 A·(~A) 的 1 型冒险,避开毛刺。

增加滤波电容

冒险输出的是一个很窄的毛刺,在输出端接滤波电容将其滤除。

采用可靠性编码

比如格雷码,每次只变化1位。

其特点是在任意两个连续的数值之间,只有一位二进制数字发生变化。这种编码可以有效地减少竞争冒险,因为在任何给定时间,只改变一个信号位,极大地降低了不同输入信号变化不同步导致冒险的机率。