您好,欢迎来电子发烧友网! ,新用户?[免费注册]

当前位置:电子发烧友网 > 图书频道 > 电子 > 《数字电子技术》 > 第6章 时序逻辑电路

第3节 常用同步时序逻辑电路

常用的同步时序逻辑电路有寄存器和计数器等,下面分别介绍其电路结构及工作原理。

6.3.1寄存器

   寄存器按照其电路结构可分为并行数据寄存器和移位串行数据寄存器。

1.并行数据寄存器

    并行数据寄存器一般用D触发器组成,图6.3.1为四位并行数据寄存器电路结构。用4个D触发器实现了4位二进制数据的存储。D触发器的时钟端连接在一起,4位数据输入端为D1~D4,4位数据输出端位Q1Q4

 
 

该电路的状态转移方程为:

            (6.3.1)

将需要存储的数据加在输入端,当时钟信号的上升沿到来时,可将输入端的数据送到输出端并保存下来,直到下一个时钟信号的上升沿到来时才会根据此时的输入数据而改变。

    从图6.3.1可以看出,要存储一个4位二进制数,只需要一个时钟信号就可以,所加入的数据和输出的数据都是并行的。所以就称为并行数据寄存器。

2.移位数据寄存器

    移位数据寄存器分为左移寄存器和右移寄存器,其输入端只有一个,存储数据是在多次时钟脉冲的作用下而完成的。4位左移移位数据寄存器的电路结构如图6.3.2所示。

该电路的状态转移方程为:

            (6.3.2)

在图6.3.2所示电路中,假设初态Q1Q4全为0,现将一个4位二进制数1010存储下来,工作时先将最高位数据1加在D数据输入端上,加入第一个时钟脉冲后,只有Q1 = 1。然后加数据0在D上,加入第二个时钟脉冲,则得到Q2 = 1、Q1 = 0,如

此加入4个时钟脉冲后可将输入端数据1010存储到输出端Q1Q4。可以用表6.3.1来表示其移位过程。数据存储下来后,若要将数据输出移出寄存器,需再次输入4个时钟脉冲即可,移位串行输出端为Q4

表6.3.1  4位左移移位寄存器移位过程表

时钟次 数

D

触 发 器 输 出

Q4

Q3

Q2

Q1

0

1

2

3

4

 

1

0

1

0

0

0

0

0

1

0

0

0

1

0

0

0

1

0

1

0

1

0

1

0

 

 

 

 

 

 

 
 

用JK触发器也可以组成移位数据寄存器,其电路结构形式如图6.3.3所示。其移位数据存储的原理请读者自己分析,在此不再赘述。

上面分析的移位数据寄存器只能实现单方向的移位,在数据存储有时需要双向移位,图6.3.4为实现这种功能的双向移位数据寄存器。

电路中不同移位方向的数据所加到的输入端是不同的,右移输入的数据为DR,左移输入的数据为DL,移位方向的控制端为M,并行输出端为Q4Q1,右移位输出端为Q1,左移位输出端为Q4,该电路的状态转移方程为:
 

                    (6.3.3)

    当M = 1时,式(6.3.3)可以化简为:

                            (6.3.4)

从式(6.3.4)中可以看出,电路实现的式右移寄存器功能。

M = 0时,式(6.3.3)可以化简为:

                             (6.3.5)

从式(6.3.5)中可以看出,电路实现的式左移寄存器功能。

常用的集成移位寄存器有18位移位寄存器CC4006,8位移位寄存器CC4014、CC4021、CC4094,4位双向移位可预置数移位寄存器74LS194、CC40194。图6.3.5是CC40194逻辑简图。图6.3.6为4位可预置数双向移位寄存器CC40194内部逻辑结构图。

 

为复位端,低电平有效;DP0DP3为置数数据输入端,将所要置入的数据加入,在时钟脉冲的上升沿到来时完成置数;DSR为右移数据的输入端,需要右移移位存储数据时采用此端输入数据;DSL为左移数据的输入端,需要左移移位存储数据时采用此端输入数据;M1M0为工作模式的控制端;Q0Q3为输出端。CC40194的功能如表6.3.2所示。

表6.3.2  CC40194功能表

CP

模式选择

输    出

功  能

M1

M0

  Q0        Q1        Q2        Q3

×

×

×

0

0

1

1

×

0

1

0

1

0

1

1

1

1

0      0      0      0

Q0     Q1     Q2     Q3

  DSR    Q0         Q1    Q2

Q1        Q2        Q3      DSL

  DP0       DP1      DP2   DP3

