recovery time和removal time
- recovery time和removal time
- 区别于联系
recovery time和removal time
同步电路中,
输入数据需要与
时钟满足
setup time和
hold time才能进行数据的正常传输,防止
亚稳态`。
同理,对一个异步复位
寄存器来说,同样异步复位信号
同样需要和时钟
满足recovery time
和removal time
才能有效
进行复位操作和复位释放操作,防止输出亚稳态
。
区别于联系
D pin
和clk
之间是check setup
和hold
,置位复位端
和clk
之间是check recover
和remove
。
removal time
/recovery time
类似于DFF的setup time / hold time,不同之处在于前者是用来描述异步复位
的。
一 般设计中,异步复位信号需要进行同步化处理
,即让本来异步输入的复位信号,用时钟来锁存,这样本来和时钟没有相位关系
的复位信号就和时钟用相位关系了。STA
时,如果DFF的异步rst和该DFF的时钟有相位关系,则需要进行removal
和recovery
的检查。removal
和recovery
检查的目的是让DFF的异步rst信号在时钟沿附近满足建立/保持时间
。当然,如果异步复位信号与时钟没有任何相位关系,则没有必要做removal time /recovery time 检查。
Recovery time is the minimum length of time an asynchronous control signal, for example, and preset, must be stable before the next active clock edge. The recovery slack time calculation is similar to the clock setup slack time calculation, but it applies asynchronous control signals.
Removal time is the minimum length of time an asynchronous control signal must be stable after the active clock edge. The TimeQuest analyzer removal time slack calculation is similar to the clock hold slack calculation, but it applies asynchronous control signals.
Recovery time specifies the time the inactive edge of the asynchronous signal has to arrive before the closing edge of the clock.
Removal time specifies the length of time the active phase of the asynchronous signal has to be held after the closing edge of the clock.
恢复时间(Recovery Time)
是指异步控制信号(如寄存器的异步清除和置位控制信号)在“下个时钟沿”来临之前变无效的最小时间长度。这个时间的意义是,如果保证不了这个最小恢复时间,也就是说这个异步控制信号的解除与“下个时钟沿”离得太近(但在这个时钟沿之前),没有给寄存器留有足够时间来恢复至正常状态,那么就不能保证“下个时钟沿”能正常作用,也就是说这个“时钟沿”可能会失效。
去除时间(Removal)
是指异步控制信号(如寄存器的异步清除和置位控制信号)在“有效时钟沿”之后变无效的最小时间长度。这个时间的意义是,如果保证不了这个去除时间,也就是说这个异步控制信号的解除与“有效时钟沿”离得太近(但在这个时钟沿之后),那么就不能保证这个“有效时钟沿”能正常作用,也就是说这个“有效时钟沿”可能会失效。
也就是说recovery time
和removal time
都是检查异步信号
(reset或preset或set)的释放沿
,释放沿必须在时钟沿前面提前recovery time
释放,或者在时钟沿后removal time
之后释放。
对于异步复位
而言,假设是低电平有效,那么很容易碰到的情况就是我在释放该信号的时候,发现它的释放沿居然跟时钟跳变沿太接近了
!这会导致D触发器处于亚稳态。我们知道,上图的reset_n信号是接D触发器的直接复位端的。如果两个跳变沿过于接近,那么D触发器就有可能发现自己该采样了,但是复位信号还没取消呢!采还是不采就不能确定。所以,我们要求reset_n
信号释放的时候,必须远离clock上升沿recovery time +removal time
这么大的时间区域,其中clock上升沿之前的必须远离的那段时间叫做recovery time
,上升沿之后必须远离的那段时间叫做removel time
。简单的讲,两者不能同时跳变,或者接近同时跳变!