7.2 脉冲异步时序逻辑电路的设计设计方法与同步时序逻辑电路相似,但如果触发器有时钟控制端的话应将其作为激励来考虑,并注意脉冲异步时序电路对输入脉冲的两个限制条件 。
例,设计一个,X1- X2- X2”脉冲序列检测器。它有两个脉冲输入端 X1和 X2,输出为 Z。要求 X1和 X2不能同时出现在输入端,当输入脉冲序列为,X1- X2- X2”
时,产生一个输出脉冲 Z,其脉冲宽度与 X2相同。
解,( 1)作原始状态表和原始状态图,
A
CD
B
X2/0
X2/1
X1/0 X
1/0 X2/0
X1/0X1/0
X2/0
Qn Q
n+1/Z
X1 X2
A B/ 0 A/ 0
B B/ 0 C/ 0
C B/ 0 D/ 1
D B/ 0 D/ 0
( 2)状态化简
Qn Q
n+1/Z
X1 X2
A B/ 0 A/ 0
B B/ 0 C/ 0
C B/ 0 A/ 1
Qn Q
n+1/Z
X1 X2
10 00/ 0 10/ 0
00 00/ 0 01/ 0
01 00/ 0 10/ 1
( 3)状态分配根据状态分配的基本原则,得到 A= 10,B= 00,
C= 01。
将时钟控制端当作激励端来看,故可得以下
D触发器的激励表,
Qn Qn+1 CP D Qn Qn+1 CP D
0 0 d 0
0 1 1 1
1 0 1 0
1 1 d 11 1 0 d
1 0 1 0
0 1 1 1
0 0 0 d
设计时将 D触发器的特征方程写为,
Qn+1=D CP
( 4)选择触发器,确定激励函数和输出函数
X2 X1 Z D1 CP1 D0 CP0
0 0
0 0
0 1
1 0
1 1
0 0
0 1
1 0
1 1
0
0
0
d
d 0
d 0
d 0
d d
d 0
d 0
d 0
d d
0 1
0 0
0 1
1 0
1 1
0 0
0 0
0 0
d d
0
0
0
d
d 0
d 0
0 1
d d
d 0
0 1
d 0
d d
1 0
0 0
0 1
1 0
1 1
0 1
1 0
1 0
d d
0
1
0
d
d 0
1 1
d 0
d d
1 1
0 1
d 0
d d
nn QQ 01 1
011 nn QQ
00 01 11 10
00 0 0 d 0
01 0 0 d 1
11 d d d d
10 0 1 d 0
X2X1
Q1Q0
CP1
00 01 11 10
00 0 0 d 1
01 0 1 d 1
11 d d d d
10 0 0 d 0
X2X1
Q1Q0
CP0
00 01 11 10
00 d d d d
01 d d d 1
11 d d d d
10 d 0 d d
X2X1
Q1Q0
D1
00 01 11 10
00 d d d 1
01 d 0 d 0
11 d d d d
10 d d d d
X2X1
Q1Q0
D0
00 01 11 10
00 0 0 d 0
01 0 0 d 1
11 d d d d
10 0 0 d 0
X2X1
Q1Q0
Z


