第5章
CHAPTER 5


时序逻辑电路








时序逻辑电路是数字逻辑电路中的另一种电路类型。

本章首先讲述时序逻辑电路的结构特点、功能特点、功能描述方法,以及同步时序逻辑电路和异步时序逻辑电路的区别,并着重介绍时序逻辑电路的分析方法; 然后介绍寄存器、计数器的电路构成和功能特点; 最后
着重介绍基于触发器的计数器自启动设计方法、基于MSI计数器的任意计数器设计方法、基于触发器及MSI计数器的一般同步时序逻辑电路设计方法。

学习本章内容应具备的相关知识是: 逻辑表达式、真值表及相互转换方法; 逻辑函数的卡诺图化简方法; 时钟触发器的动作特点及特性方程。

5.1时序逻辑电路概述
5.1.1时序逻辑电路的特点

时序逻辑电路简称时序电路,结构示意图如图5.1所示。



图5.1时序逻辑电路结构示意图


1. 时序逻辑电路的结构特点

在结构上,时序逻辑电路必含有由触发器组成的存储电路,组合逻辑电路部分根据需要进行设置。

2. 时序逻辑电路的功能特点

在功能上,时序逻辑电路任一时刻的输出信号不仅取决于该时刻的输入信号,而且还取决于输入信号作用前电路所处的状态。

5.1.2时序逻辑电路逻辑功能的描述方法
1. 逻辑表达式

一般有以下三组方程。

(1) 输出方程,即各输出函数的逻辑表达式。向量函数表示为 

Y=F[X,Qn](5.1)

(2) 驱动方程,即各触发器的驱动输入函数逻辑表达式。向量函数表示为 

Z=G[X,Qn](5.2)

(3) 状态方程,即各触发器的次态函数逻辑表达式。向量函数表示为 

Qn+1=H[Z,Qn](5.3)

式(5.1)~式(5.3)中,Qn为触发器的现态,即时序逻辑电路的现态; Qn+1为触发器的次态,即时序逻辑电路的次态。

2. 状态转换表

反映时序逻辑电路由现态到次态的状态转换关系,实现转换所需输入条件及现态输出的真值表,简称状态表。

3. 状态转换图

反映时序逻辑电路由现态到次态的状态转换关系,实现转换所需输入条件及现态输出的图形,简称状态图。

4. 时序图

反映时序逻辑电路在时钟序列脉冲作用下,由现态到次态的状态转换关系,实现转换所需输入条件及现态输出的波形。





5.1.3时序逻辑电路的分类
1. 按电路中触发器状态变化是否同步划分 

(1) 同步时序逻辑电路。设置统一的时钟,即所有触发器的时钟端都接在同一个时钟脉冲CP信号上,各触发器的状态变化发生在同一时刻。

(2) 异步时序逻辑电路。不设置统一的时钟,即所有触发器的时钟端不都接在同一个时钟脉冲CP信号上,各触发器的状态变化有先有后。

2. 按电路中输出信号的特性划分

(1) Mealy型时序逻辑电路。输出信号取决于电路的现态和输入信号,其输出方程为Y=F[X,Qn]。

(2) Moore型时序逻辑电路。输出信号仅取决于电路的现态,其输出方程为Y=F[Qn]。

Moore型时序逻辑电路是Mealy型时序逻辑电路的特例。

3. 按电路的逻辑功能划分

时序逻辑电路有计数器、寄存器及特定功能电路。

5.2时序逻辑电路的分析方法
5.2.1时序逻辑电路的分析步骤

求解给定时序逻辑电路逻辑功能的过程称为时序逻辑电路的分析。
时序逻辑电路分析的一般步骤如图5.2所示。



图5.2时序逻辑电路分析的一般步骤


有以下3点说明。

(1) 分析的关键是各种功能描述方法的转换及根据状态变化规律进行功能的正确说明。

(2) 同步时序逻辑电路设置统一的时钟,分析时不需考虑各触发器状态转换的时钟条件,仅在画时序图时画出时钟脉冲CP信号的波形。

(3) 异步时序逻辑电路不设置统一的时钟,分析时需考虑各触发器状态转换的时钟条件。



视频讲解


5.2.2同步时序逻辑电路分析举例

【例5.1】试分析如图5.3所示的时序逻辑电路的逻辑功能,写出输出方程、驱动方程和状态方程,列出状态表,画出状态图及时序图,说明逻辑功能。FF0、FF1和FF2为三个下降沿TTL触发器,下降沿动作。



图5.3例5.1的时序逻辑电路



【解】在如图5.3所示的时序逻辑电路中,FF0、FF1和FF2三个触发器从左至右按序排列,时钟端都接在同一个时钟脉冲CP上,没有外部输入变量,输出函数Y只与状态变量Q2、Q1有关,为Moore型同步时序逻辑电路。

(1) 由给定的时序逻辑电路图写出逻辑表达式。

输出方程为

Y=Qn2Qn1=Qn2Qn1(5.4)

驱动方程为

J2
=Qn1Qn0,K2=Qn1
J1=Qn0,K1=n2n0
J0=Qn2Qn1, K0=1(5.5)

将驱动方程代入JK触发器的特性方程,得状态方程为

Qn+12=J2n2+2Qn2=n2Qn1Qn0+Qn2n1
Qn+11=J1n1+1Qn1=n1Qn0+n2Qn1n0
Qn+10=J0n0+0Qn0=n2n0+n1n0(5.6)

【注意】输出方程和状态方程变形为与或式,便于列写状态表。

(2) 由输出方程及状态方程列出状态表,如表5.1所示。


表5.1例5.1的状态表


现态次态输出

Qn2Qn1Qn0Qn+12Qn+11Qn+10Y

0000010
0010100
0100110
0111000
1001010
1011100
1100001
1110001



以输出方程、状态方程中的现态为状态表中的变量,次态及输出为状态表中的函数,据各方程式在每个与项所覆盖的行填写1值,重复时只填写一次1值,剩余行填写0值。

【注意】状态表中现态、次态等状态量的排列顺序为下标大的高位量在前,下标小的低位量在后。

【理解说明】表中的每一行表示了电路由现态到次态的状态转换关系以及现态输出情况; 在时钟脉冲CP作用下进行状态转换,CP下降沿有效,表中未表示出CP。

(3) 将状态表中每行所表示的状态转换关系用图形形式表示,画出状态图如图5.4所示。

(4) 画出形成循环的状态在CP作用下一个循环周期的波形,由时序逻辑图中触发器的符号确定在时钟脉冲信号CP的下降沿改变状态。时序图如图5.5所示。




图5.4例5.1的状态图




图5.5例5.1的时序图




(5) 有效状态、有效循环、无效状态、无效循环及自启动功能的概念。

时序电路中被利用的状态称为有效状态。如图5.4所示,状态图中000、001、010、011、100、101、110都是被利用的有效状态。

时序电路中由有效状态形成的循环称为有效循环。如图5.4所示,状态图中的000、001、010、011、100、101、110形成有效循环。

时序电路中没被利用的状态称为无效状态。如图5.4所示,状态图中的111状态为无效状态。

时序电路中由无效状态形成的循环称为无效循环。

时序电路中的无效状态在时钟脉冲CP作用下能直接或间接进入有效状态,称时序电路有自启动功能或能自启动; 否则称时序电路没有自启动功能或不能自启动。
如图5.4所示,111无效状态在时钟脉冲CP作用下进入000有效状态,因此例5.1的时序逻辑电路有自启动功能。

(6) 功能说明。

由图5.4可知,时序逻辑电路有效状态变化的规律为

次态=现态+1(CP作用一次)

即用状态变化对时钟脉冲CP出现的个数进行计数,经历7个状态完成一个计数周期的循环,并产生进位输出信号。
电路为同步七进制加法计数器,有自启动功能。

【例5.2】试分析如图5.6所示的时序逻辑电路的逻辑功能,写出输出方程、驱动方程和状态方程,列出状态表,画出状态图,说明逻辑功能。FF0、FF1为两个维持阻塞TTL触发器,上升沿动作。



图5.6例5.2的时序逻辑电路


【解】在如图5.6所示的时序逻辑电路中,FF0、FF1两个触发器从左至右按序排列,时钟端都接在同一个时钟脉冲CP上,有一个外部输入变量A,输出函数Y与输入变量A及状态变量Q1、Q0有关,为Mealy型同步时序逻辑电路。

(1) 由给定的时序逻辑电路图写出逻辑表达式。

输出方程为

Y=Qn1Qn0·An1n0=Qn1Qn0+An1n0(5.7)

驱动方程为



D1=AQn1Qn0
D0=n0(5.8)

将驱动方程代入D触发器的特性方程,得状态方程为



Qn+11=D1=AQn1Qn0=n1Qn0+Qn1n0+An1n0+AQn1Qn0
Qn+10=D0=n0(5.9)

(2) 由状态方程及输出方程列出状态表,如表5.2所示。


表5.2例5.2的状态表


输入现态次态输出


AQn1Qn0Qn+11Qn+10Y
000010
001100
010110
011001
100111
101000
110010
111100




图5.7例5.2的状态图

【注意】状态表中输入变量在前、现态变量在后,下标大的高位状态变量在前。

(3) 由状态表画出状态图,如图5.7所示。

(4) 功能说明。

由图5.7可知,时序逻辑电路状态变化的规律为


A=0时,次态=现态+1(CP作用一次)

A=1时,次态=现态-1(CP作用一次)

22=4个全部状态均用于对时钟脉冲CP出现的个数进行加、减法计数,经历22=4个状态完成一个计数周期的循环,并产生进、借位输出信号。
所分析的时序逻辑电路为同步2位二进制可逆计数器,A=0时进行加法计数,A=1时进行减法计数。

【例5.3】试分析如图5.8所示的时序逻辑电路的逻辑功能,写出输出方程、驱动方程和状态方程,列出状态表,画出状态图,说明逻辑功能。FF0、FF1为两个下降沿TTL触发器,下降沿动作。



图5.8例5.3的时序逻辑电路



【解】在如图5.8所示的时序逻辑电路中,FF0、FF1两个触发器从左至右按序排列,时钟端都接在同一个时钟脉冲CP上,有一个外部输入变量A,输出函数Y与输入变量A及状态变量Q1、Q0有关,为Mealy型同步时序逻辑电路。

(1) 由给定的时序逻辑电路图写出逻辑表达式。

输出方程为
Y=AQn1Qn0=AQn1Qn0(5.10)
驱动方程为

J1=AQn0,K1=
J0=A, K0=AQn1(5.11)
将驱动方程代入JK触发器的特性方程,得状态方程为

Qn+11=J1n1+1Qn1=An1Qn0+AQn1
Qn+10=J0n0+0Qn0=An0+AQn1Qn0(5.12)

(2) 由状态方程及输出方程列出状态表,如表5.3所示。


表5.3例5.3的状态表






 现态 次态输出
AQn1Qn0Qn+11Qn+10Y


000000
001000
010000
011000
100010
101100
110110
111111


(3) 由状态表画出状态图,如图5.9所示。



图5.9例5.3的状态图


(4) 功能说明。

由图5.9可知,当连续输入4个或4个以上1时,输出Y=1,否则输出Y=0。电路实现1111输入序列检测功能。



视频讲解


5.2.3异步时序逻辑电路分析举例


【例5.4】试分析如图5.10所示的时序逻辑电路的逻辑功能,写出输出方程、驱动方程和状态方程,列出状态表,画出状态图及时序图,说明逻辑功能。



图5.10例5.4的时序逻辑电路



【解】在如图5.10所示的时序逻辑电路中,FF0、FF1和FF2三个触发器从左至右按序排列,时钟端不都接在同一个时钟脉冲CP上,没有外部输入变量,输出函数Y只与状态变量Q2、Q1、Q0有关,为Moore型异步时序逻辑电路。

(1) 由给定的时序逻辑电路图写出逻辑表达式。

输出方程为

