上篇博文:组合逻辑中的竞争与险象问题(二)讲了半开关的相关知识,更确切的说是竞争的根源问题。这篇博文将险象问题。

险象的定义

有竞争引起的非预期行为就叫做险象。

可见,竞争是险象的前提。但是竞争就一前提的存在,并不一定会引起险象,什么样的竞争会引起险象呢?

下面对此进行分析:

半开关是竞争产生的根源因此要找到竞争与险象的关系,只需要仔细分析一下与门半开关和或门半开关到底在什么情况下会出现非预期的行为即可。

现假设某半开关的所有端口都直接或间接的与组合逻辑的输入端口A相关,那么,从逻辑上来说,这个与(或)门的M个输入不是与A相连就是与相连,此时若A发生变化时,相当于该与门的M个输入分别取反,只不过由于路径延迟导致取反效果的时间不同罢了,因此可以分为下面三种情况讨论。

(1)M个输入全部由0变为1

如果是与门,那么其输出初识值应该为0,等到所有输入都从0变为1后,输出才变为1,而在此期间,输出保持0不变。

如果是或门,那么其输出初始值应该为0,当最快的一个输入端完成翻转后,其输出变为1,并在其他输入端陆续完成从0到1的翻转期间保持输出1不变。

可见,M个输入全部从0变为1,不会导致半开关的输出出现问题。

(2)M个输入全部由1变为0

如果是与门,输出的初始值应该是1,当最快的输入完成翻转后,输出变为0,并在其他输入端陆续完成从1到0的翻转时保持不变。

如果是或门,输入的初始值也该为1,当所有的输入完成从1到0的翻转后,输出变为0.

可见,这种情况下,即M个输入全部从1变为0,也不会导致半开关的输出出现问题。

(3)M个输入由部分0,部分1变为部分1,部分0

如果是与门,那么其输出初始值应该是0,而其后的输出也应该是0,而在变化的过程中,如果要导致输出出现异常,当且仅当所有的由0到1的翻转发生在有1到0的翻转之前,这样就会出现短暂的逻辑1.

如果是或门,那么其输出初始值应该是1,而其后的输出也应该是1,而在变化的过程中,如果要导致输出出现异常,当且仅当所有的由1变为0的翻转发生在由0变为1的翻转之前,这样会出现短暂的逻辑0.

综上,如果组合逻辑在某一个时刻对于端口A存在竞争,若这种竞争可能导致险象,那么肯定具有这样的特征,即其化简后的电路中的半开关同时具有连接到A和的输入管脚。当然了,这里只是说,如此的特征可能会导致险象,到底会不会,多半要取决于布局布线器的工作。

有用的结论:

对于那些化简后仅有一个半开关的电路,可以通过进一步判断是否满足如下条件来确定是否一定会发生险象:

如果是与门半开关,且所有的由0到1的翻转发生在由1到0的翻转之前,则一定会发生险象。

如果是或门半开关,且所有的由1到0的翻转发生在由0到1的翻转之前,则一定会发生险象。

因此,我们可以得出一个有用的结论,即,如果这仅有的一个半开关是两输入半开关,那么险象一定会发生,因为输入端A从1变为0和从0变为1,必然对应着1到0的翻转先发生,或0到1的翻转先发生,因此,无论是与门半开关还是或门半开关,A都会存在一种变化使得险象发生。

而对于那些化简后对应着多个半开关的电路,由于其内部存在着半开关的级联,所以要判断是否一定发生险象会麻烦得多,需要具体问题具体分析,因为你首先至少找到那些输出具有险象的半开关,然后还要判断其输出险象会被后续半开关阻塞,缩小,传递还是放大。

这些问题,后续博文讨论。

