专题一:时序逻辑电路的分析和设计
说明:由于CSDN文本限制,反变量均写为`X(注意X前面有`);内容、图片可能不完全显示,原版word文档请点击更多文章。
链接:https://pan.baidu.com/s/1jJhtwqE 密码:w208
一、时序逻辑电路的基本分析方法
1.基本步骤
Step 1:写出各触发器的控制函数(又称驱动方程);
Step 2:结合各类型触发器的特性方程和控制函数写出各触发器的状态方程;
Step 3:若电路有输出变量,则写出电路的输出函数;
Step 4:根据触发器的状态方程作状态转换表;
Step 5:根据状态转换表做出状态转换图;
Step 6:根据题目要求,若有要求画出时序波形图,则根据状态转换表并结合触发器触发方式画出时序波形图;
Step 7:观察状态转换图得到时序逻辑电路的功能;
Step 8:最后一步说明该时序逻辑电路能否自启动。
2.几个名词的含义
①触发器的控制函数(驱动方程)
例如对于JK触发器,特性方程为Qn+1= J`Qn+ `KQn
根据所给电路图,得到控制端的表达式(这里是JK)即为该触发器的控制函数。
②触发器的特性方程
描述触发器次态与现态的函数关系。
(几种触发器的特性方程见P271本章小结第4点)
③触发器的状态方程
将所得控制函数带入到触发器特性方程得到的结果。
④状态转换表
本质是真值表,其中输入变量为现态Q0n~Qmn(m=1,2,3, …),输出变量为次态Q0n+1~Qm n+1、输出变量Y。有几个触发器就有几个现态,几个次态变量(即m=触发器总个数)。
⑤状态转换图
描述现态到次态的转化过程,每个状态为一个圈,根据状态转换表连接各个圈。圈与圈之间用箭头连接,同时若有输入输出变量,则在箭头上方标上输入/输出。
⑥时序波形图
描述Q0~Qm随着CP脉冲变化情况的波形图(要注意触发器在上升沿还是下降沿有效)。
⑦自启动
无效状态间形成了循环,一旦某些干扰造成落入无效循环,那么再也回不到有效状态,也就不能正常工作了,具体判断方法见后。
3.结合例题应用上述步骤
eg. 见P283 [例5.1.1]
Step1:图中共有3个触发器FF0、FF1、FF2。结合电路连接可以得到:
对于FF0,J0 = Q2n K0 = Q2n
对于FF1, J1 = Q0n K1= Q0n
对于FF0,J2 = Q1n K2 = Q1n
这样就得到了各个触发器的控制函数(驱动方程)。
Step2:本题全部使用JK触发器,特性方程为Qn+1 = J `Qn + `K Qn 从而得到5.1.5各触发器的状态方程。
Step3:图示有输出变量Y, 根据电路图可得到5.1.2的输出方程。
Step4:根据5.1.5和5.1.2得到表5.1.1状态表。
Step5:根据表5.1.1作出状态转换图。
000的下一个状态是001, 此时输出为1。则作从000到001的箭头,且无输入变量,输出变量为1,因此在箭头上方标上 /1;
再从001开始,从转换表来看,001的下个状态是001,此时输出为1。则紧接着在001后写下001,并作从001到011的箭头,在箭头上方标上/1;
再从011开始,011的下一个状态是111,此时输出为1。则在011后写下111,并作箭头,标上/1;
接下来类似,每次按照状态转换表,将现态与次态对应的状态写在一起,并用箭头连接,并在箭头上标上输入/输出,一直到状态100转化为状态000结束。
此时,构成了一个由6个状态形成的环,即为图5.1.3的 (a) 图。接下来,找到转换表上剩下的不在所画圈内的状态,同样按照上述步骤画图,得到(b)图。
Step6:时序波形图的画法见前章。注意本题触发器下降沿触发,且次态依赖于现态变化,从而得到图5.1.1的时序图。
Step7:观察状态转换图可知,该图的功能是构成十进制0、1、3、7、6、4的循环,形成一个模六计数器。
Step8:由图5.1.3的状态转换图可知,无效状态010、101间构成了死循环,因此该电路不能够自启动。
4.能否自启动的判断方法
对于计数器,我们记计数长度为N,电路用到的触发器个数为m。
①若N=2m,则该电路能够自启动;
②若N<2m,将不在圈内的余下N-2m个状态依次带入状态转换表,观察是否构成无效循环。若是,则不能自启动;反之可以自启动。
二、时序逻辑电路的基本设计方法
1.基本步骤
Step 1:明确设计电路功能,作出基于功能涉及到的所有编码排序的状态转换图;
Step 2:判断电路是否有输入或输出变量,并根据状态转换图画出状态转换表;
Step 3:根据状态转换表,分离出各触发器输出量Q0~Qm(m=1、2、3…)、输出变量Y的卡诺图并化简,得到各个触发器的状态方程;
Step 4:选用恰当的触发器(一般选用JK触发器),通过将每个触发器的输出量Qi变形并与所选触发器的特征方程比对,得到各触发器的控制函数;
Step 5:画电路图。根据选用的各个触发器的控制函数及输出函数,借助逻辑门电路连接电路图;
Step 6:根据状态转换图,判断所设计的电路能否自启动。
2.几个名词的含义
①编码排序
这里提到的编码排序是答题者根据题目要求的功能自行设计的编码,用二进制码表示,二进制位数由状态数确定。例如功能需要7个状态,则二进制位数设为3;需要15个状态,二进制位数设为4。
3.结合例题应用上述步骤
我们以P393 [题5.8]为例。
Step1:由于电路要求的功能以状态转换图的形式给出,因此第一步可以省略;
Step2:由状态转换图可知要设计的电路无输入与输出变量,得到状态转换表如下图所示:
Q2n |
Q1n |
Q0n |
Q2n+1 |
Q1n+1 |
Q0n+1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
X |
X |
X |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
X |
X |
X |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
Step3:由上图可分离出Q0n+1,Q1n+1,Q2n+1的卡诺图如图所示:
Q2n/Q1n Q0n |
00 |
01 |
11 |
10 |
0 |
1 |
1 |
1 |
X |
1 |
0 |
X |
0 |
0 |
Q0n+1
Q2n/Q1n Q0n |
00 |
01 |
11 |
10 |
0 |
0 |
1 |
1 |
X |
1 |
0 |
X |
1 |
0 |
Q1n+1
Q2n/Q1n Q0n |
00 |
01 |
11 |
10 |
0 |
0 |
0 |
1 |
X |
1 |
0 |
X |
1 |
1 |
Q2n+1
通过卡诺图并化简可得:
Q0n+1 = `Q2n
Q1n+1 = Q0n
Q2n+1 = Q1n
Step4:选用JK触发器(Qn+1 = J `Qn + `K Qn)
Q0n+1 = `Q2n= `Q2n(Q0n+`Q0n)= `Q2n `Q0n+`Q2nQ0n
因此对于FF0:J0 = `Q2n;K0 = Q2n
Q1n+1 = Q0n =Q0n(Q1n+ `Q1n)= Q0n`Q1n+ Q0n Q1n
因此对于FF1:J1 = Q0n ;K1= `Q0n
Q2n+1 = Q1n= Q1n (Q2n+`Q2n)= Q1n `Q2n+ Q1n Q2n
因此对于FF2:J2=Q1n;K2=`Q1n
Step5:画电路图。根据触发器状态方程得到如下图所示的电路,设计的电路为同步时序逻辑电路,所有触发器共用一个CP脉冲。
Step6:判断能否自启动。不在圈内的状态有010、101。他们之间构成了圈,如下图所示,因此该电路不能自启动。
010 101
三、需要注意的几点
①不论是时序逻辑电路的设计还是分析,都必须在最后加上对电路能否自启动的分析,对于不能自启动的,要把无效状态之间形成的环画出来后说明不能自启动;
②在设计时序逻辑电路时,画电路图要注意触发器的触发方式,是上升沿出发还是下降沿触发,且若为下降沿触发,需要再CP端画上小空心圆圈;
③所有专题都需要结合书本复习。
四、对应课后习题答案
注:下面提供的答案步骤与上述步骤有不符,但强烈建议同学们严格按照上述步骤解题,把每一步都写出来。
课本P393~P394
链接:https://pan.baidu.com/s/1jJhtwqE 密码:w208
再次感谢孙道清和徐德琴老师的指导!
作者:LeoHao
单位:安徽师范大学数学计算机科学学院