复  位

保  持

右  移

左  移

置  数

 

 

 

 

 

 

 

 

3.移位寄存器应用
 

移位寄存器主要用于数据的串并、并串变换。在图6.3.2、6.3.3、6.3.4的移位寄存器中,加入数据到输入端,在4个移位脉冲作用下,将输入的数据存储到了输出端,完成了输入串行数据到并行数据的变换。用图6.3.7可以实现4位并行输入数据变换为串行数据的逻辑功能。

    电路由4个D触发器组成。其设计原理是在移位寄存器的基础上附加了与-非门,完成移位和并行置数功能。R为复位端,CP为移位脉冲端,M为并行输入数据的选通端,Q4为串行数据输出端,D1D4为并行数据的输入端。根据D触发器的特性,可以写出该电路的状态转移方程为

                          (6.3.6)

    电路工作时,首先R= 1、M= 0,使四个D触发器复位,即D触发器得输出端Q1Q2Q3Q4=0,然后R= 0,将需要存储的数据加在D1D4数据输入端,令M= 1,在第1个时钟脉冲的作用下,得到D触发器输出端的新状态为Q1D1Q2D2Q3D3Q4D4,在此完成并行数据寄存功能,此时输出端Q4已经获得了输出数据。然后M= 0,加入第2个时钟脉冲后,得到D触发器输出端新状态为Q1=0、Q2Q1Q3Q2Q4Q3,在以后的时钟脉冲作用下,完成右移移位功能,Q1不断移入的是数据0,输出端Q2Q3Q4移入的是前一个触发器的输出数据。在第4个时钟脉冲的作用下,完成4个数据的移位输出。

从分析的结果来看,并-串变换的输出端是Q4,由于并行置数时Q4已经获得了输出,所以只需要在时钟脉冲加到第4个时,Q4便获得了全部4位数据的串行输出。表6.3.3是该电路的并串变换工作过程,其中D1=1、D2=1、D3=0、D4=1。

 

表6.3.3  4位并-串变换逻辑电路工作过程

序号

CP

R

M

Q1       Q2       Q3       Q4

功    能

0

1

2

3

4

×

1

0

0

0

0

×

1

0

0

0

   0      0      0      0

   1      1      0      1

   0      1      1      0

   0      0      1      1

   0      0      0      1

复    位

置    数

移位输出

  移位输出

  移位输出

 

 

 

 

 

 

 

 

6.3.2计数器

    计数器是数字电路中用途最广的时序电路之一。可以用基本触发器组成较简单的计数器,也可以用集成中规模器件组成功能较完善的计数器。计数器可以用在脉冲计数、脉冲分频、延时定时、序列脉冲产生等很多电路中。

    按照时钟信号的作用方式的不同,可以分为同步计数器和异步计数器,同步计数器属于同步时序逻辑电路,异步计数器属于异步时序逻辑电路。根据计数数值的增减不同,可分为加法计数器(其计数结果是递增的)、减法计数器(其计算结果是递减的)和可逆计数器(可加可减)。根据计数的数制不同,可分为二进制、十进制和其他进制计数器。有的计数器还具有可预置数功能、双时钟计数功能、七段译码驱动等功能。下面将分别分析介绍各种计数器逻辑电路。

1. 二进制加法计数器

图6.3.8为4位同步二进制加法计数器逻辑电路。电路由4个JK触发器组成,其JK输入端连在一起,构成了T触发器,CP为计数脉冲的输入端,Q1Q4为计数状态的输出,CO为进位输出端。

 
 

    根据电路可以写出JK触发器的驱动方程为

                      (6.3.7)

代入JK触发器的状态方程可得电路的状态转移方程为

           (6.3.8)

输出端的表达式为

                        (6.3.9)

    有了状态转移方程,可以作出状态转换表,如表6.3.4所示。表中假设初始状态时触发器的输出全为0,表示出了在计数脉冲作用下,逻辑电路的初态和次态之间的转换关系,以及进位输出端的值。从表6.3.4可以看出,触发器的输出端Q1Q4的逻辑值按照二进制编码方式循环,共有16状态,属于加法计数器,进位输出端COQ4Q3Q2Q1=1111时才为1,其余均为0

       也可以作出状态转换图,如图6.3.9所示。由于电路中除了时钟信号外,没有其他的输入量,所以在写状态转换的条件时,只写出斜线下方的输出逻辑值,此时的CO值对应为状态转换前触发器Q1Q4的输出值。

       4个JK触发器的4个输出端的逻辑组合情况共有16种组合,在表6.3.4和图6.3.9的状态转换图中已经包含了全部的状态组合,不存在偏离状态,所以该电路是可以自启动的。

