第5章
CHAPTER 5


锁存器与触发器











锁存器和触发器是数字电路中基本的存储器件,两者共同的特点是能够存储1位二值信息。

按照逻辑功能进行划分,锁存器/触发器可分为SR锁存器/触发器、D锁存器/触发器和JK触发器。根据动作特点进行划分,锁存器/触发器可分为门控锁存器、脉冲触发器和边沿触发器3种类型。

锁存器是构成触发器的基础,而触发器是构成时序逻辑电路的基石。本章主要讲述锁存器和触发器的电路结构、逻辑功能、动作特点以及典型应用。



5.1
微课视频


5.1基本锁存器及其描述方法

逻辑代数中变量和函数只有0和1两种取值,相应地,存储电路应该具有两个稳定的物理状态,一个状态表示0,另一个状态表示1。

数字电路中最基本的存储电路为双稳(bistable)电路,如图51(a)所示,由两个非门交叉耦合构成。所谓
交叉耦合是指第一个门电路的输出作为第二个门电路的输入(正向连接),第二个门电路的输出又作为第一个门电路的输入(反馈连接)。



图51双稳电路及其特性曲线


双稳电路的特性曲线如图51(b)所示,由两个反相器的电压传输特性曲线交叉构成。由图中可以看出,双稳电路有两个稳态点A(vO1=1,vO2=0)和C(vO1=0,vO2=1)和一个介稳态点B。对于CMOS反相器构成的双稳电路,处于B点时vO1=vO2≈ (1/2)VDD。由于非门的输出与输入为反相关系,并且交叉耦合为正反馈连接,因此当双稳电路处于B点时不能保持,由于电路内部噪声和外部干扰的影响,必然会转换到A点或C点。所以,介稳态点不是稳定的工作点。

若将反相器G1的输出vO1命名为Q,则G2的输出vO2为Q′,并且定义Q=0,Q′=1时表示存储的数据为0,定义Q=1,Q′=0时表示存储的数据为1。因此,特性曲线中A点表示存储的数据为1,也称为1状态; C点表示存储的数据为0,也称为0状态。

双稳电路的状态由链路构成的瞬间门电路的状态决定,并且能够永久地保持下去。因为没有输入端,所以在链路打开之前,无法改变双稳电路的存储数据。





若将双稳电路中的反相器扩展为二输入与非门或者二输入或非门,就可以构成两种基本SR锁存器(basic latch),如图52所示。二输入与非门(或者或非门)的一个输入端用于交叉耦合连接,另一个则作为输入端。通过两个输入信号的共同作用就可以设置或者保持锁存器的状态。



图52两种基本锁存器



为了便于分析与设计,将两个与非门交叉耦合构成的锁存器与输出Q相对应的输入端命名为S′D,与Q′对应的输入端命名为R′D,如图52(a)所示,其中非号表示输入端低电平有效。将两个或非门交叉耦合构成的锁存器与输出Q相对应的输入端命名为RD,与Q′对应的输入端命名为SD,如图52(b)所示,两个输入端高电平有效。下标D表示锁存器的输入信号不受其他信号的控制,是直接(directly)作用的。

为了便于用数学方法描述锁存器在输入信号作用下状态的变化关系,将输入信号作用前锁存器所处的状态称为现态(current state),用Q表示,将输入信号作用后锁存器所处的状态称为次态(next state),用Q*表示。

下面对两个与非门构成的锁存器进行分析。

(1) 当S′D=1、R′D=1时,锁存器相当于双稳电路,维持原来的状态不变。 

(2) 当S′D=0、R′D=1时,Q*=1,即在S′DR′D=01的作用下,锁存器的次态被置为1。 

(3) 当S′D=1、R′D=0时,Q*=0,即在S′D R′D=10的作用下,锁存器的次态被置为0。 

由于S′D有效时,将锁存器置1(set),R′D有效时,将锁存器置0(reset),所以称S′D为置1输入端,R′D为置0输入端。相应地,将这种锁存器称为SR锁存器(setreset latch)。

(4) 当S′D=0、R′D=0时,通过分析可知这时Q*和Q*′同时为1。这个状态既不是定义的0状态也不是定义的1状态,而是一种错误的状态。因此,对于由与非门构成的基本SR锁存器,在正常应用的情况下,不允许S′D和R′D同时有效。

同理,对两个或非门构成的锁存器进行分析。

(1) 当SD=0、RD=0时,锁存器相当于双稳电路,Q*=Q(保持功能)。

(2) 当SD=1、RD=0时,Q*=1,即将锁存器的次态设置为1(置1功能)。

(3) 当SD=0、RD=1时,Q*=0,即将锁存器的次态设置为0(置0功能)。


(4) 当SD=1、RD=1时,Q*和Q*′同时为0,这个状态同样是错误的,所以对于由或非门构成的基本SR锁存器,在正常应用的情况下,不允许SD和RD同时有效。



图53基本SR锁存器图形符号

两种基本SR锁存器的图形符号如图53所示,图中端口框外的“”表示该端口为低电平有效。

从两种基本SR锁存器的分析过程可以看出,锁存器的次态既和输入信号有关,也和现态有关,所以锁存器的次态是输入信号和现态的逻辑函数,即

