详细介绍竞争与冒险

这篇具有很好参考价值的文章主要介绍了详细介绍竞争与冒险。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1、竞争与冒险现象

2、如何判断是否具有竞争-冒险

2.1 代数法

 2.2 卡诺图法

2.3 观察法

2.4 实验法

3、消除竞争与冒险的方法

3.1 接入滤波电容,消除毛刺的影响

3.2 引入选通脉冲,避开毛刺

3.3 修改逻辑设计,增加冗余项消除逻辑冒险


1、竞争与冒险现象

        在组合电路中,某一输入变量经过不同途径传输后,到达电路中某一汇合点的时间有先有后,这种现象称竞争;由于竞争而使电路输出发生瞬时错误(尖峰脉冲)的现象叫做冒险。 或者说由于竞争产生的毛刺叫做冒险。

形式:

F=AA'  或  F=A + A'

观察以下门电路,Gate1为 非门,Gate2为 与门,实现了逻辑

竞争与冒险,数字IC秋招宝典,fpga开发,开发语言

 理想情况下输入与输出的关系为:

竞争与冒险,数字IC秋招宝典,fpga开发,开发语言

        但是由于门电路的输入到输出是一定会有时间延迟的,就会导致这个时间通常叫做电路的开关延迟,出现以下毛刺。(Gate1输入到输出有一定的延迟,导致 ~A信号就会滞后于A一段时间)

竞争与冒险,数字IC秋招宝典,fpga开发,开发语言

 ~A信号滞后于A一段时间就会导致尖峰脉冲的出现:

竞争与冒险,数字IC秋招宝典,fpga开发,开发语言

2、如何判断是否具有竞争-冒险

        判断电路是否存在竞争-冒险的方法主要有以下四种:

代数法、卡诺图法、观察法、实验法

2.1 代数法

        在逻辑函数表达式中,若某个变量同时以原变量反变量两种形式出现, 就具备了竞争条件。去掉其余变量(也就是将其余变量取固定值 0 或 1),留下有竞 争能力的变量,如果表达式为 F=A+A‘,就会产生 0 型冒险(F应该为1而实际却为0);如果表达式为 F=AA’, 就会产生 1 型冒险。

表达式 F=AB+A'C,当 B=C=1 时,F=A+A‘,在A发生跳变时,可能出现 0 型冒险

