硬件竞争和冒险

Posted Phil的博客园

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了硬件竞争和冒险相关的知识,希望对你有一定的参考价值。

竞争:在组合电路中,信号经由不同的途径达到某一会合点的时间有先有后,这种现象称为竞争。

冒险:由于竞争而引起电路输出发生瞬间错误现象称为冒险。表现为输出端出现了原设计中没有的窄脉冲,常称其为毛刺。

竞争与冒险的关系:有竞争不一定会产生冒险,但有冒险就一定有竞争。

在组合逻辑中,由于门的输入信号通路中经过了不同的延时,导致到达该门的时间不一致叫竞争。
产生毛刺叫冒险。如果布尔式中有相反的信号则可能产生竞争和冒险现象。

下面的图片很好的描述了竞争和冒险的现象:

ABCD在电平翻转的时候不一致,就导致输出结果TEST有毛刺。

 

如何消除竞争和冒险:

首先确定竞争和冒险是否影响系统,因为竞争和冒险产生的是毛刺,时间较短,有的电路信号建立时间保持时间较长,自身就可以过滤这些冒险。

1、增加滤波电容

2、使用格雷码,一次只有一位改变。

3、利用冗余项法

  利用冗余项消除毛刺有2种方法:代数法和卡诺图法,两者都是通过增加冗余项来消除险象,只是前者针对于函数表达式而后者针对于真值表。以卡诺图为例,若两个卡诺圆相

切,其对应的电路就可能产生险象。因此,修改卡诺图,在卡诺图的两圆相切处增加一个圆,以增加多余项来消除逻辑冒险。但该法对于计数器型产生的毛刺是无法消除的。

  在仿真时,我们也可能会发现在FPGA器件对外输出引脚上有输出毛刺,但由于毛刺很短,加上PCB本身的寄生参数,大多数情况下,毛刺通过PCB走线,基本可以自然被滤

除,不用再外加阻容滤波。

参考资料:http://blog.163.com/zhangmaochu@126/blog/static/3736062220094300473146/

以上是关于硬件竞争和冒险的主要内容,如果未能解决你的问题,请参考以下文章

数字电路与系统-组合逻辑电路的竞争冒险现象3

竞争与冒险——随笔

竞争冒险毛刺脉冲都是什么呢?

数字电路与系统-组合逻辑电路的竞争冒险现象

数字电路中的竞争冒险以及解决

计算机组成与设计—— 流水线的冒险