数字IC学习:静态时序分析基础

摘要

  • 时序分析的分类
  • 时序路径、裕度、建立时间和保持时间的概念

1. 前言

        芯片的频率性能可以理解为时序需求,时序分析就是检查所设计的电路是否能满足时序需求的方法。时序分析有两种:动态时序分析和静态时序分析。

        动态时序分析:即常说的后仿/时序仿真,需要通过添加输入向量,来观察信号经过特定路径需要的时间是否满足建立和保持要求。

        静态时序分析(STA):不依赖于输入向量,通过分析电路拓扑来计算电路中不同信号到达各个点的时间窗口,然后与要求信号到达该点的时间进行比较。

2. 静态时序分析

2.1 时序路径

        时序路径:信号可以继续穿过,不必等待其他触发条件的路径。每一条时序路径都包含起点和终点。起点可以为input port和寄存器的clk pin,终点可以为output port和寄存器除clk pin以外的其他输入pin(如D pin或复位pin等)。

        时序路径分类:input2reg、reg2reg、reg2out、input2output

2.2 裕度

        裕度是指:满足电路最低建立时间、保持时间以外的冗余量,因此,通常情况下是希望电路不能有违例,且冗余量越大越好。

        建立slack = 数据建立要求 - 最后一个到达的信号

        保持slack = 最早到达的信号 - 数据稳定要求

2.3 建立时间与违例修复

        建立时间是在时钟信号有效沿到达之前,输入信号需要保持稳定的时间。假如建立时间不满足要求,就可能产生亚稳态,这种现象称作建立时间违例。

        建立时间的检查可以确保移动最慢的数据也能及时到达并满足建立的标准,因此又被称作最大分析(max analysis)。由于建立检查考虑最晚到达的数据,也被称为晚期分析(late anylysis)

        考虑建立时间违例的极限情况,需要保持数据到达的时间至少比时间边沿到达时间早一个setup time,而前一个寄存器的采样又比后一个寄存器的采样早一个周期,因此可用以下公式表示:tclk-q + tlogic + tsetup<=tskew + T。

        其中tclk-q是数据从前一个寄存器的clk到q的时间,tlogic是寄存器间的组合逻辑时间,tskew是前后寄存器时钟边沿到达的时间差,T是时钟周期。

        因此解决建立时间违例的方法:①增加tskew,clk通路上插入buffer;②增加T,降低时钟频率;③减小tlogic,减少寄存器之间的组合逻辑;④减小tclk-q,更换DFF器件。

2.4 保持时间与违例修复

        保持时间是在时钟信号有效沿到达之后,输入信号需要保持稳定的时间。假如不满足保持时间的要求,也有可能产生亚稳态,这种现象被称作保持时间违例。

        保持时间的检查可以确保即使是移动最快的数据也不应该干扰其他数据,同时期望数据保持稳定。因此,数据路径计算最小延迟,被称为最小分析(min analysis),由于保持检查考虑了最早到达的数据,所以也称其为早期分析(early analysis)

        考虑保持时间违例的极限情况,我们需要保证数据改变的时间比时钟沿到来的时间,至少晚一个hold time。数据改变所需的时间,对于前一个寄存器而言,是指第二个时钟边沿到来时的数据移动的时间,对于第二个寄存器而言,也是指第二个时钟边沿到来的时间,因此我们可以列出式子如下:tclk-q + tlogic>=tskew + thold。

        因此解决保持时间违例的方法:①增加tclk-q,更换慢一些的DFF器件;②增加tlogic,在组合逻辑路径上插入buffer;③减小skew。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值