Y=Qn2Qn1Qn0=Qn2Qn1Qn0(5.13)

驱动方程为


J2=K2=1
J1=K1=1
J0=K0=1(5.14)


将驱动方程代入JK触发器的特性方程得状态方程,并标注时钟条件有 



Qn+12=J2n2+2Qn2=n2CP2↓=Q1↓有效
Qn+11=J1n1+1Qn1=n1CP1↓=Q0↓有效
Qn+10=J0n0+0Qn0=n0CP0↓=CP↓有效
(5.15)


(2) 由状态方程及输出方程列出状态表,如表5.4所示。


表5.4例5.4的状态表


现态 次态输出时 钟 条 件


Qn2Qn1Qn0Qn+12Qn+11Qn+10YCP2CP1CP0

00000100↑↓
0010100↑↓↓
01001101↑↓
0111000↓↓↓
10010100↑↓
1011100↑↓↓
11011101↑↓
1110001↓↓↓


【说明】状态表中需列出各触发器的时钟条件; 两种方式填写表中的次态值: 具备时钟条件的触发器按式(5.15)填写次态值,不具备时钟条件的触发器按Qn+1i=Qni的不变关系填写次态值。



图5.11例5.4的状态图

(3) 由状态表画出状态图,如图5.11所示。


(4) 功能说明。

由图5.11可知,时序逻辑电路状态变化的规律为

次态=现态+1(CP作用一次)

23=8个全部状态均用于对时钟脉冲CP出现的个数进行加法计数,经历23=8个状态完成一个计数周期的循环,并产生进位输出信号。
所分析的时序逻辑电路为异步3位二进制加法计数器。

5.3常用时序逻辑电路 
5.3.1寄存器和移位寄存器

寄存器是用来暂时存放一组二进制数据信息的逻辑记忆电路,它是计算机及接口技术的一种重要部件。
寄存器由具有存储记忆功能的触发器和控制接收数据的控制门构成,触发器的个数等于所存储二进制数据信息的位数。
按寄存功能不同,寄存器分为基本寄存器和移位寄存器。

1. 基本寄存器

基本寄存器只有数据信息并行输入、并行输出功能。

图5.12为D触发器构成的4位基本寄存器74LS175的逻辑图。其中,D0~D3为数据并行输入端,Q0~Q3为数据并行输出端,0~3为反码数据并行输出端,CP为时钟脉冲输入端,CR为异步清0端。注意,CR中的横线“-”,不是非号,表示0有效。



图5.124位基本寄存器74LS175的逻辑图



工作原理为: 
CR=0时,进行异步清0,使4个触发器都复位为0状态; 
CR=1时,一个CP上升沿作用下接收并行输入的数据,使


Qn+10=D0
Qn+11=D1
Qn+12=D2
Qn+13=D3(5.16)


将数据D0~ D3存入寄存器; 
CR=1、CP上升沿以外期间,寄存器保持所存储的内容不变。

基本寄存器还可用其他类型的触发器构成。

2. 移位寄存器

移位寄存器可以串行输入、输出及并行输入、输出数据信息,在移位脉冲CP的作用下可使寄存的数据依次逐位右移或左移。
具有单向移位功能的寄存器称为单向移位寄存器,既可右移又可左移的寄存器称为双向移位寄存器。

1) 单向移位寄存器

图5.13为由D触发器构成的4位右移移位寄存器的逻辑图,前级触发器的状态输出端Q接到相邻下一级触发器的数据输入端D。



图5.13D触发器构成的4位右移移位寄存器的逻辑图


其中,
DI为数据串行输入端,Q0~Q3为数据并行输出端,DO为数据串行输出端。

驱动方程为


D0=DI
D1=Qn0
D2=Qn1
D3=Qn2(5.17)

状态方程为


Qn+10=D0=DI
Qn+11=D1=Qn0
Qn+12=D2=Qn1
Qn+13=D3=Qn2(5.18)


由式(5.18)可知,每作用一个时钟脉冲CP就接收一位数据代码并依次右移一位,4个时钟脉冲CP作用后完成串行输入,可从Q0~Q3端并行输出,再继续作用时钟脉冲CP可从Q3端即DO端串行输出。

图5.14为由JK触发器构成的4位右移移位寄存器的逻辑图。图中每个JK触发器的J与K输入端相反都接成D触发器的形式,该电路与图5.13电路具有相同的功能。



图5.14JK触发器构成的4位右移移位寄存器的逻辑图



2) 集成双向移位寄存器

图5.15为集成4位双向移位寄存器74LS194的图形符号。
其中,S1、S0为工作方式控制端,D0~ D3为数据并行输入端,DIL为数据左移串行输入端,DIR为数据右移串行输入端,Q0~Q3为数据并行输出端,CP为时钟脉冲输入端,CR为异步清零端。注意,CR中的横线“-”,不是非号,表示0有效。



图5.1574LS194的图形符号

74LS194移位寄存器芯片有下述特点。

(1) 具有4位并行输入、串行输入和并行输出结构。

(2) 有直接清零端CR,当CR=0时寄存器清零。

(3) 具有保持、右移、左移和并行输入4种功能。

(4) 时钟脉冲上升沿触发。

74LS194的状态表如表5.5所示。


表5.5集成4位双向移位寄存器74LS194的状态表




输入输出
CR S1S0 CPDILDIRD0D1D2D3Qn+10Qn+11Qn+12Qn+13逻辑
功能


0×××××××××0000置0
100×××××××Qn0Qn1Qn2Qn3保持
101↑×dIR××××dIRQn0Qn1Qn2右移
110↑dIL×××××Qn1Qn2Qn3dIL左移
111↑××d0d1d2d3d0d1d2d3并行输入


5.3.2计数器

计数器是用电路的状态变化累计时钟脉冲CP作用个数的时序逻辑电路,此外还有定时、分频等功能,是数字系统中用途最广泛的基本部件。

计数器由具有存储记忆功能的触发器构成,n个触发器共有2n个状态,可用其中的部分状态或全部状态进行计数。

计数器有如下4种分类方法。

(1) 按计数时钟脉冲输入方式分类。

① 同步计数器。计数时钟脉冲CP接至所有触发器的时钟端,使应改变状态的触发器同时改变状态。

② 异步计数器。计数时钟脉冲CP不接至所有触发器的时钟端,使应改变状态的触发器不同时改变状态。

(2) 按模数N分类。

计数器计数时所经历循环变化的有效状态数称为模数N。

① 二进制计数器。由n个触发器组成,模数N=2n,没有无效状态。

② 十进制计数器。由4个触发器组成,模数N=10,有6个无效状态。

③ 非二进制计数器。由n 个触发器组成,模数N<2n,有2n-N个无效状态。

(3) 按计数增减规律分类。

① 加法计数器。递增规律计数。 

② 减法计数器。递减规律计数。 

③ 可逆计数器。可加可减计数。

④ 特殊编码规律计数器。

(4) 按电路的集成度分类。

① 小规模计数器。由若干个集成触发器和门电路经外部连接构成某种类型的计数器。

② 中规模集成计数器。一般由4个触发器和若干个门电路经内部连接集成在一块硅片上,计数功能比较完善并能扩展。

1. 同步计数器

1) 同步二进制计数器

(1) 由JK触发器构成的3位同步二进制加法计数器如图5.16所示。



图5.163位同步二进制加法计数器



各触发器的时钟端接至同一个时钟脉冲CP上,驱动方程表明了触发器之间的连接规律为


J0=K0=1
J1=K1=Qn0
J2=K2=Qn1Qn0(5.19)

可推论得到

Ji=Ki=Qni-1Qni-2…Qn1Qn0=
∏i-1j=0Qnj(i=1,2,…,n-1)
(5.20)

按时序逻辑电路的分析方法,可得如表5.6所示的状态表和如图5.17所示的时序图。


表5.63位同步二进制加法计数器的状态表


现态次态

Qn2Qn1Qn0Qn+12Qn+11Qn+10

000001
001010
010011
011100
100101
101110
110111
111000




图5.173位同步二进制加法计数器的时序图



(2)  由JK触发器构成的3位同步二进制减法计数器如图5.18所示。



图5.183位同步二进制减法计数器



各触发器的时钟端接至同一个时钟脉冲CP上,驱动方程表明了触发器之间的连接规律为



J0=K0=1
J1=K1=n0
J2=K2=n1n0(5.21)

可推论得到

Ji=Ki=ni-1ni-2…n1n0=∏i-1j=0nj(i=1,2,…,n-1)(5.22)

按时序逻辑电路的分析方法,可得如表5.7所示的状态表和如图5.19所示的时序图。


表5.73位同步二进制减法计数器的状态表


现态次态


Qn2Qn1Qn0Qn+12Qn+11Qn+10

000111
001000
010001
011010
100011
101100
110101
111110




图5.193位同步二进制减法计数器的时序图



由图5.17和图5.19可知,Q0的频率为时钟CP频率的1/2(二分频),Q1的频率为时钟CP频率的1/4(四分频),Q2的频率为时钟CP频率的1/8(八分频)。表明二进制计数器具有分频功能。

2) 同步十进制计数器

由JK触发器构成的同步十进制加法计数器如图5.20所示。



图5.20同步十进制加法计数器

按时序逻辑电路的分析方法,可得如表5.8所示的状态表和如图5.21所示的状态图。


表5.8同步十进制加法计数器的状态表


现态次态


Qn3Qn2Qn1Qn0Qn+13Qn+12Qn+11Qn+10

00000001
00010010
00100011
00110100
01000101
01010110
01100111
01111000
10001001
10010000
10101011
10110100
11001101
11010100
11101111
11110000




图5.21同步十进制加法计数器的状态图


图5.21表明,该计数器有自启动功能。

3) 集成同步可预置数4位二进制/十进制计数器74LS161/160

集成同步可预置数4位二进制/十进制计数器74LS161/160是典型的常用中规模集成计数器。



图5.22集成计数器74LS161/160

的图形符号

图5.22为74LS161/160的图形符号。其中,EP、ET为工作方式控制端,LD为预置数控制端,D3~D0为预置数输入端,CP为计数时钟脉冲输入端,CR为异步清零端,Q3~Q0为状态输出端,C为进位输出端。注意,LD、CR中的横线“-”,不是非号,表示0有效。

对4位二进制计数器74LS161而言,C=1出现在1111状态,在返回0000状态时消失; 对十进制计数器74LS160而言,C=1出现在1001状态,在返回0000状态时消失。

表5.9为74LS161/160的状态表。


表5.9集成计数器74LS161/160的状态表



输入输出

CRLDEPETCPD3D2D1D0Qn+13Qn+12Qn+11Qn+10逻辑
功能


0××××××××0000置0
10××↑d3d2d1d0d3d2d1d0预置数
1111↑××××计数计数
110××××××保持保持
11×0×××××保持保持



由表5.9可知,集成计数器74LS161/160具有下列功能。

(1) 异步清零功能。
当CR=0时,使Qn+13Qn+12Qn+11Qn+10=0000,计数器清零。

(2) 同步并行预置数功能。
当CR=1、LD=0时,CP上升作用下并行预置输入数据d3d2d1d0进入计数器,使Qn+13Qn+12Qn+11Qn+10=d3d2d1d0。

(3) 加法计数功能。
当CR=1、LD=1、EP=ET=1时,CP作用下计数器按二进制数/十进制数规律加法计数。

(4) 保持功能。
当CR=1、LD=1,且EP·ET=0时,计数器保持原状态不变。此时,若ET=0,则进位输出C=0; 若ET=1,则进位输出C=Qn3Qn2Qn1Qn0/Qn3Qn0。

2. 异步计数器

1) 异步二进制计数器

异步二进制计数器必须满足下列构成条件。

(1) 最低位触发器,每接收一个输入计数脉冲翻转一次。

(2) 最低位以外的触发器,每当接收相邻低位触发器送来的进位或借位信号就翻转一次。

