建立时间与保持时间

1. 定义
Setup/hold time 是测试芯片对输入信号和时钟信号之间的时间要求。
建立时间(setup time)

建立时间是指触发器的时钟信号上升沿到来以前,数据稳定不变的时间。
输入信号应提前时钟上升沿(如上升沿 有效)T时间到达芯片,这个T就是建立时间-Setup time。
.如不满足setup time,这个数据就不能被这一时钟打入触发器,只有在下一个时钟上升沿,数据才能被打入触发器。
用Tsetup或者Tsu表示,也就是说要锁存的数据必须比上升沿早来时间必须大于建立时间。
引自 https://blog.csdn.net/pang123hui/article/details/6006363

保持时间(hold time)

保持时间是指触发器的时钟信号上升沿到来以后,数据稳定 不变的时间。
如果hold time不够,数据同样不能被打入触发器.
用Thold或者Th表示。也就是说,要锁存的数据,在上升沿到来之后,还要停留比保持时间大的时间。
引自 https://blog.csdn.net/pang123hui/article/details/6006363

2. 解释(探讨一下为什么会会有建立时间和保持时间的要求)
整节转载自https://www.cnblogs.com/IClearner/p/6443539.html
为什么会会有建立时间和保持时间的要求

我们知道D触发器是在(上升)边沿进行锁存数据的,也就是clk从在0→1的时候锁存数据,那我们就看看这个上升沿的时候发生了什么:
CLK=0,主锁存器Qm=D
CLK=1,主锁存器保持Qm=D,从锁存器Qs=Qm=D
D触发器(由两个D锁存器构成
我们知道D触发器是在(上升)边沿进行锁存数据的,也就是clk从在0→1的时候锁存数据,那我们就看看这个上升沿的时候发生了什么:

假设原来的数据是1(也就是从锁存器锁存的数据是1),然后我们要锁存的数据是0:需要Qs由1——>0

对于建立时间

首先,要让时钟上升沿之后Q输出为0,就是要让从锁存器输出为0,即是要主锁存器在时钟上升沿之后稳定地锁存住0,换个角度看就是:在上升沿到来以及到来之后,主锁存器负责锁存数据,而从锁存器则是负责传输 主锁存器所锁存好的 数据;这样一来,我们的研究重点就放在了主锁存器。

对于主锁存器,我们可以看这个图:
在这里插入图片描述
假设在T=0ns的时候,clk从0变成1(为方便分析,假设时钟是理想的,没有跳变延时)。
再假设一个数据D1=0在T=-0.7ns(即比时钟上升沿提前0.7s)的时候到达数据的端口,
另一个数据D2=0在T=-0.3ns的时候才来到数据端口。
(也就是说,D1来得早,而D2来得比较晚即建立时间不足)。

D1这个0翻山越岭越过了反相器,变成1,经过了与门(由于与门的另一个输入clk’为1)变成了1,经过或非门之后,使输出Q变成了0,也就是变成了从锁存器要锁存的0值。
然后主锁存器Q刚输出0的时候,还不稳定,需要通过反馈使得自己的或非门的输入为1就是需要t1+t2+t3的时间(如下图所示,此图的R端并不正确,只用来展示反馈时间)进行维持Q的稳定。
在这里插入图片描述
  而D2数据翻山越岭,刚刚翻到与门那里,时钟沿就来了,它都没有成功到达或非门输入。于是D2就肯定达不到目标了,也就是变不成了从锁存器要锁存的0值,这就是建立时间不足的引起锁存不住值的问题。

对于保持时间

还是从主锁存器这边看
时钟clk发生0→1的上升沿跳变时候,clk的1信号首先需要经过反相器(inst10)变成0信号后传到后面的与门(inst13和inst14)。clk信号从时钟端口到达与门需要经过t1的延迟时间(如下图所示)
在这里插入图片描述

即t1时刻,两个与门的输入就为低电平0。
而在t1时刻之前,与门的输入端clk始终保持高电平1;在t1时刻之前,如果输入端D发生跳变,也就是从0变成1(也就是低电平0这个信号保持得不够久,由于某些原因被冲成了高电平1),变换后的数据端高电平1经过t2延时之后,到达与门的另一个输入端。当t2<t1的时候(由于时钟需要经过反相,一般情况下t1是大于t2的),与门的输出就为1,也就是S=1,这就导致Q’=0。而R是为0的**(可能因为D为0的持续时间甚至小于建立时间/或者D为1后,经过反向器变为0的所需时间小于t1)**,从而导致Q的输出就为1,这个时候,锁存的数据就是1,而不是我们要求的0了,即输出错误了。

因此我们需要输入D在时钟沿跳变之后保持不变,这个保持时间的实质就是这个t1与t2的差值,即数据到达之后,要保持t1-t2。假如这跟导线很长,即t2的延迟很长,比t1还长,那么保持时间就是一个负值,这时候就完全没有必要关注保持时间了,而是关注建立时间了。 还需要考虑D端在clk上升沿到来前,即建立时间内由0变1以及D端到inst13端的传输时间比t1小并在clk上升沿到来以后立即变换值得情况。

从上面的分析可以知道,保持时间一般情况下会比建立时间小

  • 5
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值