n
nn
n
nn
n
QD
QXQXCP
QD
QXQXCP
QXZ
00
01120
11
11021
02激励方程和输出方程:
( 5)画逻辑电路图
Q0
Q1X
2
X1
&
&
&
D1
CP1
&
&
&
D0
CP0
& & Z
例,设计一个脉冲异步时序电路,该电路有 3个输入端 x1,x2和 x3,一个输出端 Z。
当且仅当电路接收的输入脉冲序列为
x1- x2- x3时,输出 Z由 0变成为 1,仅当又出现一个 x2脉冲时,输出 Z才由 1
变为 0。
典型的输入、输出波形如图所示
x1
x2
x3
Z
解,用 Moore电路实现
建立原始状态图和状态表
A/0 B/0
D/1 C/0
x1
x2
x3
x2 x
2
x1
x3
x2x
3 x1
x1x
3
由观察法可见该表已是最简状态表,无需再化简。
现 态
y
次态 y(n+1)
x1 x2
A
B
C
D
输 出
Z
0
0
0
1
x3
B
B
B
D
A
C
A
A
A
A
D
D
状态分配:
由原则 1得 AB,AC,CD,BC,AD应相邻。
由原则 2得 AB,AC,BC,AD应相邻。
由原则 3得 AB,AC,BC应相邻。
由原则 4得 A为逻辑 0。
y2
y1 0 1
A D
CB
0
1
现 态
y
次态 y(n+1)
x1 x2
A
B
C
D
输 出
Z
0
0
0
1
x3
B
B
B
D
A
C
A
A
A
A
D
D
现 态
y2 y1
次态 y2(n+1)y1(n+1)
x1 x2
0 0
0 1
1 1
1 0
输 出
Z
0
0
0
1
x3
0 1
0 1
0 1
1 0
0 0
1 1
0 0
0 0
0 0
0 0
1 0
1 0
二进制状态表
y2
y1 0 1
A D
CB
0
1
确定激励函数和输出函数表达式
D2x1x2x3
y2y1 100 010
d 0
10
00
01
001
11
10
d
d
0 0 d
d0d
CP2x1x2x3
y2y1 100 010
0 d
1d
00
01
001
11
10
0
0
1 1 0
010
x1x2x3
y2y1 100 010
1 d
d1
00
01
001
11
10
0
0
d 0 0
00d
D1CP1x1x2x3
y2y1 100 010
1 0
0d
00
01
001
11
10
d
1
0 1 1
dd0
现态
y2y1
次态
x1 x2
00
01
11
10
输出
Z
0
0
0
1
x3
01
01
01
10
00
11
00
00
00
00
10
10
状态表注:化简只能在指定列中进行。
D1=x1
CP1= x1y2 + x2y2 + x3
由上面的卡诺图,可得
D2=x2y2y1
CP2= x1y1+ x2
Z=y2y1
&
&
& &
&
1?1
x1 x2 x3
D2 D1
Z
y2 y1
CP2 CP1
画出逻辑电路图,
设计一个二位二进制加/减计数器。电路有一条输入线 Y用于计数脉冲的输入,另一条输入线 M加电平控制信号。当 M= 0时,进行加法计数;当 M= 1时,进行减法计数。
解,( 1)作原始状态图和原始状态表。
B
A C
D
Y 0
Y 0 Y 0
Y 0
Y 1
Y 1
Y 1
Y 1
Qn Q
n+1/Z
YM=10 YM=11
A B D
B C A
C D B
D A C
Qn Q
n+1/Z
YM=10 YM=11
00 01 11
01 10 00
11 00 01
10 11 01
Qn Q
n+1/Z
YM=10 YM=11
A B D
B C A
C D B
D A C
( 2)状态分配状态分配如下,A= 00,B= 01,C= 10和 D= 11
( 3)选择触发器和确定控制(激励)函数。
Y M D1 CP1 D0 CP0
1 0
1 0
1 0
1 0
1 1
1 1
1 1
1 1
0 0
0 1
1 0
1 1
0 0
0 1
1 0
1 1
0 1
1 0
1 1
0 0
1 1
0 0
0 1
1 0
d 0
1 1
d 0
0 1
1 1
d 0
0 1
d 0
1 1
0 1
1 1
0 1
1 1
0 1
1 1
0 1
1011 nn QQnn QQ 01
YM
Q1Q2 00 01 11 10
00 0 0 1 1
01 0 0 1 1
11 0 0 1 1
10 0 0 1 1
YM
Q1Q2 00 01 11 10
00 d d 1 1
01 d d 0 0
11 d d 0 0
10 d d 1 1
YM
Q1Q2 00 01 11 10
00 0 0 1 0
01 0 0 0 1
11 0 0 0 1
10 0 0 1 0
YM
Q1Q2 00 01 11 10
00 d d 1 d
01 d d d 1
11 d d d 0
10 d d 0 d
( CP0) ( D0)
( CP1) ( D1)

