施朝霞+南余荣+贾立新
摘 要:D触发器是构成时序电路的基本单元,是数字电路课程中的重要内容,D触发器的动态参数是教学的难点和重点。课堂教学中由于学时有限只分析了D触发器动态参数对时序电路工作特性的影响,没有探讨D触发器动态参数与其自身内部电路结构的关系,学生对该知识点理解不透。该文以开关型主从结构上升沿D触发器为例,分析了其动态参数与内部电路结构的关系,并进行了仿真验证和分析。该文对D触发器的动态参数教学有一定的指导作用。
关键词:D触发器 动态参数 电路结构
中图分类号:TN79 文献标识码:A 文章编号:1674-098X(2017)07(a)-0081-04
Abstract:D flip-flop is the basic unit of sequential circuit, which is an important part of digital circuit course. The dynamic parameters of D flip-flop are the difficulty and key point when teaching. The influence of the dynamic parameters of the D flip-flop on the working characteristics of the sequential circuit is analyzed, the relationship between the dynamic parameters of the D flip-flop and its internal circuit structure is not discussed due to the limited class hours. Students can not profound understanding this point of knowledge. In this paper, the rising edge D flip-flop with switching master slave structure is designed as an example. The relationship between the dynamic parameters and the internal circuit structure under typical conditions are simulated and analyzed. This paper has some guidance to the teaching of dynamic parameters for D flip-flop.
Key Words:D flip-flop; Dynamic parameters; Circuit structure
D触发器是构成数字时序逻辑电路的最基本单元,D触发器的三个重要动态参数建立时间、保持时间和传播延时决定了构成的时序电路能被时钟控制的速度,是“数字电路与数字逻辑”课程的重要内容。数字电路教学中通过如下思考题引入了动态参数的教学内容:上升沿D触发器,时钟CLK端接收上升沿信号的同时数据输入端D信号刚好从0变为1,则此时D触发器输出0还是1?结论是D触发器输出0[1],因为数据信号D在时钟信号CLK上升沿到来之前有稳定最小时间的要求。
课堂教学中举例法很好地给出了D触发器建立时间的概念,但也给了学生部分错误的暗示,那就是数据信号D在时钟信号CLK上升沿到来之前必须有一个稳定的最小时间。实际上,经过D触发器内部电路结构的优化设计,D触发器的建立时间可以是0,也可以是负的,也就是,即使时钟信号CLK上升沿到来之后,数据信号D发生0到1的变换,D触发器的输出照样可以得到1。
笔者认为,在D触发器动态参数的课堂教学中不能脱离两点:首先是要明确D触发器动态参数的应用背景;其次是不能脱离开D触发器本身的内部结构。否则,学生难以掌握动态参数的本质,也就不能灵活应用进行电路的分析。基于对D触发器动态参数的概念的理解基础上,掌握动态参数与其内部电路结构的关系,有利于明确D触发器动态参数的工程實际背景和意义,也更有利于后面时序逻辑电路中时序设计课程内容的学习。
但是,“数字电路与数字逻辑”理论教学中只给出了D触发器动态参数的定性概念说明。该文在课程教学的基础上深入分析了D触发器动态参数与电路内部结构的关系,供不同层次的学生学习时参考。
1 D触发器的动态参数
D触发器的动态参数用来表征输入信号和时钟信号之间的时间要求,以及输出对时钟信号响应的延迟时间。如图1(a)所示为上升沿D触发器的动态时序图,建立时间tSU为数据信号D在时钟信号CLK上升沿到来之前应稳定的最小时间;保持时间tH为数据信号D在时钟信号CLK上升沿到来以后应稳定的最小时间;tW为触发脉冲宽度;tp(CQ)为时钟信号的上升沿至触发器输出端建立新的稳定状态所产生的延迟时间。
正确理解触发器的建立时间、保持时间、传输延迟时间对保证时序电路的正常工作十分重要,它们直接影响时序电路能被时钟控制的速度[2]。在同步时序电路中,对时钟CLK激励做出响应的触发器是同时发生的,每一级触发器运行的结果必须等到下一个时钟翻转时进入下一级。以图1(b)由D触发器构成的二分频电路为例,电路能正确工作的时序条件是,CLK脉冲的周期T应满足:T≥tp(CQ)+tSU+tpNOT,其中tpNOT为组合逻辑电路反相器的延迟时间。同时在CLK上升沿到来之后,如果输出Q的改变值通过反相器很快反馈到触发器的输入端,就会无法满足触发器的保持时间,为了满足触发器的保持时间,应满足tp(CQ)+tpNOT≥tH。经过课堂的理论学习,学生能够掌握D触发器动态参数的基本概念,会画一些简单的时序电路波形。在课堂上学时有限没有对D触发器的动态参数进行深入分析,比如说建立时间tSU,在D触发器时钟信号CLK上升沿到来之前,数据D必须要提前出现吗?答案是否定的,D触发器的内部结构决定了这些动态参数值的大小,因此掌握D触发器动态参数与其内部电路结构的关系,更有利于学生深层次的掌握数字电路相关知识点,并进行工程应用。endprint
2 电路结构对D触发器动态参数的影响
构成一个D触发器的常用结构是主从结构[3],举个例子如图2所示,D触发器由多路开关型两个主从结构的锁存器构成,多路开关采用传输门来实现。当时钟CLK=0时,T1、T4导通T2、T3关断,输入D被采样到节点QM上,输出Q保持不变。当时钟CLK上升到1时,主级T1关断停止采样输入并进入维持状态,T2导通,交叉耦合的反相器N2和N3保持QM状态。同时,T3导通T4关断,QM被复制到输出Q上。
假设图2中每一个反相器的传播延时为tpd_inv,传输门的传播延时为tpd_tx。建立时间是输入数据D在时钟CLK上升沿之前必须有效的时间,从图2的工作原理分析,这就相当于问:在时钟上升沿之前输入D必须稳定多长时间才能使QM采样的值是可靠的?分析可知,输入D在时钟上升沿之前必须传播通过N1、T1、N3和N2,必须充分保证传输门T2两端A和B的节点电压值相等,否则,交叉耦合的一对反相器N2和N3就可能得不到正确的输入D的值。因此建立时间等于3× tpd_inv+tpd_tx。如何通过内部结构的设计来改变建立时间呢?一个非常简单的方法就是在CLK输入端后加入两级反相器,通过延缓时钟上升沿到达传输门T2的时间来减小建立时间,此时的建立时间等于1×tpd_inv+tpd_tx。
传播延时是QM值传播到输出Q所需要的时间,在满足建立时间的前提下,数据D已经传播到反相器N4的输出端,因此传播延时为通过T3和N6的延时,tp(CQ)=1×tpd_inv+tpd_tx。
保持时间表示在时钟上升沿之后输入必须保持稳定的时间,如图2电路结构中,当时钟为高电平时,传输门T1关断。由于D输入和CLK在到达T1前都有一个反相器的延迟时间,所以在时钟变为高电平之后输入上的任何变化都不会影响输出,因为保持时间tH=0,这里也可以通过在D输入或者CLK输入后加反相器的方法来改变维持时间。
3 仿真验证
基于0.5 ?m CMOS工艺[4]设计的多路开关主从型上升沿D触发器详细内部电路如图3所示,功能框图为对应的图2,电路电源电压为5 V。采用Cadence软件[5]重点对D触发器的建立时间进行了仿真,并通过比较说明电路结构对D触发器建立时间的影响。
为了得到上升沿D触发器的建立时间,设置变化的数据输入端D(从0变为1)逐渐靠近时钟CLK上升沿直到电路失效无法获取到正确的D信号。图4中(a)和(b)分别仿真了数据输入D与时钟边沿偏差0.33 ns和0.34 ns时触发器的工作波形,对于偏差0.34 ns的情况,输出Q维持在高电平,对输入D的采样值是正确的,对于偏差0.33 ns的情况,传送到输出Q的值是错误的,因为节点QM没有足够的时间上升到高电平,从而导致输出Q仍为低电平。通过图4的仿真可以清楚地看到该D触发器的建立时间tSU=0.34 ns。
为了说明电路结构对建立时间的影响,在时钟信号CLK后加了两级反相器,如图2中圆圈所示。采用相同的仿真方法,数据输入端D逐渐靠近时钟信号CLK端,仿真结果如图5所示,当tSU=0.08 ns,输出Q得到低电平,对数据输入端D高电平的采样是错误的,当tSU=0.1 ns,输出Q得到高電平,对数据输入端D高电平的采样是正确的,因此修改电路结构D触发器的建立时间tSU=0.1 ns。相比于图4的仿真结果,CLK后加了两级反相器的D触发器的建立时间比CLK没有加反相器的D触发器的建立时间少了0.24 ns。
4 结语
该文从D触发器的电路内部结构出发,分析了D触发器动态参数与内部电路结构的关系,并以建立时间为例,利用CMOS工艺设计了完整的电路内部结构图并进行了仿真验证,仿真结果表明,D触发器的动态参数是可以进行优化设计的。在数字电路课程D触发器动态参数的学习中,建议将此内容补充进去,使学生能够正确完善地理解动态参数与时序电路之间的关系,并能更好地应用到工程实践中。
参考文献
[1]贾立新.数字电路[M].2版.北京:电子工业出版社,2011.
[2]Jan M,Rabaey.数字集成电路-电路、系统与设计[M].2版.周润德,译.北京:电子工业出版社,2011.
[3]Anant Agarwal,Jeffrey H.Lang.模拟和数字电子电路基础[M].于歆杰,朱桂萍,刘秀成,译.北京:清华大学出版社,2008.
[4]Charles Hawkins.CMOS数字集成电路设计[M].王昱阳,尹说,译.北京:机械工业出版社,2016.
[5]陈铖颖.CMOS模拟集成电路设计与仿真实例-基于Cadence A[M].北京:电子工业出版社,2013.endprint