加法计数器: 当触发器由1态变0态时向高位进位,该触发器Q 端的负向脉冲(或 端的正向脉冲)作为进位信号。对于上升沿触发器,其CP端应接相邻低位触发器的 端; 对于下降沿触发器,其CP端应接相邻低位触发器的Q 端。

减法计数器: 当触发器由0态变1态时向高位借位,该触发器Q 端的正向脉冲(或端的负向脉冲)作为借位信号。对于上升沿触发器,
其CP端
应接相邻低位触发器的Q端; 对于下降沿触发器,其CP端应接相邻低位触发器的端。


图5.23上升沿触发的3位异步

二进制加法计数器


(3) 计数器中的触发器均构成T′ 触发器。

异步二进制计数器可分为以下4类。

(1) 上升沿触发的异步二进制加法计数器。

由上升沿D触发器构成的3位异步二进制加法计数器如图5.23所示。

按时序逻辑电路的分析方法,可得如表5.10所示的状态表。


表5.10上升沿触发的3位异步二进制加法计数器的状态表


现态次态时 钟 条 件


Qn2Qn1Qn0Qn+12Qn+11Qn+10CP2CP1CP0

0000011↓↑
001010↓↑↑
0100110↓↑
011100↑↑↑
1001011↓↑
101110↓↑↑
1101110↓↑
111000↑↑↑


(2) 下降沿触发的异步二进制加法计数器。

由下降沿JK触发器构成的3位异步二进制加法计数器如图5.24所示。



图5.24下降沿触发的3位异步二进制加法计数器



按时序逻辑电路的分析方法,可得如表5.11所示的状态表。


表5.11下降沿触发的3位异步二进制加法计数器的状态表


现态次态时 钟 条 件


Qn2Qn1Qn0Qn+12Qn+11Qn+10CP2CP1CP0

0000010↑↓
001010↑↓↓
0100111↑↓
011100↓↓↓
1001010↑↓
101110↑↓↓
1101111↑↓
111000↓↓↓


(3) 上升沿触发的异步二进制减法计数器。

由上升沿D触发器构成的3位异步二进制减法计数器如图5.25所示。



图5.25上升沿触发的3位异步二进制减法计数器


按时序逻辑电路的分析方法,可得如表5.12所示的状态表。


表5.12上升沿触发的3位异步二进制减法计数器的状态表


现态次态时 钟 条 件


Qn2Qn1Qn0Qn+12Qn+11Qn+10CP2CP1CP0

000111↑↑↑
0010000↓↑
010001↓↑↑
0110101↓↑
100011↑↑↑
1011000↓↑
110101↓↑↑
1111101↓↑


(4) 下降沿触发的异步二进制减法计数器。

由下降沿JK触发器构成的3位异步二进制减法计数器如图5.26所示。



图5.26下降沿触发的3位异步二进制减法计数器


按时序逻辑电路的分析方法,可得如表5.13所示的状态表。


表5.13下降沿触发的3位异步二进制减法计数器的状态表


现态次态时 钟 条 件


Qn2Qn1Qn0Qn+12Qn+11Qn+10CP2CP1CP0

000111↓↓↓
0010001↑↓
010001↑↓↓
0110100↑↓
100011↓↓↓
1011001↑↓
110101↑↓↓
1111100↑↓


2) 异步十进制计数器

由下降沿JK触发器构成的异步十进制加法计数器如图5.27所示。



图5.27下降沿触发的异步十进制加法计数器


按时序逻辑电路的分析方法,可得如表5.14所示的状态表和如图5.28所示的状态图。


表5.14下降沿触发的十进制加法计数器的状态表


现态次态时 钟 条 件


Qn3Qn2Qn1Qn0Qn+13Qn+12Qn+11Qn+10CP3CP2CP1CP0

00000001↑0↑↓
00010010↓↑↓↓
00100011↑1↑↓
00110100↓↓↓↓
01000101↑0↑↓
01010110↓↑↓↓
01100111↑1↑↓
01111000↓↓↓↓
10001001↑0↑↓
10010000↓0↓↓
10101011↑1↑↓
10110100↓↓↓↓
11001101↑0↑↓
11010100↓0↓↓
11101111↑1↑↓
11110000↓↓↓↓





图5.28异步十进制加法计数器的状态图


图5.28表明,该计数器有自启动功能。

3. 移位寄存器型计数器

移位寄存器型计数器是以移位寄存器为主体构成的同步计数器,将移位寄存器的状态输出量以一定方式反馈到串行输入端而构成,其状态转换规律具有移位、反馈循环的特征。

移位寄存器型计数器分为环形计数器和扭环形计数器两种结构。

1) 环形计数器

图5.29为用上升沿D触发器构成的3位环形计数器,构成形式是将3位右移
移位寄存器的串行输出端反馈到串行输入端。



图5.293位环形计数器



分析电路的逻辑功能可得状态方程为

Qn+10=D0=Qn2 
Qn+11=D1=Qn0 
Qn+12=D2=Qn1 (5.23)

式(5.23)表明,电路按右移移位、反馈循环的规律进行状态转换。

图5.29的电路的状态图如图5.30所示。



图5.303位环形计数器的状态图



【注意】环形计数器在时钟脉冲CP作用下的状态转换过程以右移移位、反馈循环方式进行,因此状态图中现态、次态等状态变量的排列顺序与逻辑图中触发器的排列顺序相同。


对环形计数器中任何一位触发器的驱动函数进行修改,可解决电路的自启动问题。

图5.31为用上升沿D触发器构成的能自启动的3位环形计数器,其状态图如图5.32所示。

环形计数器有如下特点。

(1) n个触发器构成时,有n个有效状态和2n-n个无效状态; 

(2) 计数时一个1依次按位循环。

2) 扭环形计数器

图5.33为用上升沿D触发器构成的3位扭环形计数器,构成形式是将3位右移移位寄存器的串行反相输出端反馈到串行输入端。




图5.31自启动3位环形计数器




图5.32自启动3位环形计数器的状态图





分析电路的逻辑功能可得状态方程为

Qn+10=D0=n2 
Qn+11=D1=Qn0 
Qn+12=D2=Qn1(5.24)

式(5.24)表明,电路按右移移位、取反反馈循环的规律进行状态转换。

图5.33的电路的状态图如图5.34所示。




图5.333位扭环形计数器




图5.343位扭环形计数器的状态图




【说明】扭环形计数器在时钟脉冲CP作用下的状态转换过程以右移移位、反相反馈循环方式进行,因此状态图中现态、次态等状态变量的排列顺序与逻辑图中触发器的排列顺序相同。

对扭环形计数器中任何一位触发器的驱动函数进行修改,可解决电路的自启动问题。

图5.35为用上升沿D触发器构成的能自启动的3位扭环形计数器,其状态图如图5.36所示。




图5.35自启动3位扭环形计数器




图5.36自启动3位扭环形计数器的状态图




扭环形计数器的特点如下。

(1) n个触发器构成时,有2n个有效状态和2n-2n个无效状态。 

(2) 计数时,每次状态转换只有一位触发器的状态发生变化。

4. 其他典型集成计数器简介

在MSI器件中,计数器的型号很多,如二五十进制异步计数器74LS290、单时钟同步可逆计数器74LS191、双时钟同步可逆计数器74LS193等,可查阅有关文献。

5.4时序逻辑电路的设计方法

根据给定的功能要求求解时序逻辑电路的过程称为时序逻辑电路设计。
设计时序逻辑电路时,常使用JK触发器或D触发器。



视频讲解


5.4.1基于触发器的同步计数器设计

基于触发器的同步计数器设计的一般步骤如图5.37所示。



图5.37基于触发器的同步计数器设计的一般步骤


有以下3点说明。

(1) 按式N≤2n确定触发器个数时,n取最小正整数。

(2) 非二进制计数时需进行自启动检查,若能自启动则不需修改驱动方程; 二进制计数时没有无效状态,不需自启动检查。

(3) 设计的关键是求触发器的驱动方程、输出方程及驱动方程的自启动修改。

1. 触发器最简驱动方程的次态卡诺图求解方法及电路自启动设计

1) JK触发器最简驱动方程的次态卡诺图求解

电路中第i个JK触发器的特性方程为

Qn+1i=Jini+iQni(5.25)

分析式(5.25)得第i个触发器的驱动函数Ji、Ki和次态函数Qn+1i的关系为 


Ji=Qn+1iQni=0
Ki=n+1iQni=1
(5.26)

式(5.26)表明触发器的驱动函数和次态函数有确定的关系,次态函数Qn+1i的卡诺图中Qni=0区域的次态表示驱动函数Ji,Qni=1区域的次态取反后表示驱动函数Ki。

所设计的时序逻辑电路有冗余无效状态时,无效状态作为无关项处理。

由式(5.26),在次态函数Qn+1i卡诺图的Qni=0区域圈1格画包围圈求解驱动方程Ji,圈入包围圈的无关项其次态被确定为1值,没圈入包围圈的无关项其次态被确定为0值; 
在次态函数Qn+1i卡诺图的Qni=1区域圈0格画包围圈求解解驱动方程Ki,圈入包围圈的无关项其次态被确定为0值,没圈入包围圈的无关项其次态被确定为1值。

2) D触发器最简驱动方程的次态卡诺图求解

电路中第i个D触发器的特性方程为

Qn+1i=Di(5.27)

分析式(5.27),得第i个触发器的驱动函数Di和次态函数Qn+1i的关系为 

Di=Qn+1i(5.28)

式(5.28)表明,D触发器的驱动函数和次态函数相同。

所设计的时序逻辑电路有冗余无效状态时,无效状态作为无关项处理。

由式(5.28),在次态函数Qn+1i卡诺图圈1格画包围圈求解驱动方程Di,圈入包围圈的无关项其次态被确定为1值,没圈入包围圈的无关项其次态被确定为0值。

3) 自启动驱动方程修改

根据各无关项被确定的次态值可直接检查自启动情况,若不能自启动,需修改求Ji、Ki或Di驱动方程包围圈的圈法改变对某些无关项赋予的次态值,将无关项直接或间接引导到有效状态。

修改的原则是,兼顾状态转换关系能自启动和驱动方程为最简形式的要求,在能自启动的前提下应尽量减少被修改的无关项和修改位。

2. 设计举例

【例5.5】用JK触发器设计一个按自然数序计数的同步六进制计数器。

【解】(1) 由N≤2n确定所用触发器个数。

因N=6、23>6,所以所用触发器个数n=3。

(2) 由自然数序计数要求,做出状态图如图5.38所示。



图5.38例5.5的状态图


(3) 状态表。

由状态图转换成状态表如表5.15所示。其中,有效状态以外的2个无效状态110和111在设计电路时作为无关项处理。


表5.15例5.5的状态表



现态次态输出


Qn2Qn1Qn0Qn+12Qn+11Qn+10Y
0000010
0010100
0100110
0111000
1001010
1010001
110××××
111××××


(4) 做各触发器的次态卡诺图及输出函数卡诺图,化简求驱动方程、输出方程及检查自启动。

由状态表转换成各触发器的次态卡诺图及输出函数卡诺图如图5.39所示。



图5.39例5.5的各触发器次态卡诺图、输出函数卡诺图及化简


各次态函数卡诺图中划分出Qni=0区域和Qni=1区域(阴影区域),在Qni=0区域画求Ji的包围圈,在Qni=1区域画求Ki的包围圈,并在×的右侧标注无关项的赋值; 输出函数卡诺图的全部区域按最简原则画包围圈求Y,并在×的右侧标注无关项的赋值。

据次态函数卡诺图×格无关项所确定的次态值及输出函数卡诺图×格无关项所确定的输出值,画出无效状态110、111的状态图检查自启动情况,如图5.40所示,所设计的电路能够自启动。


图5.40例5.5无效状态的状态图




由图5.39所示的Qn+12、Qn+11、Qn+10各次态函数卡诺图及Y输出函数卡诺图中的化简情况,得各触发器J、K驱动方程及Y输出方程表达式 



