时序逻辑电路的分析和设计

专题一:时序逻辑电路的分析和设计

说明:由于CSDN文本限制,反变量均写为`X(注意X前面有`);内容、图片可能不完全显示,原版word文档请点击更多文章。

链接:https://pan.baidu.com/s/1jJhtwqE 密码:w208

<!-- 链接失效请发邮件至[email protected] -->

一、时序逻辑电路的基本分析方法

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)= `Q2`Q0n+`Q2nQ0n

因此对于FF0:J0 = `Q2n;K0 = Q2n

Q1n+1 = Q0n =Q0n(Q1n+ `Q1n)= Q0n`Q1n+ Q0Q1n

因此对于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

<!-- 链接失效请联系我 [email protected] -->

再次感谢孙道清和徐德琴老师的指导!

                     作者:LeoHao

                      单位:安徽师范大学数学计算机科学学院


猜你喜欢

转载自blog.csdn.net/u012321457/article/details/73277921