Download presentation
Presentation is loading. Please wait.
2
第四章 同步时序电路的分析 4.4.1 二进制串行计数器 4.4.2 二进制同步计数器 4.4.3 用跳越的方法实现任
时序电路概述 时序电路的一般形式 时序电路的分类 时序电路的描述方法 双稳态元件 S-R 锁存器 /S- /R 锁存器 带使能端的S- R 锁存器 D 锁存器 边沿触发D触发器 主从S-R 触发器 主从J-K 触发器 边沿触发J-K 触发器 T 触发器 同步时序电路的分析方法 计数器 二进制串行计数器 二进制同步计数器 用跳越的方法实现任 意模数的计数器 强置位计数器 预置位计数器 修正式计数器 MSI 计数器及应用 寄存器 并行寄存器 移位寄存器 MSI寄存器应用举例 节拍分配器 计数型节拍分配器 移位型节拍分配器 MSI节拍分配器举例
3
第四章 同步时序电路的分析 Sequential Logic Circuit Analysis
4.1 时序电路概述 Summarization 数字逻辑电路可分为两大类: 组合逻辑电路 时序逻辑电路 组合电路是指它的输出仅由当前输入决定。 时序电路是指它的输出不仅取决于当前输入,而且也取决于过去的输入序列,即过去输入序列不同,则在同一当前输入的情况下,输出也可能不同。
4
4.1.1 时序电路的一般形式 Structure 输入 输出 状态 激励(控制) ••• x1 xn z1 zm y1 yl
组合电路 存储电路 ••• x1 xn z1 zm y1 yl Y1 Yr 时序电路输出 输出 存储电路输入 内部输出 激励(控制) 时序电路输入 输入 存储电路输出 内部输入 状态 输出函数 zi = fi (x1,x2,…,xn,y1,y2,…,yl) i= 1,2,…,m; 激励(控制)函数 Yi = gi (x1,x2,…,xn,y1,y2,…,yl) i= 1,2,…,r;
5
4.1.1 时序电路的一般形式 Structure 输入x 的变化 激励Y 的变化 状态(现态y →次态yn+1)
z1~zm :为外部状态; y1~yr :为内部状态,即时序电路的 “状态”。 输入x 的变化规律 输出z 的变化规律 状态y 的变化规律 输入x 的变化 激励Y 的变化 状态(现态y →次态yn+1)
6
时序电路的变化规律 输入x 的变化 激励Y 的变化 状态(现态y →次态yn+1) 输入x 的变化规律 输出z 的变化规律
状态变化的描述:现态——某一时刻输入变化前的电路状态; 次态——当输入变化后的电路状态(即电路将要进入的状态);
7
4.1.2 时序电路的分类 1、按照引起状态发生变化的原因可分为:
时序电路的分类 1、按照引起状态发生变化的原因可分为: 同步时序电路:其状态的改变受同一个时钟脉冲的 控制,且与时钟脉冲同步。即电路在统一时钟控制CLK (或CP)下,同步改变状态。 异步时序电路:无统一的时钟脉冲使整个系统的工 作同步,输入直接引起状态改变。
8
4.1.2 时序电路的分类 2、按输入信号x的特性可分为:脉冲输入和电平输入。
时序电路的分类 2、按输入信号x的特性可分为:脉冲输入和电平输入。 在同步时序电路中,输入信号 x 相对时钟脉冲 CP 的变化速度而言,如果输入信号 x 在两个时钟脉冲之间信号完成0→1→0 (或 1 →0 →1) 两次变化则为脉冲输入,否则为电平输入。 在异步时序电路中,输入信号x按照电路研究的目的区分:如果研究的是输入信号 x 完成0 →1→0 (或1 →0 →1)两次变化对电路的影响,则为脉冲输入,否则为电平输入。 即:脉冲输入:在两个时钟脉冲之间信号完成 0→1→0 (或 1 →0 →1) 两次变化后对电路的影响; 电平输入:信号完成 0 →1 (或 1 →0) 一次变化对电路的影响。
9
4.1.2 时序电路的分类 3、按输出特性可分为:Mealy型和Moore型。 Mealy型电路 Moore型电路 输入 激励 现态 输出
时序电路的分类 3、按输出特性可分为:Mealy型和Moore型。 次态逻辑 G 状态 存储器 时钟输入 输出逻辑 F 输入 激励 现态 输出 时钟信号 Mealy型电路 次态逻辑 G 输出逻辑 F 状态 存储器 时钟输入 输出 输入 时钟信号 激励 现态 Moore型电路
10
4.1.3 时序电路的描述方法 1、次态方程 Characteristic Equation 次态yn+1 = Qa (激励Y)
时序电路的描述方法 1、次态方程 Characteristic Equation 次态yn+1 = Qa (激励Y) 激励Y = G (输入x,现态y) 次态yn+1 = Q (输入x,现态y) 2、次态真值表 将输入x及现态y列在真值表左边,次态yn+1列在右边。 3、次态卡诺图 次态方程用卡诺图的形式表示出来,既次态卡诺图。
11
1 y0 y1 y3 y2 1 y0 y1/0 y3 /1 y1 y2/0 y0 /0 y2 y3/0 y1 /0 y3 y0/1
4、状态表 State-table 无外部输出的状态表 Mealy 型状态表 Moore 型状态表 x y 1 y0 y1 y3 y2 1 y0 y1/0 y3 /1 y1 y2/0 y0 /0 y2 y3/0 y1 /0 y3 y0/1 y2 /0 1 z y0 y1 y3 y2 yn+1(次态) yn+1/z(次态/输出) Mealy 型电路的读表(或图)的次序是: 现态y → 输入x → 输出z → 次态yn+1 Moore 型电路的读表(或图)的次序是: 现态y → 输出z → 输入x → 次态yn+1
12
y0 y1/0 y3 /1 y1 y2/0 y0 /0 y2 y3/0 y1 /0 y3 y0/1 y2 /0
5、状态图 State-diagrams Mealy 型状态表 x y y0 y1 y2 y3 0/0 1/0 0/1 1/1 a. Mealy 型状态图 1 y0 y1/0 y3 /1 y1 y2/0 y0 /0 y2 y3/0 y1 /0 y3 y0/1 y2 /0 yn+1/z(次态/输出)
13
1 z y0 y1 y3 y2 5、状态图 State-diagrams x y b. Moore 型状态图 yn+1(次态)
1 z y0 y1 y3 y2 x x x x x y3/1 y2/0 x b. Moore 型状态图 yn+1(次态)
14
Mealy 型电路的读表(或图)的次序是: 现态y → 输入x → 输出z → 次态yn+1
5、状态图 State-diagrams y0 y1 y2 y3 0/0 1/0 0/1 1/1 y0/0 x y1/0 y2/0 y3/1 a. Mealy 型状态图 b. Moore 型状态图 Mealy 型电路的读表(或图)的次序是: 现态y → 输入x → 输出z → 次态yn+1 Moore 型电路的读表(或图)的次序是: 现态y → 输出z → 输入x → 次态yn+1
15
4.2 双稳态元件 Bistable Element
双稳态元件是构成存储电路的基本模块,通常指锁存器或触发器。双稳态元件的特点是: ⑴ 有两个稳定状态,分别表示存储数码 0 或 1。 ⑵ 在一定的触发信号作用下,它可从一个稳态翻转到另一个稳态。 作用:每个双稳态元件可保存一位二进制数,对应一个状态变量。 每个双稳态元件有两个互反的输出端 Q 和 /Q, 分别被称为:1 态 (Q = 1,/Q = 0) 0 态 (Q = 0,/Q = 1) 触发器或锁存器翻转前的状态称为现态 Qn (Q), 翻转后的状态称为次态 Qn+1。
16
4.2.1 S-R 锁存器(Set-Reset Latche)
Vin1 Vin2 Vout1 Vout2 Q /Q 1 右图(a)中,电路有两个稳态: Vout1= Vin2 =1 Vout2= Vin1 =0 及 Vout1= Vin2 =0 Vout2= Vin1 =1 由于图(a)电路的两个稳态Q、/Q不能由外部控制,为此增加两个输入端:S(置位)、 R(复位) 则得到S-R锁存器,如图(b)。 (b) 一对或非门组成的S-R锁存器 Q /Q ≥1 R S
17
4.2.1 S-R 锁存器 R Q f. 逻辑符号 S R Qn+1 0 0 Q 0 1 1 0 1 1 1 d /Q S a. 电路图
≥1 Q f. 逻辑符号 ≥1 S R Qn+1 Q 1 d /Q S a. 电路图 S R Q Qn+1 1 d c. 简化的次态真值表 SR Q d. 卡诺图 00 01 11 10 d 1 b. 次态真值表 e. 次态方程 Qn+1 = S + R • Q 约束条件 S • R = 0
18
由功能表得到的典型操作时序图如下图所示。
根据组合电路的分析方法 可得到功能表如右表。 S R Q /Q 保持不变 g. 功能表 由功能表得到的典型操作时序图如下图所示。 S R Q /Q h. 正常输入 i. S 和 R 同时有效
19
S-R 锁存器(S-R Latche)的逻辑符号如下图所示。
S Q R Q S Q R Q S Q R Q S 1 R 0 S 1 R 1 S 1 R 0 (a)旧的逻辑符号 (b)改进的逻辑符号 (c)不正确的逻辑符号 说明:图(b)的表示方法较好; 图(a)的表示方法不太好,但可以使用; 图(c)的表示方法完全错了,因为它的低有效输出端出现了两次非,因而导致含义错。
20
4.2.2 /S- /R 锁存器(/S-/R Latche)
& Q /S- /R 锁存器是由与非门构成的具有低有效置位及复位输入端的电路。 & /Q /R /S-/R锁存器与S-R锁存器的主要区别是: ⑴ /S 及 /R 都是低有效,因此当 /S=/R= 1 时,电路输出保持不变。 ⑵ 当 /S 及 /R 同时有效时,前者的输出 Q 及 /Q 都变为 1;而后者是当 S 及 R 同时有效时,输出 Q 及 /Q 都变为 0。这两种情况的输出都不满足Q 与 /Q的互补关系
21
4.2.2 /S - /R 锁存器 c. 简化的次态真值表 g. 逻辑符号 d. 功能表 /S /R Q /Q a. 电路图 /S /R
& /S /R Q /Q a. 电路图 /S /R Qn+1 d 1 Q S R Q /Q 0 0 0 1 1 0 1 1 保持不变 /S /R Q Qn+1 d 1 /S/R Q e. 卡诺图 00 01 11 10 d 1 b. 次态真值表 f. 次态方程 Qn+1 = S + RQ 约束条件 S • R = 0
22
4.2.3 带使能端的S- R 锁存器 S-R latche with enable
利用使能输入端信号C 进行控制,即当使能信号 C 有效时,输入才影响输出。如电路图所示: Q /Q & S C R a. 用与非门实现的电路
23
4.2.3 带使能端的S-R 锁存器 c. 次态方程: Qn+1 = S + R • Q 约束条件 S • R = 0 S Q C R /Q
& & Q S R Q C C & R /Q d. 逻辑符号 c. 次态方程: Qn+1 = S + R • Q 约束条件 S • R = 0 S R C Q /Q 保持不变 d d b. 功能表
24
带使能端的S-R 锁存器的工作过程 Q /Q S C R & S R C Q /Q 电路图
25
D 锁存器 D Latche S-R 锁存器由于能够独立地控制置位端及复位端,因此,它可应用在根据某些条件置位而在某些条件下复合的场所,但这需要置位复位二根输入线。在实际工作中经常需要简单地锁存一位二进制,这时应用D锁存器更方便些。 & D Q /Q C 1 S R (a) 用与非门实现D锁存器 S=D R=D
26
D 锁存器的工作过程 D Q /Q C & 1 D C Q
27
D 锁存器小结 a. 电路图 e. 逻辑符号 D Q Q n+1 0 0 0 1 1 0 1 1 1 D Q n+1 1 d. 次态方程
C & 1 a. 电路图 D Q C Q e. 逻辑符号 1 D Q D Q Q n+1 1 D Q n+1 1 d. 次态方程 Qn+1 = D b. 次态真值表 c. 简化的次态真值表
28
4.2.5 边沿触发D触发器 Edge-triggered D Flip-flop
6 Q /Q /PR /CLR CLK D a b c 1 2 3 4 5 边沿触发器是指,在控制信号的有效边沿(前沿或后沿)时接收数据。 有效沿,建立时间,保持时间 D 触发器的结构如右图所示。
29
4.2.5 边沿触发D触发器 D 触发器包括: ① 一个带时钟控制的SR触发器 (由门1,门2,门3和门4组成)
6 Q /Q /PR /CLR CLK D a b c 1 2 3 4 5 D 触发器包括: ① 一个带时钟控制的SR触发器 (由门1,门2,门3和门4组成) ② 两个信号接收门(门5和门6) 门5和门6是为了生成互补数据 D 和 D ,并加在门3、门4的输入端上。 其中: D 是数据输入端; PR (Preset) 和 CLR (Clear) 是强制置 1 和置 0 端; a、b、c 三条线是内部反馈线。
30
D 触发器的工作过程(1):初态 Q = 0 Q /Q CLK D a b c 1 2 3 4 5 6 CLK D Q
31
D 触发器的工作过程(2): CLK D Q Q /Q CLK D a b c 1 2 3 4 5 6
32
D 触发器的工作过程(3): CLK D Q Q /Q CLK D a b c 1 2 3 4 5 6
33
D 触发器的工作过程(4): CLK D Q Q /Q CLK D a b c 5 6 3 4 1 2
34
D 触发器的工作过程(5): CLK D Q Q /Q CLK D a b c 5 6 3 4 1 2
35
D 触发器的工作过程(6): CLK D Q Q /Q CLK D a b c 5 6 3 4 1 2
36
D 触发器的工作过程(7): CLK D Q Q /Q CLK D a b c 5 6 3 4 1 2
37
(/PR 、/CLR一般在系统初始化时使用)
D触发器的功能分析: 上述分析可以看出, D触发器的状态改变只发生在CLK脉冲的上升沿,而CLK脉冲保持高电平期间信号端D的变化并不会影响Q端的输出。因此D触发器被称为边沿触发的维持-阻塞触发器。 6 Q /Q /PR /CLR CLK D a b c 1 2 3 4 5 图中:a反馈线被称为置0阻塞线 b反馈线被称为置1维持线 c反馈线被称为置0维持线 /PR是强制置 1 端 /CLR是强制置 0 端 (/PR 、/CLR一般在系统初始化时使用)
38
Qn+1 = D D 触发器小结 d. 次态方程: D Q b. 功能表 a. 前沿触发D触发器 c. 次态真值表
1 D Q >CLK PR CLR D CLK Q /Q ↑ ↑ d 保持不变 d b. 功能表 d. 次态方程: Qn+1 = D a. 前沿触发D触发器 D 触发器接收数据期间 tsetup thold 这段时间输入数据不应变化 D Qn+1 1 c. 次态真值表 e. D 触发器的两个工作时间
39
Qn+1 = D D 触发器小结 d. 次态方程 b. 功能表 a. 后沿触发D触发器 D Q c. 次态真值表 >CLK D CLK
PR CLR D CLK Q /Q ↓ ↓ d 保持不变 d b. 功能表 a. 后沿触发D触发器 D Q 1 D Qn+1 1 d. 次态方程 Qn+1 = D c. 次态真值表
40
4.2.6 主从S-R 触发器 Master/slave S-R Flip-flop
主从触发器由主触发器和从触发器两部分构成。 主从触发器是在脉冲下降沿改变输出: 即: ① 在触发脉冲C作用时间(C为高电平期间),S、R状态的变化将记入主触发器; ② 在C下降沿时间,从触发器接收此时刻的主触发器状态。 S R CLK QM /QM Q /Q S Q C R Q 1 a. 用两个带使能端 S-R 锁存器构成的触发器
41
主从S-R 触发器的特性: S R C Q /Q d d 0 0 0 0 0 1 0 1 0 0 1 1 0 保持不变 0 1 1 0
保持不变 不确定 由于主从触发器的输出在触发脉冲上升边时并不马上改变,因此在逻辑符号上,输出端应加输出限定符号“ ”表示延迟输出。 c. 功能表 此外,主从触发器虽然是在触发信号的下降沿改变输出,但它并不是后沿触发的边沿触发器,因此在逻辑符号中控制输入端 C上即没有动态输入限定符号,也没有逻辑非符号(延迟输出符号 “ ” 已表示了下降沿改变输出的 特性)。 S R Q C d. 逻辑符号 主从S-R触发器的次态真值表即次态方程于带使能端的 S-R 锁存器相同。
42
主从S-R 触发器工作过程时序图: a. 电路图 e. 时序图 1 S R CLK Q /Q S Q C R Q S R CLK Q QM
43
4.2.7 主从J-K 触发器 Master/slave J-K Flip-flop a. 用S-R 锁存器构成的JK触发器
J-K 触发器利用输出Q及/Q不会同时为1或0这一特性,将输入端J、K先分别同/Q及Q “相与” 后再输入到主触发器的S、R输入端,见图(a)。 /QM 1 QM Q /Q & J K CLK S Q C R Q a. 用S-R 锁存器构成的JK触发器
44
主从J-K触发器的特性: J K C Q /Q d d 0 0 0 0 0 1 0 1 0 0 1 1 0 保持不变 0 1 1 0 变反
保持不变 变反 J K Q Q n+1 1 b. 功能表 J K Q n+1 0 0 0 1 1 0 1 1 Q 1 c. 次态真值表 JK Q d. 卡诺图 00 01 11 10 1 d. 简化的次态真值表 次态方程 Q n+1 =J • Q + K • Q
45
主从J-K 触发器工作过程时序图: /QM 1 QM Q /Q & J K CLK S Q C R Q J K C QM e. 时序图 Q
46
主从J-K触发器的逻辑符号: 当J=K=0时,触发器处于保持状态; 当J =K=1时, Qn+1 =Q。触发器具有计数功能。
为使触发器稳定工作,要求触发脉冲的最小宽度需大于主触发器的状态转换稳定时间. 与主从S-R 触发器一样,在触发脉冲后沿到达前一段时间,输入J、K信号值应持续不变。 为了使触发器预先置于某一初始状态,在电路中还设置了一个直接置位端SD及直接复位端RD, 如右图所示。 J CLK K SD Q RD f. 逻辑符号
47
4.2.8 边沿触发J-K 触发器 Edge-triggered J-K Flip-flop
边沿触发 J-K触发器类似于 D 触发器也要求有建立时间和保持时间,但其建立时间较脉冲触发的 JK 触发器为短,因此应用更为广泛。 JK 触发器常用于同步时序电路中,不过大部分时序电路采用的是 D触发器。这是由于 D触发器只需一个数据输入端,使得设计出的电路更加简单。 D Q Q /Q J K CLK 1 > ≥1
48
边沿触发J-K 触发器(由D触发器构成的等价电路)
≥1 D Q Q /Q J K CLK 1 > a. 电路图 其中:D 输入端的逻辑表达式为 D=J • Q + K • Q 而 D 触发器的次态方程为: Qn+1=D 因此,有: Qn+1 = J • Q+K • Q
49
边沿触发J-K 触发器的特性: J K CLK Q /Q d d 0 d d 1 0 0 0 1 0 1 0 0 1 1 0 0 1 1 0
0 0 保持不变 变反 J >CLK K Q b. 功能表 c. 逻辑符号 J K CLK Q d. 工作时序图
50
4.2.9 T触发器 T Flip-flop T触发器是一个计数触发器,其功能为:
当 T = 1 时,每来一个计数脉冲CLK,输出就变反一次。 T Q Q n+1 0 0 0 1 1 0 1 1 1 a. 逻辑符号 T Q CLK > Q c. 次态真值表 T CLK Q /Q d 0 d 1 0 d 1 1 保持不变 变反 T Q 1 T Q n+1 1 Q e. 次态方程 Q n+1 =T • Q + T • Q b. 功能表 d. 简化次态真值表
51
T 触发器的实现 T CLK Q /Q K CLK T Q /Q D b. 用J-K触发器实现 a. 用 D 触发器实现 T CLK Q
> K CLK T Q /Q =1 D b. 用J-K触发器实现 a. 用 D 触发器实现 T CLK Q c. T 触发器典型时间图
52
无使能控制的 T 触发器 T触发器的 T 端实际是一个使能控制端,当 T=1时,触发器T 才处于计数状态。在一些应用场合无需使能控制,这种 T触发器很容易用 D触发器及 JK触发器构成, 下图给出了无使能控制端的 T触发器的逻辑符号、电路构成及工作时序图。 a. 逻辑符号 Q CLK > b. 由D触发器构成 Q /Q D CLK c. 用J-K触发器构成 1 J CLK > K Q /Q CLK Q d. 工作时序图
53
4.3 同步时序电路的分析方法 Clocked Synchronous Circuit Analysis Methods
时序电路的分析是根据逻辑电路图得到反映时序电路工作特性的状态表及状态图。因此,分析工作从组合逻辑的分析着手,一般步骤如下: (1)列出激励函数及输出函数表达式: 激励函数 = G( 输入,现态 ) Mealy型输出 = F( 输入,现态 ) Moore型输出 = F( 现态 ) (2)根据触发器的次态方程得到各个状态的次态方程: 次态 = Q( 输入,现态 ) (3)根据状态变量的次态方程填写二进制状态表。
54
同步时序电路的分析方法(续) 例1 分析如图所示电路的特性。 (4)根据输出表达式填写输出值到二进制状态表,从而得到二进制状态输出表。
(5)每一个状态分配一个字母状态名,从而得到状态输出表。 (6)根据状态输出表,画出状态图。 (7)电路特性描述,确定电路的逻辑功能。 下面结合实例,对上述步骤作具体说明。 例1 分析如图所示电路的特性。
55
Z D0 X Q0 D1 Q1 CLK & 次态逻辑 状态存储器 输出逻辑 ≥1 1 激励 Q 现态 用 D 触发器组成的Mealy 型电路
56
代入D0,D1,则表达式为: Q0 n+1 = XQ0 + XQ0 分析步骤如下: D0 = XQ0 + XQ0
(1)列出激励函数及输出函数表达式: D0 = XQ0 + XQ0 D1 = XQ1 + XQ1Q0 + XQ1Q0 Z = XQ1Q0 (2)写出各状态变量的次态方程。 由 D触发器的次态方程:Q n+1=D,可得: Q0 n+1 = D Q1 n+1 = D1 代入D0,D1,则表达式为: Q0 n+1 = XQ0 + XQ0 Q1 n+1 = XQ1 + XQ1Q0 + XQ1Q0 (3)填写二进制状态表,见表(a)。 (4)填写二进制状态输出表,见表(b)。
57
(3)填写二进制状态表 (4)填写二进制状态输出表 0 1 00 01 10 11 00/0 01/0 01/0 10/0
X Q1Q0 Q Q0 n+1 00 01 10 11 00/ /0 01/ /0 10/ /0 11/ /0 n+1 (4)填写二进制状态输出表 X Q1Q0 Q Q /Z n+1 00 01 10 11 00/ /0 01/ /0 10/ /0 11/ /1
58
(6)根据状态输出表画出状态图,见图(d)。
(5)写出状态/输出表 设定 00 = A, 01 = B, 10 = C, 11 = D 则 可得到状态输出表(c) 其中:S—现态 Sn+1—次态 0/0 C A B D 1/0 1/1 X/Z (d)状态图 (c) 状态/输出表 X S S n+1 /Z A B C D A/0 B/0 B/0 C/0 C/0 D/0 D/0 A/1 (6)根据状态输出表画出状态图,见图(d)。
59
时钟节拍 1 2 3 4 5 6 7 8 X S A B C D S n+1 Z (7)电路特性描述 由状态图可看出,此电路功能为:
当输入 4 个“1”时,输出为1。 假设从初态A开始,输入X为: 按照状态图列出状态响应序列如下: 时钟节拍 1 2 3 4 5 6 7 8 X S A B C D S n+1 Z
60
C A B D X Z CLK Z X/Z 0/0 CLK Q1 1/1 Q0 1/0 (b) 电平输入的典型时间图 (a) 状态图 CLK
1 CLK X Z Q1 Q0 (c) 脉冲输入的典型时间图
61
C A B D X Z X Z 如果全部信号在触发沿变化 X/Z 0/0 CLK CLK Q1 1/1 Q0 1/0
输入 (d) 触发边沿与读值 1 X Q1 Q0 Z (b) 电平输入的典型时间图
62
C A B D (a) 状态图 CLK Z CLK Z 如果全部信号在触发沿变化 X/Z 0/0 X Q1 1/1 Q0 1/0
输入 (d) 触发边沿与读值 1 CLK X Z Q1 Q0 (c) 脉冲输入的典型时间图
63
例2 分析如图所示电路电路。 Z x y & 1 用 JK 触发器组成的Moore型电路 J0 Q0 J Q K0 K Q1 J1 K1
例2 分析如图所示电路电路。 J0 Q0 1 Z x y CLK Q1 K0 J1 K1 ≥1 J Q K & 用 JK 触发器组成的Moore型电路
64
= x • y • Q0 + x • y • Q0 + x • Q1 • Q0 + y • Q1 • Q0
分析步骤如下: (1) 列出激励函数及输出函数表达式: J0 = x • y K0 = x • y + y • Q1 J1 = x • Q0 + y K1 = y • Q0 + x • y • Q0 Z = Q1 • Q0 + Q1 • Q0 (2) 列出状态变量的次态方程: 由 JK触发器的次态方程:Q n+1 = JQ + KQ,可得: Q0n+1 = J0 • Q0 + K0 • Q0 = x • y • Q0 + x • y • Q0 + x • Q1 • Q0 + y • Q1 • Q0 Q1n+1 = J1 • Q1 + K1 • Q1 = x • Q1 • Q0 + y • Q1 + x • y • Q1 + y • Q1 • Q0 + y • Q1 • Q0 + x • Q1 • Q0
65
J0 = x • y K0 = x • y + y • Q1 J1 = x • Q0 + y
(3)用激励/转换表导出状态表: x y Q1 Q0 J1 K1 J0 K0 0 0 1 1 1 0 J0 = x • y K0 = x • y + y • Q1 J1 = x • Q0 + y K1 = y • Q0 + x • y • Q0 Z = Q1 • Q0 + Q1 • Q0
66
J0 = x • y K0 = x • y + y • Q1 J1 = x • Q0 + y
(3)用激励/转换表导出状态表: x y Q1 Q0 J1 K1 J0 K0 0 0 1 1 1 0 J0 = x • y K0 = x • y + y • Q1 J1 = x • Q0 + y K1 = y • Q0 + x • y • Q0 Z = Q1 • Q0 + Q1 • Q0
67
J0 = x • y K0 = x • y + y • Q1 J1 = x • Q0 + y
(3)用激励/转换表导出状态表: x y Q1 Q0 J1 K1 J0 K0 J0 = x • y K0 = x • y + y • Q1 J1 = x • Q0 + y K1 = y • Q0 + x • y • Q0 Z = Q1 • Q0 + Q1 • Q0
68
J0 = x • y K0 = x • y + y • Q1 J1 = x • Q0 + y
(3)用激励/转换表导出状态表: x y Q1 Q0 J1 K1 J0 K0 J0 = x • y K0 = x • y + y • Q1 J1 = x • Q0 + y K1 = y • Q0 + x • y • Q0 Z = Q1 • Q0 + Q1 • Q0
69
J0 = x • y K0 = x • y + y • Q1 J1 = x • Q0 + y
(3)用激励/转换表导出状态表: x y Q1 Q0 J1 K1 J0 K0 Z 1 J0 = x • y K0 = x • y + y • Q1 J1 = x • Q0 + y K1 = y • Q0 + x • y • Q0 Z = Q1 • Q0 + Q1 • Q0
70
(3)用激励/转换表导出状态表: x y Q1 J1 K1 0 0 1 0 0 0 1 1 1 1 0 0 1 1 1 Z 1 1 Q0
1 0 0 0 1 1 1 1 0 0 1 1 1 Z 1 Q Q0 n+1 1
71
(3)用激励/转换表导出状态表: x y Q1 J1 K1 0 0 1 0 0 0 1 1 1 1 0 0 1 1 1 Z 1 1 Q0
1 0 0 0 1 1 1 1 0 0 1 1 1 Z 1 Q Q0 n+1 1
72
(3)用激励/转换表导出状态表: x y Q1 Q0 J1 K1 J0 K0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1
(a) 二进制状态表 x y Q1 Q0 J1 K1 J0 K0 Z 1 Q1Q0 xy Q Q0 n+1 Q Q0 n+1 00 01 10 11 (b) 二进制状态/输出表 Q Q /Z n+1 xy Q1Q0 Z 00 01 10 11 1
73
此时序电路有 4 个状态,状态之间的转换由x、y 控制: ① 当 xy = 00 时,原状态保持不变;
(4) 画状态图 00 C/0 D/1 A/1 B/0 01 11 10 X•Y C/0 D/1 A/1 B/0 Y (5) 电路特性说明: 此时序电路有 4 个状态,状态之间的转换由x、y 控制: ① 当 xy = 00 时,原状态保持不变; ② 当 xy = 10 时,状态在A→B → C → D → A循环,并在A、D状态时输出1。
74
③ 当 xy 为 01,11 时,状态转换顺序与起始状态有关: 若起始状态为 A 或 C,则状态在A、C之间循环;
(4) 画状态图 00 C/0 D/1 A/1 B/0 01 11 10 X•Y C/0 D/1 A/1 B/0 Y (5) 电路特性说明: ③ 当 xy 为 01,11 时,状态转换顺序与起始状态有关: 若起始状态为 A 或 C,则状态在A、C之间循环; 若起始状态为 B,则状态将是 B → D → C → A,然后在 A、C 之间循环。
75
例3 分析如图所示电路的特性。 Q D CK CLK Q1 D4 D3 D2 D12 D11 Q4 Q3 /Q4 Q2 /Q1 &
76
分析步骤如下: (1)列出激励函数及输出函数表达式: D4 = Q3 D3 = Q2 D2 = Q1
D1 = D11• D12 = Q4 Q3 Q1 = Q4 Q3 + Q4 Q1 电路的输出函数为:Q4 、Q3 、Q2、 Q1 。 (2)列出状态变量的次态方程: Q4n+1 = D4 = Q Q3n+1 = D3 = Q2 Q2n+1 = D2 = Q1 Q1n+1 = D1 = D11• D12 = Q4 Q3 + Q4 Q1
77
(3) 列出电路次态真值表 (2)次态方程: Q4n+1 = D4 = Q3 Q3n+1 = D3 = Q2 Q2n+1 = D2 = Q1
Q1n+1 = D1 = D11• D12 = Q4 Q3 + Q4 Q1 (3) 列出电路次态真值表 Q4 Q3 Q2 Q1 Q4n+1Q3n+1Q2n+1Q1n+1
78
(3) 列出电路次态真值表 (4) 列出状态表 和 状态图 Q4 Q3 Q2 Q1 Q4n+1Q3n+1Q2n+1Q1n+1 0 0 0 0
和 状态图 Q4 Q3 Q2 Q1 Q4n+1Q3n+1Q2n+1Q1n+1 设状态 = S0 0001 = S1 0010 = S2 • 1111 = S15 代入左表中, 得到状态表,见下 页表(b)和(c)。
79
表(b) 状态表 (c) 状态图 S0 S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S13 S14 S15
Q4 Q3 Q2 Q1 S0 S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S13 S14 S15 Q4n+1Q3n+1 Q2n+1Q1n+1 S0 S1 (c) 状态图
80
表(b) 状态表 (c) 状态图 S0 S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S13 S14 S15
Q4 Q3 Q2 Q1 S0 S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S13 S14 S15 Q4n+1Q3n+1 Q2n+1Q1n+1 S0 S8 S1 S12 S3 S14 S7 S15 (c) 状态图
81
表(b) 状态表 (c) 状态图 S0 S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S13 S14 S15
Q4 Q3 Q2 Q1 S0 S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S13 S14 S15 Q4n+1Q3n+1 Q2n+1Q1n+1 S0 S8 S1 S12 S3 S6 S14 S7 S11 S5 S15 S2 (c) 状态图
82
表(b) 状态表 (c) 状态图 S0 S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S13 S14 S15
Q4 Q3 Q2 Q1 S0 S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S13 S14 S15 Q4n+1Q3n+1 Q2n+1Q1n+1 S13 S0 S10 S4 S8 S1 S12 S3 S6 S14 S7 S11 S5 S15 S2 (c) 状态图 S9
83
(5) 电路特性描述: 该电路共有16个状态。只要电路的初始态为状态图闭合环中某一状态,在时钟脉冲作用下,电路将按箭头所指方向在闭合环中8个状态间循环。这是一个模8步进码计数器。时钟脉冲就是计数信号,这8个状态称为“有效序列”。在闭环以外的8个状态称为“无效序列”。这种电路称为格雷码计数器或 Johnson 计数器,也叫“自恢复扭环移位寄存器”。 如果将电路改动为:D1= D12= Q4,电路就成了单纯的扭环移位寄存器,如图所示: Q D CK CLK Q1 D4 D3 D2 D1 Q4 Q3 /Q4 Q2
84
(a) 有效序列 (b) 无效序列 状态图如图所示:
0000 1111 0111 1110 0011 1100 0001 1000 (a) 有效序列 0010 1101 0110 1010 1011 0100 0101 1001 (b) 无效序列
85
(6) 电路“挂起”的根本原因 若 n 个触发器所表示的 2n 个状态没有全部都用作“有效状态”,则存在多余状态(unsead states),在真值表中就会出现无关项(“don’t-care” states) 。 (7) 电路“挂起”现象的解决办法 为防止电路处于“挂起”,只有采取强制措施,如: 通过对触发器的置位或复位使电路状态处于有效序列状态之一; 或者 设计与此有关的控制线路,使电路状态进入有效序列状态之一,这种控制线路称为“校正网络”。
86
(8) 电路“挂起”现象的解决办法 ① 无效序列的次态无关项全部指向0。 ② 打断一处“无效序列链”,令其指向有效序列。 ③ 根据真值表和卡诺图研究无效序列的生成规律尽可能只改变某一触发器的输入网络,同时进行最简设计。 下面通过研究Johnson 计数器(自校正Johnson 计数器)的设计过程和技巧,来寻找解决挂起问题的方法和规律。
87
d d d d 例:设计八进制步进码计数器。 Q4 Q3 Q2 Q1 Q4n+1Q3n+1Q2n+1Q1n+1 0 0 0 0
d d d d 需要用 4 个触发器: Q4, Q3 , Q2 ,Q1 构成的 16 个组合中: 8 个有效码 8 个无效码(无关项) 列出次态真值表
88
d 1 d 1 d 1 1 d 根据次态真值表,画出计数器的卡诺图。 Q4n+1 Q3n+1 写出次态方程 Q4n+1 = Q3
Q2Q1 Q4Q3 Q4n+1 d 1 Q2Q1 Q4Q3 Q3n+1 d 1 写出次态方程 Q4n+1 = Q3 Q3n+1 = Q2 Q2n+1 = Q1 Q1n+1 = Q4 Q2Q1 Q4Q3 Q2n+1 d 1 Q2Q1 Q4Q3 Q1n+1 1 d
89
d 1 d 1 d 1 1 d Q4n+1 Q4Q3Q2Q1 Q4n+1Q3n+1Q2n+1Q1n+1 0 0 0 0 0 0 0 1
Q3n+1 d 1 1 d Q2n+1 Q1n+1
90
Q4n+1Q3n+1Q2n+1Q1n+1 Q4Q3Q2Q1 无效序列: 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1
0010 1101 0110 1010 1011 0100 0101 1001
91
解决挂起问题 Q4Q3Q2Q1 Q4n+1Q3n+1Q2n+1Q1n+1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1
﹡ 试改变触发器Q1的输入控制函数D来解决挂起问题。 注意: 能解决挂起问题的是“*”的部分。
92
1 d Q1n+1 = Q4 Q3 + Q4 Q1 这就是Johnson 计数器的设计方案。 * * Q1n+1 Q4Q3 Q4Q3Q2Q1
Q4n+1Q3n+1Q2n+1Q1n+1 ﹡ Q2Q1 * * Q1n+1
93
4.4 计数器 Counters 计数器的状态个数称为计数器的模。如图所示的为模 m 的计数器。 计数器状态图的一般结构 S2 S1 S3
94
计数器的分类: ① 按功能:加法计数器,减法计数器,可逆计数器 ② 按进位方式: 串行计数器(异步计数器)Ripple counters 并行计数器(同步计数器)Synchronous counters ③ 按进位基数:二进制计数器 Binary-counters 十进制计数器 decimal-counters 任意进制计数器 n 个触发器可以构成模 m 的计数器,其中:m ≤ 2n。
95
4.4.1 二进制串行计数器 Ripple Counters
⑴ 一个 n 位二进制串行计数器可直接由边沿触发的触发器为基本单元的 n 个触发器构成。 各个基本单元的次态方程为: (计数状态) Qn+1 = Q 由各种类型的触发器所构成的串行计数器的基本单元 D Q CLK (b) D 触发器 J CLK Q K “1” (c) JK 触发器 (a) T 触发器 T Q T Q (d) 后沿触发的 T 触发器
96
Q3n+1 = Q3 Q1n+1 = Q1 Q2n+1 = Q2 Q0n+1 = Q0 串行计数器的连接结构
CLK D0 D1 D2 D3 Q0 Q1 Q2 Q3 D Q ⑵ 计数器中的每一位均可能产生进位或借位,因此每一位触发器的状态变化只同它低一位的触发器状态变化有关,即: Qi 的变化 → CLK i+1 的变化,使有可能 CLK i+1 的变化→ Qi+1 的变化 例 分析左图所示电路。 Q3n+1 = Q3 Q1n+1 = Q1 Q2n+1 = Q2 Q0n+1 = Q0
97
设:初态 Q3 Q2 Q1 Q0 = 0000 Q3 D3 Q0 Q1 Q2 D2 Q2 Q1 Q3 D1 Q0 D0 CLK 1 2 3
4 5 6 7 8 9 10 11 12 13 14 15 16 17 CLK Q0 Q1 Q2 Q3 CLK D0 D1 D2 D3 Q0 Q1 Q2 Q3 D Q
98
设:初态 Q3 Q2 Q1 Q0 = 0000 Q3 D3 Q0 CLK1 Q2 D2 Q1 Q1 Q2 D1 Q3 Q0 D0 CLK 1
4 5 6 7 8 9 10 11 12 13 14 15 16 17 CLK Q1 Q2 Q3 CLK1 Q0 CLK D0 D1 D2 D3 Q0 Q1 Q2 Q3 D Q
99
设:初态 Q3 Q2 Q1 Q0 = 0000 Q3 D3 Q0 CLK1 Q2 D2 Q1 Q1 Q2 D1 Q3 Q0 D0 CLK 1
4 5 6 7 8 9 10 11 12 13 14 15 16 17 CLK Q2 Q3 Q0 CLK1 Q1 CLK D0 D1 D2 D3 Q0 Q1 Q2 Q3 D Q
100
设:初态 Q3 Q2 Q1 Q0 = 0000 Q3 D3 Q0 CLK1 Q2 D2 Q1 Q1 Q2 D1 Q3 Q0 D0 CLK 1
4 5 6 7 8 9 10 11 12 13 14 15 16 17 CLK Q3 Q0 CLK1 Q1 Q2 CLK D0 D1 D2 D3 Q0 Q1 Q2 Q3 D Q
101
设:初态 Q3 Q2 Q1 Q0 = 0000 Q0 CLK1 Q1 Q2 Q3 计数值 CLK D0 D1 D2 D3 Q0 Q1 Q2
4 5 6 7 8 9 10 11 12 13 14 15 16 17 CLK Q0 CLK1 Q1 Q2 Q3 计数值 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 CLK D0 D1 D2 D3 Q0 Q1 Q2 Q3 D Q
102
当Qi-1由1→0 (CLK i 由0→1 )时,Qi 跳变, 此时,表明Qi-1产生了进位,使本位 Qi 变化。
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 CLK Q0 Q1 Q2 Q3 CLK D0 D1 D2 D3 Q0 Q1 Q2 Q3 D Q 状态变化规律: 当Qi-1由1→0 (CLK i 由0→1 )时,Qi 跳变, 此时,表明Qi-1产生了进位,使本位 Qi 变化。 n = 4,电路为模 16 加 1 计数器。 所有上升沿触发的触发器,如 JK、T 等计 数功能一样, CLK i = Qi-1
103
当Qi-1由1→0 (CLK i 由0→1 )时,Qi 跳变, 此时,明表Qi-1 产生了进位,使本位 Qi 变
JK 触发器组成的 4 位加 1 计数器 Q0 Q1 Q2 Q3 1 CLK J Q K 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 CLK Q0 Q1 Q2 Q3 状态变化规律: 当Qi-1由1→0 (CLK i 由0→1 )时,Qi 跳变, 此时,明表Qi-1 产生了进位,使本位 Qi 变 化。 CLK i = Qi-1 n = 4,电路为模 16 加 1 计数器。
104
当 Qi-1 由1→0 (CLK i 由0→1 )时, Qi 跳变, 此时,明表Qi-1 产生了进位,使本位 Qi 变
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 CLK Q0 Q1 Q2 Q3 CLK Q0 Q1 Q2 Q3 T 触发器组成的 4 位加 1 计数器 T Q 状态变化规律: 当 Qi-1 由1→0 (CLK i 由0→1 )时, Qi 跳变, 此时,明表Qi-1 产生了进位,使本位 Qi 变 化。CLK i = Qi-1 n = 4,电路为模 16 加 1 计数器。
105
当Qi-1 由0→1 (CLK i 由0→1 )时,Qi 跳变, 此时,表明Qi-1 产生了借位,使本位 Qi 变
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 CLK Q0 Q1 Q2 Q3 Q0 Q1 Q2 Q3 CLK D0 D1 D2 D3 D Q 计数值 1111 1101 1011 1001 0111 0101 0011 0001 1111 0000 1110 1100 1010 1000 0110 0100 0010 0000 状态变化规律: 当Qi-1 由0→1 (CLK i 由0→1 )时,Qi 跳变, 此时,表明Qi-1 产生了借位,使本位 Qi 变 化。 CLK i = Qi-1 。 n = 4,电路为模 16 减 1 计数器。
106
当Qi-1 由0→1 (CLK i 由1→0 )时,Qi 跳变, 此时,表明Qi-1 产生了借位,使本位 Qi 变
JK 触发器组成的 4 位减 1 计数器 Q0 Q1 Q2 Q3 1 CLK J Q K 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 CLK Q0 Q1 Q2 Q3 状态变化规律: 当Qi-1 由0→1 (CLK i 由1→0 )时,Qi 跳变, 此时,表明Qi-1 产生了借位,使本位 Qi 变 化。 CLK i = Qi-1 。 所有下降沿触发的触发器计数功能一样。 n = 4,电路为模 16 减 1 计数器。
107
当Qi-1 由1→0 (CLK i 由1→0 )时,Qi 跳变, 此时,表明Qi-1 产生了加位,使本位 Qi 变
JK 触发器组成的 4 位加 1 计数器 Q0 Q1 Q2 Q3 1 CLK J Q K 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 CLK Q0 Q1 Q2 Q3 状态变化规律: 当Qi-1 由1→0 (CLK i 由1→0 )时,Qi 跳变, 此时,表明Qi-1 产生了加位,使本位 Qi 变 化。 CLK i = Qi-1 。 所有下降沿触发的触发器计数功能一样。 n = 4,电路为模 16 加 1 计数器。
108
二进制串行计数器连接规律 加1计数器: 前沿触发的触发器:CLKi = /Qi-1 后沿触发的触发器:CLKi = Qi-1
最低位的触发器: CLK1 = CLK (外加计数脉冲) 减1计数器: 前沿触发的触发器:CLKi = Qi-1 后沿触发的触发器:CLKi = /Qi-1 最低位的触发器: CLK1 = CLK (外加计数脉冲)
109
4.4.2 二进制同步计数器 Synchronous Counters
例1 用D触发器组成的 4 位二进制加1计数器。 CLK Q1 Q2 Q3 Q4 D1 D2 D3 D4 & =1 D Q C ① 激励函数 D1 = Q1 D2 = Q1⊕Q2 D3 = (Q2 Q1 ) ⊕Q3 D4 = (Q3 Q2 Q1 ) ⊕Q4 ② 次态方程 Q1n+1 = Q1 Q2n+1 = Q1⊕Q2 Q3n+1= (Q2 Q1 ) ⊕Q3 Q4n+1= (Q3 Q2 Q1 ) ⊕Q4
110
③ 时间图 ④ 状态变化规律: ② 次态方程 Q1n+1 = Q1 Q2n+1 = Q1⊕Q2 Q3n+1= (Q2 Q1 ) ⊕Q3
例1 用D触发器组成的 4 位二进制加1计数器。 ③ 时间图 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 CLK Q1 Q2 Q3 Q4 ④ 状态变化规律: ② 次态方程 Q1n+1 = Q1 Q2n+1 = Q1⊕Q2 Q3n+1= (Q2 Q1 ) ⊕Q3 Q4n+1= (Q3 Q2 Q1 ) ⊕Q4 ⑴ 当Qi-1 • Qi-2… • Q1 = 1 时,低位有进位→Qin+1 = Qi ,本位翻转 ⑵ 当Qi-1 • Qi-2… • Q1 = 0 时, 低位无进位→Qin+1 = Qi ,本位维持
111
⑤ 由D触发器构成的 n 位二进制同步加 1 计数器的 连接规律
Di = (Qi-1• Qi-2• ···• Q1) ⊕ Qi ( i ≠1) D1 = Q1 其中: Qi-1• Qi-2• ···• Q1——进位传递函数 思考:如何设计n 位二进制同步减 1 计数器? 关键在于借位传递函数的获得
112
Q1n+1 = Q1 最低位根据时钟信号的到来进行减 1 计数
例2 用D触发器组成的 4 位二进制减 1计数器。 ① 次态方程 按照“借位”的概念: Q1n+1 = Q 最低位根据时钟信号的到来进行减 1 计数 Q2n+1 = Q1⊕Q 当Q1= 0时,低位向本位借位→ Q2n+1= Q2 Q3n+1= ( Q2 Q1 ) ⊕Q 当Q2 、Q1同时为 0 时,低位向本位借位→ Q3n+1= Q3 Q4n+1= ( Q3 Q2 Q1 ) ⊕Q4 当Q2、Q2、Q1 均为 0 时,低位向本位借位→ Q4n+1= Q4
113
② 电路图 CLK Q1 Q2 Q3 Q4 D1 D2 D3 D4 =1 & D Q C
114
其中: Qi-1• Qi-2• ···• Q1——借位传递函数
③ 时间图 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 CLK Q0 Q1 Q2 Q3 借位翻转 ④ 由D触发器构成的 n 位二进制同步减 1 计数器的 连接规律 Di = (Qi-1• Qi-2• ···• Q1) ⊕ Qi ( i ≠1) D1 = Q1 其中: Qi-1• Qi-2• ···• Q1——借位传递函数
115
例3 用 JK、T 触发器组成的 4 位二进制加 1 计数器。
Ji = Ki = Qi-1•Qi-2• ··· •Q1 ( i ≠1) —— 进位传递函数 J1 = K1 = 1 —— 最低位呈计数态 当Qi-1•Qi-2• ··· •Q1 = 1时,低位有进位→本位翻转Qin+1= Qi 当Qi-1•Qi-2• ··· •Q1 = 0时,低位无进位→本位维持Qin+1= Qi 则 T 触发器的连接规律: Ti = Qi-1•Qi-2• ··· •Q1 ( i ≠1) —— 进位传递函数 T1 = 1 —— 最低位呈计数态 当Qi-1•Qi-2• ··· •Q1 = 1时,低位有进位→本位翻转Qin+1= Qi 当Qi-1•Qi-2• ··· •Q1 = 0时,低位无进位→本位维持Qin+1= Qi
116
电路图: & & 用T 触发器构成的加1计数器 用JK触发器构成的加1计数器 EN CLK Q1 Q2 Q3 Q4 Q 1 J Q Q1
117
例4 用 JK、T 触发器组成的 4 位二进制减 1 计数器。
Ji = Ki = Qi-1•Qi-2• ··· •Q1 ( i ≠1) —— 借位传递函数 J1 = K1 = 1 —— 最低位呈计数态 当Qi-1•Qi-2• ··· •Q1 = 1时,低位有借位→本位翻转Qin+1= Qi 当Qi-1•Qi-2• ··· •Q1 = 0时,低位无借位→本位维持Qin+1= Qi 则 T 触发器的连接规律: Ti = Qi-1•Qi-2• ··· •Q1 ( i ≠1) —— 借位传递函数 T1 = 1 —— 最低位呈计数态 当Qi-1•Qi-2• ··· •Q1 = 1时,低位有借位→本位翻转Qin+1= Qi 当Qi-1•Qi-2• ··· •Q1 = 0时,低位无借位→本位维持Qin+1= Qi
118
电路图: & & 用JK触发器构成的减1计数器 用T 触发器构成的减1计数器 1 J Q Q1 Q2 Q3 Q4 K EN CLK Q1
119
二进制同步计数器的连接规律 1. D 触发器 2. T 触发器
加1计数器: Di = (Qi -1• Qi -2• ···• Q1) ⊕Qi ( i ≠1) D1 = /Q1 减1计数器: Di = (/Qi -1• /Qi -2• ···•/Q1) ⊕Qi ( i ≠1) 2. T 触发器 加1计数器: Ti = Qi -1• Qi -2• ···• Q1 • EN ( i ≠1) T1 = EN = 1 减1计数器: Ti = /Qi -1• /Qi -2• ···•/Q1 • EN ( i ≠1)
120
3. J K 触发器 加1计数器:Ji = Ki = Qi-1• Qi-2• ···• Q1 ( i ≠1) J1 = K1 = 1
121
4.4.3 用跳越的方法实现任意模数的计数器 Modulo-N Counters
跳越的概念: 在实际应用中,往往计数器的模 m ≠ 2n,为了能用模为2n的二进制计数器实现模为m的计数器: 即 n-1 < m < 2n Sm+k S1 S3 S4 S5 Sm-1 Sm Sm+1 电路从2n个状态中跳越过 K = 2n - m 个状态,使计数器以 m 为周期循环,而在正常循环中不出现跳过的 K个状态。
122
例 设计一个 m = 6的计数器。 S0 S1 S2 S3 S4 S5 S6 S7 选择模 8 的二进制计数器实现模 6 计数器,即:
000 S0 001 S1 010 S2 011 S3 100 S4 101 S5 110 S6 111 S7 从8个状态中跳越过2个状态只用其中6个状态 选择模 8 的二进制计数器实现模 6 计数器,即: S1→S2→S3→S4→S5→S6→S1 需要从 8 个状态中跳越过 S7、S0 两个状态, S6 为起跳状态。 所谓多余状态 电路中要跳跃过的状态是在 正常工作循环中不出现的状 态,称为多余状态或无用状 态,如S7、S0。 电路的随机状态可以是无用 状态。
123
多余状态的处理 随机出现的无用状态应当经过有限节拍后自动进入有用状态(也称有效状态),不允许停在无用状态或在无用状态中循环。 通常采用的措施是: ① 从动式起动电路 通过人工按键置位/复位、或设计一个电源启动的能输出强置位信号的电路、或由其他电路提供初始化信号。 ② 主动式电路 由状态测试电路识别计数器是否处于无用状态,若是则该电路输出一个有效电平,强置使计数器进入、或创造条件使计数器进入有用状态。
124
4.4.4 强置位计数器 (Resetting) 设计这类电路时,先设计一个二进制计数器,然后再加入强置位电路。假设起跳状态为Sa,则有:
计数器的跳跃过程如下: 第 a 拍 状态为Sa 强置位电平 无效 第 a+1 拍 状态为Sa+1 有效 第 a+2 拍 状态为Sa+K+2 状态为Sa+K+1
125
例 分析图示的六进制计数器。 GCO = Q3Q2Q1 该电路为由三个D 触发器构成的模8加1计数器。 考虑门GC及信号GCO的作用:
例 分析图示的六进制计数器。 CLK Q1 Q2 Q3 D Q CLR PR =1 & 该电路为由三个D 触发器构成的模8加1计数器。 & GC GCO 考虑门GC及信号GCO的作用: GCO = Q3Q2Q1 当电路状态为 S7 (111) 时, GCO = 0 → S1(001) 时间图参见下页。
126
六进制计数器的时间图 初态 Q3 Q2 Q1 = S0 (000) GCO = Q3Q2Q1
4 5 6 7 8 9 10 11 12 13 14 15 16 17 CLK Q1 Q2 Q3 GCO S0 S1 S2 S3 S4 S5 S6 S7S1 S2 S3 S4 S5 S6 S7S1 S2 S3 S4 S5 GCO = Q3Q2Q1 电路在时钟脉冲序列 CLK作用下,将在 S1 至 S6 中循环,电路的起跳状态为 S6(110),跳过的状态为S7、S0。
127
强置位计数器的特点 ⑴ 强置位法适用于同步(Synchronously)及 异步(Asynchronously)电路 。
⑵ 异步式强置置位或复位。 ⑶ 有一个短暂的状态 S7(111),使 S1(001) 变窄。
128
4.4.5 预置位计数器 (Presetting) 预置位法适用于同步(Synchronously)电路。
预置位计数器是在起跳状态Sa (而不是Sa+1)出现以后就预先做好跳越的准备,使之在下一拍时钟有效沿到达时通过预置有关的触发器数据端输入,使计数器立即进入Sa+K+1状态。这样就可以避免强置位电路的缺点。 预置位法适用于同步(Synchronously)电路。 在设计电路时,先设计一个二进制计数器,然后再加入预置位电路。假设起跳状态为Sa ,则有: ⑴ 在没有出现 Sa 时,不影响二进制计数器的状态转换规律,预置位电平无效。 ⑵ 在出现 Sa 时,预置位电平有效,使预定的某些位触发器数据端加上预置数(1或0),则在下一拍时钟有效沿到达时,该触发器处于Sa+K+1的对应位中的状态。
129
可逐位比较计数器中各触发器在正常计数状态和跳越后的状态中的差异,有些不需改变,有些则要预置1 或 0 。
预置位电路跳越过程如下: 第a-1拍 状态为Sa-1 预置位电平 无效 第a 拍 状态为Sa 有效 第a+1拍 状态为Sa+K+1 预置位 电平 预置位电平的确定: 可逐位比较计数器中各触发器在正常计数状态和跳越后的状态中的差异,有些不需改变,有些则要预置1 或 0 。 设预置位电平为MY(高电平),则 进行1的预置时有: Di = (Qi-1• Qi-2• ···• Q1) ⊕ Qi + MY 进行0的预置时有: Di = (Qi-1• Qi-2• ···• Q1) ⊕ Qi • MY
130
例 用预置位法设计六进制计数器。 000 S0 001 S1 010 S2 011 S3 100 S4 101 S5 六进制计数器状态图
131
例 用预置位法设计六进制计数器。 用三个 D触发器 Q3、 Q2、 Q1构成模8加1计数器 D1 Q1 /Q1 D2 Q2 D3 Q3
例 用预置位法设计六进制计数器。 用三个 D触发器 Q3、 Q2、 Q1构成模8加1计数器 CLR D1 Q1 /Q1 D2 Q2 D3 Q3 CLK & Q ∧ D =1
132
MY = Q3 Q1 例 用预置位法设计六进制计数器。 起跳状态:Sa = S5 (101) 预置位电路: MY = Q3 Q1
例 用预置位法设计六进制计数器。 000 S0 001 S1 010 S2 011 S3 100 S4 101 S5 起跳状态:Sa = S5 (101) 预置位电路: MY = Q3 Q1 MY = Q3 Q1 由于 Sa = S6 (110) Sa+K+1= S0 (000) 因此要对 D3 ,D2进行预置: D2 = ( Q1 ⊕ Q2 ) • MY D3 = (( Q2 Q1 )⊕ Q3 ) • MY 六进制计数器状态图
133
用 D 触发器实现的预置位计数器 CLR D1 Q1 /Q1 D2 Q2 D3 Q3 CLK & =1 Q ∧ D Q3 Q1 MY &
134
用 D 触发器实现的预置位计数器的时间图 S0 S1 S2 S3 S4 S5 S0 S1 S2 S 3 S4 S5 S0 S1 S2 S3 S4 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 CLK Q1 Q2 Q3 MY D1 D2 D3
135
4.4.6 修正式计数器 修正式计数器类似于预置位计数器。 区别在于
修正式计数器 修正式计数器类似于预置位计数器。 区别在于 预置位电路中的二进制计数器电路的原连接方式完整地保持着,而修正式计数器中对二进制计数器的某些位的输入端电路连接作适当修正,使电路本身就具有实现跳越的功能。 修正式计数器的设计方法类似于预置位计数器,只是在完成了预置位计数器之后,继续简化触发器置数输入端的表达式,按置数输入端的逻辑表达式,重新连接各触发器,从而得到修正式计数器。
136
例 用修正式方法设计的模 6 计数器。 由预置位法得到: MY = Q3 Q1 D1 = Q1 D2 = (Q1 ⊕ Q2) • MY
例 用修正式方法设计的模 6 计数器。 由预置位法得到: MY = Q3 Q1 D1 = Q1 D2 = (Q1 ⊕ Q2) • MY = Q1 Q2+ Q1 Q2 Q3 D3 = ((Q2Q1 )⊕ Q3) • MY = Q1 Q3+ Q1 Q2 Q3 Q CLR CLK ∧ D1 D Q1 /Q1 D2 Q2 D3 Q3 ≥1 & /Q3 /Q2
137
4.4.7 MSI 计数器及应用 MSI Counters and Applications
> CLK CLR LD ENP ENT A B C D QA QB QC QD RCO 74LS163 74LS163是一个四位同步二进制计数器, 由 D触发器组成的,输出在时钟CLK的上升沿改变。 具有加载(LD)和清除(CLR)输入端: ① 当/CLR输入有效,输出为0; ② 当/LD有效而 /CLR无效,输入A,B,C,D被送到输出端; ③ 如果 /CLR和/LD都无效,而使能输入端ENP、ENT都有效,74LS163进行加1计数。 RCO信号是最高位的进位:当计数位都是1且使能(ENT)有效,则RCO为1,这一信号用于多个74LS163级联。 CLR是同步清零端,它仅在时钟脉冲作用下,才能使各触发器清零。
138
Q D >CK QA QB QC QD RCO CLK /LD /CLR A B C ENP ENT 74LS163四位二进制同步计数器
139
1、单片74LS163应用 ⑴ 用74LS163实现分频器 Q0 Q1 Q2 Q3 CLK RCO 74LS163 CLK > CLK
CLR LD ENP ENT A B C D QA QB QC QD RCO 74LS163 Q0 Q1 Q2 Q3 CLK +5V 1、单片74LS163应用 ⑴ 用74LS163实现分频器 CLK Q0 Q1 Q2 Q3 RCO COUNT
140
方式1:利用 /CLR(同步清零)完成跳越的次态为全零的预置。
⑵ 用74LS163实现计数值为0,1,···,10 的模11计数器。 方式1:利用 /CLR(同步清零)完成跳越的次态为全零的预置。 > CLK CLR LD ENP ENT A B C D QA QB QC QD RCO 74LS163 Q0 Q1 Q2 Q3 CLK & +5V
141
方式2:利用 /LD(置零)完成跳越的次态为全零的预置。
⑵ 用74LS163实现计数值为0,1,···,10 的模11计数器。 方式2:利用 /LD(置零)完成跳越的次态为全零的预置。 > CLK CLR LD ENP ENT A B C D QA QB QC QD RCO 74LS163 Q0 Q1 Q2 Q3 CLK +5V &
142
方式3:利用 /LD(置数)完成跳越的次态为任意值的预置。
⑶ 用74LS163实现计数值为5,6,···,15 的模11计数器。 方式3:利用 /LD(置数)完成跳越的次态为任意值的预置。 > CLK CLR LD ENP ENT A B C D QA QB QC QD RCO 74LS163 Q0 Q1 Q2 Q3 CLK +5V 1
143
⑷ 用74LS163实现余3码计数器。 +5V 74LS163 CLK > CLK Q0 Q1 Q2 Q3 & CLR LD ENP
ENT A B C D QA QB QC QD RCO 74LS163 Q0 Q1 Q2 Q3 CLK &
144
2、多片74LS163 的级联应用 (63~255模193计数器) +5V 74LS163 > CLK Q0 Q1 Q2 Q3 CLK
CLR LD ENP ENT A B C D QA QB QC QD RCO 74LS163 Q0 Q1 Q2 Q3 +5V CLK /RESET & /GO MAXCNT
145
3、其它类型MSI计数器 74LS161类似于74LS163,74LS161的 /CLR为异步清零端,可用强置位法实现任意进制计数器。
> CLK UP/DN LD ENP ENT A B C D QA QB QC QD RCO 74LS169 74LS161类似于74LS163,74LS161的 /CLR为异步清零端,可用强置位法实现任意进制计数器。 74LS160和74LS162分别类似于74LS161和74LS163,但它们是模10计数器。 74LS169也类似于74LS163,但输出位/RCO和使能输入 /ENP、 /ENT都是低有效。另一个更重要的不同之处是: 74LS169是一个可逆计数器,输入信号 UP/DN的值决定是加1计数还是减1计数: UP/DN=1,加1计数,其 /RCO在输出数据端全为1时有效; UP/DN=0,减1计数,其 /RCO在输出数据端全为0时有效 。
146
4.5 寄存器 Registers 用于暂时存放二进制代码的逻辑器件称为寄存器。寄存器按功能分为并行寄存器、 串行寄存器 及串并行寄存器。
串行及串并行寄存器具有移位功能,通常称为移位寄存器 Shift Registers 。
147
4.5.1 并行寄存器 1D 2D 3D 4D /2Q 1Q 3Q 4Q /4Q /3Q 2Q /1Q /CLR 74LS175
并行寄存器 D Q CLK CLR 1D 2D 3D 4D /2Q 1Q 3Q 4Q /4Q /3Q 2Q /1Q 1 /CLR 74LS175 >CLK CLR 1D 2D 3D 4D 1Q 2Q 3Q 4Q
148
CLK CLR 1D 2D 4D 3D 1Q 2Q 3Q 4Q C 74LS175 74LS08 并行输出控制的 4 位寄存器
149
通用8位寄存器 (Generic 8-bit Register)
该寄存器输出通过三态缓冲门: 当输出使能 /OE有效时, 8位寄存器中代码并行输出; 当/OE无效时, 寄存器输出端为高阻抗。 >CLK OE 1D 2D 4D 3D 1Q 3Q 5Q 7Q 2Q 4Q 6Q 8Q 5D 6D 7D 8D 74LS374 这样可以使多个寄存器挂接到公共总线上。
150
时钟使能的8位寄存器 74LS377 时钟使能的 1 位等效逻辑图 & ≥1 1D 1Q /G 1 D Q CLK CLK G 1D 2D
151
4.5.2 移位寄存器 Shift Registers 一、移位寄存器结构 1、串入-串出结构 Serial in – Serial out
CLK D Q SERIN SEROUT
152
2、串入-并出结构 Serial in – Parallel out
CLK SERIN C NQ (N-1)Q 2Q 1Q D CK Q ••• &
153
3、并入-串出结构 Parallel in – serial out
& ≥1 >CLK Q D LOAD/SHIFT CLK SERIN 1D 2D ND ••• SEROUT 1
154
4、并入-并出结构 Parallel in – parallel out
该结构即是将上页图中的各个触发器Q端均引出,其它部分完全相同。 当需要并行输出功能时,只需要外加读出控制门,在读出控制脉冲的作用下将寄存器中数据并行输出。 这种结构的移位寄存器的功能覆盖了前三种,因此通用性更强。逻辑图如下:
155
LOAD/SHIFT 外加读出控制门 CLK & 1D 2D ••• ND C 1 SERIN 1Q ≥1 D Q >CLK 2Q
156
二、MSI 移位寄存器举例 通用寄存器 74LS194 RIN是右移串行输入端; LIN是左移串行输入端; A、B、C、D是并行输入端;
> CLK CLR S1 S0 RIN A B C D QA QB QC QD 74LS194 LIN RIN是右移串行输入端; LIN是左移串行输入端; A、B、C、D是并行输入端; QD 是右移串行输出端; QA 是左移串行输出端; QA、QB、QC、QD 是并行输出端; /CLR 是异步的寄存器清“0”信号; S1 S0 是工作方式控制。 74LS194寄存器状态表 QA QB QC QD 功能 S1S0 QAn+1 QBn+ 1QCn+1 QDn+1 保持 右移 左移 置数 0 0 0 1 1 0 1 1 QA QB QC QD RIN QA QB QC QB QC QD LIN A B C D
157
4.5.3 MSI寄存器应用举例 —— 数据串并行的转换
并行数据 控制电路 数据 并-串 转换 数据 串-并 源模块 目的模块 两个模块间数据传送图 CLK /BIT7 SDATA /BIT0 /SYNC
158
例 用MSI实现一典型数据通讯。 设:时钟信号CLK的频率为 2.048MHz, 每秒传送 32×8000个字节(byte), 每帧(frame) 有 32 个时隙, 每个时隙(time slot) 传送 8位(bit),即1个字节(byte) 即 传送时间为 125 µs / 帧 信号的时间关系如图所示,见下页。
159
并 — 串转换时序图 (a) 帧开始处的一个字节
7 1 2 3 4 5 6 /BIT7 SDATA bit /SYNC D0~D7 CLK 时隙 31 时隙 0 时隙 1 (a) 帧开始处的一个字节
160
••• (b) 一个完整的数据帧 每帧 125 µs ,256 个时钟 488 ns 每帧 32 个时隙 CLK /SYNC 时隙 31
SDATA 时隙 0 时隙 1 每帧 32 个时隙 /SYNC 时隙 31 (b) 一个完整的数据帧
161
用74LS163(计数器)和74LS166(8位并入-串出移位寄存器)构成数据源的电路,完成数据的并行读入,串行输出的功能 。电路参见数书P219图4.49。
用74LS163(计数器)、74LS164(8位串入-并出移位寄存器)和74LS377(8位数据缓冲器)构成数据目的的电路,完成数据的串行读入,并行输出的功能 。电路参见数书P220图4.50。
162
串并转换信号时序图 7 1 2 3 4 5 6 bit byte 31 byte 0 byte 1 byte 31 byte 0
1 2 3 4 5 6 /BIT0 bit /SYNC CLK SDATA byte 31 byte 0 byte 1 字节 31 partial 字节0 字节0 partial 字节1 RD0~RD7 partial PD0~PD7 byte 31 byte 0 byte 30
163
4.6 节拍分配器 Digital fractional rate Multipliers
CLK Y0 Ym-1 Y1 CLK Y0 Y1 Y2 Y3 节拍分配器:在控制器中产生节拍脉冲的部件,这些脉冲用来控制各功能部件协调有序地完成一些操作。 节拍发生器:输出信号为电位信号; 脉冲分配器:输出信号为脉冲信号。
164
4.6 节拍分配器 Digital fractional rate Multipliers
CLK Y0 Ym-1 Y1 译码逻辑 计数器 Q0 Q1 Qn-1 CLK Y0 Ym-1 Y1 译码逻辑 移位器 Q0 Q1 Qn-1 按分配器的结构分为:计数型和移位型两类。
165
4.6.1 计数型(Binary)节拍分配器 由二进制计数器和译码器组成
在时钟脉冲序列作用下,从译码器的各输出端上轮流 输出高电位信号或脉冲信号。 Y3 Y0 Y1 & Y2 /CLK 1 /CLR Q1 Q0 四输出节拍分配器逻辑图 K CLR J Q
166
四输出节拍分配器波形图 /CLR /CLK Q0 Q1 Y0 Y1 Y2 Y3
167
四输出脉冲分配器逻辑图 CLK Y3 Y0 Y1 Y2 /CLR Q0 D Q CLR & =1 Q1 1
168
四输出脉冲分配器波形图 /CLR /CLK Q0 Q1 Y1 Y0 Y3 Y2
169
4.6.2 移位型(Ring/Twisted)节拍分配器
由移位寄存器和逻辑门组成。 1. 四输出移位型节拍分配器逻辑图 D Q CLK CLR Q3 ≥1 Q2 Q1 Q0 /CLR
170
四输出移位型节拍分配器的波形图 /CLR /CLK Q3 Q2 Q1 Q0
171
2. 三输出扭环移位型节拍分配器逻辑图 Q D CLK Q1 D3 D2 D1 D02 D01 Q3 Q2 & Y3 Y2 Y1 Q0
172
三输出移位型节拍分配器波形图 /CLK Y2 Y1 Y3 Q0 Q1 Q3 Q2
173
Y1 = Q1 Q0 Y2 = Q2 Q1 Y3 = Q3 Q2 Y4 = Q3 Q0 Y5 = Q1 Q0 Y6 = Q2 Q1
步进码节拍分配器的输出逻辑: Y1 = Q1 Q0 Y2 = Q2 Q1 Y3 = Q3 Q2 Y4 = Q3 Q0 Y5 = Q1 Q0 Y6 = Q2 Q1 Y7 = Q3 Q2 Y0 = Q3 Q0 上述式中,没有用最小项,如 Y1 = Q3 Q2 Q1 Q0 ,而是用简化表达式,它们可从波形图直接获得,当然也可利用卡诺图化简得到。
174
4.6.3 MSI节拍分配器举例 通常节拍分配器是由两片或多片 MSI计数器、寄存器、及译码器所构成。 CLK 74LS374
OE 1D 2D 4D 3D 1Q 3Q 5Q 7Q 2Q 4Q 6Q 8Q 5D 6D 7D 8D 74LS374 /RS0 /RS1 /RS2 /RS3 /RS4 /RS6 /RS5 /RS7 > CLK CLR LD ENP ENT A B C D QA QB QC QD RCO 74LS163 5V Q1 Q2 Q3 74LS138 /S0 /S1 /S2 /S3 /S4 /S6 /S5 /S7 G1 A Y2 Y0 Y1 Y3 Y4 Y5 Y6 Y7 B C G2A G2B
175
3-8译码器74LS138的输出节拍信号时序图 /CLK /S5 /S4 /S6 /S0 /S1 /S3 /S2 /S7
176
第四章 作业
Similar presentations