Q*=F(S′D,R′D,Q)(对于与非门构成的锁存器)

或

Q*=F(SD,RD,Q)(对于或非门构成的锁存器)


既然锁存器的次态是逻辑函数,就可以用逻辑函数的表示方法——真值表(特性表)、函数表达式(特性方程)、卡诺图和波形图表示。又因为锁存器具有0和1两种状态,输入信号的变化可能会引起状态的变化,所以其功能还可以用状态转换图或者激励表表示。

(1) 特性表。
特性表即真值表,是以表格的形式描述存储单元的次态与输入信号和现态之间的关系。基本锁存器的特性表如表51所示。由于在正常应用的情况下,不允许两个输入信号同时有效,所以同时有效的输入取值组合作为无关项处理。


表51基本SR锁存器特性表



与非门构成的锁存器特性

S′DR′D QQ*

1100
1111
0101
0111
1000
1010
000×
001×


或非门构成的锁存器特性


SDRDQQ*

0000
0011
1001
1011
0100
0110
110×
111×


(2) 特性方程。
由特性表画出锁存器的卡诺图,再进行化简即可得到锁存器的函数表达式,习惯称为特性方程。

由与非门构成的锁存器的卡诺图如图54(a)所示,化简可得

Q*=(S′D)′+R′D·Q=SD+R′D·Q

其中两个输入信号S′D和R′D应满足S′D+R′D=1的约束条件。



图54基本SR锁存器卡诺图


同理,由或非门构成的锁存器的卡诺图如图54(b)所示,化简可得

Q*=SD+R′D·Q

其中两个输入信号SD和RD应满足SDRD=0的约束条件。

从上面两个函数式可以看出,虽然由与非门构成的锁存器和由或非门构成的锁存器电路形式不同,但两者具有相同的特性方程,而且约束条件也是等价的。因此,以后不用再区分锁存器具体的电路形式,可以直接应用特性方程进行分析和设计。

(3) 状态转换图与激励表。
将存储单元两个状态之间的转换关系及所需要的输入条件用图形的方式表示称为状态转换图(简称为状态图),用表格的形式表示则称为激励表。

锁存器有0和1两个状态,根据输入信号的不同进行组合,既能设置也可以保持。图55为基本SR锁存器的状态图,表52为其激励表。




图55基本SR锁存器状态转换图




表52基本SR锁存器激励表


QQ*SDRD

000×
0110
1001
11×0






思考与练习

51基本SR锁存器有哪几种功能?分别说明其输入条件。

52若应用基本SR锁存器时不遵守SDRD=0的约束条件,会出现什么问题?





74LS279为集成SR锁存器,其内部逻辑及引脚如图56所示。其中有两个锁存器提供了两个置1端S′1和S′2。由于S′1和S′2同为与非门的输入端,故置1信号S′=S′1S′2。



图5674LS279内部逻辑和引脚图



除了具有数据存储功能外,应用基本SR锁存器的保持功能可以实现开关消抖。基本开关电路如图57(a)所示,开关切换时在触点接触瞬间由于簧片震颤会产生若干个不规则的脉冲。假若这些脉冲作用于时序电路,可能会引发逻辑错误。

应用基本SR锁存器可以消除多余的脉冲,具体电路如图57(b)所示。工作原理分析如下: 

(1) 当开关由位置1切换到2时,由于上拉电阻的作用使R′=1,簧片震颤使S′随机变化。当S′=0时将锁存器置1,当S′=1时锁存器保持,因此状态Q能够保持为1不变。

(2) 当开关由位置2切换回1时,由于上拉电阻的作用使S′=1,簧片震颤使R′随机变化。当R′=0将锁存器置0,当R′=1时锁存器保持,因此状态Q能够保持为0不变。

综上分析,应用锁存器能够消除开关触点接触瞬间由于簧片震颤产生的多余脉冲,从而提高了开关电路工作的可靠性。



图57开关电路及消抖原理图


5.2门控锁存器




5.2
微课视频


基本锁存器的输入信号不受其他信号的控制,输入信号的任何变化都可能引起锁存器状态的变化。当数字系统中有多个存储单元时,我们希望能够协调这些存储单元的动作,使它们能够同步工作,就像阅兵一样(见图58),这就需要给存储单元引入控制信号。



图58阅兵


协调存储单元工作的控制信号称为时钟(clock)或者时钟脉冲(clock pulse),用CLK或者CP表示。为方便讨论,将时钟脉冲划分为低电平、上升沿、高电平和下降沿4个阶段,如图59所示。

引入了时钟的锁存器称为门控锁存器(gated latch)。图510是门控SR锁存器,在基本SR锁存器的基础上引入了G3和G4组成的门控电路。由于输入信号S和R受时钟CLK的控制,不再直接起作用,所以没有下标D。




图59时钟脉冲




图510门控SR锁存器





下面对门控SR锁存器的工作过程进行分析。

(1) CLK为低电平时。

由于S′D=(S·CLK)′=1,R′D=(R·CLK)′=1,所以锁存器不受输入信号S、R的控制,处于保持状态(可理解为不工作)。

(2) CLK为高电平时。 

由于S′D=(S·CLK)′=S′,R′D=(R·CLK)′=R′,因此输入信号S和R的变化决定了S′D和R′D的变化,因此门控锁存器将根据输入信号S和R实现其相应的功能。