表6.3.4  4位同步二进制加法计数器状态转换表

序号

CP

         

      

CO

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

0     0     0     0

0     0     0     1

0     0     1     0

0     0     1     1

0     1     0     0

0     1     0     1

0     1     1     0

0     1     1     1

1     0     0     0

1     0     0     1

1     0     1     0

1     0     1     1

1     1     0     0

1     1     0     1

1     1     1     0

1     1     1     1

0     0      0     1

0     0      1     0

0     0      1     1

0     1      0     0

0     1      0     1

0     1      1     0

0     1      1     1

1     0      0     0

1     0      0     1

1     0      1     0

1     0      1     1

1     1      0     0

1     1      0     1

1     1      1     0

1     1      1     1

0     0      0     0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 
 

    图6.3.10为4位二进制加法计数器电压波形图,从图中可以很直观的看出时钟脉冲作用下各个触发器输出端和进位端的对应电压波形变换关系。每个时钟脉冲下降沿到来时Q1就翻转为相反状态,每2个时钟脉冲下降沿到来时Q2就翻转为相反状态,每4个时钟脉冲下降沿到来时Q3就翻转为相反状态,每8个时钟脉冲下降沿到来时Q4就翻转为相反状态。所以输出端Q1为计数脉冲的2分频,输出端Q2为计数脉冲的4分频,输出端Q3为计数脉冲的8分频,输出端Q4为计数脉冲的16分频,进位输出端也是16分频。因此计数器具有对输入计数脉冲的分频作用。假设输入的时钟信号频率为16KHz,则Q1频率为8KHz,Q2频率为4KHz,Q3频率为2KHz,Q4频率为1KHz。

在图6.3.8中,所有的JK触发器都接成了T触发器的方式,第n个T输入端接入的是前面n-1个触发器输出端相运算的结果,利用这种计数器方式实现分频的方法,可以知道,若要实现1/的分频,则需要n个触发器。

2.二进制减法计数器

    4位二进制减法计数器电路如图6.3.11所示,电路由4个JK触发器组成,触发器输出端Q1Q4,输出端为BO。与6.3.8相比,可见电路中只是将前级的输出相与送到后级J、K输入端,输出端BO是将各级的相与而得。

写出驱动方程为
 

                                        (6.3.10)

写出状态转移方程为

         (6.3.11)

写出输出端的方程为

                       (6.3.12)

 

表6.3.5  4位同步二进制减法计数器状态转换表

序号

CP

         

      

BO

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

0     0     0     0

1     1     1     1

1     1     1     0

1     1     0     1

1     1     0     0

1     0     1     1

1     0     1     0

1     0     0     1

1     0     0     0

0     1     1     1

0     1     1     0

0     1     0     1

0     1     0     0

0     0     1     1

0     0     1     0

0     0     0     1

1     1      1     1

1     1      1     0

1     1      0     1

1     1      0     0

1     0      1     1

1     0      1     0

1     0      0     1

1     0      0     0

0     1      1     1

0     1      1     0

0     1      0     1

0     1      0     0

0     0      1     1

0     0      1     0

0     0      0     1

0     0      0     0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

   

 

 

 

其状态转换表如表6.3.5所示。从状态转移表可以看出,输出端Q4Q1的状态循环是递减的,电路实现的是二进制减法计数器功能。

3. 集成二进制计数器

    前面介绍的都是由基本触发器组成的计数器,属于小规模集成器件的应用。计数器功能也有限,实际使用中往往需要其功能较强,集成计数器就是具有比较完善功能的中规模器件。下面介绍常用的集成二进制同步计数器。

图6.3.12为4位可预置数加法计数器54/74LS161的内部逻辑电路。54/74LS161是16脚封装的双列直插式中规模集成电路,16脚为正电源端,8脚为接地端。为异步复位端(低电平有效);为预置数控制端(低电平有效),置数是在时钟信号作用下同步完成的,为预置数输入端,为计数输出端,当时,在时钟信号的上升沿作用下,预置数被对应送到输出端保存下来;CO为进位输出端;CTPCTT为计数器功能控制端。各个端的作用可以用表6.3.6来表示。表中假设预置端D3D0加入的数为d3d0

 

表6.3.6  CT54161/CT74161逻辑功能表

      CTP    CTT

CP

D3   D2   D1   D0

Q3    Q2    Q1   Q0

0       ×      ×       ×  

1       0      ×       ×

