异步时序电路的设计方法
时序电路的设计方法的基本步骤已经在 【 同步时序电路的设计方法 】 一文中介绍,本篇将直接从例题开始分析
分析举例
【例】设计一个异步时序电路,要求如图所示状态转换图
【解】
思路:采用异步方案,为了直观清楚,需根据状态转换图画出对应的时序图,然后从翻转要求出发,为每个触发器选择合适的时钟信号
选择时钟脉冲的基本原则:凡是要翻转的触发器都能够获得相应的时钟触发沿,且触发沿越少越好
-
Step1:选触发器,求方程
-
选触发器:用到 3 位二进制代码,故选用 3 个 触发器(这里选用 CP 上升沿触发 D 触发器),分别用 F F 0 、 F F 1 、 F F 2 FF_0、FF_1、FF_2 FF0、FF1、FF2 表示
-
输出方程:
根据状态转换图用卡诺图求输出方程
-
时钟方程(异步时序电路的关键):先根据状态转换图画出时序图,再根据翻转条件选脉冲
根据翻转条件选脉冲
- F F 0 FF_0 FF0 :每来一个 C P ↑ CP↑ CP↑ 翻转一次,选 C P CP CP 作为时钟脉冲
- F F 1 FF_1 FF1 :在 C P 2 ↑ CP_2↑ CP2↑ 和 C P 4 ↑ CP_4↑ CP4↑ 时刻翻转,选 Q 0 ‾ \overline{Q_0} Q0 作为时钟脉冲
- F F 2 FF_2 FF2 :在 C P 4 ↑ CP_4↑ CP4↑ 和 C P 6 ↑ CP_6↑ CP6↑ 时刻翻转,选 Q 0 ‾ \overline{Q_0} Q0 作为时钟脉冲
C P 0 = C P ( C P ↑ ) CP_0=CP(CP↑) CP0=CP(CP↑)
C P 1 = C P 2 = Q 0 ‾ ( Q 0 ‾ ↑ , Q 0 ↓ ) CP_1=CP_2=\overline{Q_0}(\overline{Q_0}↑,Q_0↓) CP1=CP2=Q0(Q0↑,Q0↓)
-
状态方程:画出次态卡诺图,再拆分开,由拆分卡诺图求状态方程
注意:要把没有时钟信号的次态也作为约束项处理,以利于状态方程的化简
F F 2 FF_2 FF2 在 C P 2 ↑ CP_2↑ CP2↑ 保持,在 C P 4 ↑ CP_4↑ CP4↑ 和 C P 6 ↑ CP_6↑ CP6↑ 时刻翻转, C P 1 、 C P 3 、 C P 5 CP_1、CP_3、CP_5 CP1、CP3、CP5 没用,当作约束项处理
F F 1 FF_1 FF1 在 C P 2 ↑ CP_2↑ CP2↑ 和 C P 4 ↑ CP_4↑ CP4↑ 时刻翻转,在 C P 6 ↑ CP_6↑ CP6↑ 保持, C P 1 、 C P 3 、 C P 5 CP_1、CP_3、CP_5 CP1、CP3、CP5 没用,当作约束项处理
由于 Q 0 Q_0 Q0 受时钟信号 C P CP CP 控制,所以按照普通卡诺图拆分方法即可
-
驱动方程
D触发器特性方程: Q n + 1 = D Q^{n+1}=D Qn+1=D
-
-
Step2:画电路图
-
Step3:检查电路能否自启动
电路能从无效状态返回有效状态,能自启动
【 数字电子基础 专栏的文章 均有参考 《数字电子技术/数字逻辑电路》 课程视频 】