n
nn
n
QD
YMQMYQCP
QD
YCP
11
001
00
0
CP0
D1
CP0
D0
≥ 1
&
1
Y
M
Q0Q1
( 4)画逻辑图例,试用 J-K触发器设计一个异步六进制加法计数器,
000 001 010
101 100 011
cp/0 cp/0
cp/0
cp/0cp/0
cp/1
做六进制加法计数器的状态图,
将时钟控制端当作激励端来看,故可得以下 J-K触发器的激励表,
Qn Qn+1 CP J K Qn Qn+1 CP J K
0 0 d 0 d
0 1 1 1 d
1 0 1 d 1
1 1 d d 01 1 0 d d
1 0 1 d 1
0 1 1 1 d
0 0 0 d d
设计时将 J-K触发器的特征方程写为,
Qn+1=(JQn + KQn)CP
0 0 0 0 0 1 0 0 1 0
0 0 1 0 1 0 d 1 1 0
0 1 0 0 1 1 0 0 1 0
0 1 1 1 0 0 1 1 1 0
1 0 0 1 0 1 0 0 1 0
1 0 1 0 0 0 1 d 1 1
1 1 0 d d d d d d d
1 1 1 d d d d d d d
Q3nQ2nQ1n Q3n+1Q2n+1Q1n+1 CP3CP2CP1 Z
0 0 0 0 0 1 d d d d 1 d 0 0 1 0
0 0 1 0 1 0 0 d 1 d d 1 d 1 1 0
0 1 0 0 1 1 d d d d 1 d 0 0 1 0
0 1 1 1 0 0 1 d d 1 d 1 1 1 1 0
1 0 0 1 0 1 d d d d 1 d 0 0 1 0
1 0 1 0 0 0 d 1 0 d d 1 1 d 1 1
1 1 0 d d d d d d d d d d d d d
1 1 1 d d d d d d d d d d d d d
Q3nQ2nQ1n Q3n+1Q2n+1Q1n+1 J3 K3 J2 K2 J1 K1
Qn Qn+1 CP J K
0 0 0 d d
0 1 1 1 d
1 0 1 d 1
1 1 0 d d
Qn Qn+1 CP J K
0 0 d 0 d
0 1 1 1 d
1 0 1 d 1
1 1 d d 0
CP3 CP2 CP1 Z
.
Q2nQ1n
00 01 11 10
0
1
1 1
1 d
1 1
1 d
Q3n
CP1
CP1=1 J1=1 K1=1
Z=Q3n Q2n Q1n
0 0 0 0 0 1 d d d d 1 d 0 0 1 0
0 0 1 0 1 0 0 d 1 d d 1 d 1 1 0
0 1 0 0 1 1 d d d d 1 d 0 0 1 0
0 1 1 1 0 0 1 d d 1 d 1 1 1 1 0
1 0 0 1 0 1 d d d d 1 d 0 0 1 0
1 0 1 0 0 0 d 1 0 d d 1 1 d 1 1
1 1 0 d d d d d d d d d d d d d
1 1 1 d d d d d d d d d d d d d
Q3nQ2nQ1n Q3n+1Q2n+1Q1n+1 J3 K3 J2 K2 J1 K1 CP3 CP2 CP1 Z
.
Q2nQ1n
00 01 11 10
0
1
0 1
d d
1 0
0 d
Q3n
Q2nQ1n
00 01 11 10
0
1
d d
0 d
1 d
d d
Q3n
J2CP2
CP2=Q1 J2=Q3 K2=1
0 0 0 0 0 1 d d d d 1 d 0 0 1 0
0 0 1 0 1 0 0 d 1 d d 1 d 1 1 0
0 1 0 0 1 1 d d d d 1 d 0 0 1 0
0 1 1 1 0 0 1 d d 1 d 1 1 1 1 0
1 0 0 1 0 1 d d d d 1 d 0 0 1 0
1 0 1 0 0 0 d 1 0 d d 1 1 d 1 1
1 1 0 d d d d d d d d d d d d d
1 1 1 d d d d d d d d d d d d d
Q3nQ2nQ1n Q3n+1Q2n+1Q1n+1 J3 K3 J2 K2 J1 K1 CP3 CP2 CP1 Z
Q2nQ1n
00 01 11 10
0
1
0 1
1 d
d 0
0 d
Q3n
CP3 Q
2nQ1n
00 01 11 10
0
1
d 1
d
0 d
d d
Q3n
J3
CP3=Q1 J3=Q2 K3=1
d
0 0 0 0 0 1 d d d d 1 d 0 0 1 0
0 0 1 0 1 0 0 d 1 d d 1 d 1 1 0
0 1 0 0 1 1 d d d d 1 d 0 0 1 0
0 1 1 1 0 0 1 d d 1 d 1 1 1 1 0
1 0 0 1 0 1 d d d d 1 d 0 0 1 0
1 0 1 0 0 0 d 1 0 d d 1 1 d 1 1
1 1 0 d d d d d d d d d d d d d
1 1 1 d d d d d d d d d d d d d
Q3nQ2nQ1n Q3n+1Q2n+1Q1n+1 J3 K3 J2 K2 J1 K1 CP3 CP2 CP1 Z
检查能否自启动,
Q3nQ2nQ1n Q3n+1Q2n+1Q1n+1 CP3CP2CP1 Z
1 1 0 1 1 1 0
1 1 1 0 0 0 0
J Q3
Q3K
J Q2
Q2K
J Q1
Q1K
CP
Z
1
&



Z=Q3n Q2n Q1nCP2=Q1 J2=Q3 K2=1
CP3=Q1 J3=Q2 K3=1CP1=1 J1=1 K1=1