J2=n2Qn1Qn0|Qn2=0=Qn1Qn0
K2=Qn2Qn0|Qn2=1=Qn0
J1=n2n1Qn0|Qn1=0=n2Qn0 
K1=Qn1Qn0|Qn1=1=Qn0
J0=n0|Qn0=0=1 
K0=Qn0|Qn0=1=1 (5.29)
Y=Qn2Qn0(5.30)


(5) 逻辑图。

由式(5.29)和式(5.30)画出逻辑图,如图5.41所示。



图5.41例5.5的逻辑图



【例5.6】按图5.42用JK触发器设计一个同步计数器。



图5.42例5.6的状态图



【解】(1) 由状态图可知,电路需用3个触发器,有6个有效状态。

(2) 状态表。

由给定的状态图转换成状态表,如表5.16所示。其中,2个无效状态000和111在设计电路时作为无关项处理。


表5.16例5.6的状态表


现态次态输出


Qn2Qn1Qn0Qn+12Qn+11Qn+10Y
000××××
0011010
0100110
0110011
1001100
1011000
1100100
111××××


(3) 做各触发器的次态卡诺图及输出函数卡诺图,化简求驱动方程、输出方程及检查自启动。

由状态表转换成各触发器的次态卡诺图及输出函数卡诺图如图5.43所示。



图5.43例5.6的各触发器次态卡诺图、输出函数卡诺图及化简



各次态函数卡诺图中划分出Qni=0区域和Qni=1区域(阴影区域),在Qni=0区域画求Ji的包围圈,在Qni=1区域画求Ki的包围圈,并在×的右侧标注无关项的赋值; 输出函数卡诺图的全部区域按最简原则画包围圈求Y,并在×的右侧标注无关项的赋值。


据次态函数卡诺图×格无关项所确定的次态值及输出函数卡诺图×格无关项所确定的输出值,画出无效状态000、111的状态图检查自启动情况,如图5.44所示。
图5.44表明,无效状态000、111不能进入有效状态,不能够自启动,需修改对无效状态所赋的次态值,断开无效循环链,将无效状态引导到有效状态上。

观察图5.42和图5.44,以一个无效状态为修改项、只修改一位时有如图5.45所示的几种修改方案。

若选择无效状态000为修改项、Q2位为修改位,将Q2位所赋的次态值由1修改为0,在Qn+12的卡诺图上重新画求解J2的包围圈如图5.46所示。

由图5.46的Qn+12和图5.43的Qn+11、Qn+10各次态函数卡诺图中包围圈对无效状态所赋的次态值及图5.43中Y输出函数卡诺图中包围圈对无效状态所赋的输出值,得修改后无效状态自启动的状态图如图5.47所示。




图5.44例5.6无效状态的状态图




图5.45例5.6自启动的几种修改方案






图5.46例5.6的Qn+12次态卡诺图

求J的逻辑修改




图5.47例5.6逻辑修改后无效状态的状态图




由图5.46所示的Qn+12和图5.43所示的Qn+11、Qn+10各次态函数卡诺图及Y输出函数卡诺图中的化简情况,得各触发器J、K驱动方程及Y输出方程表达式为

J2=n2n1Qn0Qn2=0=n1Qn0
K2=Qn2Qn1Qn2=1=Qn1

J1=n1n0Qn1=0=n0 
K1=Qn1Qn0Qn1=1=Qn0 
J0=n2n0Qn0=0=n2
K0=Qn2Qn0Qn0=1=Qn2(5.31)
Y=Qn1Qn0(5.32)

(4) 逻辑图。

由式(5.31)和式(5.32)画出逻辑图,如图5.48所示。



图5.48例5.6的逻辑图



【例5.7】用D触发器设计一个按自然数序计数的2位同步二进制加法计数器。



图5.49例5.7的状态图

【解】(1) 确定所用触发器个数。

2位计数器所用触发器的个数n=2。

(2) 由2位二进制加法计数要求,做出状态图如图5.49所示。

(3) 状态表。

由状态图转换成状态表,如表5.17所示。


表5.17例5.7的状态表


现态次态输出

Qn1Qn0Qn+11Qn+10Y
0001 0
0110 0
10 110
1100 1

(4) 做各触发器的次态卡诺图及输出函数卡诺图,化简求驱动方程、输出方程。

由状态表转换成各触发器的次态卡诺图及输出函数卡诺图如图5.50所示。



图5.50例5.7的各触发器次态卡诺图、输出函数卡诺图及化简


在各次态函数卡诺图、输出函数卡诺图上圈1格画包围圈,求解各触发器D驱动方程及Y输出方程的表达式为

D1=n1Qn0+Qn1n0=Qn1Qn0
D0=n0(5.33)

Y=Qn1Qn0(5.34)

(5) 逻辑图。

由式(5.33)和式(5.34)画出逻辑图,如图5.51所示。



图5.51例5.7的逻辑图


5.4.2基于触发器的移位寄存器型计数器自启动设计

移位寄存器型计数器是一种存在大量冗余无效状态的特殊计数规律的计数器,在结构上由触发器构成的右移移位寄存器和反馈逻辑电路构成。
下面以移位寄存器型计数器中的3位扭环形计数器为例介绍自启动设计方法。

3位扭环形计数器满足Qn+10=f(Qn0,Qn1,Qn2)=n2的反馈关系,其状态变化过程如图5.52所示,有效状态的状态图如图5.53所示。




图5.52扭环形计数器的状态变化过程




图5.533位扭环形计数器有效状态的状态图




自启动设计方法为: 其他状态位保持原来状态变化规律不变,对其中任何一位触发器的驱动方程进行逻辑修改。

1. 右移移位及取反循环时的驱动方程

用JK触发器设计电路时,触发器的特性方程为

Qn+1i=Jini+iQni(5.35)

由取反循环的状态变化规律Qn+10=n2及式(5.35),有第0位触发器的驱动方程为


J0=n2
K0=Qn2(5.36)

由右移移位的状态变化规律Qn+1i=Qni-1及式(5.35),有第0位之后各触发器的驱动方程为


Ji=Qni-1
Ki=ni-1(i=1,2)(5.37)

式(5.36)和式(5.37)为不能自启动时各触发器驱动方程的逻辑表达式。

2. 驱动方程的自启动逻辑修改

1) 逻辑修改第0位触发器驱动方程的自启动设计

第0位以后的触发器按右移方式工作,由式(5.37)有驱动方程为


J1=Qn0
K1=n0,
J2=Qn1
K2=n1(5.38)

由式(5.35)有


J0=Qn+10Qn0=0
K0=n+10Qn0=1(5.39)

第0位触发器按式(5.39)的关系进行求解驱动方程及逻辑修改。

图5.54为由图5.53做出的第0位触发器的次态卡诺图、求驱动方程JK的化简及无效状态的状态图。次态函数卡诺图中Qn0=0区域画求J0的包围圈,Qn0=1区域(阴影区域)画求K0的包围圈,×的右侧标注的是无关项的赋值,状态图由×格被赋予的次态值及右移移位关系画出。



图5.54第0位触发器驱动方程求解及无效状态的状态图


由图5.54可知,所设计的电路不能自启动,需在次态函数卡诺图上修改求驱动方程包围圈的圈法。


(1) 修改方案1及无效状态的状态图如图5.55所示。其中,在次态卡诺图Qn0=0区域改变包围圈的圈法,将无效状态010第0位的次态值修改为0、引导到有效状态001。所设计的电路有自启动功能。



图5.55修改方案1及无效状态的状态图


由图5.55得第0位触发器逻辑修改后的驱动方程为 


J0=n0n1n2Qn0=0=n1n2
K0=Qn0Qn2Qn0=1=Qn2(5.40)

由式(5.40)及式(5.38)可画出自启动3位扭环形计数器的逻辑图。


(2) 修改方案2及无效状态的状态图如图5.56所示。其中,在次态卡诺图Qn0=1区域改变包围圈的圈法,将无效状态101第0位的次态值修改为1、引导到有效状态110。所设计的电路有自启动功能。



图5.56修改方案2及无效状态的状态图



由图5.56得第0位触发器逻辑修改后的驱动方程为 


J0=n0n2Qn0=0=n2
K0=Qn0Qn1Qn2Qn0=1=Qn1Qn2(5.41)

由式(5.41)及式(5.38)可画出自启动3位扭环形计数器的逻辑图。

2) 逻辑修改第1位触发器驱动方程的自启动设计

第0位触发器、第2位触发器按取反循环、右移方式工作,由式(5.36)和式(5.37)有驱动方程为


J0=n2K0=Qn2,
J2=Qn1K2=n1(5.42)

由式(5.35)有


J1=Qn+11Qn1=0
K1=n+11Qn1=1(5.43)

第1位触发器按式(5.43)的关系进行求解驱动方程及逻辑修改。

图5.57为由图5.53做出的第1位触发器的次态卡诺图、求驱动方程JK的化简及无效状态的状态图。



图5.57第1位触发器驱动方程求解及无效状态的状态图


所设计的电路不能自启动,需在次态函数卡诺图上修改求驱动方程包围圈的圈法。

(1) 修改方案1及无效状态的状态图如图5.58所示。其中,在次态卡诺图Qn1=0区域改变包围圈的圈法,将无效状态101第1位的次态值修改为0、引导到有效状态000。所设计的电路有自启动功能。



图5.58修改方案1及无效状态的状态图



由图5.58得第1位触发器逻辑修改后的驱动方程为 


J1=Qn0n1n2Qn1=0=Qn0n2K1=n0Qn1Qn1=1=n0(5.44)

由式(5.44)及式(5.42)可画出自启动3位扭环形计数器的逻辑图。

(2) 修改方案2及无效状态的状态图如图5.59所示。其中,在次态卡诺图Qn1=1区域改变包围圈的圈法,将无效状态010第1位的次态值修改为1、引导到有效状态111。所设计的电路有自启动功能。



图5.59修改方案2及无效状态的状态图


由图5.59得第1位触发器逻辑修改后的驱动方程为 


J1=Qn0n1Qn1=0=Qn0K1=n0Qn1Qn2Qn1=1=n0Qn2(5.45)

由式(5.45)及式(5.42)可画出自启动3位扭环形计数器的逻辑图。

3) 逻辑修改第2位触发器驱动方程的自启动设计

第0位触发器、第1位触发器按取反循环、右移方式工作,由式(5.36)和式(5.37)有驱动方程为


J0=n2K0=Qn2,
J1=Qn0K1=n0(5.46)

由式(5.35)有


J2=Qn+12Qn2=0K2=n+12Qn2=1(5.47)

第2位触发器按式(5.47)的关系进行求解驱动方程及逻辑修改。

图5.60为由图5.53做出的第2位触发器的次态卡诺图、求驱动方程JK的化简及无效状态的状态图。



图5.60第2位触发器驱动方程求解及无效状态的状态图



所设计的电路不能自启动,需在次态函数卡诺图上修改求驱动方程包围圈的圈法。

(1) 修改方案1及无效状态的状态图如图5.61所示。其中,在次态卡诺图Qn2=0区域改变包围圈的圈法,将无效状态010第2位的次态值修改为0、引导到有效状态100。所设计的电路有自启动功能。



图5.61修改方案1及无效状态的状态图



由图5.61得第2位触发器逻辑修改后的驱动方程为 


J2=Qn0Qn1n2Qn2=0=Qn0Qn1K2=n1Qn2Qn2=1=n1(5.48)

由式(5.48)及式(5.46)可画出自启动3位扭环形计数器的逻辑图。

(2) 修改方案2及无效状态的状态图如图5.62所示。其中,在次态卡诺图Qn2=1区域改变包围圈的圈法,将无效状态101第2位的次态值修改为1、引导到有效状态011。所设计的电路有自启动功能。




图5.62修改方案2及无效状态的状态图



由图5.62得第2位触发器逻辑修改后的驱动方程为


J2=Qn1n2Qn2=0=Qn1K2=n0n1Qn2Qn2=1=n0n1(5.49)

