参考视频:B站up主新手小牛
设计同步时序逻辑电路发现一种挂起的状态,这个状态下电路不能通过有限个状态进入到有效状态。
如何修复它使其恢复自启动呢?
以下面这个图举例
可以分析得到激励方程
J
2
=
Q
1
Q
0
J_2=Q_1Q_0
J2=Q1Q0,
K
2
=
Q
1
Q
0
‾
K_2=Q_1\overline{Q_0}
K2=Q1Q0
J
1
=
1
J_1=1
J1=1 ,
K
1
=
Q
2
Q
0
‾
‾
K_1=\overline{Q_2\overline{Q_0}}
K1=Q2Q0
J
0
=
Q
1
‾
J_0=\overline{Q_1}
J0=Q1 ,
K
0
=
Q
2
K_0=Q_2
K0=Q2
得到状态表如下
总结状态图如下:
发现出现了两个状态不太一样,像这样的状态就是挂起。
怎么办?
比如我希望100状态的次态变为110,那么就要修改
Q
0
n
+
1
Q_0^{n+1}
Q0n+1,把变成110之后的的卡诺图画出,可以推出新的激励方程如下:
Q
0
n
+
1
=
Q
2
‾
Q
0
+
Q
2
‾
Q
1
‾
Q
0
‾
Q_0^{n+1}=\overline{Q_2}Q_0+\overline{Q_2}\ \overline{Q_1}\ \overline{Q_0}
Q0n+1=Q2Q0+Q2 Q1 Q0
J
0
=
Q
2
‾
Q
1
‾
J_0=\overline{Q_2}\ \overline{Q_1}
J0=Q2 Q1 ,
K
0
=
Q
2
K_0=Q_2
K0=Q2
可以看出
J
0
J_0
J0多了一个
Q
2
‾
\overline{Q_2}
Q2这样就会消除挂起,那么原图就可以修改为将
Q
2
‾
\overline{Q_2}
Q2连接到
J
0
J_0
J0位置