3.6 时序逻辑电路的分析
什么是时序电路?
任意时刻电路的输出信号不仅取决于当时的输入信号,而且还取决于电路原来的状态,或者说还与以前的输入有关,这样的电路称为时序电路。
从结构上来说,时序电路有两个特点:第一,时序电路往往包含组合电路和存储电路两部分,而存储电路是必不可少的;第二,存储电路输出的状态必须反馈到输入端,与输入信号一起共同决定组合电路的输出。时序电路的方框图可画成如图3-39所示的普遍形式。图中的X(x1,x2,…,xi)代表输入信号,Y(y1,y2,…,yj)代表输出信号,Z(z1,z2,…,zk)代表存储电路的输入信号,Q(q1,q2,…,ql)代表存储电路的输出。这些信号之间的关系可以用三个向量函数来表示:
图3-39 时序电路的方框图
Y(tn)=F[X(tn),Q(tn)] (3-6)
Q(tn+1)=G[X(tn),Q(tn)] (3-7)
Z(tn)=H[X(tn),Q(tn)] (3-8)
式中,tn、tn+1表示相邻的两个离散时间。存储电路的输出Q称为状态向量。
式(3-6)称为输出方程,式(3-7)称为状态方程,式(3-8)称为驱动方程。
1.同步时序逻辑电路的分析
如图3-40所示为某同步时序逻辑电路,能够看到它是由JK触发器和基本逻辑门组成的,如何了解它的逻辑功能?
图3-40 某同步时序逻辑电路
同步时序电路和异步时序电路
根据存储电路(即触发器)状态变化方式的不同,时序电路分为同步时序电路和异步时序电路两大类。在同步时序电路中,所有存储单元状态的变化都是在同一时钟信号操作下同时发生的。而在异步时序电路中,存储单元状态的变化不是同时发生的。在异步时序电路中,可能有一部分电路有公共的时钟信号,也可能完全没有公共的时钟信号。
从图3-40可看出,FF1、FF2和FF3为下降沿触发的JK触发器,根据逻辑电路列出驱动方程:
将式(3-9)的驱动方程代入JK触发器的特性方程中去,得到电路的状态方程为:
由逻辑图直接写出输出方程:
Y=Q2Q3 (3-11)
从输出方程和状态方程大多无法直接看出电路的逻辑功能,因此还需要列出对应的状态转换表或状态转换图。
根据式(3-10)和式(3-11),从初态Qn3Qn2Qn1=000开始计算次态,按状态转换的顺序列入表3-13,可以发现当状态转换到“110”时,在CP脉冲作用下,次态直接恢复到“000”,状态转换发生了循环。
在初态的序列中,唯独“111”状态没有出现,因此,需要在状态转换表中另外补充计算初态Qn3Qn2Qn1=111时状态的转换顺序,如表3-13所示。因状态变化已有重复,所以不再往下计算。
表3-13 图3-40电路的状态转换
根据状态转换表可以画出更为直观的状态转换图,如图3-41所示,状态转换图表述了在CP脉冲作用下电路的状态变化和输出值变化。我们可以根据图例的描述清晰地把状态转换图与状态转换表对应起来。图3-41的圆圈中填写的是Qn3Qn2Qn1的状态,状态转变同时输出Y的变化同样表述在图中斜线下方(斜线上方标注输入信号状态,本电路无外输入信号,时钟信号只是触发控制信号,不是输入逻辑变量)。对Qn3Qn2Qn1的八种状态而言,有七种都会在电路中出现,并且顺序变化产生循环,因此电路对时钟信号有计数功能,计数容量为7,即N=7,这个电路又称七进制计数器。对Qn3Qn2Qn1=111这一状态,在CP脉冲的作用下,能自动进入有效状态的循环中,称其为可自启动状态。
时序电路的功能不仅能通过公式计算获得,也可以利用示波器观察电路状态,记录下波形图来了解。图3-40电路的时序图如图3-42所示,状态的周期循环一目了然。
图3-41 图3-40电路的状态转换
图3-42 图3-40电路的时序图
2.异步时序逻辑电路的分析
如图3-43所示为某异步时序逻辑电路,下面来看看能否用与同步时序逻辑电路类似的方法了解它的逻辑功能?
图3-43 某异步时序逻辑电路
从图3-43可看出,FF0、FF1、FF2和FF3为下降沿触发的JK触发器,根据逻辑电路列出驱动方程:
将式(3-12)的驱动方程代入触发器的特性方程中去,得到电路的状态方程为:
因电路为异步触发,所以还需要列出CP时钟方程。从图3-43看到,FF1和FF3的时钟信号均从FF0的输出Q0端引入,FF2的时钟信号从FF1的输出Q1端引入,由此列出时钟方程,如式(3-14)所示,信号在下降沿有效。
根据式(3-13)和式(3-14),从初态Qn3Qn2Qn1Qn0=0000开始计算次态,并绘制时序图。
对异步时序逻辑电路的分析从与外部时钟直接连接的触发器开始,如图3-44所示,在CP脉冲作用下,FF0的输出信号Q0在脉冲下降沿发生状态翻转;Q0的波形下降沿信号将直接送到FF1和FF3,由FF1的状态方程分析,知在Qn3=0时,,因此,在图3-44中的①、②、③、④点,Q1发生状态翻转。,因此在Q1的波形下降沿即②、④点,Q2发生状态翻转。而在FF3的状态方程中,Qn+13=,只有在Qn2=1且Qn1=1时,Qn+13才会翻转为高电平,因此,在图中的①、②、③点,虽然FF3有触发信号,但只有在④点才满足条件,Qn+13=1;在下一个Q0波形的下降沿来临时(即⑤点),Qn3=1的信号作用在FF1的输入端,令Qn+11=0;此时Qn+13也由于Qn2=0和Qn1=0而将状态翻转为0;而FF2此时无脉冲信号,状态不改变。从时序图可以看到,当Qn3Qn2Qn1Qn0=1001时,下一个CP脉冲将使所有输出为0,电路状态发生循环。因此,如图3-43所示电路为十进制异步计数器。
图3-44 图3-43时序逻辑电路的时序图
根据时序图列出状态转换表,如表3-14所示。Qn3Qn2Qn1Qn0的“1010”,“1011”,“1100”,“1101”,“1110”,“1111”六个状态并未在时序图中反映出来,因此,在状态转换表中以初态的形式进行计算,并将结果列入状态转换表中。可以看到在CP脉冲的作用下,六个状态最终都能进入有效状态的循环。根据状态表画出的状态转换图如图3-45所示。图3-43电路中没有输入信号和输出信号,因此,状态转换图中不需标注输入、输出的状态变化。
图3-45 图3-43电路的状态转换
表3-14 图3-43逻辑电路的状态转换表
通过上述案例的分析,可总结出时序逻辑电路的分析步骤如下:
(1)根据给定逻辑电路图写出驱动方程,即触发器输入信号的逻辑函数式,对异步时序电路还需列出CP脉钟方程。
(2)把驱动方程代入触发器的特性方程,求出各触发器及其他电路的输出方程。
(3)进行计算,列出状态转换表,或画出时序图和状态转换图,确定电路的逻辑功能。