由式(5.49)及式(5.46)可画出自启动3位扭环形计数器的逻辑图。

5.4.3基于逻辑函数修改技术的N进制同步计数器设计

在同步二进制计数器设计的基础上,通过修改部分触发器的驱动方程来改变状态转换顺序实现N进制计数,从而简化设计过程。

设同步二进制计数器由n个触发器构成,分别为FF0,FF1,…,FFn-1,现态变量为Qn0,Qn1,…,Qnn-1。
用JK触发器设计电路时,二进制加法计数器各触发器的驱动方程如式(5.19)和式(5.20)所示;  二进制减法计数器各触发器的驱动方程如式(5.21)和式(5.22)所示。

计数器中各触发器的次态是现态变量的函数,第i个触发器的次态函数可表示为

Qn+1i=f(Qn0,Qn1,…,Qnn-1)(5.50)

第i个JK触发器的特性方程为

Qn+1i=Jini+iQni(5.51)

由式(5.51),得第i个触发器的驱动方程函数Ji、Ki和次态函数Qn+1i的关系为


Ji=Qn+1iQni=0
i=Qn+1iQni=1  (5.52)

1. N进制加法计数器的逻辑修改设计

二进制加法计数器的状态转换关系为

S0→S1→S2→…→SN-1→SN→…→S2n-1→S0

N进制加法计数器的状态转换关系为 

S0→S1→S2→…→SN-1→S0

在二进制加法计数器中SN-1状态的下一个状态是SN,而在N进制加法计数计数器中SN-1状态的下一个状态是S0。

以SN-1状态为现态、以SN状态及S0状态为次态,比较SN状态和S0状态,若两个状态中对应的Qn+1i相同则不需进行驱动方程修改; 若两个状态中对应的Qn+1i相异,则需进行驱动方程修改,由式(5.52)现态Qni=0需修改驱动方程Ji,现态Qni=1需修改驱动方程Ki。

逻辑修改的原则如表5.18所示。


表5.18二进制加法计数器构成N进制计数器的逻辑修改原则


状态及修改情况第i位状态变量Qi及修改选择


现态SN-10011
二进制的次态SN 0101
N进制的次态S0 0000
修改情况不修改修改Ji不修改 修改Ki


令SN-1状态下Qn为1的现态乘积为修改函数LM,有

LM=∏Qn(1)SN-1(5.53)


由二进制计数的状态变化规律可知,LM在SN-1状态下为逻辑1,而此修改函数在SN-1之前的状态时为0。

进行Ji修改,将二进制计数器驱动方程Ji和LM相与并由式(5.52)代入Qni=0的条件,得N进制计数器修改的Ji驱动方程为

Ji=[(Qni-1…Qn1Qn0)LM]Qni=0(5.54)

即在SN-1状态后Ji=0,以保证下一个时钟脉冲CP作用后Qn+1i=0。

进行Ki修改,将二进制计数器驱动方程Ki和LM相或并由式(5.52)代入Qni=1的条件,得N进制计数器修改的Ki驱动方程为

Ki=[(Qni-1…Qn1Qn0)+LM]Qni=1(5.55)

即在SN-1状态后Ki=1,以保证下一个时钟脉冲CP作用后Qn+1i=0。

【例5.8】用逻辑修改技术设计一个同步十进制加法计数器。

【解】(1) 确定SN-1、SN状态及触发器驱动方程的修改情况。

同步十进制加法计数器的状态为S0,S1,…,S9,需在状态为 S0,S1,…,S9,S10,…,S15的4位二进制加法计数器基础上设计。故SN-1状态为S9,SN状态为S10,触发器驱动方程的修改情况如表5.19所示。


表5.19例5.8的十进制加法计数器修改表


状态及修改情况
第i位状态变量Qi及修改选择
Q3Q2Q1Q0

现态S91001
二进制的次态S10 1010
N进制的次态S0 0000
修改情况修改K3不修改修改J1不修改



(2) 确定LM的逻辑表达式及驱动方程为

LM=Qn3Qn0(5.56) 

逻辑修改的驱动方程为


K3=[(Qn2Qn1Qn0)+LM]Qn3=1=[Qn2Qn1Qn0+Qn3Qn0]Qn3=1=Qn0
J1=[Qn0·LM]Qn1=0=Qn0Qn3Qn0=n3Qn0(5.57)

由式(5.19)和式(5.20)确定其他驱动方程为

J3=Qn2Qn1Qn0
J2=K2=Qn1Qn0
K1=Qn0
J0=K0=1(5.58)

(3) 由式(5.57)和式(5.58)可画出逻辑图。


2. N进制减法计数器的逻辑修改设计

二进制减法计数器的状态转换关系为

S2n-1→…→SN-1→…→S2→S1→S0→S2n-1

N进制减法计数器的状态转换关系为 

SN-1→…→S2→S1→S0→SN-1 

在二进制减法计数器中S0状态的下一个状态是S2n-1,而在N进制减法计数计数器中S0状态的下一个状态是SN-1。

以S0状态为现态、以S2n-1状态及SN-1状态为次态,比较S2n-1状态和SN-1状态,若两个状态中对应的Qn+1i相同则不需进行驱动方程修改; 若两个状态中对应的Qn+1i相异,则需进行驱动方程修改,由式(5.52)现态Qni=0需修改驱动方程Ji。

逻辑修改的原则如表5.20所示。


表5.20二进制减法计数器构成N进制计数器的逻辑修改原则


状态及修改情况第i位状态变量Qi及修改选择


现态S000
二进制的次态S2n-1 11
N进制的次态SN-1 01
修改情况修改Ji不修改


令S0状态下各为0现态Qn取反的现态乘积为修改函数LM,有

LM=∏n(0)S0(5.59)

由二进制减法计数的状态变化规律可知,LM在S0状态下为逻辑1,而此修改函数在其他状态时为0。

进行Ji修改,将二进制减法计数器驱动方程Ji和LM相与并由式(5.52)代入Qni=0的条件,得N进制计数器修改的Ji驱动方程为

Ji=[(ni-1…n1n0)LM]Qni=0(5.60)

即在S0状态后Ji=0,以保证下一个时钟脉冲CP作用后Qn+1i=0。

【例5.9】用逻辑修改技术设计一个同步十进制减法计数器。

【解】(1) 确定SN-1、S2n-1状态及触发器驱动方程的修改情况。

同步十进制减法计数器的状态为S9,…,S1,S0,需在状态为S15,…,S9,…,S1,S0的4位二进制减法计数器基础上设计。故SN-1状态为S9,S2n-1状态为S15,触发器驱动方程的修改情况如表5.21所示。


表5.21例5.9的十进制减法计数器修改表


状态及修改情况
第i位状态变量Qi及修改选择
Q3Q2Q1Q0

现态S00000
二进制的次态S15 1111
N进制的次态S9 1001
修改情况不修改修改J2修改J1不修改



(2) 确定LM的逻辑表达式及驱动方程为

LM=n3n2n1n0(5.61)

逻辑修改的驱动方程为


J2=[n1n0·LM]Qn2=0=[n1n0·n3n2n1n0]Qn2=0=Qn3n1n0
J1=[n0·LM]Qn1=0=[n0·n3n2n1n0]Qn1=0=Qn3n0+Qn2n0 (5.62)

由式(5.21)和式(5.22)确定其他驱动方程为

J3=K3=n2n1n0 
K2=n1n0
K1=n0
J0=K0=1 (5.63)

(3) 由式(5.62)和式(5.63)可画出逻辑图。

3. 逻辑函数修改技术设计N进制同步计数器的自启动问题及特点

由于N进制计数器是在二进制基础上构成的,若计数器一旦进入无效状态使修改函数LM=0,触发器的驱动方程同二进制进制加、减法计数器的驱动方程,计数器将按二进制规律运行无效状态直到进入N 进制的有效循环,因此用驱动方程修改技术设计的N进制加、减法计数器均具有自启动功能。

用驱动方程修改技术设计的计数器与用传统方法设计的计数器相比,触发器的驱动方程不一定是最简形式,但具有方便、快捷的特点和较强的实用意义。



视频讲解


5.4.4基于MSI计数器和逻辑函数修改技术的任意计数器设计

以集成同步可预置数4位二进制计数器74LS161为例,介绍用已有2n进制计数器芯片构成任意计数器的设计方法。

1. 逻辑修改集成计数器的控制端及输入端

计数循环过程中通过预置数控制端LD或异步清零端CR跳过2n-N 个状态实现N进制计数。
基本方法有复位法和置数法。

1) 单片集成计数器74LS161构成任意进制计数器

(1) 复位法。
从0000状态开始计数,使用1111之前的状态,计数范围为0~N-1,无进位输出。

① LD端控制同步复位法,指
利用N进制计数时的第N-1个状态 (最后一个状态)使LD=0,通过预置数控制端LD、预置数输入端D3~D0实现置零复位。


74LS161工作在计数、置数状态。

各控制端、输入端的逻辑关系式为

EP=ET=1
CR=1
LD=∏Qn(1)(最后状态)
D3D2D1D0=0000(5.64)

【例5.10】试用集成4位二进制计数器74LS161设计一个十二进制计数器,使用同步复位法。

【解】所设计计数器的计数范围为0000~1011,最后一个状态为Qn3Qn2Qn1Qn0=1011。

各控制端、输入端的逻辑关系式为

EP=ET=1
CR=1
LD=Qn3Qn1Qn0
D3D2D1D0=0000(5.65)


由式(5.65)画出逻辑图如图5.63所示。



图5.63例5.10的逻辑图


② CR端控制异步复位法,指
利用N进制计数时的第N-1个状态(最后一个状态)的后续状态作过渡状态,在过渡态使CR=0,通过异步清零端CR实现置零复位。

74LS161工作在计数、清零状态。

各控制端、输入端的逻辑关系式为

EP=ET=1
CR=∏Qn(1)(过渡状态)
LD=1
D3D2D1D0=××××(5.66)

【例5.11】试用集成4位二进制计数器74LS161设计一个十二进制计数器,使用异步复位法。

【解】所设计计数器的计数范围为0000~1011,过渡状态Qn3Qn2Qn1Qn0=1011+1=1100。

各控制端、输入端的逻辑关系式为

EP=ET=1
CR=Qn3Qn2
LD=1
D3D2D1D0=××××(5.67)




图5.64例5.11的逻辑图

由式(5.67)画出逻辑图如图5.64所示。

(2) 置数法。
从0000~1111的任一状态开始选取N个连续状态,通过预置数控制端LD、预置数输入端D3~D0实现置数构成N进制计数器。

① 进位输出端控制置数法,指
从预置状态开始计数,1111为最后一个状态,有进位输出。计数范围为预置状态(24-N)~1111。
利用计数时1111状态产生的进位端C=1信号,通过LD、D3~D0实现置数。

74LS161工作在计数、置数状态。

各控制端、输入端的逻辑关系式为

EP=ET=1
CR=1
LD=
D3D2D1D0=24-N(5.68)

【例5.12】试用集成4位二进制计数器74LS161设计一个十二进制计数器,使用进位输出端控制置数法。

【解】所设计计数器的计数范围为(24-12)10=(4)10=(0100)2~(1111)2。

各控制端、输入端的逻辑关系式为

EP=ET=1
CR=1
LD=
D3D2D1D0=(24-12)10=(4)10=(0100)2(5.69)



图5.65例5.12的逻辑图



由式(5.69)画出逻辑图如图5.65所示。

② 预置N进制计数中的最小数,指
利用N进制计数时的第N-1个状态 (最后一个状态)使LD=0,通过预置数控制端LD、预置数输入端D3~D0实现置最小数。

74LS161工作在计数、置数状态。

各控制端、输入端的逻辑关系式为



EP=ET=1
CR=1 
LD=∏Qn(1)(最后状态)
D3D2D1D0=N进制计数中的最小数
(5.70)


【例5.13】试用集成4位二进制计数器74LS161设计一个十二进制计数器,计数范围为0010~1101。