门控SR锁存器的特性方程可从基本锁存器的特性方程推出。因为S′D=(S·CLK)′,R′D=(R·CLK)′,所以当时钟CLK为高电平时,S′D=S′,R′D=R′,代入基本锁存器的特性方程即可得到门控锁存器的特性方程为

Q*=S+R′·Q

上式在CLK=1时成立。

门控锁存器的状态转换图和图形符号如图511所示,其中C1为时钟输入端。



图511门控SR锁存器状态转换图及图形符号


门控SR锁存器和基本锁存器一样,具有置0、置1和保持3种功能。由于门控SR锁存器在两个输入信号同时有效时仍然会导致锁存器的状态发生错误。因此,门控SR锁存器同样需要遵守SR=0的约束条件。

为了消除约束,第一种改进思路是让R和S相反,如图512所示,这样使门控SR锁存器的输入信号始终满足SR=0的约束条件。但是,这种改进方法虽然消除了约束,却改变了锁存器的逻辑功能,因此这种锁存器不再是SR锁存器,而称为D锁存器。




图512门控D锁存器


由于S=D,R=D′,代入SR锁存器的特性方程即可得到门控D锁存器的特性方程

Q*=S+R′Q=D+(D′)′·Q
=D+D·Q=D

上式在CLK=1时成立。

由D锁存器的特性方程可以推出: 当CLK为高电平时,若D=0则Q*=0; 若D=1则Q*=1,因此门控D锁存器只具有置0和置1两种功能,其状态转换图和图形符号如图513所示。



图513D锁存器状态转换图及图形符号


由于门控D锁存器在时钟有效电平期间输出始终跟随输入信号发生变化,因此称为“透明的”锁存器。

【例51】对于图512所示的门控D锁存器,时钟CLK和输入信号D的波形如图514所示。画出在CLK和D作用下锁存器输出Q和Q′的波形。假设锁存器的初始状态为0。

分析: 门控D锁存器在CLK为高电平期间工作,输出是透明的,而在时钟为低电平期间不工作而处于保持状态,所以门控D锁存器的输出Q和Q′的波形如图515所示。




图514例51输入信号波形图




图515例51工作波形图






思考与练习

53门控锁存器有哪几种类型?各具有什么功能?





5.3脉冲触发器



5.3
微课视频


门控锁存器在时钟有效电平期间始终处于工作状态,输入信号的变化随时能引起输出信号的变化,因此受干扰产生误动作的概率大。另外,由于门控D锁存器的输出是透明的,无法构成移位寄存器和计数器这两类时序逻辑器件,所以门控锁存器在应用上有很大的局限性。

为了提高抗干扰能力,希望存储电路只在时钟的边沿瞬间进行状态更新,其余时间均处于保持状态,从而能够避免门控锁存器那样因干扰可能产生误动作的情况。

只在时钟边沿瞬间更新状态的存储电路称为触发器(flipflop)。相应地,将在时钟有效电平期间工作的存储电路称为锁存器。

SR触发器的实现方法之一是采用主从式结构,如图516所示。具体做法是将两级门控SR锁存器级联,第一级称为主(master)锁存器,时钟CLK1=CLK; 第二级称为从(slave)锁存器,时钟CLK2=CLK′。



图516主从式SR触发器


下面对主从式SR触发器的工作过程进行分析。

(1) 时钟脉冲在低电平期间。 

由于CLK=0,所以CLK1=0,CLK2=1,因此主锁存器保持,从锁存器处于工作状态。

当主锁存器的状态Qm=1时,分析可知从锁存器的状态QS=1,当Qm=0时,QS=0,即在CLK=0期间,触发器的状态与主锁存器状态相同,即Q=Qs=Qm。

(2) 时钟脉冲上升沿到来时。 

当CLK上升沿到来时,主锁存器开始工作,接收输入信号S和R,根据逻辑功能更新Qm的状态。从锁存器从工作转为保持,所以触发器保持CLK为低电平期间的状态不变。

(3) 时钟脉冲在高电平期间。 

由于CLK=1,所以CLK1=1,CLK2=0,主锁存器处于工作状态,从锁存器依然保持,所以触发器的状态保持不变。

(4) 时钟脉冲下降沿到来时。 

当CLK下降沿到来时,主锁存器将由工作转为保持,锁定了时钟脉冲CLK下降沿到来瞬间Qm的状态。从锁存器开始工作,将主锁存器的状态Qm传递给QS,因此触发器的状态是在时钟下降沿到来瞬间进行更新,其状态Q是由时钟为高电平期间输入信号S和R决定的。

经过上述分析可知,当时钟脉冲CLK上升沿到来时,触发器已经开始工作,但必须等到脉冲下降沿到来时才能进行状态更新,所以触发器完成一次状态更新需要经过一个完整的时钟脉冲,所以主从式触发器也称为脉冲触发器。同时,将这种上升沿开始工作、下降沿才能输出的动作特点称为延迟输出,用“”表示。图517是脉冲SR触发器的图形符号。



图517脉冲SR触发器

图形符号


由于脉冲SR触发器中的主锁存器在时钟脉冲为高电平期间始终处于工作状态,所以触发器的抗干扰能力还没有得到有效的改善。

