|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
上篇博文:组合逻辑中的竞争与险象问题(二)讲了半开关的相关知识,更确切的说是竞争的根源问题。这篇博文将险象问题。
n) I! r9 T2 z) s; H. h. d3 V, q8 E8 a5 h' }
+ W! V+ @7 j9 l* x/ w) H
险象的定义
9 d7 M" h- v" o8 p K/ E* K7 T
4 y2 {, ^- n# ~
; i* X* z' w8 { N有竞争引起的非预期行为就叫做险象。0 K8 K+ a8 ^1 J. Y- V1 a
8 K; a: M# X9 r: N
% A U5 Z }+ t8 ]5 n. s7 |/ {! w
可见,竞争是险象的前提。但是竞争就一前提的存在,并不一定会引起险象,什么样的竞争会引起险象呢?% s* @5 M! g: `( y3 \& ~2 K
$ F! N% @; Q; I) ~/ g
+ I& W; L' c' ` m1 d3 v: k
下面对此进行分析:
/ L ]# m8 e0 D
4 _6 V% b4 J6 Y* B% y; P/ X
; v) L9 y& G- B e8 p半开关是竞争产生的根源因此要找到竞争与险象的关系,只需要仔细分析一下与门半开关和或门半开关到底在什么情况下会出现非预期的行为即可。
% D! q# X$ v/ r' T
3 Z7 T! T' q9 S% _1 ~9 M4 j9 F3 V1 l" | h9 \% w; n' S+ l
现假设某半开关的所有端口都直接或间接的与组合逻辑的输入端口A相关,那么,从逻辑上来说,这个与(或)门的M个输入不是与A相连就是与相连,此时若A发生变化时,相当于该与门的M个输入分别取反,只不过由于路径延迟导致取反效果的时间不同罢了,因此可以分为下面三种情况讨论。/ {: d0 }6 C* e x
& m5 ?- m( K! ]0 C
: s3 k# _$ V+ J6 @: k. h(1)M个输入全部由0变为1
0 W% m7 ]5 `4 V6 N) f6 c0 O1 K9 a4 X
$ k6 a* ^3 S; A' E- b' S- u
! }# r, j* U9 {- \6 P d$ j, j D3 _9 k) D
; O; g+ G/ S3 [* ^; B! k
|
|