【解】各控制端、输入端的逻辑关系式为

EP=ET=1
CR=1
LD=Qn3Qn2Qn0
D3D2D1D0=0010(5.71)



图5.66例5.13的逻辑图



由式(5.71)画出逻辑图如图5.66所示。

③ 预置N进制计数中的最大数,指
利用N进制计数时的非0最小状态使LD=0,通过预置数控制端LD、预置数输入端D3~D0实现置1111最大数。

74LS161工作在计数、置数状态。

各控制端、输入端的逻辑关系式为



EP=ET=1
CR=1 
LD=∏Qn(1)(非0最小状态)
D3D2D1D0=1111(5.72)

【例5.14】试用集成4位二进制计数器74LS161设计一个十二进制计数器,计数范围为1111~1010。

【解】各控制端、输入端的逻辑关系式为

EP=ET=1
CR=1 
LD=Qn3Qn1
D3D2D1D0=1111(5.73)

由式(5.73)画出逻辑图如图5.67所示。



图5.67例5.14的逻辑图


2) 多片集成计数器74LS161构成更变位二进制计数器,再用复位法、置数法构成任意进制计数器

(1) 集成计数器级联扩展。

① 片间同步触发方式连接,指
将几片74LS161的时钟脉冲CP端接一起、预置数控制端LD接一起、异步清零端CR接一起,将低位片的进位输出端C接相邻高位片的EP、ET工作方式控制端。

当低位片未计数到1111最大数时,其进位输出C=0,从而使相邻高位片的EP=ET=0,则高位片处于保持状态; 当低位片计数到1111最大数时,其进位输出C=1,从而使相邻高位片的EP=ET=1,则在CP脉冲到来后高位片计数一次而低位片返回0000又重新开始计数。

图5.68为2片74LS161片间同步触发方式连接构成8位二进制计数器的逻辑图。



图5.682片74LS161片间同步触发方式连接



② 片间异步触发方式连接,指
将几片74LS161的工作方式控制端EP和ET接一起、预置数控制端LD接一起、异步清零端CR接一起,将低位片的进位输出端C取反后接相邻高位片的时钟脉冲CP端,低位片的时钟脉冲端接外部时钟信号。


当低位片计数范围为0000~1111时,其进位输出C=0或1,从而使相邻高位片的时钟脉冲CP为1或下降沿,则高位片不具备时钟条件处于保持状态; 当低位片从1111最大数返回0000重新开始计数时,其进位输出C从高电平跳变到低电平,使相邻高位片的时钟脉冲CP端出现一个上升沿高位片计数一次。

图5.69为2片74LS161片间异步触发方式连接构成8位二进制计数器的逻辑图。



图5.692片74LS161片间异步触发方式连接



(2) 多片集成计数器74LS161构成任意进制计数器。

当构成模数N>24的任意进制计数器时,先将几片74LS161连接成二进制计数器,再按单片构成任意进制计数器的方法求控制及输入端的逻辑表达式。

【例5.15】试用集成4位二进制计数器74LS161构成一个六十八进制计数器,使用同步复位法。

【解】设所需芯片数为n,由16n≥68,可确定n=2。

由N=68及复位法计数,可知计数范围为00000000~01000011,最后一个状态为Qn7Qn6Qn5Qn4Qn3Qn2Qn1Qn0=Qn32Qn22Qn12Qn02Qn31Qn21Qn11Qn01=01000011。

方法1片间同步触发方式连接。

逻辑关系式为

EP(1)=ET(1)=1
EP(2)=ET(2)=C(1)
CR(1)=CR(2)=1
LD(1)=LD(2)=Qn22Qn11Qn01
D32D22D12D02D31D21D11D01=00000000
CP(1)=CP(2)=CP(5.74)

由式(5.74)画出逻辑图如图5.70所示。



图5.70例5.15方法1的逻辑图



方法2片间异步触发方式连接。

逻辑关系式为

EP(1)=ET(1)=EP(2)=ET(2)=1
CR(1)=CR(2)=1
LD(1)=LD(2)=Qn22Qn11Qn01
D32D22D12D02D31D21D11D01=00000000
CP(2)=(1)
CP(1)=CP(5.75)

由式(5.75)画出逻辑图如图5.71所示。



图5.71例5.15方法2的逻辑图


3) 级联方式构成任意进制计数器

将计数器的模数N分解成N1,N2,… 相乘的形式,即N=N1·N2·…,然后用74LS161分别构成N1,N2,… 进制计数器,再按同步触发方式或异步触发方式进行片间级联。
片间级联的关键是,正确确定低位片计数器在一个计数模长度内对高位片计数器有效触发一次的条件。

【例5.16】试用2片集成4位二进制计数器74LS161设计一个计数范围为0~59的六十进制计数器,采用同步触发方式进行片间级联。

【解】将N=60分解成N=6×10。即个位片连接成十进制计数器,N1=10,计数范围为0000~1001(0~9),选用同步复位法; 十位片接成六进制计数器,N2=6,计数范围为0000~0101(0~5),选用同步复位法。

2片74LS161的时钟脉冲CP端接一起。

个位片工作在计数状态和预置数状态,预置数复位的条件是: 计数到Qn31Qn21Qn11Qn01=1001时,再作用时钟脉冲CP复位返回0000。
个位片各控制端、输入端的逻辑关系式为
CR(1)=1
EP(1)=ET(1)=1
LD(1)=Qn31Qn01
D31D21D11D01=0000(5.76)
十位片工作在计数状态和预置数状态,预置数复位的条件是: 十位片计数到Qn32Qn22Qn12Qn02=0101(对应十进制数5)且个位片计数到Qn31Qn21Qn11Qn01=1001(对应十进制数9)时,再作用时钟脉冲CP复位返回0000。

个位片计数器在一个计数模长度内对十位片计数器有效触发一次的条件是: 由个位片的状态输出信号对十位片的工作方式控制端EP(2)=ET(2)进行控制,当个位片未计数到Qn31Qn21Qn11Qn01=1001时,十位片的EP(2)=ET(2)=0,使十位片处于不计数的保持状态; 当个位计数到Qn31Qn21Qn11Qn01=1001时,十位片的EP(2)=ET(2)=1,则在时钟脉冲CP到来后十位片计数一次而个位片返回0000又重新开始计数。

十位片各控制端、输入端的逻辑关系式为
CR(2)=1
EP(2)=ET(2)=Qn31Qn01=Qn31Qn01
LD(2)=Qn22Qn02Qn31Qn01=Qn22Qn02Qn31Qn01
D32D22D12D02=0000(5.77)

由式(5.76)和式(5.77)画出逻辑图如图5.72所示。



图5.72例5.16的逻辑图



2. 逻辑修改集成计数器的状态输出函数

以74LS161二进制计数器已有的状态输出量为变量、以待定输出量为函数修改计数规律。
确定待定输出量和74LS161已有状态输出量之间的逻辑关系。

【例5.17】用74LS161二进制计数器设计一个加/减可逆计数器。

【解】(1) 确定加/减可逆计数器和74LS161二进制计数器之间的逻辑关系。

图5.73为4位二进制加法计数的状态图,图5.74为4位二进制减法计数的状态图。



图5.734位二进制加法计数器的状态图




图5.744位二进制减法计数器的状态图


由图5.73和图5.74可知,将加法计数器状态图中每一状态中各位取反即为减法计数器的状态图。

(2) 列出逻辑修改的真值表,求逻辑表达式。

以二进制计数器74LS161的状态输出Q3Q2Q1Q0为变量并增设一个加/减控制变量M进行逻辑修改设计,在M=0时各位状态输出不变计数器进行加法计数,在M=1时各位状态输出取反计数器进行减法计数,设修改设计后的计数器的状态输出函数为Q′3Q′2Q′1Q′0,表5.22为逻辑修改的真值表。

由表5.22可得逻辑修改后状态输出函数的逻辑表达式为

Q′i=MQi(5.78)

(3) 由式(5.78)画出加/减可逆计数器的逻辑图如图5.75所示。其中C在加法计数时为进位输出,在减法计数时为借位输出。



表5.22例5.17的真值表



输入输出

MQiQ′i

000
011
101
110




图5.75例5.17的逻辑图



【例5.18】用74LS161二进制计数器设计一个格雷码计数器。

【解】(1) 确定4位格雷码计数器的状态输出量和74LS161二进制计数器状态输出量之间的逻辑关系。

设4位格雷码计数器的状态输出量为Q′3、Q′2、Q′1、Q′0,状态图如图5.76所示。



图5.76例5.18的4位格雷码计数器状态图


以74LS161已有的状态输出量Q3Q2Q1Q0为修改逻辑电路的输入变量,定义格雷码计数器的状态输出量Q′3Q′2Q′1Q′0,函数关系为

Q′3Q′2Q′1Q′0=f(Q3Q2Q1Q0)(5.79)

用逻辑修改的方法修改已有计数器的计数规律为格雷码的变化规律。

(2) 列出逻辑修改的真值表,化简求逻辑表达式。

逻辑修改的真值表如表5.23所示。


表5.23例5.18的真值表


输入输出


Q3Q2Q1Q0Q′3Q′2Q′1Q′0

00000000
00010001
00100011
00110010
01000110
01010111
01100101
01110100
10001100
10011101
10101111
10111110
11001010
11011011
11101001
11111000



图5.77例5.18的卡诺图及化简


由表5.23做出Q′3、Q′2、Q′1、Q′0的卡诺图并化简如图5.77所示。由图5.77得最简逻辑表达式为

Q′3=Q3
Q′2=3Q2+Q32
=Q3Q2
Q′1=2Q1+Q21=Q2Q1
Q′0=1Q0+Q10=Q1Q0(5.80)

(3) 由式(5.80)画出逻辑图如图5.78所示。其中,D=1、EP=ET=1、LD=1使74LS161二进制计数器在计数方式下工作。



图5.78例5.18的逻辑图




视频讲解


5.4.5基于触发器的一般同步时序逻辑电路设计

设计的一般步骤如图5.79所示。



图5.79基于触发器的一般同步时序逻辑电路设计步骤


【例5.19】设计一个串行数据检测电路,该电路有一个输入变量M和一个输出函数Y,输入M为一连串随机串行信号,当出现110序列时输出Y=1,对于其他输入序列输出Y=0,用JK触发器实现。

【解】(1) 画出原始状态图。

 描述所要求的逻辑问题应设4个原始状态S0、S1、S2、S3。其中,S0为初始状态,S1为输入一个1后的状态,S2为输入两个或两个以上1后的状态,S3为输入110后的状态。
输出信号取决于电路的现态和输入量,为Mealy型时序逻辑电路。

原始状态图如图5.80所示。

(2) 状态化简。

图5.80中,S0、S3两个原始状态在相同的输入条件下,转换到相同的状态并有相同的输出,S0、S3两个原始状态是等价的,可合并成一个状态,用S0表示。简化后的状态图如图5.81所示。

(3) 状态编码。

化简后的状态数N=3,需用2个触发器状态输出Q1Q0的4种取值组合中的3种表示S0、S1、S2状态。选取S0=00、S1=01、S2=11,另一状态10为无效状态。

编码后的状态图如图5.82所示,状态表如表5.24所示。




图5.80例5.19的原始
状态图




图5.81例5.19的化简后
状态图




图5.82例5.19的编码
后状态图





表5.24例5.19的状态表


输入现态次态输出


MQn1Qn0Qn+11Qn+10Y
000000
001000
010×××
011001
100010
101110
110×××
111110


(4) 求各触发器的驱动方程及电路的输出方程。

由状态表转换成各触发器的次态卡诺图及输出函数卡诺图如图5.83所示。



图5.83例5.19的各触发器次态卡诺图及输出函数卡诺图


在各次态函数卡诺图中划分出Qni=0区域和Qni=1区域(阴影区域),在Qni=0区域画求Ji的包围圈,在Qni=1区域画求Ki的包围圈,并在×的右侧标注无关项的赋值; 在输出函数卡诺图的全部区域按最简原则画包围圈求Y,并在×的右侧标注无关项的赋值。