另外,脉冲SR触发器对输入信号S和R仍有约束。为了消除约束,第二种改进思路是利用触发器的输出Q和Q′互为相反的特点来满足约束条件。具体做法是将脉冲SR触发器的输出Q反馈到R端与K信号相与,将Q′反馈到S端与J信号相与,如图518所示。这种改进方法同样改变了触发器的逻辑功能,所以这种触发器不再是SR触发器,而称为JK触发器。



图518脉冲JK触发器电路结构及图形符号


对于图518所示的JK触发器,由于S=J·Q′、R=K·Q,因此S·R=J·Q′·K·Q=0,所以JK触发器对输入信号J、K没有限制。

将S和R的表达式代入SR触发器的特性方程即可推出JK触发器的特性方程: 

Q*=S+R′·Q
=J·Q′+(K·Q)′·Q
=J·Q′+(K′+Q′)·Q
= J·Q′+K′·Q


将J、K的4种取值组合代入上述特性方程中即可得到如表53所示JK触发器的特性表。


表53JK触发器的特性表


JKQ*功 能 说 明

00Q保持
010置0
101置1
11Q′翻转


从特性表可以看出,JK触发器除了具有置0、置1和保持3种功能外,还增加了一种新功能——翻转(toggle)功能,即当时钟脉冲下降沿到来时,触发器的次态与现态相反。因此,JK触发器的状态转换图如图519所示。



图519JK触发器状态转换图


由于脉冲JK触发器将Q反馈到K端,将Q′反馈到J端,所以当Q=0时,输入信号K不能正常发挥作用(相当于K=0),在J信号的作用下只能将触发器置成1或者保持,所以触发器一旦被置1后不可能再返回到0状态。同理,当Q=1时,J信号不能正常发挥作用(相当于J=0),在K信号的作用下只能将触发器置成0或者保持,所以触发器被置0后也不可能再返回到1状态。因此,脉冲JK触发器存在一次翻转现象,即触发器在每个脉冲周期内只能翻转一次,当触发器受到干扰发生误翻转后就不可能返回原来的状态。

【例52】对于图518所示的脉冲JK触发器,已知时钟脉冲CLK、输入信号J和K的波形如图520所示。分析触发器的工作过程,画出输出Q和Q′的波形。假设触发器的初始状态为0。

分析: 

(1) 在第1个时钟高电平期间,JK=10,所以内部主锁存器被置为1,在CLK的下降沿到来时触发器的状态更新为1。 

(2) 在第2个时钟脉冲高电平期间,K信号因干扰而变化。起初JK=00,主锁存器保持1状态,后K信号因干扰而跳变为1,瞬间使JK=01,所以主锁存器因干扰被置为0。由于JK触发器存在一次翻转现象,因此主锁存器不可能再返回1状态,因此当时钟脉冲下降沿到来时,触发器状态更新为0。 

(3) 在第3个时钟高电平期间,J信号有一次变化。起初JK=11,主锁存器翻转为1。由于存在一次翻转现象,所以主锁存器的状态在高电平期间不可能再次发生翻转,因此当时钟脉冲下降沿到来时,触发器状态更新为1。 

(4) 在第4个时钟高电平期间,因JK=00,所以触发器内部主锁存器的状态保持不变,因此时钟脉冲下降沿到来时,触发器状态保持为1。

由上述分析可画出输出Q和Q′的波形,如图521所示。




图520例52输入信号波形图




图521例52工作波形图






思考与练习

54脉冲SR触发器是否存在一次翻转现象?试分析说明。

55为什么脉冲JK触发器存在一次翻转现象?试分析说明。






5.4
微课视频


5.4边沿触发器

边沿触发器只在时钟脉冲瞬间的边沿工作,其余时间均处于保持状态。由于工作时间极短,所以受到干扰的概率很小,因此边沿触发器具有很强的抗干扰能力。

边沿D触发器由两级门控D锁存器级联构成,如图522所示,其中第一级锁存器的时钟CLK1=CLK; 第二级锁存器的CLK2=CLK。



图522边沿D触发器


下面对边沿D触发器的工作过程进行分析。

(1) 时钟脉冲在低电平期间。 

由于CLK=0,因此CLK1=1,CLK2=0,所以第一级锁存器工作,其输出Q1随输入信号D变化(Q1=D),第二级锁存器保持原来的状态(上次时钟作用后的状态)不变。 

(2) 时钟脉冲上升沿到来时。 

由于CLK1由高电平跳变为低电平,所以第一级锁存器由工作转为保持,Q1锁定了上升沿到来瞬间输入D的值。与此同时,CLK2由低电平跳变为高电平,第二级锁存器开始工作,其输出Q跟随Q1变化,这时Q=Q1=D(D为时钟CLK上升沿到来瞬间的值)。 

(3) 时钟脉冲在高电平期间。 

由于CLK=1,因此CLK1=0,CLK2=1,所以第一级锁存器保持,第二级锁存器跟随,因此Q=Q1=D保持不变。 

(4) 时钟脉冲下降沿到来时。 

