在本章开头时已经讲过,电位异步电路的输入信号是电位,电位异步电路中的记忆元件一般采用带反馈的门电路。电位异步电路的电路状态的改变是由外部输入电平的跳变直接引起的,其电路结构如图7-12所示。
图7-12中的“?”是由电路中的门电路工作时产生的延迟,称X为输入信号,Z为输出信号,Y为激励信号,y为二次信号。
为了使电位异步电路能正常工作且保证其状态变化可以预测,在电位异步电路中不允许两个或多个输入电平同时发生变化。例如,有两条输入信号线,则它的变化可以是00→01→11→10,而不可以是00→11或10→01,而且要保证在第一次电平跳变所引起的电路响应完全结束后,再发生第二次电平的跳变。
图7-12 电位异步电路结构图
在分析电位异步电路时,常常用到流程表。流程表是用来表示输入X和y与输出Y和Z之间的关系的表格。在后面的例题中会进一步学到。
电位异步电路中的电路状态分为稳定状态和不稳定状态两种。
当(y1y2…)=(Y1Y2…)时,只要输入信号不发生变化,电路状态就一直保持下去,称电路处于稳定状态;
当(y1y2…)≠(Y1Y2…)时,电路处于不稳定状态。
下面分别来介绍电位异步电路的分析和设计方法。
分析电位异步电路一般有如下步骤:
(1)根据逻辑电路图写出输出和激励信号的表达式。
(2)作出状态流程表。
(3)作出电路的工作波形图。
(4)简要说明电路的逻辑功能。
通过例题来学习电位异步电路的分析过程。
【例7-5】 分析如图7-13所示的电位异步电路。
解:将图7-13改画为图7-14的形式。
图7-13 电位异步电路逻辑电路图 图7-14 改画后的电位异步电路逻辑电路图
① 由电路图可以写出输出Z和激励信号Y的函数表达式为:
Z=Y=X1X2+X2y
② 作出电路的状态流程表。
先列出电路的状态转换真值表,如表7-9所示。根据表7-9,可以画出该电路的流程表如图7-15所示。
下面来解释一下流程表的含义。它以卡诺图的形式反映输入X1X2、y与输出Y、Z的关系。由流程表可以看出电路的稳定性情况。当X1X2的值为00、01、11且y=0时,y=Y,所以这三种情况是稳定状态;当X1X2的值为01、11、10且y=1时,y=Y,所以这3种情况也是稳定状态;将稳定状态用圆圈表示出来。可见剩下的两种情况y≠Y,所以不是稳定状态。
表7-8 电位异步电路状态转换真值表
输 入 |
输 出 |
输 入 |
输 出 | ||||||||
X1 |
X2 |
y |
Y |
Z |
X1 |
X2 |
y |
Y |
Z | ||
0 0 0 0 |
0 0 1 1 |
0 |
0 0 0 1 |
0 0 0 1 |
1 1 1 1 |
0 0 1 1 |
0 1 0 1 |
1 1 0 1 |
1 1 0 1 | ||
1 | |||||||||||
0 | |||||||||||
1 | |||||||||||
(Y) (Z)
图7-15 电位异步电路流程表
③ 根据流程表作出工作波形图。假设X1X2的状态变化为:
01→11→10→11→01→00→01
当X1X2=01时,假设初始条件y=0,由流程表可知Y=Z=0,是稳定状态。
当X1X2=11时,y仍为0,状态转至Y=Z=0,仍是稳定状态。
当X1X2=10时,y=0,状态转至Y=Z=1,由流程表可知,此时不是稳定状态,经过?t延迟后,y=Y=1,转至下一个稳定状态。
当X1X2=11时,y为1,状态转至Y=Z=1,仍是稳定状态。
当X1X2=01时,y仍为1,状态转至Y=Z=1,仍是稳定状态。
当X1X2=00时,y仍为1,状态转至Y=Z=0,此时是不稳定状态,经过?t延迟后,y=Y=0,转至下一个稳定状态。至此可以画出电路的整个工作波形图,如图7-16所示。
【例7-6】 分析如图7-17所示的电位异步电路。
解:① 根据电路图写出输出函数和激励函数的表达式为:
Y2=Xy1'
Y1=(X+y2)'
Z=X'y1
图7-16 电位异步电路工作波形图 图7-17 电位异位电路逻辑电路图
② 作出电路流程表。
先列出电路的状态转换真值,如表7-10所示。
表7-10 电位异步电路状态转换真值表
输入 |
输出 |
输入 |
输出 | ||||||||
X |
y2 |
y1 |
Y2 |
Y1 |
Z |
X |
y2 |
y1 |
Y2 |
Y1 |
Z |
0 0 0 0 |
0 0 1 1 |
0 1 0 1 |
0 0 0 0 |
1 1 0 0 |
0 1 0 1 |
1 1 1 1 |
0 0 1 1 |
0 1 0 1 |
1 0 1 0 |
0 0 0 0 |
0 0 0 0 |
由表7-10可以画出电路的流程表,如图7-18所示,并在表中用圆圈标出稳定状态。
图7-18 电位异步电路流程表
③ 作出电路的工作波形图。设电路的初始y2y1=10,X的变化为1→0→1,则根据流程表,可知:
当(X,y2y1)=(1,10)时,Y2Y1=10,输出Z=0,为稳定状态。
当X由1变为0时,状态转至(X,y2y1)=(0,10),这时激励信号Y2Y1=00,输出为0,为不稳定状态。所以经过延迟?t后,y2y1=Y2Y1=00,电路状态转至(X,y2y1)=(0,00)。此时Y2Y1=01,Z=0,仍为不稳定状态。所以再经过延迟?t后,y2y1=Y2Y1=01,电路状态转至(X,y2y1)=(0,01),此时Y2Y1=01,Z=1,电路处于稳定状态。
当X再由0跳变回1时,电路状态转至(X,y2y1)=(1,01),这时激励信号Y2Y1=00,输出为0,为不稳定状态。所以经过延迟?t后,y2y1=Y2Y1=00,电路状态转至(X,y2y1)=(1,00),此时Y2Y1=10,Z=0,仍为不稳定状态。所以再经过延迟?t后,y2y1=Y2Y1=10,电路状态转至(X,y2y1)=(1,10),此时Y2Y1=10,Z=0,电路处于稳定状态。
可以画出该电位异步电路的工作波形图,如图7-19所示。
图7-19 电位异步电路工作波形图
电位异步电路的设计过程一般为如下6个步骤:
(1)根据设计要求确定工作波形图或者输入输出信号的转移序列。
(2)建立原始流程表。
(3)状态化简。
(4)状态分配。
(5)确定输出和激励函数方程。
(6)画出逻辑电路图。
下面举例说明电位异步电路的设计过程。
【例7-7】 设计一个电位异步电路,它有两个电平输入端X1X2和一个输出端Z。当X1=0时,输出Z为0;当X1=1时,只有X2的第一次跳变才能使Z从0跳变到1。
解:① 建立信号序列。
当X1=0时,无论X2为何值,输出Z均为0。其信号序列X1X2/Z:
当X1=1时,X2跳变有两种情况。① X1X2的变化是由01→11→10→11→10…,Z的变化为0→0→1→1→1…。②X1X2的变化是由00→10→11→10…。Z的变化为0→0→1→1…。其信号序列为:
当X1由1跳变回0时,不论X2处于什么情况,Z均为0。最后得到的信号序列为:
② 作原始流程表。
首先作出原始流程表的稳定状态部分,如图7-20(a)所示,再写出不稳定状态部分,最后得到原始流程表如图7-20(b)所示。
(a)稳定状态部分 (b)不稳定状态部分
图7-20 电位异步电路原始流程表
③ 状态化简。
作状态隐含表如图7-21(a)所示,因为状态3、5及4、6均不等价,所以完成隐含表如图7-21(b)所示。
(a)初始隐含表 (b)完成隐含表
图7-21 电位异步电路状态隐含表
由隐含表可以将等价状态(1,6)(2,3)(4,5)分别用A、B、C来代替,可以将流程表化简为如图7-22(a)所示。
(a)化简前的流程表 (b)化简后的流程表
图7-22 电位异步电路化简流程表
④ 状态分配。
用A代表y1y2=00,B代表y1y2=11,C代表y1y2=01。可将流程表化为如图7-22(b)所示。
⑤求输出和激励函数的逻辑表达式。
用卡诺图化简输出和激励函数,如图7-23所示。
(a)Y1 (b)Y2 (c)Z
图7-23 卡诺图
得到化简后的输出和激励函数表达式为:
Y1=X1'X2+X2y1
Y2=X2+X1y2
Z=y1'y2
⑥ 画出逻辑电路图,如图7-24所示。
图7-24 电位异步电路逻辑电路图