图5.84例5.19无效状态的状态图



由图5.83,据次态函数卡诺图×格无关项所确定的次态值及输出函数卡诺图×格无关项所确定的输出值,画出无效状态10的状态图检查自启动情况,如图5.84所示。所设计的电路能够自启动。

由图5.83的化简情况,得各触发器J、K驱动方程及Y输出方程表达式为

J1=Mn1Qn0|Qn1=0=MQn0
K1=Qn1|Qn1=1=
J0=Mn0|Qn0=0=M
K0=Qn0|Qn0=1=(5.81)
Y=Qn1(5.82)

(5) 逻辑图。

由式(5.81)和式(5.82)画出逻辑图,如图5.85所示。



图5.85例5.19的逻辑图



5.4.6基于MSI计数器的一般同步时序逻辑电路设计 

各种MSI数字集成电路都有自己的主要特性和应用目标,如果进行非常规使用改变它的使用方向,就可进一步发挥其功能和作用。扩展专用集成电路的应用领域是一项有实际意义的研究工作。

以下介绍基于MSI二进制计数器74LS161的一般同步时序逻辑电路设计。

1. 基本原理

集成同步可预置数4位二进制计数器74LS161的状态表如表5.9所示。
在CR=1条件下,二进制计数器74LS161由EP、ET及LD控制,具有计数、预置数和保持三种功能。

用二进制计数器74LS161状态输出端Q3Q2Q1Q0的代码组合表示时序逻辑电路的各个状态,由输入变量控制EP、ET及LD端,综合利用计数、预置数、保持功能,使计数器的状态变化满足所要求的时序,即用计数功能实现“次态=现态+1”的二进制时序关系,用预置数功能实现“次态=预置数”的非二进制时序关系,用保持功能实现“次态=现态”的自循环时序关系,可实现一般时序逻辑电路。

2. 基于二进制计数器74LS161的时序逻辑电路基本形式

用1个二进制计数器74LS161和2个16选1数据选择器构成时序逻辑电路的基本形式,如图5.86所示。



图5.8674LS161二进制计数器和16选1数据选择器构成时序电路的基本形式


图5.86中,二进制计数器74LS161的现态输出Qn3~Qn0作为数据选择器的选择控制变量,数据选择器的Y输出作为二进制计数器74LS161的EP、ET工作方式控制信号及LD预置数控制信号,数据选择器的输入端D0~D15 作为所构成时序逻辑电路的外部信号输入端。

二进制计数器74LS161处于不同现态时通过数据选择器选择不同的外部输入信号作用于EP、ET及LD端,对基本工作时序进行修改,在时钟脉冲CP的作用下,使计数器的输出状态按所要求的时序关系进行改变,即可实现状态个数不超过16的一般时序逻辑电路。

如果所实现的时序逻辑电路其状态个数不超过8个,可使用二进制计数器74LS161的低3位状态变量和2个8选1数据选择器进行组合; 
如果所实现的时序逻辑电路其状态个数不超过4个,可使用二进制计数器74LS161的低2位状态变量和2个4选1数据选择器进行组合。

由状态转换关系,依表5.9确定数据选择器各输入端的内容。

所设计的时序逻辑电路为Mealy型时,输出是现态及输入变量的函数,可用数据选择器实现,由各状态的输出要求确定数据选择器各输入端的内容; 
所设计的时序逻辑电路为Moore型时,输出仅是现态的函数,用卡诺图化简求出最简输出逻辑表达式,用逻辑门实现,当每个状态对应一个不同的输出函数时,可用二进制译码器实现输出函数。

3. 基于二进制计数器74LS161时序逻辑电路的设计

一般设计步骤如图5.87所示。



图5.87基于二进制计数器74LS161的一般同步时序逻辑电路设计步骤


有以下两点说明。

(1) 使用MSI二进制计数器74LS161及数据选择器设计时序逻辑电路时,状态的化简通常不会简化电路结构,一般不进行状态化简直接使用原始状态图进行设计,可使各个状态所表示的含义清楚,电路与所实现的逻辑功能之间的对应关系较为明确。

(2) 进行状态编码时,尽量使用不需进行预置数的二进制时序,尽量对非二进制时序做相邻分配以利于预置数的化简。

【例5.20】一个同步时序逻辑电路,输入信号为M1、M2,当M1连续输入4个或4个以上1、M2输入1个1时,输出Y为1,M1、M2不同时输入1。

【解】(1) 做出原始状态图。

由设计要求做出原始状态图如图5.88所示,其中S0表示起始状态,S1状态表示M1输入了1个1,S2状态表示M1输入了2个1,S3状态表示M1输入了3个1,S4状态表示M1输入了4个或4个以上1。

(2) 状态编码。

图5.88中有S0~ S4共5个状态,使用二进制计数器74LS161的低3位状态变量进行状态编码,按尽量使用二进制时序的编码原则,状态分配关系为 

S0——000,S1——001,S2——010,S3——011,S4——100

状态编码后的状态图如图5.89所示。




图5.88例5.20的原始状态图




图5.89例5.20的状态编码后状态图




(3) 求解逻辑表达式。

计数器在各种状态下的操作由输入变量M1、M2决定,由图5.89及表5.9可确定: 仅M1=1时,执行计数功能实现“次态=现态+1”的二进制时序关系,要求EP=ET=1、LD=1; 仅M2=1时,执行预置数功能实现“次态=预置数”的非二进制时序关系,要求EP=ET=×、LD=0,并且需设置预置数; 当M1=M2=0时,执行保持功能实现“次态=现态”的自循环时序关系,要求EP=ET=0、LD=1。



图5.90000状态求解控制变量、输出

函数的卡诺图及化简

Qn2Qn1Qn0=000时求解控制变量EP、ET、LD和输出函数Y的卡诺图及画包围圈化简如图5.90所示,求解逻辑表达式为



EP=ET=M1
LD=1(5.83)
Y=0(5.84)



Qn2Qn1Qn0=001、010、011时求解控制变量EP、ET、LD和输出函数Y的卡诺图及画包围圈化简如图5.91所示,求解逻辑表达式为


EP=ET=M1
LD=2
(5.85)
Y=0(5.86)

Qn2Qn1Qn0=100时求解控制变量EP、ET、LD和输出函数Y的卡诺图及画包围圈化简如图5.92所示,求解逻辑表达式为


EP=ET=0
LD=2(5.87)
Y=M2(5.88)





图5.91001、010、011状态求解控制变量、

输出函数的卡诺图及化简




图5.92100状态求解控制变量、输出

函数的卡诺图及化简




对于不使用的101、110和111状态,将EP、ET及LD均设置为1,使计数器处于二进制时序状态工作,所设计的时序逻辑电路能自启动,输出设置为0,亦可设置为1。

做出二进制计数器74LS161预置输入变量的卡诺图及画包围圈化简如图5.93所示,各预置输入变量的最简逻辑表达式为

D2=D1=D0=0(5.89) 



图5.93预置输入变量的卡诺图及化简 



用1个二进制计数器74LS161和3个8选1数据选择器74LS151按式(5.83)~式(5.89)画出逻辑图如图5.94所示。



图5.94例5.20的逻辑图 




视频讲解


5.5时序逻辑电路Multisim仿真示例

1. 同步计数器逻辑功能的Multisim仿真

(1) 在Multisim中构建同步七进制加法计数器仿真电路,如图5.95所示。其中,计数器由下降沿JK触发器74LS112N、与非门74LS00N、与门74LS08D组成,该电路即是例5.1中分析的时序逻辑电路,时钟电压源用于提供时钟脉冲信号,逻辑分析仪用于显示时钟脉冲CP、状态输出Q0~Q3及输出Y的时序波形。



图5.95同步七进制加法计数器仿真电路

(2) 仿真运行分析。

逻辑分析仪显示的时序波形如图5.96所示,由上至下依次为时钟脉冲CP、状态输出Q0~Q3及输出Y的时序波形。



图5.96同步七进制加法计数器仿真时序波形


由时序波形可看出,在时钟脉冲作用下完成从000→001→010→011→100→101→110共7个状态的循环变化,并产生进位输出信号,为同步七进制加法计数器,状态改变发生在时钟脉冲信号CP的下降沿。

图5.96的时序波形与例5.1的分析结果一致。

(3) 当不注重计数器状态改变对应时钟脉冲CP的边沿位置时,亦可用指示灯显示状态输出及进位输出。



视频讲解


2. 异步计数器逻辑功能的Multisim仿真

(1) 在Multisim中构建异步3位二进制减法计数器仿真电路,如图5.97所示。其中,计数器由上升沿D触发器74LS74N组成,该电路即是5.3.2节中的图5.23的电路,时钟电压源用于提供时钟脉冲信号,逻辑分析仪用于显示时钟脉冲CP、状态输出Q0~Q3的时序波形。



图5.97异步3位二进制减法计数器仿真电路


(2) 仿真运行分析。

逻辑分析仪显示的时序波形如图5.98所示,由上至下依次为时钟脉冲CP、状态输出Q0~Q3的时序波形。

由时序波形可看出,在时钟脉冲作用下完成从111→110→101→100→011→010→001→000共8个状态的循环变化,为异步3位二进制减法计数器,状态改变发生在时钟脉冲信号CP的上升沿。

图5.98的时序波形与5.3.2节中分析结果一致。



图5.98异步3位二进制减法计数器仿真时序波形



3. 集成计数器74LS161构成十二进制计数器的Multisim仿真

(1) 在Multisim中构建仿真电路如图5.99所示。其中,集成4位二进制计数器74LS161N、与非门74LS10N用同步复位法构成十二进制计数器,该电路即是例5.10中的图5.63的电路,时钟电压源用于提供时钟脉冲信号,逻辑分析仪用于显示时钟脉冲CP(CLK)、异步置0信号CR(~CLR)、状态输出Q0~Q3(QA~QD)的时序波形。



图5.9974LS161N构成十二进制计数器仿真电路


【注意】早期的Multisim 10版本中,74LS161N的时钟脉冲CLK为下降沿触发,应在时钟输入端附加反相器74LS04N修正为和实际器件一致的上升沿触发方式。



图5.10074LS161N构成十二进制计数器仿真时序波形


(2) 仿真运行分析。

逻辑分析仪显示的时序波形如图5.100所示,由上至下依次为时钟脉冲CP(CLK)、异步置0信号CR(~CLR)、状态输出Q0~Q3(QA~QD)的时序波形。

由图5.100可知,从0000~1010状态,预置数控制信号LD(~LOAD)=1,计数器在时钟脉冲作用下按计数方式工作,完成0000→0001→0010→0011→0100→0101→0110→0111→1000→1001→1010→1011状态变化; 在1011状态预置数控制信号LD(~LOAD)=0,计数器在时钟脉冲作用下按预置数方式工作,使Q0Q1Q2Q3(QAQBQCQD)=ABCD=0000,完成1011→0000状态变化。

仿真实验结果和理论分析一致。

本章小结

本章主要介绍了时序逻辑电路的特点、时序逻辑电路的分析方法和设计方法、常用时序逻辑电路以及用中规模集成计数器构成任意计数器的方法。

(1) 时序逻辑电路的结构特点是必含有由触发器组成的存储电路; 时序逻辑电路的功能特点是任一时刻的输出信号不仅取决于当时的输入信号,而且还取决于电路原来的状态。

(2) 时序逻辑电路逻辑功能的描述方法主要有逻辑表达式(输出方程、驱动方程、状态方程)、状态表、状态图、时序图。它们各有特点,本质是相通的,可以相互转换。

(3) 常用时序逻辑电路有寄存器、计数器等,要注意理解概念,掌握集成器件的图形符号、逻辑功能,同步、异步二进制计数器的构成特点,以及移位寄存器型计数器的特点。