由于CLK1由低电平跳变为高电平,第一级锁存器开始工作,接收下一个周期输入D的数据。CLK2由高电平跳变为低电平,第二级锁存器由工作转为保持,保持时钟脉冲上升沿到来时输入D的值不变。

由上述分析可知,图522所示D触发器的次态仅仅取决于时钟脉冲上升沿到达时刻输入信号D的值,其余时间均保持不变,即上升沿之前和之后输入信号D的变化对触发器的状态都没有影响。边沿触发器这一特点有效地增强了触发器的抗干扰能力,提高了触发器工作的可靠性。

图522所示的边沿D触发器的图形符号如图523所示,时钟C1前框内的“>”表示边沿触发方式,框外无“”时表示上升沿触发,有“”时表示下降沿触发。

图522所示的边沿D触发器的特性表如表54所示。在特性表的时钟脉冲栏,通常用“↑”表示上升沿触发,用“↓”表示下降沿触发。




图523边沿D触发器图形符号




表54边沿D触发器特性表



CLKDQ*

↑00
↑11
其他×Q



【例53】对于图522所示的边沿触发器,若输入D和时钟CLK的波形如图524所示,画出输出Q的波形。假设触发器的初始状态为0。

分析: 由于边沿触发器只在时钟脉冲的边沿工作,所以对于图522所示的D触发器,其次态仅仅取决于时钟上升沿到来时刻输入D的值: D=0则Q*=0,D=1则Q*=1。因此,输出Q的波形如图525所示。




图524例52输入信号波形图




图525例52工作波形图





目前CMOS边沿触发器普遍采用图526所示的电路结构,由两级CMOS传输门和反相器组成的D锁存器级联构成。



图526CMOS边沿D触发器电路结构



上述CMOS边沿D触发器的工作过程是: 

(1) 当CLK为低电平时,C′=1、C=0,传输门TG1导通,TG2截止。第一级D锁存器打开,Q′1随着输入信号D的变化而变化。与此同时,第二级的传输门TG3截止,TG4导通,反相器G3和G4构成锁存器,锁定前一次的状态。


(2) 当CLK的上升沿到来时,C′=0、C=1,传输门TG1截止,TG2导通。第一级D锁存器锁定了上升沿到来瞬间输入信号D的数据,即Q′1=D′。与此同时,传输门TG3导通,TG4截止,第二级锁存器链路打开,触发器的输出Q=Q1,而Q1=D。

(3) 在CLK为高电平期间,由于传输门TG1截止,所以触发器的状态Q保持不变。

(4) 当CLK的下降沿到来时,传输门TG1导通,TG2截止。第一级锁存器重新打开,为捕获下一次上升沿到来时D的数据做准备; 传输门TG3截止,TG4导通,第二级锁存器锁定刚才上升沿到来时输入数据D。

综上分析,图526所示的CMOS边沿D触发器在时钟脉冲的上升沿工作。

为了使用灵活方便,在设计集成CMOS边沿D触发器时将图526中反相器扩展为或非门以引入直接置1端SD和清零端RD,具体电路如图527所示。由于SD和RD不受时钟脉冲的控制,因此也称为异步置1端和异步清零端。相应地,由于输入D受时钟脉冲控制,只有当时钟脉冲的上升沿到达时才能使触发器置0或置1,因此称为同步输入端。



图527具有异步置1和置0端的CMOS边沿D触发器



在边沿D触发器的基础上,很容易构造出边沿JK触发器。将D触发器的特性方程Q*=D和需要实现的JK触发器的特性方程 Q*=J·Q′+K′·Q进行对比可知,取D触发器的输入信号D=J·Q′+K′·Q时,即可得到JK触发器,故实现电路如图528所示。




图528边沿JK触发器实现原理图


74HC74是在时钟脉冲上升沿工作的双D触发器。除了时钟脉冲CLK、输入D和输出Q和Q′端口外,74HC74还附加有异步清零端R′和异步置1端S′,其内部结构示意和引脚图如图529(a)所示,功能表如表55所示。

74HC112是在时钟脉冲下降沿工作的双JK触发器。74HC112同样附加有异步清零端R′和异步置1端S′,其内部结构示意和引脚图如图529(b)所示,功能表如表55所示。



图529两种常用的边沿触发器



表55两种常用边沿触发器功能表


74HC74



输入输出
S′R′CLKDQQ′功能说明

01××10异步置1
10××01异步清0
00××1*1*错误状态
11↑001置0
11↑110置1
110×Q0Q′0保持



74HC112



输入输出
S′R′CLKJKQQ′功能说明

01×××10异步置1
10×××01异步清0
00×××0*0*错误状态
11↓00Q0Q′0保持
11↓0101置0
11↓1010置1
11↓11Q′0Q0翻转
110××Q0Q′0保持

注: *表示不稳定状态,是错误的; Q0表示原来的状态。



边沿触发器除了具有数据存储功能之外,利用其边沿触发特性,在信号同步、相位检测等方面有着许多典型的应用。例如,对于图28(a)所示的门控电路,开关A控制着数字序列B能否通过与门输出。但存在的问题是,由于开关A闭合和断开的时刻是随机的,如果开关A
在序列信号为高电平期间闭合或者断开,就会在与门的输出端得到不完整的脉冲,如图28(b)所示。 


