静态时序分析STA——8.6-7 时序检查(撤销时间和恢复时间)
文章目录
- 一、撤销时间(removal timing check)
- 二、恢复时间(recovery timing check)
参考文献
[1]Static Timing Analysis for Nanometer Designs A Practical Approach
一、撤销时间(removal timing check)
撤销时间检查(removal timing check)可确保在有效时钟沿与释放异步控制信号之间有足够的时间。该检查可确保有效时钟沿不带来影响,因为异步控制信号将保持有效状态,直到有效时钟沿之后一段撤销时间为止。换句话说,异步控制信号会在有效时钟沿之后被释放(变为无效),因此该时钟沿不会产生任何影响,如图 8-20 所示。**如果该时间间隔太短即复位信号太快恢复无效,则触发器可能无法正常复位。**该检查基于的是触发器异步引脚上指定的撤销时间。以下是单元库中与撤销时间检查有关的描述片段:
与保持时间检查一样,该检查也是针对最小路径的,不过是在触发器的异步引脚上。终点(Endpoint)表明这是撤销时间检查,且在触发器 UFF6 的异步引脚 CDN 上。该触发器的撤销时间在报告中显示为 library removal time,值为 0.19ns。所有异步时序检查均被分配给了 async_default 路径组。
二、恢复时间(recovery timing check)
恢复时间检查(recovery timing check)可确保异步信号变为无效状态的时刻与下一个有效时钟沿之间的时间间隔大于一个最小值。换句话说,此检查可确保在异步信号变为无效状态之后,有足够的时间恢复,以便下一个有效时钟沿可以生效。例如,考虑从异步复位变为无效的时刻到触发器有效时钟沿之间的时间间隔。如果该时间间隔太短即有效时钟沿在复位释放后太早出现,则触发器可能进入未知的状态。 恢复时间检查如图 8-21 所示。该检查基于的是触发器异步引脚上指定的恢复时间,单元库文件中与恢复时间有关的描述片段如下:
与建立时间检查一样,该检查也是针对最大路径的,不过是在触发器的异步引脚上。以下是一份恢复时间检查的路径报告:
终点(Endpoint)表明这是恢复时间检查,并且触发器 UFF6 的恢复时间在报告中显示为 library recovery time,值为 0.09ns。恢复时间检查也属于 async_default 路径组。
注意:一般逻辑对此时序不用关心,比如很多模块的操作流程是复位完了,才开启模块时钟,再启动模块工作。这种流程可以保证不会出现recovery和removal的问题。需要关心recovery和removal问题的最常见模块应该是CPU和MCU,因为一般CPU和MCU都是在复位撤销后就开始工作。