(4) 时序逻辑电路的分析,实质是从逻辑图到状态图、时序图的各种功能描述方法的按步骤转换过程。
由于同步时序逻辑电路设置统一的时钟,分析时不需考虑各触发器状态转换的时钟条件,仅在画时序图时画出时钟脉冲信号CP的波形; 
由于异步时序逻辑电路不设置统一的时钟,分析时需考虑各触发器状态转换的时钟条件。

(5) 基于触发器的时序逻辑电路设计,实质是从设计要求的状态图到逻辑图的各种功能描述方法的转换过程。关键是画次态卡诺图,通过次态卡诺图求解各触发器的驱动方程及自启动逻辑修改。

(6) 基于触发器的移位寄存器型计数器自启动设计,关键要清楚右移移位、反馈循环的工作过程,可对任何一位触发器的激励函数进行逻辑修改。

(7) 在同步二进制计数器设计的基础上通过修改部分触发器的激励函数方程而改变计数器状态转换的顺序,实现N进制计数器的设计。

(8) 集成计数器构成N进制计数器,实质是通过预置数控制端LD或异步清零端CR跳过2n-N个状态实现N进制计数。
以集成计数器的状态输出函数为变量进行设计的修改,关键是寻找新的输出和计数器状态输出量之间的逻辑关系。

(9) 基于触发器的一般同步时序逻辑电路设计,关键是根据设计要求画出原始状态图,清楚各个状态所表示的含义。

(10) 基于MSI二进制计数器74LS161的一般同步时序逻辑电路设计,用状态输出端 Q3Q2Q1Q0的代码组合表示时序逻辑电路的各个状态,由输入变量控制EP、ET及LD端,用计数功能实现“次态=现态+1”的二进制时序关系、用预置数功能实现“次态=预置数”的非二进制时序关系、用保持功能实现“次态=现态”的时序关系。

自测题

1. 单项选择题

(1) 时序逻辑电路在结构上()。

A. 必须有组合逻辑电路B. 必须有存储电路

C. 必须同时有存储电路和组合逻辑电路D. 以上均正确

(2) 下列四种关于时序逻辑电路的说法中,不正确的是()。

A. 同步时序逻辑电路中所有触发器的触发输入端均接同一个时钟脉冲源

B. 异步时序逻辑电路中各触发器状态的变化并不同时发生

C. Mealy型时序逻辑电路的输出不仅是当前输入的函数同时也是当前状态的函数

D. Moore型时序逻辑电路中不存在独立设置的输入变量

(3) 同步时序逻辑电路和异步时序逻辑电路的区别在于异步时序逻辑电路()。

A. 没有触发器B. 没有统一的时钟脉冲控制

C. 没有稳定状态D. 输出只与内部状态有关

(4) 在图5.101的各逻辑电路中,为1位二进制计数器的是()。

A. B.C.D.



图5.101


(5) 异步计数器如图5.102所示,若当前计数状态为Q2Q1Q0=110,则在时钟作用下计数器的下一状态为()。

A. 111B. 101C. 010D. 011



图5.102


(6) 3位移位寄存器组成的扭环形计数器,其进制数为()。

A. 三进制B. 六进制C. 八进制D. 二进制

(7) 4位环形计数器中,无效状态的个数为()。

A. 4个B. 12个C. 8个D. 0个

(8) 4个触发器构成的计数器,其状态利用率最高的是()。

A. 二进制计数器B. 十进制计数器

C. 环形计数器D. 扭形计数器

(9) 4位二进制计数器74LS161构成的任意进制计数器电路如图5.103所示,计数器的
有效状态数为()。

A.  16个B. 8个C.  10个D. 12个



图5.103


(10) 一个4位串行数据输入4位移位寄存器,时钟脉冲频率为1kHz,转换为4位并行数据输出的时间为()。

 A. 8msB. 4msC. 8μsD. 4μs


2. 填空题

(1) 时序逻辑电路在结构上的特点是必含有,组合逻辑电路部分根据需要设置。

(2) 时序逻辑电路在任一时刻的稳定输出信号不仅与当时的输入信号有关,而且还与有关。

(3) 描述时序逻辑电路逻辑功能的逻辑表达式为三组方程,分别是、和。

(4) 时序逻辑电路的“现态”反映的是时刻电路状态变化的结果,而“次态”
则反映的是时刻电路状态变化的结果。

(5) 计数器工作时用电路的状态变化对出现的个数进行计数。

(6) 计数器计数时,被利用了的状态称为,没被利用的状态称为,
在时钟脉冲CP作用下称有自启动功能或能自启动。

(7) 时序逻辑电路按其不同的状态改变方式,可分为时序逻辑电路和时序逻辑电路两种。前者设置统一的时钟脉冲,后者不设置统一的时钟脉冲。

(8) 根据计数过程中数字增、减规律的不同,计数器可分为计数器、计数器和可逆计数器三种类型。

(9) 由上升沿D触发器构成异步二进制加法计数器时,最低位触发器的CP端接外部时钟
信号,其他各触发器的CP端接相邻低位触发器的。

(10) 将移位寄存器的串行输出端反馈到串行输入端,就构成计数器; 将移
位寄存器的串行反相输出端反馈到串行输入端,就构成计数器。

习题

1. 分析如图5.104所示的时序逻辑电路,写出驱动方程、状态方程、输出方程,列出状态表及状态图,说明逻辑功能。



图5.104



2. 分析如图5.105所示的时序逻辑电路,写出驱动方程、状态方程、输出方程,列出状态表及状态图,说明逻辑功能。



图5.105



3. 分析如图5.106所示的时序逻辑电路,写出驱动方程、状态方程、输出方程,列出状态表及状态图,说明逻辑功能。



图5.106



4. 分析如图5.107所示的时序逻辑电路,写出驱动方程、状态方程、输出方程,列出状态表及状态图,说明逻辑功能。



图5.107



5. 分析如图5.108所示的时序逻辑电路,写出驱动方程、状态方程,列出状态表及状态图,说明逻辑功能。



图5.108



6. 分析如图5.109所示的时序逻辑电路,写出驱动方程、状态方程、输出方程,列出状态表及状态图,画出时序图,说明Q1、Q0与CP的频率关系。



图5.109



7. 分析如图5.110所示的时序逻辑电路,写出驱动方程、状态方程,列出状态表及状态图,说明逻辑功能。



图5.110



8. 分析如图5.111所示的时序逻辑电路,写出驱动方程、状态方程,列出状态表及状态图,说明逻辑功能。



图5.111


9. 分析如图5.112所示的时序逻辑电路。

(1) 写出D=0时Q2Q1Q0的值。

(2) 分析D=1时电路的逻辑功能,写出驱动方程、状态方程,列出状态表,画出状态图,画出时序图,说明电路的逻辑功能。



图5.112

10. 计数器如图5.113所示,分析它是几进制的计数器、状态编码的编码方案及输出信号的有效时刻。



图5.113


11. 同步时序逻辑电路如图5.114所示,试分析逻辑功能。



图5.114


12. 同步时序逻辑电路如图5.115所示,试分析逻辑功能。



图5.115


13. 分析如图5.116所示异步时序逻辑电路的逻辑功能。



图5.116


14. 分析如图5.117所示异步时序逻辑电路的逻辑功能。



图5.117


15. 异步计数器如图5.118所示,分析逻辑功能。



图5.118


16. 异步计数器如图5.119所示,分析逻辑功能。



图5.119


17. 一个4位串行数据输入的移位寄存器,时钟脉冲频率为1kHz,求完成转换4位并行数据输出的时间。

18. 4位二进制计数器74LS161构成的任意进制计数器电路如图5.120所示,画出状态图,说明是几进制的计数器。

19. 4位二进制计数器74LS161构成的任意进制计数器电路如图5.121所示,画出状态图,说明是几进制的计数器。




图5.120




图5.121




20. 用下降沿JK触发器设计如图5.122所示状态转换关系的同步计数器电路。

21. 用下降沿JK触发器设计如图5.123所示时序关系的同步计数器电路。

22. 试用下降沿JK触发器设计一个同步四进制可逆计数器,控制量X=0时进行加法计数,控制量X=1时进行减法计数。




图5.122




图5.123





23. 试用上升沿触发的维持阻塞D触发器设计一个3位异步加法计数器。

24. 试用下降沿JK触发器设计一个3位异步减法计数器。

25. 用逻辑修改技术设计一个同步十三进制加法计数器,用下降沿JK触发器实现。

26. 用逻辑修改技术设计一个同步十三进制减法计数器,用下降沿JK触发器实现。

27. 试用集成4位同步二进制计数器74LS161附加必要的逻辑门电路设计一个计数范围为0~11的十二进制加法计数器,采用同步复位法。

28. 试用集成4位同步二进制计数器74LS161附加必要的逻辑门电路设计一个二百五十六进制计数器,片间分别采用同步触发方式连接、异步触发方式连接。

29. 试用集成4位同步二进制计数器74LS161附加必要的逻辑门电路设计一个加/减可逆计数器,控制量X=0时进行加法计数、控制量X=1时进行减法计数。

30. 试用集成4位同步二进制计数器74LS161、4位加法器74LS283及必要的逻辑门电路设计一个余3码十进制加法计数器。

31. 试用集成4位移位寄存器74LS194 附加必要的逻辑门电路设计能自启动的4位扭环形计数器。

32. 试用下降沿JK触发器设计一个111序列检测电路,当连续输入3个或3个以上1时输出为1,否则输出为0。

33. 试用集成4位同步二进制计数器74LS161及8选1数据选择器74LS151构成一个脉冲序列产生电路,输出序列脉冲为10010011。

34. 试用集成4位同步二进制计数器74LS161和3线8线译码器74LS138构成一个脉冲序列发生电路,产生的脉冲序列如图5.124所示。



图5.124



35. 试用集成4位同步二进制计数器74LS161、数据选择器74LS151及二进制译码器74LS138等器件设计如图5.125所示状态图所要求的Moore型时序逻辑电路。



图5.125


Multisim仿真练习题

1. 用74LS74N双D触发器、74LS10N三3输入与非门、74LS00N四2输入与非门、74LS86N四2输入异或门及74LS04N六反相器构建仿真电路,对例5.2中的时序逻辑电路进行Multisim仿真分析。

2. 用74LS112N双JK触发器、74LS10N三3输入与非门及74LS04N六反相器构建仿真电路,对例5.4中的时序逻辑电路进行Multisim仿真分析。

3. 用74LS112N双JK触发器、74LS08N四2输入与门构建仿真电路,对图5.16所示的3位同步二进制加法计数器进行Multisim仿真分析。

4. 用74LS112N双JK触发器、74LS08N四2输入与门构建仿真电路,对图5.27所示的异步十进制计数器进行Multisim仿真分析。


5. 用74LS74N双D触发器、74LS08N四2输入与门构建仿真电路,对图5.31所示的3位环形计数器进行Multisim仿真分析。

6. 用74LS74N双D触发器、74LS00N四2输入与非门构建仿真电路,对图5.35所示的3位扭环形计数器进行Multisim仿真分析。

7. 用集成4位二进制计数器74LS161N、74LS00N四2输入与非门构建十二进制计数器仿真电路,对例5.11中的时序逻辑电路进行Multisim仿真分析。

8. 用74LS112N双JK触发器、74LS08N四2输入与门构建仿真电路,对习题1所示电路进行Multisim仿真分析。

9. 用74LS74N双D触发器、74LS86N四2输入异或门、74LS00N四2输入与非门构建仿真电路,对习题6所示电路进行Multisim仿真分析。

10. 用74LS112N双JK触发器、74LS08N四2输入与门构建仿真电路,对习题9所示电路进行Multisim仿真分析。

11. 用74LS112N双JK触发器、74LS08N四2输入与门构建仿真电路,对习题13所示电路进行Multisim仿真分析。

12. 用集成4位二进制计数器74LS161N、74LS04N六反相器构建仿真电路,对习题18所示电路进行Multisim仿真分析。