http://www.nodedev.org

静态时序分析(Static Timing Analysis)基础(4)

  

STA流程及分析方式

STA的流程如图二十所示,而其分析验证的项目就是我们前文提及之时序检查相关的Timing Arc,如Setup Time、Hold Time等等。以下我们针对Setup Time举1实际范例来说明STA的分析方式。

图二十

 n       Setup Time

设计电路如图二十一所示,时序模型(Timing Model)及时序限制(Timing Constraint)如下:

图二十一

         所有逻辑闸在输出讯号上升时最长的延迟时间为3ns,最短为2ns。

         所有逻辑闸在输出讯号上升时最长的延迟时间为2ns,最短为1ns。

         所有连线(Net)最长的延迟时间为2ns,最短为1ns。

         所有Flip-Flop Clock到Q的延迟时间为3ns。

         所有Flip-Flop的Setup Time为1ns(Ts)。

         所有Flip-Flop的Hold Time为1ns(Th)。

         Clock周期为14ns(Dclkp)。

         Clock source latency为2ns(Dclks)。

         Clock network latency为3ns(Dclkn)。

         Clock uncertainty为1ns(Dclku)。

         B及C的input delay皆为1ns(Da、Db、Dc)。

         Y的output delay为3ns(DY)。

接下来,我们以Step-By-Step的方式说明时序分析的方式。

1.          首先找出所有Timing Path,我们只列出具代表性的3条Timing Path来加以说明。

图二十二

2.          假设输入A讯号由0变1,计算第1条Path终点讯号到达的时间(Arrival Time简称AT)。

3.          假设输入A讯号由1变0,计算第1条Path终点AT。

图二十四

4.          计算第1条Path终点的需求时间(Required Time,简称RT)。

图二十五

5.          假设输入A讯号由0变1,计算第1条Path终点的Slack。Slack等于RT和AT的差值,对于Setup Time验证来说等于RT - AT,对于Hold Time验证来说等于AT - RT。在此Setup Time范例中,Slack为正,表示讯号实际到达Path终点时间比必须到达的时间还早,因此Timing是满足的。

图二十二六

6.          假设输入A讯号由1变0,计算第1条Path终点的Slack。Slack为正,因此Timing是满足的。

 

综合5和6,第1条Path的Timing是符合规格的,其Slack为4ns(取较差状况)。


图二十七

7.          假设前级Flip-Flop的讯号由0变1,计算第2条Path终点的AT。

图二十八

8.          假设前级Flip-Flop的讯号由1变0,计算第2条Path终点的AT。

图二十九

9.        计算第2条Path终点的RT

图三十

10.      假设前级Flip-Flop的讯号由0变1,计算第2条Path终点的Slack。Slack为负,因此Timing不满足。

图三十一

11.      假设前级Flip-Flop的讯号由1变0,计算第2条Path终点的Slack。Slack为负,因此Timing不满足。

 

综合10和11,第2条Path的Timing不满足,其Slack为-3。

图三十二

12.      假设前级Flip-Flop的讯号由0变1,计算第3条Path终点的AT。

图三十三

13.      假设前级Flip-Flop的讯号由1变0,计算第3条Path终点的AT。

 

 图三十四

14.      计算第3条Path终点的RT。

 

 图三十五

15.      假设前级Flip-Flop的讯号由0变1,计算第3条Path终点的Slack。Slack为负,因此Timing不满足。

 

 图三十六

16.      假设前级Flip-Flop的讯号由1变0,计算第3条Path终点的Slack。Slack为负,因此Timing不满足。

 

综合15和16,第3条Path Timing不符合规格,其Slack为-4。

 

图三十七

综合上述分析结果,此电路的时序不符合规格,其Critical Path是Path3,Slack为-4。

总结

本文先对STA的概念做概念性的介绍,在下集的文章中,将对STA在实际IC设计流程中的应用举一范例说明,请各位拭目以待。


(52RD.com)

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。