时序电路的描述之米利模型、摩尔模型、状态转换图、状态转换表、两种基本模型的转换

时序逻辑电路:有记忆功能,输出不仅取决于当前的输入,还与信号历史有关的一类电路

同步时序逻辑电路:

①状态变化在一个统一的内部时钟信号下发生

②系统工作按时钟节拍进行(故又叫时钟驱动时序电路)

异步时序逻辑电路:

①状态变化在外部输入信号时发生

②系统工作由外部事件驱动(故又叫事件驱动时序电路)

【本文对时序电路的描述、状态化简等基本适用异步时序电路】

1  两种基本模型

时序电路状态:记忆单元的输出逻辑组合

时序电路基本框图如下

 $x_1$~$x_m$:电路的m个输入变量

 $z_1$~$z_n$:电路的n个输出变量

$y_1$~$y_r$:记忆电路的r个输出(状态变量)

$Y_1$~$Y_r$:记忆电路的r个输入

【引入时间概念】

时序电路的定时单位:两次驱动的间隔时间

当前时刻:某个间隔时刻$t_k$

次时刻:下一个间隔时刻$t_{k+1}$

当前时刻和次时刻的分界:驱动信号到来时刻

时序电路某当前时刻$t_k$内

 $x_1$~$x_m$:$t_k$时刻的当前输入

 $z_1$~$z_n$:$t_k$时刻的当前输出

$y_1$~$y_r$:$t_k$时刻记忆电路的输出,是$t_k$的现态

$Y_1$~$Y_r$:$t_k$时刻记忆电路的输入,是$t_{k+1}$次时刻记忆电路的输出

$y_i(t_{k+1})=Y_i(t_k)$

$t_k$时刻,$Y_1~Y_r$是时序电路的次态

时序电路的状态方程:$Y(t_k)=f_1[x(t_k),y(t_k)]$

($Y(t_k)$:电路在$t_k$时刻的次态)

时序电路的输出方程:$z(t_k)=f_2[x(t_k),y(t_k)]$

($z(t_k)$:电路在$t_k$时刻的当前输出)

$x(t_k)$:电路在$t_k$时刻的当前输入

$y(t_k)$:电路在$t_k$时刻的现态

【米利模型】$z(t_k)=f_1[$$x(t_k)$$,y(t_k)]$,$Y(t_k)=f_2[x(t_k),y(t_k)]$

【摩尔模型】$z(t_k)=f_1[y(t_k)]$,$Y(t_k)=f_2[x(t_k),y(t_k)]$

区别在于$t_k$时刻的输出$z(t_k)$是否包含$x(t_k)$

2  状态转换图、状态转换表

自动售货机:可投1元或5角,饮料1.5元一杯,多了要找零(投2元找5角)

 需要完成的功能:①记忆已投入的硬币数量

②根据硬币的数量确定是否送饮料找零

【1】米利模型

step1  输出状态(饮料、找零)

$Z_1=1$:输出饮料

$Z_2=1$:输出找零

所有输出:$Z_1Z_2=00,Z_1Z_2=10,Z_1Z_2=11$

step2  系统状态(记忆已投入硬币币值,最多只需记忆1元)

 $S_0$:已投入0元

 $S_1$:已投入5角

 $S_2$:已投入1元

step3  输入状态(投入0元、5角、1元)

 $X_1X_2=00$:投0元

 $X_1X_2=01$:投5角

 $X_1X_2=10$:投1元

 $X_1X_2=11$:不可能发生

step4  机器动作过程(同步时序电路中所有系统状态的变化或保持→在某个时钟脉冲驱动下动作)

 ①$S_0$:已投入0元

 $X_1X_2=00$:投0元,保持

 $X_1X_2=01$:投5角,进入$S_1$

 $X_1X_2=10$:投1元,进入$S_2$

②$S_1$:已投入5角

 $X_1X_2=00$:投0元,保持

 $X_1X_2=01$:投5角,进入$S_2$

 $X_1X_2=10$:投1元,输出$Z_1Z_2=10$,次时刻回到$S_0$

③$S_2$:已投入1元

 $X_1X_2=00$:投0元,保持

 $X_1X_2=01$:投5角,输出$Z_1Z_2=10$,次时刻回到$S_0$

 $X_1X_2=10$:投1元,输出$Z_1Z_2=11$,次时刻回到$S_0$

状态转换图(不适合状态个数多的复杂电路)

当前输入/当前输出 ($X_1X_2/Z_1Z_2$)

 "当前":状态转换线上标注输入/输出时刻=状态转换线流出状态的时刻

eg.当前时刻$t_k$系统在$S_2$,发生输入$X_1X_2=10$,$t_k$时刻输出$Z_1Z_2=11$,下一时刻$t_{k+1}$系统状态$S_0$

 状态转换表(适合状态个数多的复杂电路,可简洁地描述状态间转换关系)

【2】摩尔模型

 输出不直接和输入相关,仅同系统状态有关

摩尔模型动作过程,所有论及系统状态的变化或保持,都应该理解成某个时钟脉冲驱动下的动作

$S_0$:尚未输入

$S_1$:已输入5角

$S_2$:已输入1元

$S_3$:已输入1元5角

$S_4$:已输入2元

$X_1X_2=00$无输入,$X_1X_2=01$输入5角,$X_1X_2=10$输入1元

 

 【总结】系统状态特点

①状态转换图:每个状态射出的状态转换线数=系统输入的组合数,且转换条件包含所有输入组合。(可用来检查状态转换图的正确与否)

②摩尔模型(一个状态对应一个输出)状态数$\geq $米利模型(一个状态对应多个输出)状态数

3  两种模型的基本转换

无论用何种模型描述一个问题,相同的输入序列应得到相同的输出

 【两模型输出区别】

1.米利模型比摩尔模型提前一个时刻输出

2.摩尔模型输出在整个状态保持期间保持,米利模型由输入情况确定输出起始

3.输入有干扰,一般不影响摩尔模型输出,但会影响米利模型输出

【摩尔模型→米利模型】

(1)去掉摩尔模型状态转换表最后一列

(2)每个次态后加上输出(输出为该次态在原模型中输出)

(3)检查修改后的状态转换表,合并相同状态(去重)

 本例中$S_3,S_4$在所有输入组合情况下次态和输出与$S_0$一样,故$S_0,S_3,S_4$可合并

【米利模型→摩尔模型】

 关键:找到在米利模型中不出现的次态

米利模型中的状态可分为两类:

①输出同类状态:所有指向该状态的状态转换线有相同输出。

(可直接把所有指向该状态的状态转换线上输出,改写至表示状态的圆圈中)

②非同类状态:指向该状态的状态转换线有几个不同输出。

改写步骤:

a.指向输出非同类状态的状态转换线有几个不同输出,就把这个状态分成几个新状态;

一个新状态对应一个输出,写在表示新状态的圆圈中。

b.按不同输出,把原来状态转换线改成指向对应输出的新状态。

c.原来从输出非同类状态出发的所有状态转换线,在新状态中重新画出,其目的状态和原来一样。

 

posted @ 2022-12-18 20:41  asandstar  阅读(3443)  评论(0编辑  收藏  举报