表达式F=(A+B)(A'+C),当B=C=0 时,F=AA',在A发生跳变时,可能出现 1 型冒险

F=A+A‘,产生负向尖峰脉冲:

竞争与冒险,数字IC秋招宝典,fpga开发,开发语言

 F=AA',产生正向尖峰脉冲:

竞争与冒险,数字IC秋招宝典,fpga开发,开发语言

 2.2 卡诺图法

        观察卡诺图中是否有两个圈相切但不相交的情况,如有则存在竞争-冒险的现象,如下图

F=AB+A'C

竞争与冒险,数字IC秋招宝典,fpga开发,开发语言

         如果B=C=1时,表达式就会变为 F=A+A‘ 产生竞争-冒险现象,下图两个圈不相切但不相交,无竞争-冒险现象。

竞争与冒险,数字IC秋招宝典,fpga开发,开发语言

2.3 观察法

        根据电路图,观察输入变量到达输出端的多个路径上经过的门电路器件的数量是否不同,如果不同,则有可能尝试竞争-冒险现象

2.4 实验法

        通过示波器进行观察

        实际上逻辑电路级数多、输入变量多,判断竞争冒险非常复杂,广泛采用仿真和实际测量逻辑电路来观察是否存在竞争冒险的现象。

3、消除竞争与冒险的方法

  •  接入滤波电容,消除毛刺的影响
  •  引入选通脉冲,避开毛刺
  • 修改逻辑设计,增加冗余项消除逻辑冒险

3.1 接入滤波电容,消除毛刺的影响

        利用电容的滤波作用,消去尖峰脉冲,简单易行,效果有保障,但增加了输出电压波形的上升时间和下降时间,使波形变坏。

竞争与冒险,数字IC秋招宝典,fpga开发,开发语言

例如:

        假设出现了 F=AA',产生了不应有的正向尖峰脉冲,那么再输出信号F前加一个电容后,这就会使得电容电压不可突变,当F中的电压发生突变时,由于电容的存在,将其变成一个充放电的过程,即电压突变就变成了一个缓慢的充放电过程,见下图。对于数字逻辑而言,高电平和低电平是一个允许的范围,所以这种方法对于逻辑工作而言,完全有保障,对于后级电路不会产生任何逻辑混乱

竞争与冒险,数字IC秋招宝典,fpga开发,开发语言

       不足之处,因为电容的滤波作用,增加了输出电压波形的上升时间和下降时间,使波形变坏,见下图,虽然波形不好看了,但整体上影响不是很大。

 竞争与冒险,数字IC秋招宝典,fpga开发,开发语言

3.2 引入选通脉冲,避开毛刺

        在输入信号变化,并有可能出现竞争冒险,选用一个选通信号将输出门封锁,等到所有输入信号都变为稳态后,再去掉封锁输出信号。这样就避免了电路输出端出现瞬时尖峰脉冲。

竞争与冒险,数字IC秋招宝典,fpga开发,开发语言

         就是在某一个时刻,A、A'信号变化之前,先让C=0,并让C保持一段时间,在这段时间内,让信号A、A'开始发生变化,且保持时间大于信号变化的时间,让信号稳定下来后将C=1,于是F得到没有毛刺的信号。接下来不断的重复C=0、C=1。

        该方法虽然消除了竞争-冒险,但也会带来一些电路的负担,或者说付出的成本。对选通控制信号的宽度(足够宽)和产生的时间(在C=0之前)严格要求,电路工作变复杂了

3.3 修改逻辑设计,增加冗余项消除逻辑冒险

        适当的逻辑表达式中增加一些冗余项,它们的增加不改变逻辑功能,但是可以消除互补信号产生的竞争-冒险现象。

例如

F=AB+A'C

竞争与冒险,数字IC秋招宝典,fpga开发,开发语言

        由表达式得到卡诺图,两个卡诺圈相切处即可产生竞争-冒险现象 F=A+A' (相切处B=1,C=1),那怎样增加冗余项呢?

        在相切处多画一个卡诺圈,将切点给覆盖掉,得到F=AB+A'C+BC,多了BC并不影响结果,此时当B=C=1时,F=A+A'+1=1。这意味这不管B、C怎么变,F恒为1,这样竞争-冒险就消失了。但电路会相对变得复杂。

竞争与冒险,数字IC秋招宝典,fpga开发,开发语言

 再举个较为复杂的例子:

竞争与冒险,数字IC秋招宝典,fpga开发,开发语言

 参考:

竞争与冒险_Crazzy_M的博客-CSDN博客_竞争与冒险

闫石  《数字电子技术基础》第六版 194页-199页文章来源地址https://www.toymoban.com/news/detail-787252.html

到了这里,关于详细介绍竞争与冒险的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 什么是竞争和冒险,如何消除?

    原文出处 竞争: 在组合电路中,信号经由不同的路径到达某一会合点的时间不一致的现象。 冒险: 由于竞争而引起电路输出发生瞬间错误,表现为输出端出现了理论上没有的窄脉冲。 1. 代数法:如果我们对电路化简后得到了 F = A+A\\\' 或者 F = A*A\\\' 的表达式,则电路中存在竞争

    2024年02月08日
    浏览(30)
  • 【数字 IC / FPGA】 有关建立/保持时间计算的思考

    最近准备一些数字IC的机试,刷到了一些有关静态时序分析的题目。有一些比较经典的题目,在这里整理分享一下。 有什么疑问可以在评论区交流~互相进步 假设时钟周期为Tcycle,Tsetup,Thold分别为触发器建立保持时间,为保证时需满足要求,需要满足什么样的时序关系?(T1~

    2024年02月06日
    浏览(34)
  • 【数字IC/FPGA】Verilog中的force和release

    在Verilog中,将 force 用于variable会覆盖掉 过程赋值 ,或者assign引导的 连续(procedural assign)赋值 ,直到 release 。 下面通过一个简单的例子展示其用法: 加法器代码 测试平台代码(主要用于产生激励) 如上所示,正常情况下,u_adder模块的a和b端口由testbench中的a和b信号驱动,

    2024年02月09日
    浏览(34)
  • 使用卡诺图判断竞争冒险现象的思路讲解

    竞争冒险现象发生在逻辑表达式中存在AA\\\'或者A+A\\\'时。 在逻辑门电路层面,A和A\\\'中间必然存在一个反相器带来的时间延迟。 展开来讲,在A的上升沿,当A从0跳至1时,A\\\'从1跳至0,但是后者会滞后于前者一个反相器的延迟时间,对于表达式AA\\\',该延迟会导致一小段时间内(这个

    2024年02月15日
    浏览(28)
  • 【面试】一文讲清组合逻辑中的竞争与冒险

    竞争的定义:组合逻辑电路中,输入信号的变化传输到电路的各级逻辑门,到达的时间有先后,也就是存在时差,称为 竞争 。 冒险的定义:当输入信号变化时,由于存在时差,在输出端产生错误,出现了 瞬时的干扰脉冲 现象,称为冒险(险象)。 通过上面的定义可以得出

    2024年02月11日
    浏览(27)
  • 【数字IC/FPGA】百度昆仑芯手撕代码--累加器

    已知一个加法器IP,其功能是计算两个数的和,但这个和延迟两个周期才会输出。现在有一串连续的数据输入,每个周期都不间断,试问最少需要例化几个上述的加法器IP,才可以实现累加的功能。 由于加法器两个周期后才能得到结果(再将该结果作为加法器的输入进行累加

    2024年02月09日
    浏览(29)
  • 【数字IC/FPGA】什么是无符号数?什么是有符号数?

    虽然在日常生活中,我们已经习惯了使用10进制数字,但在由数字电路构成的数字世界中,2进制才是效率更高的选择。 10进制(decimal)计数法(一般也叫阿拉伯计数法)是在日常生活中使用得最多的一种计数法,它是一种 位值记数法 (positional notation)。位值计数法的意思是

    2024年04月09日
    浏览(33)
  • 应届生谈薪技巧和注意事项,怎么为自己多争取1~2k(FPGA,芯片谈薪,数字IC,嵌入式,模拟IC,FPGA探索者)

      找工作的终极目标:谈薪!谈高薪!今天【FPGA探索者】给大家分享一下谈薪的技巧和注意事项,别被HR轻易压价。   本文适用人群: 应届毕业生 。 FPGA探索者 FPGA+数字IC笔试面试,无线通信物理层及数字信号处理,半导体芯片行业求职,校招社招实习,职场趣事,行业动

    2024年01月25日
    浏览(47)
  • 数字IC前端设计流程及详细解释

    数字前端以设计架构为起点,以生成可以布局布线的网表为终点。 使用设计的电路实现想法,主要包括:基本的RTL编程和仿真。前端设计还可以包括 IC系统设计、前仿真波形验证、综合、STA、FM验证。其中 IC系统设计最难掌握,它需要多年的IC设计经验和熟悉那个应用领域,

    2024年02月06日
    浏览(35)
  • 【FPGA/数字IC】Multiport RAM,多读多写寄存器-——基于FPGA BRAM的多端口地址查找表与FPGA BRAM的资源分析

    目录 背景 手写Multiport Ram Multiport RAM 代码方案 资源评估 Multiport RAM 资源利用的优化 资源评估 防止读写冲突的组合逻辑设计(写优先) 仿真和时序 单口写数据 单端口读数据 多口读相同数据 多口同时读不同数据 背景         在多端口交换机的设计中,交换机的每个端口

    2024年04月26日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包