应用边沿触发器能够实现门控信号与数字序列同步,原理电路和工作波形如图530所示。当门控开关S跳变为高电平后,只有在序列B的上升沿到来时门控信号A才跳变为1,数字序列B才能通过与门输出; 当门控开关S跳变为低电平时,同样只有在序列B的上升沿时门控信号A才跳变为0,与门关闭,输出Y为0。这样保证了门控信号A的跳变时刻与序列B严格同步,从而在与门的输出端Y得到完整的序列脉冲。



图530应用边沿触发器实现门控信号与数字序列同步




另外,应用边沿触发器还可以实现序列的相差检测,原理电路如图531所示,其中uI和uR为两路同频的正弦信号。设uI=sin(2πωt)、uR=sin(2πωt-Φ),即两路正弦信号的相差为Φ。应用双比较器LM393构成同相过零比较器将正弦信号转换成数字序列DI和DR,分别作为边沿D触发器FF1和FF2的时钟信号。



图531相差检测电路



应用边沿触发器实现相差检测的原理是: 在序列DI的上升沿到来时将触发器FF1输出的相差脉冲PD置为高电平后,使得触发器FF2的复位信号无效,因此在序列DR的上升沿到来时能够将触发器FF2置1。FF2置1后由于Q′2=0,因此又将FF1输出的相差脉冲PD复位为低电平,同时相差脉冲PD又将FF2复位,所以相差脉冲的宽度PD与相差Φ相关。Φ越大,PD的宽度越宽。通过测量和计算相差脉冲宽度与序列周期的比值即可实现相差检测。相差检测电路输出的相差脉冲PD与数字序列DI和DR的波形关系如图532所示。




图532相差检测电路工作波形






思考与练习

56边沿触发器与脉冲触发器相比,有什么主要优点?

57设DI和DR为两路波形相同、相位不同的数字序列。如何检测DI的相位是超前于DR还是落后于DR?画出电路图,并说明其检测原理。

58分析图212所示的应用异或门实现的相差检测电路和图531所示的应用边沿触发器实现的相差检测电路输出的相差脉冲有什么差异?并说明相差测量和计算方法是否相同。








5.5
微课视频



5.5锁存器与触发器的逻辑功能和动作特点


本章讲述了基本锁存器、门控锁存器、脉冲触发器和边沿触发器的电路结构和工作原理。

根据逻辑功能的不同特点进行划分,锁存器与触发器分为SR锁存器/触发器、D锁存器/触发器和JK触发器3种。SR锁存器/触发器具有置0、置1和保持3种功能,D锁存器/触发器具有置0和置1两种功能,JK触发器具有置0、置1、保持和翻转4种功能。

从动作特点进行划分,锁存器与触发器又可以分为门控锁存器、脉冲触发器和边沿触发器3种类型。门控锁存器在时钟脉冲的有效电平期间工作,脉冲触发器在时钟脉冲的上升沿开始工作,但到下降沿才能进行状态更新,而边沿触发器只在时钟脉冲的边沿工作。

逻辑功能和动作特点是从两个不同的角度考查锁存器/触发器。从理论上讲,SR、D、JK触发器都可以采用边沿触发电路形式实现,而同种功能的触发器也可以用脉冲、边沿等不同的电路形式实现,从而具有不同的动作特点。

如果将JK触发器的两个输入端J、K相连,则当J=K=0时保持,J=K=1翻转。这种只具有保持和翻转功能的触发器称为T触发器。将J=K=T代入JK触发器的特性方程即可得到T触发器的特性方程

Q*=J·Q′+K′·Q
=T·Q′+T′·Q
=TQ


T触发器的状态转换图如图533(a)所示,下降沿工作的边沿T触发器的图形符号如图533(b)所示。



图533T触发器状态转换图及图形符号


若将JK触发器的输入信号J、K都接高电平,则构成只具有翻转功能的T′触发器,其特性方程为

Q*=J·Q′+K′·Q=1·Q′+1′·Q=Q′


T触发器和T′触发器为JK触发器两种不同的应用方式。另外,将D触发器的Q′反馈到D端,也可以构成T′触发器。

D触发器和JK触发器是两种常用的触发器。D触发器虽然只具有置0和置1两种功能,但应用很方便。JK触发器功能强大,合理应用可以简化电路设计,同时还可以作为SR触发器、T触发器和T′触发器使用。



思考与练习

59SR、D、JK、T和T′触发器各有什么功能?写出其各自的特性方程。

510门控锁存器、脉冲触发器和边沿触发器各有什么动作特点?






5.6
微课视频


5.6锁存器与触发器的动态特性

为了保证锁存器/触发器能够可靠地工作,锁存器/触发器的输入信号、时钟/时钟脉冲之间在时序上还应该满足一定的关系。

本节以常用的门控锁存器和边沿触发器为例,分析锁存器和触发器的动态特性。

5.6.1门控锁存器的动态特性

由与非门构成的门控锁存器如图534(a)所示,其中基本SR锁存器由与非门G1和G2交叉耦合构成。假设所有与非门的传输延迟时间均为tpd。



图534门控锁存器电路图及工作波形



1. 输入信号宽度

