第六章 异步时序逻辑电路第 六 章异 步 时 序 逻 辑 电 路第六章 异步时序逻辑电路异步时序逻辑电路中没有统一的时钟脉冲信号,电路状态的改变是外部输入信号变化直接作用的结果 。
根据电路结构和输入信号形式的不同,异步时序逻辑电路可分为 脉冲异步时序逻辑电路 和 电平异步时序逻辑电路两种类型 。
两类电路均有 Mealy型和 Moore型两种结构模型 。
第六章 异步时序逻辑电路
6.1.1 概 述一、结 构脉冲异步时序电路的一般结构如下图所示。
图中,存储电路可由时钟控制触发器或非时钟控制触发器组成。
6.1 脉冲异步时序逻辑电路第六章 异步时序逻辑电路二,输入信号的形式与约束
1.输入信号为脉冲信号 ;
2.输入脉冲的宽度必须保证触发器可靠翻转 ;
3.输入脉冲的间隔必须保证前一个脉冲引起的电路响应完全结束后,后一个脉冲才能到来 ;
4.不允许两个或两个以上输入端同时出现脉冲 。
对 n个输入端的电路,其一位输入只允许出现 n+1种取值组合,其中有效输入种取值组合为 n种 。
第六章 异步时序逻辑电路三、输出信号的形式脉冲异步时序逻辑电路的输出信号可以是脉冲信号也可以是电平信号 。
第六章 异步时序逻辑电路
6.1.2 脉冲异步时序逻辑电路的分析一、分析方法与步骤
1,分析方法脉冲异步时序逻辑电路的分析方法与同步时序逻辑电路大致相同 。
注意两点:
⑴ 当存储元件采用时钟控制触发器时,对触发器的时钟控制端应作为激励函数处理 。
仅当时钟端有脉冲作用时,才根据触发器的输入确定状态转移方向,否则,触发器状态不变 。
⑵ 根据对输入的约束,分析时可以排除两个或两个以上输入端同时出现脉冲以及输入端无脉冲出现情况,从而使图,表简化 。
第六章 异步时序逻辑电路
(4) 用文字描述电路的逻辑功能(必要时画出时间图)。
2,分析步骤
(1) 写出电路的输出函数和激励函数表达式;
(2) 列出电路次态真值表或次态方程组;
(3) 作出状态表和状态图;
第六章 异步时序逻辑电路二,分析举例例 分析下图所示脉冲异步时序逻辑电路,指出该电路功能。
&
第六章 异步时序逻辑电路
⑴ 写出输出函数和激励函数表达式解,该电路由两个 J-K
触发器和一个与门组成,
有一个输入端 x和一个输出端 Z,输出是输入和状态的函数,属于 Mealy型脉冲异步时序电路 。
&
Z = xy2y1
J2 = K2 =1 ; C2 = y1
J1 = K1 =1 ; C1 = x
第六章 异步时序逻辑电路
⑵ 列出电路次态真值表
J-K触发器的状态转移发生在时钟端脉冲负跳变的瞬间,
为了强调在触发器时钟端 C1,C2何时有负跳变产生,在次态真值表中用,↓” 表示下跳 。 仅当时钟端有,↓” 出现时,相应触发器状态才能发生变化,否则状态不变 。
J K Q(n+1)
0 0
0 1
1 0
1 1
Q
0
1
第六章 异步时序逻辑电路
⑶ 作出状态表和状态图根据次态真值表和输出函数表达式( Z = xy2y1),可作出该电路的状态表和状态图如下。
现态
y2 y1
次态 y2n+1y1n+1 / 输出 Z
x = 1
0 0 0 1 / 0
0 1 1 0 / 0
1 0 1 1 / 0
1 1 0 0 / 1
00 01
10110/0 0/0
0/0 0/01/0
1/0
1/0
1/1x/Z
第六章 异步时序逻辑电路
⑷ 画出时间图并说明电路逻辑功能 。
为了进一步描述该电路在输入脉冲作用下的状态和输出变化过程,可根据状态表或状态图画出该电路的时间图如下图所示 。
由状态图和时间图可知,该电路是一个 模 4加 1计数器,
当收到第四个输入脉冲时,电路产生一个进位输出脉冲 。
x
y1
y2
Z
第六章 异步时序逻辑电路一,方法与步骤
⒈ 方法,脉冲异步时序逻辑电路设计的方法与同步时序逻辑电路设计大致相同,主要应注意 两个问题 。
⑴ 由于不允许两个或两个以上输入端同时为 1( 用 1表示有脉冲出现 ),设计时可以作如下处理:
当有多个输入信号时,只需考虑多个输入信号中仅一个为 1的情况;
在确定激励函数和输出函数时,可将两个或两个以上输入同时为 1的情况作为无关条件处理 。
⑵ 当存储电路采用带时钟控制端的触发器时,触发器的时钟端应作为激励函数处理 。 设计时通过对触发器的时钟端和输入端综合处理,有利于函数简化 。
6.1.3 脉冲异步时序逻辑电路的设计第六章 异步时序逻辑电路
⒉ 步骤设计过程与同步时序电路相同,具体如下:
①
形成原始状态图
②
状态化简
③
状态编码
⑤
画逻辑电路图
④
确定激励函数和输出函数第六章 异步时序逻辑电路二、举例例 用 T触发器作为存储元件,设计一个异步模 8加 1计数器,电路对输入端 x出现的脉冲进行计数,当收到第八个脉冲时,输出端 Z产生一个进位输出脉冲 。
解 由题意可知,该电路模型为 Mealy型。由于状态数目和状态转换关系非常清楚,可直接作出二进制状态图和状态表。
⑴作出状态图和状态表设电路初始状态为,000”,状态变量用 y2,y1,y0表示,
可作出二进制状态图如下 。
x/z
101 1/0
第六章 异步时序逻辑电路相应二进制状态表为:
0 0 0 0 0 1 / 0
0 0 1 0 1 0 / 0
0 1 0 0 1 1 / 0
0 1 1 1 0 0 / 0
1 0 0 1 0 1 / 0
1 0 1 1 1 0 / 0
1 1 0 1 1 1 / 0
1 1 1 0 0 0 / 1
现态 次态 y2n+1y1n+1y0n+1 /输出 Z
y2 y1 y0 x = 1
第六章 异步时序逻辑电路
⑵ 确定激励函数和输出函数假定状态不变时,令相应触发器的时钟端为 0,输入端 T
任意;而状态需要改变时,令相应触发器的时钟端为 1(有脉冲出现 ),T端为 1。
根据状态表,可得到 x为 1时激励函数和输出函数真值表:
y2 y1 y0
0 d 0 d 1 1 0
0 d 1 1 1 1 0
0 d 0 d 1 1 0
1 1 1 1 1 1 0
0 d 0 d 1 1 0
0 d 1 1 1 1 0
0 d 0 d 1 1 0
1 1 1 1 1 1 1
输入脉冲
x
现 态 激励函数 输 出
C2 T2 C1 T1 C0 T0 Z
1
1
1
1
1
1
1
1
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
次 态
y2(n+1)y1(n+1) y0(n+1)
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
0 0 0
第六章 异步时序逻辑电路根据激励函数和输出函数真值表,并考虑到 x为 0时 (无脉冲输入,电路状态不变 ),可令各触发器时钟端为 0,输入端
T随意 。 可得到简化后的激励函数和输出函数表达式如下:
C2 = xy1y0 ; T2 = 1
C1 = xy0 ; T1 = 1
C0 = x ; T0 = 1
Z = xy2y1y0
第六章 异步时序逻辑电路
⑶ 画出逻辑电路图根据激励函数和输出函数表达式,可画出实现给定要求的逻辑电路如下图所示 。
第六章 异步时序逻辑电路
6.2.1 概述前面所述同步时序电路和脉冲异步时序电路有两个共同的特点:
☆ 电路状态的转换是在脉冲作用下实现的;
☆ 电路对过去输入信号的记忆由触发器的状态体现。
6.2 电 平 异 步 时 序 逻 辑 电 路第六章 异步时序逻辑电路事实上,对上述特点可进一步理解如下:
● 脉冲信号只不过是电平信号的一种特殊形式 。
● 电路中的触发器,不管是哪种类型,都是由逻辑门加反馈回路构成的 。
将上述两个特点一般化,便可得到时序逻辑电路中更具一般性的另一类电路 —— 电平异步时序逻辑电路 。
第六章 异步时序逻辑电路一,电平异步时序逻辑电路的结构特点
⒈ 结构框图图中:
x1,…,xn:外部输入信号;
Z1,…,Zm:外部输出信号;
Y1,…,Yr:激励状态;
y1,…,yr:二次状态;
Δt1,…,Δtr:反馈回路中的时间延迟。
第六章 异步时序逻辑电路
⒉ 组成电平异步时序逻辑电路可由逻辑门加反馈组成。
⒊逻辑方程电路可用以下逻辑方程组描述:
Zi = fi(x1,…,x n,y1,…,y r) i=1,…,m
Yj = gj(x1,…,x n,y1,…,y r) j=1,…,r
yj(t+△ tj) = Yj(t)
例如:用“或非”门构成的 R-S触发器。
第六章 异步时序逻辑电路
⒋ 电平异步时序逻辑电路的特点电平异步时序电路具有如下特点:
⑴ 电路输出和状态的改变是由输入信号电位的变化直接引起的,工作速度较高;
⑵ 电路的二次状态和激励状态仅仅相差一个时间延迟 。
二次状态 y是激励状态 Y经过延迟 Δt后的,重现,。
第六章 异步时序逻辑电路
⑶ 输入信号的一次变化可能引起二次状态的多次变化。
⑷ 电路在状态转换过程中存在稳定状态和非稳定状态。
稳 定 状 态,Y=y
非稳定状态,Y≠y
第六章 异步时序逻辑电路
⒌ 输入信号的约束
(1)不允许两个或两个以上输入信号同时发生变化 。
(2)输入信号变化引起的电路响应必须完全结束后,才允许输入信号再次变化。换句话说,必须使电路进入稳定状态后,才允许输入信号发生变化。
00
01 ∨
10 ∨
11 × (不允许)
例如,
第六章 异步时序逻辑电路二,电平异步时序逻辑电路的描述方法
2,流程表流程表,是一种以卡诺图的格式反映电路输出信号,激励状态与电路输入信号,二次状态之间关系的一种表格 。
1.用逻辑方程描述电路可用以下逻辑方程组描述:
Zi = fi(x1,…,x n,y1,…,y r) i=1,…,m
Yj = gj(x1,…,x n,y1,…,y r) j=1,…,r
yj(t+△ tj) = Yj(t)
第六章 异步时序逻辑电路流程表的一般格式如下表所示 。
构造流程表应注意两点:
将表中与二次状态相同的激励状态加上圆圈,以表示电路处于稳态,否则处于非稳态。
将一位输入的各种取值按代码相邻的关系排列 (与卡诺图相同 ),以表示输入信号只能在相邻位置上发生变化。
第六章 异步时序逻辑电路例如,用或非门构成的基本 R-S触发器是一个最简单的电平异步时序逻辑电路。该电路的状态即输出,属于 Moore
型电平异步时序逻辑电路的特例。其激励方程为根据激励方程和约束条件 RS = 0,可作出相应流程表如下表所示。
第六章 异步时序逻辑电路
3,总态图电平异步时序逻辑电路在输入信号作用下存在稳态和非稳态,而且在同一输入信号作用下,可能有一个稳态也可能有多个稳态,为了对电路的工作状态和逻辑功能作出确切的说明,
除了流程表和常用的时间图外,引入了总态和总态图的概念 。
总态:指电路输入和二次状态的组合,记作 (x,y)。
在流程表中,代表某种输入取值的一列和代表某个二次状态的一行的交叉点对应一个总态 。
总态图:反映稳定总态之间转移关系及相应输出的一种有向图 。
第六章 异步时序逻辑电路一个电平异步时序逻辑电路的逻辑功能,是由该电路在输入作用下各稳定总态之间的转移关系以及各时刻的输出来体现的。总态图能够清晰地描述一个电路的逻辑功能。
例如,R-S触发器的 流程表 所 对应的总态图如 下 图所示 。
(00,0)/0 (01,1)/1
(10,0)/0 (00,1)/1
第六章 异步时序逻辑电路
6.2.2 电平异步时序逻辑电路的分析
(1)根据逻辑电路图写出输出函数和激励函数表达式;
(2)作出流程表;
(3)作出总态图或时间图 ;
(4)说明电路逻辑功能 。
一,一般步骤第六章 异步时序逻辑电路二、举例例 分析下图所示电平异步时序逻辑电路。
解 该电路有两个外部输入 x1,x2;两条反馈回路,对应的激励状态为 Y1,Y2,二次状态为 y1,y2;一个外部输出 Z。输出仅仅是状态的函数,属于 Moore模型。
第六章 异步时序逻辑电路
(1) 写出输出函数和激励函数表达式根据逻辑电路图可写出 输出函数和激励函数表达式如下。
第六章 异步时序逻辑电路
(2)作出流程表第六章 异步时序逻辑电路
(3)作出总态图当电路收到输入序列,00→10→11,时,才产生一个高电平输出信号,其他情况下均输出低电平。
(01,01)/0 (11,01)/0
(00,00)/0 (10,01)/0
(10,10)/0 (11,11)/1
第六章 异步时序逻辑电路
(4)说明电路功能从总态图可以看出,仅当电路收到输入序列
,00→ 10→ 11”时,才产生一个高电平输出信号,
其他情况下均输出低电平 。 因此,该电路是一个
,00→ 10→ 11”序列检测器 。
第六章 异步时序逻辑电路
6.2.3 电平异步时序逻辑电路反馈回路间的竞争前面对电路进行分析时,是在假定各回路之间延迟时间相同的情况下对电路的工作过程进行分析的 。 事实上,各反馈回路的延迟时间往往各不相同 。 当电路中存在多条反馈回路,而各回路之间的延时又互不相同时,则可能由于输入信号的变化在反馈回路之间引起竞争 。
竞争:是指当输入信号变化引起电路中两个或两个以上状态变量发生变化时,由于各反馈回路延迟时间的不同,使状态的变化有先有后而导致不同状态响应过程的现象 。
一,竞争现象第六章 异步时序逻辑电路根据竞争对电路状态转移产生的影响,可将竞争分为非临界竞争和临界竞争两种类型 。
非临界竞争,若竞争的结果最终能到达预定的稳态,则称为非临界竞争 。
临界竞争,若竞争的结果可能使电路到达不同的稳态,
即状态转移不可预测,则称为临界竞争 。
1.竞争的两种类型第六章 异步时序逻辑电路例如,右图所示某电平异步时序电路的流程表如下 。
当电路处在稳定总态 ( 00,00)
和 ( 10,11),输入发生变化时,电路状态响应过程将如何呢?
x2x1=11
0101 01
11
10 10
01
x2x1=10x2x1=01x2x1=00
激励状态 Y2Y1/输出 Z二次状态 y
2y1
00 /0 00 /0 01/0 11/000
11
10
/0 /0 /000/0
00/0 00/0 10/0
00/0 00/0 /0
/0
/0
2.实例分析第六章 异步时序逻辑电路从表可以看出,当电路处于稳定总态 (00,00),输入 x2x1由
00→ 10时,引起激励状态 Y2Y1从 00→ 11;当电路处于稳定总态
(10,11),输入 x2x1由 10→ 00时,激励状态 Y2Y1从 11→ 00。 即两个状态变量均发生变化,所以,当电路中两条反馈回路的延迟时间 Δ t1和 Δ t2不相等时,电路中将产生竞争 。
第六章 异步时序逻辑电路分析:
Δ t2=Δ t1,到达预定的稳定总态 (10,11)。
Δ t2<Δ t1,电路到达了一个非期望的稳定总态 (10,10)
Δ t2>Δ t1,电路到达了一个非期望的稳定总态 (10,01)。
结论,本次竞争为临界竞争 !
(1)当电路处于稳定总态 (00,00),输入 x2x1由 00→ 10时:
第六章 异步时序逻辑电路分析 如下:
Δ t2=Δ t1,到达预定的稳定总态 (00,00)。
Δ t2<Δ t1,到达预定的稳定总态 (00,00)。
Δ t2>Δ t1,到达预定的稳定总态 (00,00)。
结论如下:本次竞争属于非临界竞争 !
(2)当电路处于稳定总态 (10,11),输入 x2x1由 10→ 00时,
其状态响应过程如下 。
第六章 异步时序逻辑电路用流程表检查电路竞争的一般法则:
☆ 当从某一稳态出发,输入信号发生允许变化,引起两个或两个以上激励状态同时发生变化时,由于反馈回路之间延迟时间的不同会使电路产生竞争 。
☆ 若输入信号变化所到达的列只有一个稳态,则该竞争属于非临界竞争;若输入信号变化所到达的列有两个或两个以上稳态,则该竞争属于临界竞争 。
非临界竞争的存在不会影响电路的正确工作,但临界竞争的存在却将导致电路状态转换的不可预测 。 为了确保电平异步时序电路能可靠地实现预定功能,电路设计时必须避免发生临界竞争 !
第六章 异步时序逻辑电路
6.3.1 设计的一般步骤和方法
6,3 电平异步时序逻辑电路的设计一般步骤如下:
1,根据设计要求,建立原始流程表;
2,化简原始流程表,得到最简流程表;
3,状态编码,得到二进制流程表;
4,确定激励状态和输出函数表达式;
5,画出逻辑电路图。
第六章 异步时序逻辑电路一、建立原始流程表原始流程表是对设计要求的一种最原始的抽象。建立原始流程表时通常借助时间图或原始总态图。即首先根据题意画出典型输入、输出时间图或作出原始总态图。
根据时间图建立原始流程表的过程如下。
1,画出典型输入、输出时间图并设立相应状态由于电平异步时序电路约定对于每次输入信号变化,
必须保证电路进入稳定状态后才允许输入信号再次变化,
所以,应根据题意设立与各时刻输入,输出对应的稳定状态 。
第六章 异步时序逻辑电路
2,建立原始流程表根据时间图和所设立的状态建立原始流程表,一般分为 3
步进行 。
(1) 画出原始流程表,并填入稳定状态和相应输出由于根据时间图设立状态时,对不同的输入取值总是设立不同的状态进行区分的,这就使得原始流程表中每一行只有一个稳定状态 。 显然,时间图上设立了多少个状态,原始流程表便有多少行 。
第六章 异步时序逻辑电路
(2)填入非稳定状态并指定相应的输出,完善流程表由于表中每行只有一个稳定状态,所以,在稳态下输入信号发生允许变化时,电路不可能直接进入另一个稳态 。
假定每次输入信号发生变化时,电路总是经过一个非稳定状态后进入另一个稳定状态,根据时间图中的状态转移关系,可在原始流程表中填入相应的非稳定状态 。
注意,当从某一稳态出发,输入信号发生允许变化所引起的状态转移,不能用时间图中所设立的状态来表示时,则应根据题意补充新的状态,以便无遗漏地反映设计要求 。
第六章 异步时序逻辑电路非稳定状态下输出指定的法则为:
若转换前后两个稳定状态的输出相同,则指定非稳定状态下的输出与稳态下的输出相同;若转换前后两个稳定状态的输出不同,则可指定非稳定状态下的输出为任意值,d”。
(思考:为什么? )
(3) 填入无关状态和无关输出对稳态下输入不允许到达的列,在相应处填入任意状态和任意输出,用,d”表示,即作为无关处理 。
第六章 异步时序逻辑电路例 某电平异步时序逻辑电路有两个输入端 x1和 x2,一个输出端 Z。 输出与输入之间的关系为:若 x1x2=00,则 Z=0,之后当 x1x2=01或 10时,Z=1;若 x1x2=11,则 Z=1,之后当 x1x2=01或
10时,Z=0。 作出该电路的原始流程表 。
解 借助时间图形成该电路原始流程表的过程如下 。
(1) 画出典型输入,输出时间图并设立相应状态根据题意,可画出该电路典型输入,输出时间图并设立状态如下 。
第六章 异步时序逻辑电路
(2)建立原始流程表根据波形图中设立的状态和填写原始流程表的步骤,
可构造出该问题的原始流程表 。
第六章 异步时序逻辑电路二、化简原始流程表在进行电平异步时序逻辑电路设计时,流程表中的状态数目决定了电路中反馈回路的数目,即状态数目的多少与电路的复杂程度直接相关 。 为了获得一种经济,合理的设计方案,必须对原始流程表进行化简,求出最简流程表 。
目的 ------------------简化电路结构 。
由于原始流程表中含有不确定的状态和输出,因而原始流程表的化简是建立在状态相容这一概念基础之上的。
第六章 异步时序逻辑电路
1.相容行的概念原始流程表中的每一行代表一个稳定状态,因而相容状态的概念被引申为 相容行 的概念。
相容行,对于原始流程表中的某两行,如果每一列给定的输出相同,且给定的激励状态相同,交错,循环,相容或为各自本身,则这两行为相容行 。
☆ 在检查输出时,对于一个给定而另一个任意,或者两个均任意的情况,作为相同情况处理 。
注意:
第六章 异步时序逻辑电路
☆ 在检查激励状态时,按以下原则确定稳定状态,非稳定状态和任意状态的相容性 。
(1)稳定状态 和非稳定状态 i相容;
(2)若稳定状态 和 相容,则稳定状态 和非稳定状态 j相容;
(3)若稳定状态 和 相容,则非稳定状态 i和 j相容;
(4)稳定状态 和非稳定状态 i均与任意状态,d”相容,
任意状态,d”与任意状态,d”相容 。
i
i j i
i j
i
第六章 异步时序逻辑电路
2.化简的方法与一般步骤化简原始流程表与化简不完全给定状态表的过程类似 。
注意,
对各相容行类中的相容行进行合并时,当输出存在给定值和任意值
,d” 时,合并后取给定值;当激励状态存在稳定状态和非稳定状态时,
合并时取稳定状态;当激励状态存在给定状态和任意状态,d”时,合并时取给定状态。
( 1) 作隐含表,找出相容行对;
( 2) 作合并图,求出最大相容行类;
( 3) 从相容行类中选择一个最小闭覆盖;
( 4) 状态行合并,作出最简流程表 。
第六章 异步时序逻辑电路例 化简如下原始流程表。
第六章 异步时序逻辑电路解 根据化简原始流程表的方法和步骤,化简过程如下:
( 1)作隐含表,找相容行原始流程表对应的隐含表如右下图所示。
根据相容行的判断规则,可找出相容行对,(1,2),(1,
3),(2,3),(2,6),(3,5),(4,5),(4,6),(5,6)。
第六章 异步时序逻辑电路
(2)作合并图,求最大相容行类根据所得出的相容行对,可作出合并图如下图所示。
由合并图可知,最大相容行类为:
(1,2,3),(4,5,6),
(3,5),(2,6)。
(3)选择一个最小闭覆盖选择最大相容行类构成的集合 {(1,2,3),(4,5,6)},
便可满足覆盖,闭合和最小 3个条件 。 所以,该集合即为原始流程表的最小闭覆盖 。
第六章 异步时序逻辑电路令,(1,2,3) A,
(4,5,6) B,可得到最简流程表如下表所示 。
(4)作出最简流程表第六章 异步时序逻辑电路三,状态编码状态编码的任务:
(1) 根据化简后的状态数目确定二进制代码的位数;
(2) 选择一种合适的状态分配方案,将每个状态用一个二进制代码表示。
注意,确定分配方案时应考虑的主要问题是如何避免反馈回路之间的临界竞争,保证电路可靠地实现预定功能。
常用的几种方法,
1,相邻状态,相邻分配相邻状态,是指稳态下输入取值作相邻变化时,需要直接发生转换的状态。
相邻分配,是指分配给相邻状态的代码为相邻代码。
第六章 异步时序逻辑电路通常借助状态相邻图确定流程表中各状态的相邻关系 。
状态相邻图,将流程表中的每一个状态加圈表示,并从每一个稳态出发,找出输入取值作相邻变化时的下一个稳态,用有向线段将其连接起来,表示这两个状态为相邻状态 。
例 对如下流程表进行状态编码,求出二进制流程表 。
解 根据“相邻状态,相邻分配”的法则,首先根据流程表作出状态相邻图。
第六章 异步时序逻辑电路根据流程表作出状态相邻图如右下图所示。
状态相邻图
A C
DB
流程表中共有 4个状态,需两位代码,设二次状态用 y2,y1表示。根据相邻图,可选择如右卡诺图所示的状态分配方案。
即用 00表示 A,01表示 B,10表示 C,11表示 D。
第六章 异步时序逻辑电路将给定流程表中的状态用相应二进制编码表示,即可得到相应二进制流程表 。
该二进制流程表,
消除了竞争现象 。
A→00 B →01
C→10 D→11
第六章 异步时序逻辑电路对于某些流程表,尽管相邻图上状态的最大相邻状态数 L不大于状态分配的最小代码位数 m,但状态之间的相邻关系形成由奇数个状态构成的闭环,因而无法直接实现状态的相邻分配 。
解决这类问题的一种常用的方法是通过增加过渡状态,实现相邻分配,得到一个无竞争的二进制流程表 。
2,增加过渡状态,实现相邻分配例 对如下流程表进行状态编码,得到二进制流程表。
第六章 异步时序逻辑电路解 根据给定流程表可作出状态相邻图如右下图所示。
尽管相邻图上每个状态只有两个相邻状态,但由于 3个状态之间的相邻关系构成一个闭环,所以,用两位代码无法满足其相邻关系 。
A
B C
A
B C
D如果在状态 A和 C之间增加过渡状态 D,将 A→C
改为 A→D→C,C→A 改为
C→D→A,即如右图所示:
第六章 异步时序逻辑电路在状态 A和 C之间增加过渡状态 D后,可将流程表修改成如右下表所示。修改后的流程表中增加了新的一行,但该行没有稳定状态,因为状态 D仅在稳态 A和 C发生转换时完成过渡作用。
A
B C
D
第六章 异步时序逻辑电路设二次状态用 y2,y1表示,相应激励状态用 Y2,Y1表示,令 y2y1取值
00表示 A,01表示 B,10表示 D,11表示 C,即可得到相应二进制流程表如右下表所示,该流程表描述的电路中不存在竞争 。
A
B C
D
CB
DA
y2
y1 0 1
0
1
第六章 异步时序逻辑电路
3,允许非临界竞争,避免临界竞争对于有的流程表,虽然无法用最少位数的代码实现无竞争的状态分配,但可以通过将竞争限制在只有一个稳态的列,即允许非临界竞争,从而实现无临界竞争的状态分配 。
例 对如下流程表进行状态编码,得到二进制流程表 。
第六章 异步时序逻辑电路解 给定流程表的状态相邻图如右下图所示。
显然,用两位二进制代码无法实现相邻状态相邻分配 。
但在该流程表中,状态 A和 C之间的转换只发生在 x2x1=00和
x2x1=01这两列,而这两列各只有一个稳定状态,这就意味着 A和 C发生转换时,即使产生竞争也属于非临界竞争 。 即在状态分配时 A和 C可以不相邻 。 排除 A和 C的相邻关系后,
状态编码只需满足 A和 B,A和 D,D和 C,C和 B相邻即可 。
A D
CB
第六章 异步时序逻辑电路设二次状态用 y2,y1表示,令 y2,y1取值 00表示 A,01表示 B,10表示 D,11表示 C,将其代入给定流程表,即可得到相应二进制流程表 。 该流程表描述的电路不会产生临界竞争 。
y2y1= 00,01,10,11
↓ ↓ ↓ ↓
A B D C
A D
CB
第六章 异步时序逻辑电路根据流程表可作出激励状态、输出函数的卡诺图,化简后即可得到激励状态和输出函数的最简表达式。
四、确定激励函数和输出函数例 求如下流程表的激励函数和输出函数最简表达式。
第六章 异步时序逻辑电路根据二进制流程表可作出 Y2,Y1
和输出 Z的卡诺图如下图所示 。
激励函数和输出函数表达式为,
第六章 异步时序逻辑电路根据激励函数和输出函数表达式可画出逻辑电路图。
(略)
根据电路结构和输入信号形式的不同,异步时序逻辑电路可分为 脉冲异步时序逻辑电路 和 电平异步时序逻辑电路两种类型 。
两类电路均有 Mealy型和 Moore型两种结构模型 。
第六章 异步时序逻辑电路
6.1.1 概 述一、结 构脉冲异步时序电路的一般结构如下图所示。
图中,存储电路可由时钟控制触发器或非时钟控制触发器组成。
6.1 脉冲异步时序逻辑电路第六章 异步时序逻辑电路二,输入信号的形式与约束
1.输入信号为脉冲信号 ;
2.输入脉冲的宽度必须保证触发器可靠翻转 ;
3.输入脉冲的间隔必须保证前一个脉冲引起的电路响应完全结束后,后一个脉冲才能到来 ;
4.不允许两个或两个以上输入端同时出现脉冲 。
对 n个输入端的电路,其一位输入只允许出现 n+1种取值组合,其中有效输入种取值组合为 n种 。
第六章 异步时序逻辑电路三、输出信号的形式脉冲异步时序逻辑电路的输出信号可以是脉冲信号也可以是电平信号 。
第六章 异步时序逻辑电路
6.1.2 脉冲异步时序逻辑电路的分析一、分析方法与步骤
1,分析方法脉冲异步时序逻辑电路的分析方法与同步时序逻辑电路大致相同 。
注意两点:
⑴ 当存储元件采用时钟控制触发器时,对触发器的时钟控制端应作为激励函数处理 。
仅当时钟端有脉冲作用时,才根据触发器的输入确定状态转移方向,否则,触发器状态不变 。
⑵ 根据对输入的约束,分析时可以排除两个或两个以上输入端同时出现脉冲以及输入端无脉冲出现情况,从而使图,表简化 。
第六章 异步时序逻辑电路
(4) 用文字描述电路的逻辑功能(必要时画出时间图)。
2,分析步骤
(1) 写出电路的输出函数和激励函数表达式;
(2) 列出电路次态真值表或次态方程组;
(3) 作出状态表和状态图;
第六章 异步时序逻辑电路二,分析举例例 分析下图所示脉冲异步时序逻辑电路,指出该电路功能。
&
第六章 异步时序逻辑电路
⑴ 写出输出函数和激励函数表达式解,该电路由两个 J-K
触发器和一个与门组成,
有一个输入端 x和一个输出端 Z,输出是输入和状态的函数,属于 Mealy型脉冲异步时序电路 。
&
Z = xy2y1
J2 = K2 =1 ; C2 = y1
J1 = K1 =1 ; C1 = x
第六章 异步时序逻辑电路
⑵ 列出电路次态真值表
J-K触发器的状态转移发生在时钟端脉冲负跳变的瞬间,
为了强调在触发器时钟端 C1,C2何时有负跳变产生,在次态真值表中用,↓” 表示下跳 。 仅当时钟端有,↓” 出现时,相应触发器状态才能发生变化,否则状态不变 。
J K Q(n+1)
0 0
0 1
1 0
1 1
Q
0
1
第六章 异步时序逻辑电路
⑶ 作出状态表和状态图根据次态真值表和输出函数表达式( Z = xy2y1),可作出该电路的状态表和状态图如下。
现态
y2 y1
次态 y2n+1y1n+1 / 输出 Z
x = 1
0 0 0 1 / 0
0 1 1 0 / 0
1 0 1 1 / 0
1 1 0 0 / 1
00 01
10110/0 0/0
0/0 0/01/0
1/0
1/0
1/1x/Z
第六章 异步时序逻辑电路
⑷ 画出时间图并说明电路逻辑功能 。
为了进一步描述该电路在输入脉冲作用下的状态和输出变化过程,可根据状态表或状态图画出该电路的时间图如下图所示 。
由状态图和时间图可知,该电路是一个 模 4加 1计数器,
当收到第四个输入脉冲时,电路产生一个进位输出脉冲 。
x
y1
y2
Z
第六章 异步时序逻辑电路一,方法与步骤
⒈ 方法,脉冲异步时序逻辑电路设计的方法与同步时序逻辑电路设计大致相同,主要应注意 两个问题 。
⑴ 由于不允许两个或两个以上输入端同时为 1( 用 1表示有脉冲出现 ),设计时可以作如下处理:
当有多个输入信号时,只需考虑多个输入信号中仅一个为 1的情况;
在确定激励函数和输出函数时,可将两个或两个以上输入同时为 1的情况作为无关条件处理 。
⑵ 当存储电路采用带时钟控制端的触发器时,触发器的时钟端应作为激励函数处理 。 设计时通过对触发器的时钟端和输入端综合处理,有利于函数简化 。
6.1.3 脉冲异步时序逻辑电路的设计第六章 异步时序逻辑电路
⒉ 步骤设计过程与同步时序电路相同,具体如下:
①
形成原始状态图
②
状态化简
③
状态编码
⑤
画逻辑电路图
④
确定激励函数和输出函数第六章 异步时序逻辑电路二、举例例 用 T触发器作为存储元件,设计一个异步模 8加 1计数器,电路对输入端 x出现的脉冲进行计数,当收到第八个脉冲时,输出端 Z产生一个进位输出脉冲 。
解 由题意可知,该电路模型为 Mealy型。由于状态数目和状态转换关系非常清楚,可直接作出二进制状态图和状态表。
⑴作出状态图和状态表设电路初始状态为,000”,状态变量用 y2,y1,y0表示,
可作出二进制状态图如下 。
x/z
101 1/0
第六章 异步时序逻辑电路相应二进制状态表为:
0 0 0 0 0 1 / 0
0 0 1 0 1 0 / 0
0 1 0 0 1 1 / 0
0 1 1 1 0 0 / 0
1 0 0 1 0 1 / 0
1 0 1 1 1 0 / 0
1 1 0 1 1 1 / 0
1 1 1 0 0 0 / 1
现态 次态 y2n+1y1n+1y0n+1 /输出 Z
y2 y1 y0 x = 1
第六章 异步时序逻辑电路
⑵ 确定激励函数和输出函数假定状态不变时,令相应触发器的时钟端为 0,输入端 T
任意;而状态需要改变时,令相应触发器的时钟端为 1(有脉冲出现 ),T端为 1。
根据状态表,可得到 x为 1时激励函数和输出函数真值表:
y2 y1 y0
0 d 0 d 1 1 0
0 d 1 1 1 1 0
0 d 0 d 1 1 0
1 1 1 1 1 1 0
0 d 0 d 1 1 0
0 d 1 1 1 1 0
0 d 0 d 1 1 0
1 1 1 1 1 1 1
输入脉冲
x
现 态 激励函数 输 出
C2 T2 C1 T1 C0 T0 Z
1
1
1
1
1
1
1
1
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
次 态
y2(n+1)y1(n+1) y0(n+1)
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
0 0 0
第六章 异步时序逻辑电路根据激励函数和输出函数真值表,并考虑到 x为 0时 (无脉冲输入,电路状态不变 ),可令各触发器时钟端为 0,输入端
T随意 。 可得到简化后的激励函数和输出函数表达式如下:
C2 = xy1y0 ; T2 = 1
C1 = xy0 ; T1 = 1
C0 = x ; T0 = 1
Z = xy2y1y0
第六章 异步时序逻辑电路
⑶ 画出逻辑电路图根据激励函数和输出函数表达式,可画出实现给定要求的逻辑电路如下图所示 。
第六章 异步时序逻辑电路
6.2.1 概述前面所述同步时序电路和脉冲异步时序电路有两个共同的特点:
☆ 电路状态的转换是在脉冲作用下实现的;
☆ 电路对过去输入信号的记忆由触发器的状态体现。
6.2 电 平 异 步 时 序 逻 辑 电 路第六章 异步时序逻辑电路事实上,对上述特点可进一步理解如下:
● 脉冲信号只不过是电平信号的一种特殊形式 。
● 电路中的触发器,不管是哪种类型,都是由逻辑门加反馈回路构成的 。
将上述两个特点一般化,便可得到时序逻辑电路中更具一般性的另一类电路 —— 电平异步时序逻辑电路 。
第六章 异步时序逻辑电路一,电平异步时序逻辑电路的结构特点
⒈ 结构框图图中:
x1,…,xn:外部输入信号;
Z1,…,Zm:外部输出信号;
Y1,…,Yr:激励状态;
y1,…,yr:二次状态;
Δt1,…,Δtr:反馈回路中的时间延迟。
第六章 异步时序逻辑电路
⒉ 组成电平异步时序逻辑电路可由逻辑门加反馈组成。
⒊逻辑方程电路可用以下逻辑方程组描述:
Zi = fi(x1,…,x n,y1,…,y r) i=1,…,m
Yj = gj(x1,…,x n,y1,…,y r) j=1,…,r
yj(t+△ tj) = Yj(t)
例如:用“或非”门构成的 R-S触发器。
第六章 异步时序逻辑电路
⒋ 电平异步时序逻辑电路的特点电平异步时序电路具有如下特点:
⑴ 电路输出和状态的改变是由输入信号电位的变化直接引起的,工作速度较高;
⑵ 电路的二次状态和激励状态仅仅相差一个时间延迟 。
二次状态 y是激励状态 Y经过延迟 Δt后的,重现,。
第六章 异步时序逻辑电路
⑶ 输入信号的一次变化可能引起二次状态的多次变化。
⑷ 电路在状态转换过程中存在稳定状态和非稳定状态。
稳 定 状 态,Y=y
非稳定状态,Y≠y
第六章 异步时序逻辑电路
⒌ 输入信号的约束
(1)不允许两个或两个以上输入信号同时发生变化 。
(2)输入信号变化引起的电路响应必须完全结束后,才允许输入信号再次变化。换句话说,必须使电路进入稳定状态后,才允许输入信号发生变化。
00
01 ∨
10 ∨
11 × (不允许)
例如,
第六章 异步时序逻辑电路二,电平异步时序逻辑电路的描述方法
2,流程表流程表,是一种以卡诺图的格式反映电路输出信号,激励状态与电路输入信号,二次状态之间关系的一种表格 。
1.用逻辑方程描述电路可用以下逻辑方程组描述:
Zi = fi(x1,…,x n,y1,…,y r) i=1,…,m
Yj = gj(x1,…,x n,y1,…,y r) j=1,…,r
yj(t+△ tj) = Yj(t)
第六章 异步时序逻辑电路流程表的一般格式如下表所示 。
构造流程表应注意两点:
将表中与二次状态相同的激励状态加上圆圈,以表示电路处于稳态,否则处于非稳态。
将一位输入的各种取值按代码相邻的关系排列 (与卡诺图相同 ),以表示输入信号只能在相邻位置上发生变化。
第六章 异步时序逻辑电路例如,用或非门构成的基本 R-S触发器是一个最简单的电平异步时序逻辑电路。该电路的状态即输出,属于 Moore
型电平异步时序逻辑电路的特例。其激励方程为根据激励方程和约束条件 RS = 0,可作出相应流程表如下表所示。
第六章 异步时序逻辑电路
3,总态图电平异步时序逻辑电路在输入信号作用下存在稳态和非稳态,而且在同一输入信号作用下,可能有一个稳态也可能有多个稳态,为了对电路的工作状态和逻辑功能作出确切的说明,
除了流程表和常用的时间图外,引入了总态和总态图的概念 。
总态:指电路输入和二次状态的组合,记作 (x,y)。
在流程表中,代表某种输入取值的一列和代表某个二次状态的一行的交叉点对应一个总态 。
总态图:反映稳定总态之间转移关系及相应输出的一种有向图 。
第六章 异步时序逻辑电路一个电平异步时序逻辑电路的逻辑功能,是由该电路在输入作用下各稳定总态之间的转移关系以及各时刻的输出来体现的。总态图能够清晰地描述一个电路的逻辑功能。
例如,R-S触发器的 流程表 所 对应的总态图如 下 图所示 。
(00,0)/0 (01,1)/1
(10,0)/0 (00,1)/1
第六章 异步时序逻辑电路
6.2.2 电平异步时序逻辑电路的分析
(1)根据逻辑电路图写出输出函数和激励函数表达式;
(2)作出流程表;
(3)作出总态图或时间图 ;
(4)说明电路逻辑功能 。
一,一般步骤第六章 异步时序逻辑电路二、举例例 分析下图所示电平异步时序逻辑电路。
解 该电路有两个外部输入 x1,x2;两条反馈回路,对应的激励状态为 Y1,Y2,二次状态为 y1,y2;一个外部输出 Z。输出仅仅是状态的函数,属于 Moore模型。
第六章 异步时序逻辑电路
(1) 写出输出函数和激励函数表达式根据逻辑电路图可写出 输出函数和激励函数表达式如下。
第六章 异步时序逻辑电路
(2)作出流程表第六章 异步时序逻辑电路
(3)作出总态图当电路收到输入序列,00→10→11,时,才产生一个高电平输出信号,其他情况下均输出低电平。
(01,01)/0 (11,01)/0
(00,00)/0 (10,01)/0
(10,10)/0 (11,11)/1
第六章 异步时序逻辑电路
(4)说明电路功能从总态图可以看出,仅当电路收到输入序列
,00→ 10→ 11”时,才产生一个高电平输出信号,
其他情况下均输出低电平 。 因此,该电路是一个
,00→ 10→ 11”序列检测器 。
第六章 异步时序逻辑电路
6.2.3 电平异步时序逻辑电路反馈回路间的竞争前面对电路进行分析时,是在假定各回路之间延迟时间相同的情况下对电路的工作过程进行分析的 。 事实上,各反馈回路的延迟时间往往各不相同 。 当电路中存在多条反馈回路,而各回路之间的延时又互不相同时,则可能由于输入信号的变化在反馈回路之间引起竞争 。
竞争:是指当输入信号变化引起电路中两个或两个以上状态变量发生变化时,由于各反馈回路延迟时间的不同,使状态的变化有先有后而导致不同状态响应过程的现象 。
一,竞争现象第六章 异步时序逻辑电路根据竞争对电路状态转移产生的影响,可将竞争分为非临界竞争和临界竞争两种类型 。
非临界竞争,若竞争的结果最终能到达预定的稳态,则称为非临界竞争 。
临界竞争,若竞争的结果可能使电路到达不同的稳态,
即状态转移不可预测,则称为临界竞争 。
1.竞争的两种类型第六章 异步时序逻辑电路例如,右图所示某电平异步时序电路的流程表如下 。
当电路处在稳定总态 ( 00,00)
和 ( 10,11),输入发生变化时,电路状态响应过程将如何呢?
x2x1=11
0101 01
11
10 10
01
x2x1=10x2x1=01x2x1=00
激励状态 Y2Y1/输出 Z二次状态 y
2y1
00 /0 00 /0 01/0 11/000
11
10
/0 /0 /000/0
00/0 00/0 10/0
00/0 00/0 /0
/0
/0
2.实例分析第六章 异步时序逻辑电路从表可以看出,当电路处于稳定总态 (00,00),输入 x2x1由
00→ 10时,引起激励状态 Y2Y1从 00→ 11;当电路处于稳定总态
(10,11),输入 x2x1由 10→ 00时,激励状态 Y2Y1从 11→ 00。 即两个状态变量均发生变化,所以,当电路中两条反馈回路的延迟时间 Δ t1和 Δ t2不相等时,电路中将产生竞争 。
第六章 异步时序逻辑电路分析:
Δ t2=Δ t1,到达预定的稳定总态 (10,11)。
Δ t2<Δ t1,电路到达了一个非期望的稳定总态 (10,10)
Δ t2>Δ t1,电路到达了一个非期望的稳定总态 (10,01)。
结论,本次竞争为临界竞争 !
(1)当电路处于稳定总态 (00,00),输入 x2x1由 00→ 10时:
第六章 异步时序逻辑电路分析 如下:
Δ t2=Δ t1,到达预定的稳定总态 (00,00)。
Δ t2<Δ t1,到达预定的稳定总态 (00,00)。
Δ t2>Δ t1,到达预定的稳定总态 (00,00)。
结论如下:本次竞争属于非临界竞争 !
(2)当电路处于稳定总态 (10,11),输入 x2x1由 10→ 00时,
其状态响应过程如下 。
第六章 异步时序逻辑电路用流程表检查电路竞争的一般法则:
☆ 当从某一稳态出发,输入信号发生允许变化,引起两个或两个以上激励状态同时发生变化时,由于反馈回路之间延迟时间的不同会使电路产生竞争 。
☆ 若输入信号变化所到达的列只有一个稳态,则该竞争属于非临界竞争;若输入信号变化所到达的列有两个或两个以上稳态,则该竞争属于临界竞争 。
非临界竞争的存在不会影响电路的正确工作,但临界竞争的存在却将导致电路状态转换的不可预测 。 为了确保电平异步时序电路能可靠地实现预定功能,电路设计时必须避免发生临界竞争 !
第六章 异步时序逻辑电路
6.3.1 设计的一般步骤和方法
6,3 电平异步时序逻辑电路的设计一般步骤如下:
1,根据设计要求,建立原始流程表;
2,化简原始流程表,得到最简流程表;
3,状态编码,得到二进制流程表;
4,确定激励状态和输出函数表达式;
5,画出逻辑电路图。
第六章 异步时序逻辑电路一、建立原始流程表原始流程表是对设计要求的一种最原始的抽象。建立原始流程表时通常借助时间图或原始总态图。即首先根据题意画出典型输入、输出时间图或作出原始总态图。
根据时间图建立原始流程表的过程如下。
1,画出典型输入、输出时间图并设立相应状态由于电平异步时序电路约定对于每次输入信号变化,
必须保证电路进入稳定状态后才允许输入信号再次变化,
所以,应根据题意设立与各时刻输入,输出对应的稳定状态 。
第六章 异步时序逻辑电路
2,建立原始流程表根据时间图和所设立的状态建立原始流程表,一般分为 3
步进行 。
(1) 画出原始流程表,并填入稳定状态和相应输出由于根据时间图设立状态时,对不同的输入取值总是设立不同的状态进行区分的,这就使得原始流程表中每一行只有一个稳定状态 。 显然,时间图上设立了多少个状态,原始流程表便有多少行 。
第六章 异步时序逻辑电路
(2)填入非稳定状态并指定相应的输出,完善流程表由于表中每行只有一个稳定状态,所以,在稳态下输入信号发生允许变化时,电路不可能直接进入另一个稳态 。
假定每次输入信号发生变化时,电路总是经过一个非稳定状态后进入另一个稳定状态,根据时间图中的状态转移关系,可在原始流程表中填入相应的非稳定状态 。
注意,当从某一稳态出发,输入信号发生允许变化所引起的状态转移,不能用时间图中所设立的状态来表示时,则应根据题意补充新的状态,以便无遗漏地反映设计要求 。
第六章 异步时序逻辑电路非稳定状态下输出指定的法则为:
若转换前后两个稳定状态的输出相同,则指定非稳定状态下的输出与稳态下的输出相同;若转换前后两个稳定状态的输出不同,则可指定非稳定状态下的输出为任意值,d”。
(思考:为什么? )
(3) 填入无关状态和无关输出对稳态下输入不允许到达的列,在相应处填入任意状态和任意输出,用,d”表示,即作为无关处理 。
第六章 异步时序逻辑电路例 某电平异步时序逻辑电路有两个输入端 x1和 x2,一个输出端 Z。 输出与输入之间的关系为:若 x1x2=00,则 Z=0,之后当 x1x2=01或 10时,Z=1;若 x1x2=11,则 Z=1,之后当 x1x2=01或
10时,Z=0。 作出该电路的原始流程表 。
解 借助时间图形成该电路原始流程表的过程如下 。
(1) 画出典型输入,输出时间图并设立相应状态根据题意,可画出该电路典型输入,输出时间图并设立状态如下 。
第六章 异步时序逻辑电路
(2)建立原始流程表根据波形图中设立的状态和填写原始流程表的步骤,
可构造出该问题的原始流程表 。
第六章 异步时序逻辑电路二、化简原始流程表在进行电平异步时序逻辑电路设计时,流程表中的状态数目决定了电路中反馈回路的数目,即状态数目的多少与电路的复杂程度直接相关 。 为了获得一种经济,合理的设计方案,必须对原始流程表进行化简,求出最简流程表 。
目的 ------------------简化电路结构 。
由于原始流程表中含有不确定的状态和输出,因而原始流程表的化简是建立在状态相容这一概念基础之上的。
第六章 异步时序逻辑电路
1.相容行的概念原始流程表中的每一行代表一个稳定状态,因而相容状态的概念被引申为 相容行 的概念。
相容行,对于原始流程表中的某两行,如果每一列给定的输出相同,且给定的激励状态相同,交错,循环,相容或为各自本身,则这两行为相容行 。
☆ 在检查输出时,对于一个给定而另一个任意,或者两个均任意的情况,作为相同情况处理 。
注意:
第六章 异步时序逻辑电路
☆ 在检查激励状态时,按以下原则确定稳定状态,非稳定状态和任意状态的相容性 。
(1)稳定状态 和非稳定状态 i相容;
(2)若稳定状态 和 相容,则稳定状态 和非稳定状态 j相容;
(3)若稳定状态 和 相容,则非稳定状态 i和 j相容;
(4)稳定状态 和非稳定状态 i均与任意状态,d”相容,
任意状态,d”与任意状态,d”相容 。
i
i j i
i j
i
第六章 异步时序逻辑电路
2.化简的方法与一般步骤化简原始流程表与化简不完全给定状态表的过程类似 。
注意,
对各相容行类中的相容行进行合并时,当输出存在给定值和任意值
,d” 时,合并后取给定值;当激励状态存在稳定状态和非稳定状态时,
合并时取稳定状态;当激励状态存在给定状态和任意状态,d”时,合并时取给定状态。
( 1) 作隐含表,找出相容行对;
( 2) 作合并图,求出最大相容行类;
( 3) 从相容行类中选择一个最小闭覆盖;
( 4) 状态行合并,作出最简流程表 。
第六章 异步时序逻辑电路例 化简如下原始流程表。
第六章 异步时序逻辑电路解 根据化简原始流程表的方法和步骤,化简过程如下:
( 1)作隐含表,找相容行原始流程表对应的隐含表如右下图所示。
根据相容行的判断规则,可找出相容行对,(1,2),(1,
3),(2,3),(2,6),(3,5),(4,5),(4,6),(5,6)。
第六章 异步时序逻辑电路
(2)作合并图,求最大相容行类根据所得出的相容行对,可作出合并图如下图所示。
由合并图可知,最大相容行类为:
(1,2,3),(4,5,6),
(3,5),(2,6)。
(3)选择一个最小闭覆盖选择最大相容行类构成的集合 {(1,2,3),(4,5,6)},
便可满足覆盖,闭合和最小 3个条件 。 所以,该集合即为原始流程表的最小闭覆盖 。
第六章 异步时序逻辑电路令,(1,2,3) A,
(4,5,6) B,可得到最简流程表如下表所示 。
(4)作出最简流程表第六章 异步时序逻辑电路三,状态编码状态编码的任务:
(1) 根据化简后的状态数目确定二进制代码的位数;
(2) 选择一种合适的状态分配方案,将每个状态用一个二进制代码表示。
注意,确定分配方案时应考虑的主要问题是如何避免反馈回路之间的临界竞争,保证电路可靠地实现预定功能。
常用的几种方法,
1,相邻状态,相邻分配相邻状态,是指稳态下输入取值作相邻变化时,需要直接发生转换的状态。
相邻分配,是指分配给相邻状态的代码为相邻代码。
第六章 异步时序逻辑电路通常借助状态相邻图确定流程表中各状态的相邻关系 。
状态相邻图,将流程表中的每一个状态加圈表示,并从每一个稳态出发,找出输入取值作相邻变化时的下一个稳态,用有向线段将其连接起来,表示这两个状态为相邻状态 。
例 对如下流程表进行状态编码,求出二进制流程表 。
解 根据“相邻状态,相邻分配”的法则,首先根据流程表作出状态相邻图。
第六章 异步时序逻辑电路根据流程表作出状态相邻图如右下图所示。
状态相邻图
A C
DB
流程表中共有 4个状态,需两位代码,设二次状态用 y2,y1表示。根据相邻图,可选择如右卡诺图所示的状态分配方案。
即用 00表示 A,01表示 B,10表示 C,11表示 D。
第六章 异步时序逻辑电路将给定流程表中的状态用相应二进制编码表示,即可得到相应二进制流程表 。
该二进制流程表,
消除了竞争现象 。
A→00 B →01
C→10 D→11
第六章 异步时序逻辑电路对于某些流程表,尽管相邻图上状态的最大相邻状态数 L不大于状态分配的最小代码位数 m,但状态之间的相邻关系形成由奇数个状态构成的闭环,因而无法直接实现状态的相邻分配 。
解决这类问题的一种常用的方法是通过增加过渡状态,实现相邻分配,得到一个无竞争的二进制流程表 。
2,增加过渡状态,实现相邻分配例 对如下流程表进行状态编码,得到二进制流程表。
第六章 异步时序逻辑电路解 根据给定流程表可作出状态相邻图如右下图所示。
尽管相邻图上每个状态只有两个相邻状态,但由于 3个状态之间的相邻关系构成一个闭环,所以,用两位代码无法满足其相邻关系 。
A
B C
A
B C
D如果在状态 A和 C之间增加过渡状态 D,将 A→C
改为 A→D→C,C→A 改为
C→D→A,即如右图所示:
第六章 异步时序逻辑电路在状态 A和 C之间增加过渡状态 D后,可将流程表修改成如右下表所示。修改后的流程表中增加了新的一行,但该行没有稳定状态,因为状态 D仅在稳态 A和 C发生转换时完成过渡作用。
A
B C
D
第六章 异步时序逻辑电路设二次状态用 y2,y1表示,相应激励状态用 Y2,Y1表示,令 y2y1取值
00表示 A,01表示 B,10表示 D,11表示 C,即可得到相应二进制流程表如右下表所示,该流程表描述的电路中不存在竞争 。
A
B C
D
CB
DA
y2
y1 0 1
0
1
第六章 异步时序逻辑电路
3,允许非临界竞争,避免临界竞争对于有的流程表,虽然无法用最少位数的代码实现无竞争的状态分配,但可以通过将竞争限制在只有一个稳态的列,即允许非临界竞争,从而实现无临界竞争的状态分配 。
例 对如下流程表进行状态编码,得到二进制流程表 。
第六章 异步时序逻辑电路解 给定流程表的状态相邻图如右下图所示。
显然,用两位二进制代码无法实现相邻状态相邻分配 。
但在该流程表中,状态 A和 C之间的转换只发生在 x2x1=00和
x2x1=01这两列,而这两列各只有一个稳定状态,这就意味着 A和 C发生转换时,即使产生竞争也属于非临界竞争 。 即在状态分配时 A和 C可以不相邻 。 排除 A和 C的相邻关系后,
状态编码只需满足 A和 B,A和 D,D和 C,C和 B相邻即可 。
A D
CB
第六章 异步时序逻辑电路设二次状态用 y2,y1表示,令 y2,y1取值 00表示 A,01表示 B,10表示 D,11表示 C,将其代入给定流程表,即可得到相应二进制流程表 。 该流程表描述的电路不会产生临界竞争 。
y2y1= 00,01,10,11
↓ ↓ ↓ ↓
A B D C
A D
CB
第六章 异步时序逻辑电路根据流程表可作出激励状态、输出函数的卡诺图,化简后即可得到激励状态和输出函数的最简表达式。
四、确定激励函数和输出函数例 求如下流程表的激励函数和输出函数最简表达式。
第六章 异步时序逻辑电路根据二进制流程表可作出 Y2,Y1
和输出 Z的卡诺图如下图所示 。
激励函数和输出函数表达式为,
第六章 异步时序逻辑电路根据激励函数和输出函数表达式可画出逻辑电路图。
(略)