1       1      1       1

1       1      ×       0

1       1      0       ×

×

×

×

×    ×    ×    ×

d3      d2     d1     d0

×    ×    ×    ×

×    ×    ×    ×

×    ×    ×    ×

0     0     0     0

d3       d2       d1      d0

加计数

保持,CO = 0

保   持

 

 

 

 

 

 

 
 

    从表中可以看出,CTPCTT的低电平都可以使输出端的值保持不变,只是CTT
 

的作用还可以让进位输出端CO复位。54/74LS161的计数循环是从00001111,按照二进制方式计数,其状态转移表与表6.3.4相同,状态转换图与图6.3.9相同。54/74LS161的逻辑符号如图6.3.13(a)所示,一般可以用其框图来简化表示之,如图6.3.13(b)所示。

常用的集成二进制计数器还有:同步复位二进制计数器CC40161、CC40163,带同步复位可预置数的二进制加法计数器54/74LS163、CC40163,可逆计数器有54/74LS169、54/74LS191,双时钟4位同步可逆计数器54/74LS193等。

4.十进制加法计数器

    4位二进制计数器有16个状态循环,所以也成为16进制计数器。同样的道理,十进制计数器应该有10个状态循环,译码输出之后可以对应10十进制数的基数。其逻辑电路如图6.3.14所示。

电路由4个JK触发器组成,CP为计数脉冲的输入端,Q1Q4为计数状态的输出,CO为进位输出端。根据电路可以写出JK触发器的驱动方程为
 

                  (6.3.13)

代入JK触发器的状态方程可得电路的状态转移方程为

                (6.3.14)

输出端的表达式为

                          (6.3.15)

 

表6.3.7  4位同步十进制加法计数器状态转换表

 

序号
CP

         

      

CO

有效状态

1

2

3

4

5

6

7

8

9

10

0     0     0     0

0     0     0     1

0     0     1     0

0     0     1     1

0     1     0     0

0     1     0     1

0     1     1     0

0     1     1     1

1     0     0     0

1     0     0     1

0     0     0    1

0     0     1    0

0     0     1    1

0     1     0    0

0     1     0    1

0     1     1    0

0     1     1    1

1     0     0    0

1     0     0    1

0     0     0    0

0

0

0

0

0

0

0

0

0

1

偏离状态

1

2

1

2

1

2

1     0     1     0

1     0     1     1

1     1     0     0

1     1     0     1

1     1     1     0

1     1     1     1

1     0     1    1

0     1     0    0

1     1     0    1

0     1     0    0

1     1     1    1

0     0     0    0

0

1

0

1

0

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

根据状态转移方程(6.3.14)式,将初始状态0000代入,可以得知新的状态为0001,将0001作为初始值再代入(6.3.14)式,又可以得到一新的状态值,如此反复将各个状态代入状态转移方程,可以得到一系列的状态值,即为表6.3.7所示的状态转移表。
 

    从表中可以看出在初始状态0000时,依次加入时钟脉冲,输出端的状态在00001001之间循环,共有10个有效循环,所以是十进制加法计数器。表中指明了有效循环状态和偏离状态之间的转换情况。在出现偏离状态时,最多只需2个时钟脉冲即可进入到有效循环中去,可以自启动。该电路的状态转换图如图6.3.15所示。

从作出的状态状态表(图),可以作出电压波形图,如图6.3.16所示。从图6.3.16的时序电压波形图来看,输出端CO是每10个时钟信号出现一次高电平,实现的是10分频,也就是计数器的进位信号。

如果用图6.3.17的框图符号来表示图6.3.14十进制计数器电路,则图6.3.17为进位信号的级联使用,构成百位计数器电路。因为计数输出端Q4Q1的值正好对应8421BCD码,所以用计数器(1)表示个位,计数器(2)表示十位,整个计数器就构成了百位计数器。如果分别在计数器(1)和计数器(2)的输出端接译码显示电路,则可以看到,随着计数脉冲的输入,数码管的显示从00~99循环显示。

 


5.十进制减法计数器
 

    十进制减法计数器的逻辑电路如图6.3.18所示。电路由4个JK触发器组成,计数输出端为Q4Q1,状态循环从000010011000→…→00010000,按照BCD码递减的方式计数。其工作原理请读者自己分析。

6.集成十进制计数器