对于基本SR锁存器,当S′D=0、R′D=1时,在S′D的作用下,经过与非门G1使Q=1。再在Q和R′D的共同作用下,经过与非门G2使Q′=0; 当S′D=1、R′D=0时,在R′D的作用下,经过与非门G2使Q′=1。再在Q′和R′D的共同作用下,经过与非门G1使Q=0。因此,为了确保基本SR锁存器可靠地工作,输入信号S′D和R′D的作用时间应该满足

tW(S′D)≥2tpd,tW(R′D)≥2tpd

其中,tW表示输入信号的保持时间,也称为宽度。

对于如图534(a)所示的门控锁存器,为了满足基本SR锁存器输入信号宽度的要求,要求输入信号S和R与时钟CLK同时为高电平的保持时间应满足


tW(S·CLK)≥2tpd,tW(R·CLK)≥2tpd

门控锁存器的工作波形如图534(b)所示。


2. 传输延迟时间

由于基本SR锁存器从输入信号S′D和R′D变到输出状态Q和Q′更新完成的延迟时间为2tpd,再考虑门控与非门的传输延迟时间,所以门控锁存器从时钟和输入信号同时为高电平开始算起,到输出状态Q和Q′更新完成的传输延迟时间为3tpd。

5.6.2边沿触发器的动态特性

为了保证触发器在时钟脉冲的边沿能够可靠地采集输入数据,触发器的输入信号与时钟脉冲之间应满足一定的时序要求。

下面以边沿D触发器为例,介绍触发器的动态参数。

触发器的动态参数主要包括建立时间、保持时间、传输延迟时间三个重要的时序参数。上升沿工作的边沿D触发器三种时序参数的定义如图535所示。



图535D触发器三种时序参数的定义


1. 建立时间

建立时间(setup time)是指时钟脉冲的有效沿到来之前,触发器的输入信号必须提前到达并且稳定的最短时间,用tSU表示。也就是说,为了确保触发器在时钟脉冲的有效沿能够稳定地采集输入数据,输入信号至少应先于时钟脉冲的有效沿到达触发器的输入端,这个提前的时间tSU就是建立时间。如果建立时间不够,输入数据将不能可靠地存入触发器。


对于图526所示的CMOS边沿D触发器,在时钟CLK为低电平期间,传输门TG1和TG4导通、TG2和TG3截止,此时输入信号D经由传输门TG1、反相器G1和G2到达Q1,使得
Q1=D。设传输门和反相器的传输延迟时间均为td,则输入信号D的变化传输到Q1的延迟时间为3td。因此,当时钟CLK的上升沿到来时,经过一级时钟反相器的传输延迟时间td后传输门的控制信号C′开始变化,因此要求输入信号D必须先于时钟CLK的上升沿到达并且保持稳定的最短时间为2td,即tSU=2td。


2. 保持时间

保持时间(hold time)是指时钟脉冲的有效沿作用后,触发器的输入信号还必须维持不变的最短时间,用tHOLD表示。如果保持时间不够,输入数据同样不能可靠地存入触发器。

对于图526所示的CMOS边沿D触发器,当时钟CLK的上升沿到来时,经过两级时钟反相器的传输延迟时间2td后传输门控制信号C和C′才会使传输门TG1截止、TG2导通将Q1锁存,而输入信号D在传输门TG1截止之前应该保持不变。因此,触发器的保持时间为2td,即tH=2td。


3. 时钟到输出时间

时钟到输出时间(clocktooutput time)是从时钟的有效沿开始算起,到触发器进行状态更新的延迟时间,用tCO表示。

对于图526所示的CMOS边沿D触发器,需要经过两级时钟反相器的传输延迟、传输门TG3和反相器G3的传输延迟后触发器的输出Q才能进行状态更新,而Q′还需要经过反相器G4后才能完成状态更新,因此tCO=5td。

触发器的建立时间、保持时间和时钟到输出时间与具体器件系列和实现电路有关。电源电压VDD=4.5V时,对于CMOS双D触发器74HC74,tSU=20ns,tH=0,tCO的典型值为10ns; 对于CMOS双JK触发器74HC112,tSU=25ns,tH=0,tCO的典型值为25ns。

明确建立时间tSU、保持时间tHOLD和时钟到输出时间tCO的含义后,就可以通过触发器的时序参数推算时序电路稳定工作时应满足的条件。这部分内容将在6.7节作进一步分析。




5.7
微课视频


5.7设计实践

抢答器通常用于专项知识竞赛,以测试选手对知识掌握的熟练程度和反应速度。

抢答的基本原理: 主持人掌握着一个复位按钮,用来复位抢答器。抢答开始后,若有选手按下抢答按钮,立即锁存并驱动指示电路显示选手的状态或编号,同时封锁时钟禁止抢答器工作,并将第一个抢中选手的状态或编号一直保持到主持人将抢答器复位为止。

抢答器的主要功能有两个: 一是分辨出选手抢答的先后顺序,锁定首先抢中选手的状态; 二是封锁时钟,对其他选手的抢答不响应。这两个功能均可以通过锁存器或触发器来实现。

四人抢答器的原理电路如图536所示,其中74HC175内部有4个D触发器,MR′为复位端,低电平有效。主持人掌握按钮S0,4位选手分别掌握着按钮S1、S2、S3和S4,D1、D2、D3和D4分别为其状态指示灯。



