您好,欢迎访问三七文档
竞争冒险原理(一)一般竞争冒险的产生及消除1.理论上分析组合逻辑电路时,都没有考虑门电路的延迟时间对电路产生的影响。实际上,从信号输入到输出稳定都需要一定的时间。由于从输入到输出的过程中,不同通路上门的级数不同,或者门电路平均延迟时间的差异,使信号从输入经不同通路传输到输出级的时间不同。由于这个原因,可能会使逻辑电路产生错误输出。通常把这种现象称为竞争冒险。2.竞争冒险现象有两种情况,分别是0型竞争冒险现象和1型竞争冒险现象。(1)0型竞争冒险现象如下图所示:图12-10型竞争冒险电路图图12-2波形图输出函数AAL,在电路达到稳定时,即静态时,输出L总是1。然而在A变化时(动态时),从图12-2可见,在输出L的某些瞬间会出现0,即当A经历1变0的变化时,L出现窄脉冲,即电路存在静态0型竞争冒险现象。或门G2的两个输入信号分别由G1和A端两个路径在不同时刻到达的现象,通常称为竞争,由此产生输出干扰脉冲的现象称为冒险。(2)1型竞争冒险现象如下图所示:图12-31型竞争冒险电路图图12-4波形图输出AAL,在电路达到稳定时,即静态时,输出L总是0。然而在A变化时(动态时),从图12-4可见,在输出L的某些瞬间会出现1,即当A经历0变1的变化时,L出现窄脉冲,即电路存在静态1型竞争冒险现象。3.总结当电路中存在由反相器产生的互补信号,且在互补信号的状态发生变化时可能出现竞争冒险现象。4.消除竞争冒险的方法(1)发现并消掉互补变量例如,函数式))((CABAF,在B=C=0时,可得AAF。若直接根据这个逻辑表达式组成逻辑电路,则可能出现竞争冒险。可以将函数式化为BCBAACF,根据这个表达式组成逻辑电路就不会出现竞争冒险。(2)增加乘积项例如,函数式CBACL,当A=B=1时,可得CCL,根据这个逻辑表达式组成逻辑电路,则可能出现竞争冒险。我们可利用代数恒等式将L化为ABCBACF,根据这个表达式组成逻辑电路就不会出现竞争冒险。(3)输出端并联电容器如果逻辑电路在较慢的速度下工作,为了消去竞争冒险,可以在输出端并联一个电容器,其容量为4~20Pf之间,它对于很窄的负跳变脉冲起到平波的作用,这时在输出端就不会出现逻辑错误。(二)在CPLD中模拟竞争冒险的产生由于普通门电路的传输时延只有几十个纳秒,而且竞争冒险产生的脉冲很窄,用普通的示波器无法看清楚,要看到竞争冒险现象,就需要精度很高的示波器。如果用普通的硬件电路做的话,由于电路的分布电容和其它干扰,使得本来就很窄的脉冲被积分掉了,考虑到一般情况,我们采用可编程逻辑器件来做此实验。它的原理见图12-2所示。图12-5竞争冒险原理图要做此实验就要使用可编程逻辑器件及其相关软件的使用。这方面的知识可以参照本实验指导书的可编程逻辑器件实验部分。在此我们使用MAX+plusII软件的仿真功能,来观察使用D触发器做分频时产生的竞争冒险现象。需要说明的是,在本实验中我们没有做基本门电路产生的竞争冒险。我们做的是组合逻辑电路使用时产生的竞争冒险。它们的原理都相似,都是由于器件的时延引起的,都会造成一定的危害。图12—6仿真分析从仿真分析中能清楚的看到,在2分频,4分频,8分频,16分频时,都有一定的传输时延,虽然只有几个或十几个纳秒,但分频的次数比较多,就可能造成影响。下图是器件的传输时延分析图:图12—7传输时延分析从传输时延分析图中我们可以看出,第一次分频即2分频时,有8纳秒的时延,第二次分频即4分频时有17纳秒的时延,第三次分频即8分频时有26纳秒的时延,第四次分频即16分频时有35纳秒的时延。这样如果有很多级的分频,时延就会更多。由以上分析可知,竞争冒险产生的原因是D触发器分频引起的时延,如何消除这种竞争冒险呢?我们采用同步触发的方式就可以消除。因为在上面的原理图中,我们采用的是异步触发的方式,即每一个触发器都是单独翻转的。如果采用所有的触发器同时翻转就可以消除这种竞争冒险。三、实验步骤1、运行MAX+plusII软件,学习其基本用法(本实验也可以在学习了PLD实验后再做)。2、在MAX+plusII软件中按照图12-5输入原理图,并编译,下载。3、使用MAX+plusII软件的仿真功能,观察分频时的延时。4、使用MAX+plusII软件的时序分析功能,观察各级分频之间的时延。四、实验报告要求1、在MAX+plusII软件中观察实验现象,并找出产生这种现象的原因。2、通过本实验,你对竞争冒险有什么样的认识?并写一篇学习报告。3、思考:将原理图进行管脚分配,输入一定频率的波形,你能观察到什么实验现象?
本文标题:竞争冒险原理
链接地址:https://www.777doc.com/doc-621717 .html