后来这个问题我没什么兴趣了,唯一的可能就是,其实它启发了 编程里的 数据加锁
以避免冲突。
小弟最近做数字电路的基础实验。
其中被 组合逻辑竞争冒险现象 困扰
呃,我看过一些资料,但是,很多说的都是指一个变量的情形,那样子,可以通过简单的代数法或者卡诺图判断,并且通过修改冗余项,增加选通/锁定脉冲等方法较为容易地解决。
但是对于多个变量同时变化的情形,则没有提及或者一笔带过。
后来我在网上查了一些资料,到底还是在好到了一两个有用的,比较详细地提及了 多变量的情形。
但是,通过这些资料,对于它的判断我还是可以理解的——虽然当变量数目多了,情况会变得很复杂,但总是有思路,并且还可以通过计算机软件分析。
但是对于多变量的竞争冒险如何消除这个问题,则说的不太明白。
我心想,这会不会是它和单变量的消除方法是类似的——当然,多变量貌似是无法通过修改设计而获得解决的。
而后两种常用方法:
1 增加选通/封锁脉冲
此内容由EEWORLD论坛网友辛昕原创,如需转载或用于商业用途需征得作者同意并注明出处
2 通过增加滤波电容
这两个方法,相对来说,比如说增加脉冲,它对所增加脉冲的要求相当高。
而滤波电容容易破坏输出脉冲的陡峭边沿。
所以,这个问题想了有一段时间,到底没能解决,所以放在此,向各位请教!! 本帖最后由 辛昕 于 2018-5-3 16:39 编辑
很好的帖子呀,我没解决过
很好的帖子呀,我没解决过,也都是在书上看到的皮毛而已
回复 楼主 辛昕 的帖子
滤波电容容易破坏输出脉冲的陡峭边沿,你的干扰频率相对你的信号频率高很多吧,这样的话可以那一个电容虑一下,有效果的。我有一个16KHZ的方波,有尖峰干扰,示波器看的很明显,那一个小电容滤了一下,效果还是很明显的,你可以试一下
回复 楼主 辛昕 的帖子
从设计上要多一些冗余。卡诺图判断,并且通过修改冗余项-------可以通过加入任一项来解决,尽量来保证每个卡罗图的的圈有交点。
特别要消除0-1-0,1-0-1 形的冒险。 也就是拐角问题。冒险的本质是由于器件的逻辑延时不同造成的逻辑错误。
在特别要细心考察是不是有0-1-0,1-0-1 转换过程的冒险。
我的邮箱gaoxiaoan123@163.com!回帖是一种美德!互相帮助,共同进步!
口头禅:生活在于创造机会,把握机会!
回复 4楼 gaoxiao 的帖子
对于多变量的情形,也就是 功能冒险 也是这样吗?
你说的方法用于单变量的情形我是熟悉的。
回复 板凳 superwangyang 的帖子
呃,谢谢你的实战经验分享。
由于我手头的器材问题,我尚未用示波器实际揪着这个问题试验过,只是在看书,做定性验证试验后,在考虑的问题。
老是做经验,而不是做实际的东西,真的是一个巨大的错误,当年我师父就这么说,而今天,我也经常用这句话对别人说,做什么实验,学什么鬼基础,直接上手吧~~
引用: 但是对于多个变量同时变化的情形,则没有提及或者一笔带过。
为什么呢?
很多年后,我才明白了一个道理,因为这些问题,很可能是业界的前沿,或者说,是待解决的问题。
不过说起来,我现在,已经有了 示波器了~~
嗯嗯,从此,什么都能玩,如果有一个大学生现在问我,没有示波器怎么办,我一定会说去买一个吧。
如果没有钱,那就买 便宜的,优利德 也可以,普源也可以,不够钱么,不够钱就信用卡吧~~
当然我听说现在学生不让申请了,那,诶,那就用点其他办法吧。
比如说一个虚拟示波器,对,它的频带是低一点,可他的价格很便宜,也许只需要三四百,对,它只能看到几百K的信号,那你就看几十 k 几K的信号咯......
就像我想用一个1000的优利德或者40块的 虚拟逻辑分析仪去测MCU的时钟级速度,那我就分频咯......