图536四人抢答器参考设计图


抢答器的工作原理是: 当主持人按下S0后将4个D触发器清0,这时Q′0~Q′3为高电平,因此4个发光二极管D1~D4均不亮,同时与门U2:B输出为高电平,因此时钟脉冲DCLK可以通过与门U2:A为74HC175提供时钟。

当有选手按下抢答按钮,例如1号选手按下按钮S1时,在时钟脉冲作用下将Q0置1,这时Q′0为低电平驱动发光二极管D1亮,同时与门U2:B输出为低电平使与门U2:A输出为低电平,从而将74HC175的时钟脉冲封锁。由于74HC175没有时钟脉冲而停止工作,所以对此后其他选手的抢答没有响应。直到主持人将抢答器复位,Q′0~Q′3恢复高电平,与门U2:B输出为高电平,74HC175的时钟恢复,才能进行下一轮抢答。

取时钟脉冲DCLK为100kHz时,可识别选手抢答的最小时差为10μs。图536中限流电阻R1~R4的阻值按驱动5发光二极管参数设计。


本章小结


锁存器和触发器是数字电路中两种基本的存储器件,一个锁存器/触发器能够存储一位二值信息。

锁存器有SR锁存器和D锁存器两种类型,其中SR锁存器具有置0、置1和保持三种功能,而D锁存器只具有置0和置1两种功能。

触发器有SR触发器、D触发器和JK触发器三种类型,其中SR触发器具有置0、置1和保持三种功能,D触发器只具有置0和置1两种功能,而JK触发器具有置0、置1、保持和翻转四种功能。

将JK触发器的J端和K端连接到一起,就构成了只有保持和翻转功能的T触发器。将JK触发器的J端和K端接高电平,就构成了只有翻转功能的T′触发器。另外,将D触发器的输出Q′连接到D端,也可以构成T′触发器。

按照动作特点,可以将锁存器/触发器分为门控锁存器、脉冲触发器和边沿触发器三种类型,其中门控锁存器在时钟的有效电平期间工作,脉冲触发器在时钟脉冲的上升沿已经开始工作,但延迟到时钟脉冲的下降沿才能输出,而边沿触发器只在时钟脉冲的边沿工作。

74HC74是上升沿工作的双D触发器,而74HC112是下降沿工作的双JK触发器。

为了保证触发器能够可靠地工作,触发器的输入信号应满足建立时间和保持时间的要求,其中建立时间是指输入信号先于时钟脉冲到达并且稳定的最短时间,而保持时间是指在时钟脉冲作用后,输入信号还应该保持不变的最短时间。

锁存器/触发器是构成时序逻辑电路的核心。

习题

5.1基本SR锁存器的输入信号S和R的波形如图题51所示,画出锁存器状态Q和Q′的波形。

5.2门控SR锁存器的时钟脉冲CLK和输入信号S和R的波形如图题52所示,画出锁存器状态Q和Q′的波形(设Q的初始状态为0)。




图题51




图题52




5.3脉冲SR触发器的时钟CLK以及输入信号A、B的波形如图题53所示,分别画出触发器状态Q1和Q2的波形。设触发器的初始状态为0。



图题53


5.4设脉冲JK触发器的初始状态为0。时钟CLK以及输入J、K的波形如图题54所示,画出触发器状态Q的波形。

5.5设边沿D触发器在时钟脉冲的上升沿工作,时钟CLK以及输入D的波形如图题55所示,画出触发器状态Q的波形。设触发器的初始状态为0。




图题54




图题55




5.6设边沿D触发器在时钟脉冲的下降沿工作,初始状态为0,时钟CLK以及输入D的波形如图题55所示,画出触发器状态Q的波形。

5.7触发器应用电路如图题57所示。设触发器的初态为0。画出在时钟序列CLK的作用下各触发器状态Q的波形。



图题57


5.8分析图题58所示的时序电路。画出在时钟序列CLK和输入A、B的作用下Q1和Q2的波形。设触发器的初始状态为0。



图题58


5.9两相时钟源电路如图题59所示。画出在时钟序列CLK的作用下触发器的状态Q、Q′以及输出vO1、vO2的波形。设触发器的初始状态为0。



图题59


5.10分析图题510所示的时序电路。已知CLK和D的波形,画出Q0和Q1的波形。设触发器的初始状态均为0。



图题510


5.11两相脉冲产生电路如图题511所示。画出在脉冲序列CLK的作用下φ1、φ2的输出波形,并说明φ1、φ2的相位差。设触发器的初始状态为0。



图题511


5.12分析图题512所示的时序电路。已知CLK和R′D的波形,画出触发器状态Q0、Q1的波形。设触发器的初始状态为0。



图题512


5.13若定义一种新触发器的逻辑功能为Q*=XYQ,分别用JK触发器、D触发器和门电路实现这种触发器。

5.14分析图题514所示的时序电路。已知CLK和D的波形,画出触发器状态Q0、Q1及输出vO的波形。设触发器的初始状态均为0。



图题514


5.15分析图题515(a)的所示电路,画出在图5.15(b)所示的时钟脉冲CLK和输入信号D作用下D触发器状态Q1和D锁存器状态Q2的波形。设Q1和Q2的初始状态均为0。



图题515