集成十进制计数器有54/74LS160、CC40160,其逻辑功能与二进制计数器54/74LS161相比,引脚均一样,也是4位可预置加法计数器,只是在输出端Q4Q1的逻辑状态的循环有差别,54/74LS160的计数循环是从00001001循环,没有二进制计数器的状态循环中10101111的六个状态,所以其功能表与表6.3.6相同。CC40160为4位十进制同步加法计数器与54/74LS160功能相同。带同步复位可预置的十进制加法计数器有54/74LS162。

用途广泛的十进制加法计数器还有:十进制计数器/分频器CC4017。它具有计数、译码双重功能。其内部逻辑电路结构如图6.3.19所示。电路中共有Q0Q9 10个输出端;CR为异步复位端,高电平有效,在计数时应该使之为低电平;CP计数脉冲输入端,上升沿计数;INH为时钟禁止端,高电平有效,当INH = 1时,计数器禁止计数,输出端Q0Q9保持不变,同时该端具有下降沿计数的功能,CP = 1时,计数脉冲加在INH端时,下降沿计数;CO为进位输出端。


 

在正常计数情况下,令CR = 0、INH = 0,计数脉冲加在CP时,输出端依次单独出现高电平。CC4017逻辑功能表如表6.3.8所示。

表6.3.8  CC4017逻辑功能表

CR     INH     CP

输出端:Q0Q9

CO

1       ×      ×

0             0        

0               1

  0         1        ×

0         ×        0

Q0 = 1,Q1Q9 = 0

依次单独输出高电平

依次单独输出高电平

保  持

保  持

1


n<5,CO=1

n≥5,CO=0

 

图6.3.20为CC4017时序电压波形图,可以看出输出端在时钟脉冲作用下,每次只会出现一个高电平,进位输出端在第5个脉冲之前(即Q5为高电平前),CO= 1,在第5个脉冲上升沿到来时(Q5为高电平时刻),进位输出端翻转为低电平,CO= 0。

 

图6.3.21为CC4017的一个简单应用电路。该电路实现的是序列脉冲信号1011010110、… 的产生。电路中输出端Y将CC4017的Q1Q3或-运算,CC4017的Q5与复位端CR相连,在时钟信号作用下,一旦Q5出现高电平,则CC4017获得复位,Q0输出为高电平,Q5的高电平时间只是很短的尖峰,所以CC4017是工作在五进制计数循环状态。

图6.3.21中画出了时钟信号作用下,Q0Q4以及Y的电压波形。从图中可以看出输出端Y的序列为1011010110、…。

集成减法计数器还有可预置十进制加减计数器CC4510、4位十进制可预置减法计数器CC4522等。


双时钟4位可预置数同步十进制加减计数器CC40192(74LS192)的逻辑框图如图6.3.22所示。Q4Q1 为计数结果的输出端;D4D1为预置数输入端;R为复位端,高电平有效异步复位;为预置数控制端,低电平异步置数;CPU加计数脉冲输入端,上升沿计数,作减法计数时该端处于高电平;CPD减计数脉冲输入端,上升沿计数,作加法计数时该端处于高电平;加计数进位输出端,低电平有效,只有在产生进位时才为低电平,平时为高电平;减计数借位输出端,低电平有效,只有在产生进位时才为低电平,平时为高电平。CC40192的逻辑功能表如表6.3.9所示。

 

表6.3.9  CC40192功能表

R

CPU

CPD

功   能

1

0

0

0

0

0

×

0

1

1

1

1

×

×

×

1

0

×

×

1

0

×

复   位

异步预置数

加计数

保    持

减计数

保    持

 

 

 

 

常用的十进制计数有些还兼有七段译码显示驱动功能,这样的集成器件有CC4026、CC40110、CC4033等,这些集成计数器具有七段字形的笔段输出,在时钟脉冲的作用下,能够使数码管显示0~9十个数码,给计数显示电路的设计带来方便。

    图6.3.23为十进制计数、七段译码器CD4026的逻辑简图。CP为计数信号的输入端,上升沿计数;输出端a、b、c、d、e、f、g为七段字形码对应笔段;R为复位端,高电平有效复位;INH为锁存端,当INH = 1时,停止计数,输出端保持不变,INH= 0时正常计数显示;QCO为进位输出端,出现进位时为高电平,可作计数时钟信号的十分频输出,也可以作为下一级计数电路的级联使用;DEI是控制显示的输入端,当DEI = 0时,数码显示消隐,当DEI = 1时,正常计数显示;DEO是控制显示的输出端,它与DEI作用相同;C为数码显示“c”笔段的输出,不受DEI的控制,0~9的七段字形码中,只有数码字形“2”的“c”笔段不显示,所以可以利用输出端C来方便的实现12或60进制数码显示。