【 FPGA 】组合逻辑中的竞争与险象问题(三)相关推荐

  1. 【 FPGA 】组合逻辑中的竞争与险象问题(五)

    上篇博文:组合逻辑中的竞争与险象问题(四)说到了险象的分类,通过险象的分类,我们同时也明白了什么样的竞争会引起什么样的险象. 这篇博文来分析,险象对数字电路的影响以及如何消除险象? 险象对数字电路的影 ...

  2. 【 FPGA 】组合逻辑中的竞争与险象问题(四)

    上篇博文:组合逻辑中的竞争与险象问题(三)讲解了险象的定义,即竞争引起的非预期输出,同时给出了分析,对什么样的竞争会引起险象. 这篇博文继续讲解险象问题,重要突出险象的分类. 上篇博文最后提出了化简后 ...

  3. 【 FPGA 】组合逻辑中的竞争与险象问题(二)

    竞争与险象的讨论前提 当多个输入发生变化时,由于变化时刻以及延迟的影响,组合逻辑的输出中必然存在着不稳定态.但是通过上篇博文的分析:组合逻辑中的竞争与险象问题(一),我们发现即使仅有一个输入发生变化时 ...

  4. 【 FPGA 】组合逻辑中的竞争与险象问题(一)

    针对单输出的组合逻辑进行简单分析,而多输出的组合逻辑可分解为多个但输出的组合逻辑. 单输入的组合逻辑 对于一个简单的非门电路,它的输出将永远跟随输入变化,即使考虑到门延迟.线延迟的影响,输出波形最多也 ...

  5. 组合逻辑中的 竞争冒险问题

    目录 1. 竞争 逻辑冒险 功能冒险 1.1. 数字电路的 竞争问题 功能冒险 逻辑冒险 1.2. 测试仿真的 竞争问题 放大delta cycle 2. 判断冒险 2.1. 判断 功能冒险 2.2. ...

  6. 组合逻辑中的竞争与冒险

    1.概念 竞争(competition): 说法一:在组合逻辑中,信号由于经由不同路径达到输出端,由于每条途径延迟时间不同,达到输出门的时间就有先有后,这种现象就称之为竞争. 说法二:门电路的两个输入 ...

  7. 组合逻辑中的竞争与冒险现象

    实际的信号有一个上升和下降的过程 由于信号在变化过程中,不会瞬间立刻发生变化,要经过一个过渡过程 当输入的A的信号已经到达高电平,可是我们发现B的信号还没有降到低电平,在这一段时间内,输出还是为高电平 ...

  8. 【数字逻辑】学习笔记 第四章 Part2 常用组合逻辑电路与竞争、险象

    文章目录 一.常用组合逻辑电路 1. 译码器 (1) 二进制译码器 74LS138(3/8译码器) a. 一般符号和图形符号 b. 74LS138功能表 c. 两片 `74LS138` 构成 `4-1 ...

  9. FPGA中的竞争冒险消除

    目录 竞争冒险消除 1.竞争与冒险 1.1 竞争 1.2 冒险 1.3 竞争与冒险的关系 1.4 检查竞争冒险的方法 1.5 消除竞争冒险的措施 2.毛刺 2.1 毛刺产生的原因 2.2 毛刺产生的条 ...

最新文章

  1. 流程控制关键字——跳转结构
  2. Linux信号实践(3) --信号内核表示
  3. JDK8新特性之方法引用
  4. Angular问题03 @angular/material版本问题
  5. MVC3 URL 数据绑定
  6. vscode统计代码行数,前端开发配置、快捷键使用
  7. jupyter新建文件_初学jupyter,运行,下载,上传导入文件
  8. quarts集群 运维_Quartz.Net分布式运用
  9. 博客园 使用锚和书签制作目录
  10. jdbc odbc连接mysql_具体说明JDBC连接数据库与ODBC连接数据的区别
  11. KALI2021安装teemo的一些问题
  12. 苏州旅游骗局黑幕经历
  13. python爬虫(十三)selenium(Selenium入门、chromedriver、Phantomjs)
  14. Adobe Photoshop 2021 22.1.1.138中文版(win/mac)
  15. 100+大屏模板免费领!葡萄城BI行业应用方案重磅发布!
  16. 打开VB开发工具提示:Imagelist来自mscomctl.ocx控件出错,可能是mscomctl.ocx过期,解决方法...
  17. Unity制作一套自定义选择题试卷
  18. win7系统安装sql server 2000 图解全过程
  19. 云教学服务器系统软件多少钱,LanStarMaxi多机房云教学管理平台
  20. carbondate mysql_CarbonData集成Hive、Spark

热门文章

  1. 伺服驱动器接线怎么画_百格拉伺服驱动器维修常见故障现象及处理方法
  2. h3c交换机限制端口访问_H3C交换机端口限速和流量监管典型配置指导
  3. phppage类封装分页功能_封装page分页类
  4. 两张照片重叠处半透明_全面解读超焦距,让你的风景照片更锐更清晰
  5. 异形隔离java剧情_异形隔离攻略 系统上手教程 全剧情流程图文攻略(41)
  6. php 获取所有表,php – 获取所有插件的列表
  7. 2021年春季学期-信号与系统-第七次作业参考答案
  8. 实验台通用继电器接口
  9. 2020春季学期作业提交统计处理
  10. opencv4 c++ 提取图片中的白色区域_修正!【从零学习OpenCV 4】分割图像——分水岭法...