精华内容
下载资源
问答
  • 静态时序分析

    2021-01-07 07:29:23
    T1:时钟延迟(已知) T_cycle:时钟周期(已知) △T=T3-T2(已知)时钟偏斜 建立时间 :Ts=T_cycle-T1+△T 建立时间约束(Tsetup),建立时间余量Tslack=Ts-Tsetup 保持时间:Th=T1-△T或者Th=T_cycle-Th ...
  • 正点原子FPGA静态时序分析与时序约束_V1.0.pdf
  • 静态时序分析经典.pdf

    2019-09-26 16:28:23
    时序分析的精典,适合新人学习。讲得很好,适合用来打基础。。。。。。。。。。。。。。。。。。。。。。。。。。。欢迎大家一起学习
  • 摘要 本文介绍了数字集成电路设计中静态时序分析St at i c Ti mi ng Anal ysi s和 形式验证For mal Ver i f i cat i on的一般方法和流程这两项技术提高了时序分 析和验证的速度在一定程度上缩短了数字电路设计的周期...
  • 本文今天带大家学习一下 从静态时序分析到SDRAM时序收敛的时序。
  • 静态时序分析 潘伟涛 主要内容 What is STA? Why STA? What STA do? When STA? How to do STA? STA的概念 静态时序分析简称STA Static Timing Analysis ,是一种针对大 规模门级电路进行时序验证的有效方法它只需要...
  • 此文档详细介绍了静态下的时序如何去分析,如何使得时序符合时序要求,得到更好的设计方案。学习静态时序分析,这个就够了。
  • 静态时序分析详解.zip

    2019-12-25 08:53:27
    Timing, timing, timing! That is the main concern of a digital designer charged with designing a semiconductor chip. What is it, how is it described, and how does one verify it? The design team of a ...
  • FPGA那些事儿--TimeQuest 静态时序分析 完整版 配套程序请查看我其他资源
  • 静态时序分析.ppt

    2020-10-11 10:07:33
    静态时序分析.ppt
  • 静态时序分析与逻辑..静态时序分析与逻辑..静态时序分析与逻辑..静态时序分析与逻辑..静态时序分析与逻辑..静态时序分析与逻辑..静态时序分析与逻辑..静态时序分析与逻辑..静态时序分析与逻辑..静态时序分析与逻辑.....
  • 代码 资源 FPGA那些事儿 --TimeQuest静态 时序分析REV7.0 资源代码
  • 非常有用的学习文件!非常非常有用!课程目录如下: 1.静态时序的概念、目的; 2.静态时序分析路径; 3.静态时序分析方法; 4.静态时序分析工具介绍; 5.静态时序分析报告及逻辑优化设计。
  • ? 2009 Altera Corporation Altera, Stratix, Arria, Cyclone, MAX, HardCopy, Nios, Quartus, and MegaCore are trademarks of Altera Corporation ? 2009 Altera Corporation Altera, Stratix, Arria, Cyclone, M
  • FPGA静态时序分析.pdf

    2019-05-31 17:07:33
    FPGA静态时序分析,网上找到的资源,希望对大家有帮助。
  • FPGA静态时序分析

    2018-03-26 10:14:03
    讲解时需分析的最根本的原理及公式,只要理解这些,就能从根本上解决静态时序问题
  • 黑金讲解fpga的静态时序分析,写的不错,可下载观看。
  • ISE静态时序分析

    2012-11-17 11:14:39
    对ISE综合后产生的有关静态时序的文件进行详细,对进一步的程序改进和优化提供依据
  • fpga 静态时序分析 是电子工程中,对数字电路的时序进行计算、预计的工作流程,该流程不需要通过输入激励的方式进行仿真。
  • 简述静态时序分析的三种分析模式

    千次阅读 2019-11-27 19:25:17
    学习数字设计(数字IC设计、FPGA设计)都必须学习静态时序分析(Static Timing Analysis ,STA)。然而静态时序时序分析是一个比较大的方向,涉及到的内容也比较多,如果要系统得学习,那得花费不少的心思。这里来...

    学习数字设计(数字IC设计、FPGA设计)都必须学习静态时序分析(Static Timing Analysis ,STA)。然而静态时序时序分析是一个比较大的方向,涉及到的内容也比较多,如果要系统得学习,那得花费不少的心思。这里来记录一下关于静态时序分析的三种分析模式,这里的记录只是记录一下学习笔记,或者说是随笔,而不是系统地学习STA。本文是来自于前天遇到了一道静态时序分析的题目,感觉有点疑惑,于是发到群里请求解答。经过一番讨论、查找资料之后,真相渐渐露出水面。

      先看一下题目:

               

     

     

    一、时序路径分析模式及相关概念

      1.最快路径和最慢路径

      在求解这道题目之前,先来介绍一下时序路径分析模式及相关概念。

    ①最快路径(early- path):指在信号传播延时计算中调用最快工艺参数的路径;根据信号的分类可以分为最快时钟路径和最快数据路径。

    ②最慢路径(late path):指在信号传播延附计算中调用最慢工艺参数的路径;分为最慢时钟路径和最慢数据路径。

      (个人理解:)在一个库中,尽管电路器件单元已经被综合映射,但是工具可以通过改变周围的环境来得到不同的单元延时,所以即使是同一个库,调用工艺参数不一样的情况下,其单元延时是不同的,因此就有了最快路径和最慢路径。(这里理解有误)

    注意:

        与数据路径不同,最快时钟路径、最慢时钟路径的选择在建立时间分析和保持时间分析中是不同的。

    1)建立时间分析最快时钟路径和最慢时钟路径如下图所示:

               

    在建立时间分析中,最快时钟路径是指时序路径中时钟信号从时钟源点到达终止点时序单元时钟端口的延时最短捕获时钟路径,而最慢时钟路径是指时序路径中时钟信号从时钟源点到达始发点时序单元时钟端口的延时最长发射时钟路径

     

    2)保持时间分析最快时钟路径和最慢时钟路径如下图所示:

               

    在保持时间分析中,最快时钟路径是指时序路径中时钟信号从时钟源点到达达始发点时序单元时钟端口的延时最短发射时钟路径,而最慢时钟路径是指时序路径中时钟信号从时钟源点到终止点时序单元时钟端口的延时最长捕获时钟路径

     

      2.分析模式

      静态时序分析工具提供3种分析模式进行静态时序分析,不同的设计需求通过选择对应的时序分析模式从而可以在合理的时序计算负荷范围内得到接近于实际工作的时序分析结果。这三种模式是:单一分析模式(single mode)、最好-最坏分析模式(BC-WC mode)、全芯片变化分析模式(OCV模式)。

      我查阅了一些资料,在Synopsys公司的静态时序分析工具PrimeTime在早期的userguide中是有说明的,例如2010.06版本中:

               

    但是在最近两三年的版本中,却忽略了BC_WC模式,变成了其他三种模式,比如2015.12版本中:

               

    虽然在user  guide中没有明确写出BC_WC模式,但是这种模式还是存在的,也就是还是可以使用这种模式的。

     

      在Cadence的时序分析分析工具Encounter Timing System的2013.01的版本中,也是支持这三种分析模式的:

                

                 

      上面的工具默认的都是单一模式。回到题目中,查了一下,这道题目是5、6年前(甚至更早)的了,算是很经典的一道题目。很显然,题目要求的是在BC_WC模式先分析建立时间和保持时间。在求解题目之前,先来看一下这三种模式是如何分析建立时间和保持时间的。

      对于PT的2010.06版本:

                

                 

                  

    对于PT的2015.12版本:

                  

    可以看到,2015.12并没有给出WC-BC模式的描述,但是是支持的。

     

      对于ETS:没有给出表格,但是和PT的差不多。

     

    下面就来介绍这三种模式下是如何分析路径延时的,这里只进行介绍建立时间的分析,看情况介绍保持时间。

     

    二、单一分析模式(工具默认的模式)

      1.模式介绍

    在该模式下,工具只会在指定的一种工作条件下检查建立时间和保持时间,该工作条件可能是最好的、典型的、最坏的中的一种,但只能是单一的一种,

     

    而这里不进行配置:

     

    (1)建立时间分析

    对于触发器到触发器时序路径的建立时间的要求,转换成单一分析模式下建立时间的基本计算公式如下:

            发送时钟最慢路径延时+最慢数据路径延时≤捕获时钟最快路径延时+时钟周期-终止点时序单元建立时间

      进行建立时间检查时,始发点触发器的发射时钟路径延时、终止点触发器捕获时钟路径沿和从始发点到终止点的数据路径延时都是基于单一工作条件下所计算的路径延时。这是工作单一的一个库中,也就是工具在同一工艺进程、温度、电源下,调用其他不同的工艺参数,得到最快、最慢的时钟路径和数据路径。这是路径值是确定的。例如下面例子中(时间单位为ns):

                 

    假设上述电路是在典型库中进行综合的,那么在分析建立时间的时候,工具通过调用不同的工艺参数,得到最慢的发射时钟路径、最慢的数据路径和最快的捕获时钟路径:

      时钟周期=4

      发射时钟最慢延时 = U1+U2 = 0.8+0.6 = 1.4

      最慢数据路径延时 =3.6

      最快捕获时钟延时 = U1+U3 = 1.3

      时序单元FF2的建立时间要求查库得到0.2

    因此 :建立时间的slack为:

              1.3 + 4-0.2 - 1.4 - 3.6 = 0.1

     

    (2)保持时间分析

    保持时间的计算思路是一样的,这里只给出保持时间需要满足的公式,不再举具体例子。单一模式下要满足的保持时间要求如下所示:

            发射时钟最快路径延时 + 最快数据路径延时≥捕获时钟最慢路径延时 + 终止点时序单元保持时间

     

      2.题目计算

      对于前面的题目,由于题目的要求是在WC-BC模式下,但是假如是在单一模式,我们来看看该如何分析:

    单一库下工具提取到延时信息的理解如下:

                 

    下面分析题目中的路径:

                  

    对于F1和F2之间的建立时间分析如下所示:

      时钟周期 = 2*4 = 8

      最慢发射时钟路径(延时) = C1max + C2max = 1

      最慢数据路径 = F1cqmax+L1max = 0.7+7 = 7.7

      最快捕获时钟路径 = C1min + C2min + C3min = 0.6

      F2的D端口建立时间 = 0.3

    因此建立时间slack 为 :

        8 +0.6 - 0.3 -  1 - 7.7 = -0.4 (建立时间违规)

     

    对于F1和F2之间的保持时间分析如下所示(题目没有要分析这条路径的保持时间):

      最快发射时钟路径:C1min + C2min = 0.4

      最快数据路径:F1cqmin+L1min = 3.2

      最慢捕获时钟:C1max + C2max + C3max = 1.5

      F2保持时间 = 0.1

    因此保持时间slack为:

        0.4+3.2 - 1.5 - 0.1 = 2

     

    同理可以分析单一模式下F3-F4路径的保持时间:

      最快发射时钟路径:C1min + C2min = 0.4

      最快数据路径:F3cqmin + L2min = 0.4

      最慢捕获时钟:C1max + C2max + C4max+C5max = 2

      F2保持时间 = 0.1

      因此保持时间slack为:

        0.4 + 0.4 - 2 - 0.1 = -1.3(保持时间违规)

     

     

    三、最好-最坏分析模式(BC-WC)

      1.模式介绍 

      对于最好-最坏分析模式,静态时序分析工具会同时在PVT环境中的最好的和最坏的工作环境下检查建立时间和保持时间。也就是说,使用这个方式的时候,至少需要读入两个库(环境),一个用来设置最好的工作环境(或者说延时最小),一个用来设置最坏的工作环境(或者说延时最大)。

    (1)建立时间分析

      最好-最坏分析模式中建立时间的基本计算公式与单一分析模式下建立时间的基本计算公式一致,不同点在于计算建立时间所使用的工作环境不同,在计算建立时间过程中静态时序分析工具调用逻辑单元的最大(max)延时时序库,并用来检查时序路径最大延时是否满足触发器建立时间。

    例如对下面电路进行建立时间分析:

                 

      时钟周期 = 4

      发射时钟最慢路径延时(max库)=U1单元延时(max库)+U2单元延时(max库)=0.7+0.6=1.3

      最慢数据路径延时(max库)=3.5

      最快数据路径延时(max库) =1.9

      捕获时钟最快路径延时值(max库) = U1单元延时(max库)+ U3单元延时(max库)=0.7+0.5=1.2

      建立时间要求(max库) = 0.2

    因此触发器之间路径的建立时间slack为:

          1.2 + 4 - 0.2 -1.3 - 3.5 = 0.2

     

    (2)保持时间分析

      同样,最好-最坏路径分析模式中保持时间的基本计算公式与单一分析模式下保持时间的基本计算公式一致。不同点在于计算保持时间所使用的工作环境不同。在计算保持时间过程中,静态时序分析工具调用逻辑单元的最小(min)延时时序库,并用来检查时序路径最小延时是否满足触发器保持时间的约束。 即进行保持时间检查时,始发点触发器的发射时钟延时、终止点触发器捕获时钟延时和从始发点到终止点的数据路径延时都是基于最好工作条件下所计算的路径延延时

    例如对下面电路进行保持时间分析:

                 

      时钟周期 = 4

      发射时钟最快路径延时(min库)=U1单元延时(min库)+U2单元延时(min库)=0.5+0.4=0.9

      最快数据路径延时(min库)=1

      最慢数据路径延时(min库) =2.3

      捕获时钟最慢路径延时值(min库) = U1单元延时(min库)+ U3单元延时(min库)=0.5+0.3=0.8

      保持时间要求(min库) = 0.1

    因此触发器之间路径的保持时间slack为:

        0.9+1-0.8-0.1 = 1 (保持时间不违规)

     

      2.题目计算

      对于我们的题目,就是要求我们在BC-WC模式下进行分析建立时间和保持时间。现在就来分析一下。

    首先我们分析工具提取到延时信息:

               

     这里我们需要注意,本来我在读入max库的时候,应该有会得到max库下的单元延时的最大最小值;在读入min库的时候后,会得到min库下单元的最大最小值。题目中相当于只有一个库下单元延时的最大最小值,这个库取了max库的最大延时,同时取min库的最小延时。因此在进行WC分析的时候,我们就将max库中的单元延时最大和最小值看做相等进行处理,即max库中单元只有一个固定延时值(即上面的max列表里面)。同理BC分析的时候,min库中的单元也只有一个延时值(即上面的min列表里面)。

    下面就对时序路径进行分析:

                   

    对于F1-F2路径的建立时间分析如下所示:

      时钟周期 = 2*4 = 8

      最慢发射时钟路径(max库) = C1max + C2max = 1

      最慢数据路径(max库) = L1max = 7

      最快捕获时钟路径(max库) = C1maxmin + C2maxmin + C3maxmin=C1max + C2max + C3max = 1.5   (maxmin表示max库下的最快路径)

      F2的D端口建立时间 (max库)= 0.3

    因此建立时间slack 为 :

        8 +1.5 - 0.3 -  1 -0.7- 7 = 0.5

     

    对F3-F4路径的保持时间分析如下所示:

      最快发射时钟路径(min库):C1min + C2min = 0.4

      最快数据路径(min库):F3cqmin + L2min = 0.4

      最慢捕获时钟(min库):C1minmax + C2minmax + C4minmax+C5minmax =C1min + C2min + C4min+C5min=0.8   (minmax表示min库下的最慢路径)

      F2保持时间 = 0.1

    因此保持时间slack为:

        0.4 + 0.4 - 0.8 - 0.1 = -0.1(保持时间违规)

     

     

    四、OCV分析模式

      在芯片变化相关工作模式下,与最好-最坏分析模式一样,静态时序分析工具也会同时在PVT境中的最好的和最坏的工作环境下检查建立时间和保持时间,也就是要读入两个库。

      1.基本的OCV模式:

    (1)建立时间的分析

      OCV分析模式中建立时间的基本计算公式与其他分析模式下建立时间的基本计算公式一致,不同点在于计算最快路径和最慢路径所使用的工作环境不同,在计算建立时闻过程中静态时序分析工具调用时序单元的最大延时时序库来计算最慢路径的延时,同时调用逻辑单元的最小延时时序库来计算最快路径的延时,只检查时序路径的延时是否满足触发器建立时间的约束。

      进行建立时间检查时。始发点触发器的发射时钟采用的是最坏条件下最慢时钟路径,终止点触发器的捕获时钟采用的是最好条件下最快时钟路径,而从始发点到终止点的数据路径的延时则是在最坏条件下最慢数据路径延时。

    例如:

                 

      时钟周期 = 4

      发射时钟最慢路径延时(max库)=U1单元延时(max库)+U2单元延时(max库)=0.7+0.6=1.3

      最慢数据路径延时(max库)=3.5

      捕获时钟最快路径延时值(min库) = U1单元延时(min库)+ U3单元延时(min库)=0.5+0.3=0.8

      建立时间要求(max库) = 0.2

    因此触发器之间路径的建立时间slack为:

          0.8 + 4 - 0.2 -1.3 - 3.5 =- 0.2(时序违规)

     

    ·保持时间:类似,不进行详细描述

     

    (2)题目计算

      对于我们的题目,假设要在基本的OCV模式下进行计算,我们来看一下:

    首先库的分析WC-BC模式一样,不重复说明:

           

    然后对时序路径进行分析:

               

    对于F1-F2路径的建立时间分析如下所示:

      时钟周期 = 2*4 = 8

      最慢发射时钟路径(max库) = C1max + C2max = 1

      最慢数据路径(max库) = F1cqmax+L1max = 0.7+7 = 7.7

      最快捕获时钟路径(min库) = C1min + C2min + C3min= 0.6

      F2的D端口建立时间 = 0.3

    因此建立时间slack 为 :

        8 +0.6 - 0.3 -  1 -7.7= -0.4  (建立时间违例)

     

    对F3-F4路径的保持时间分析如下所示:

      最快发射时钟路径(min库):C1min + C2min = 0.4

      最快数据路径(min库):F3cqmin + L2min = 0.4

      最慢捕获时钟(max库):C1max + C2max + C4max+C5max =2

      F2保持时间 = 0.1

    因此保持时间slack为:

        0.4 + 0.4 - 2 - 0.1 = -1.3(保持时间违规)

     

      对于上面的题目,在基本的OCV模式中计算分析建立时间时,公共路径C1、C2在计算最慢发射时钟路径时,使用的是max库的最慢延时;而在计算最快捕获时钟路径的时候使用的是min库的最快延时。也就是说,该分析把公共路径的输出,当做两个不同传播延时的信号进行延时计算。然而在芯片实际工作时,公共路径的输出是一个信号驱动后续的发射时钟和捕获时钟,上面的检查分析太过于悲观,不太符合实际,因此延伸到下面两种模式。

     

      2.考虑时序减免的OCV模式:

      时序减免〔timing derate)的作用是很据减免(derating)系数,静态时序分析工具会在时序路径的每级逻辑门、连线和端口上都加上或减去一个原来延时值乘以减免系数值的延时作为最终的延时结果。设置时序减免值的目的是使时序分析结果更加符合实际情况。

    使用这种方式需要设置derating系数,系数值需要通过实际工程经验总结出来,这里不进行深入探讨,而且题目中没有给出该系数,因此不进行深入介绍。

     

      3.考虑时钟路径悲观移除(CPPR)的OCV模式:

      可以分为 不考虑时序减免和考虑时序减免情况,这里不进行介绍,感兴趣可以参考有关资料。

     

    其他先进的分析模式如AOVC、POCV等,涉及内容较多,就不写了,感兴趣可以参考有关资料。

     

     

    参考资料:

    《集成电路静态时序分析与建模》,刘峰,2016

    《PrimeTime  User Guide》,synopsys,2015

    《PrimeTime  Fundamentals User Guide》,synopsys,2010

    《Encounter Timing System User Guide》,cadence,2013

    展开全文
  • 学习PT的个人总结
  • altera 官方对于fpga静态时序分析的描述文档,阐述了如何进行时序分析的流程
  • 包含“静态时序分析(Static_Timing_Analysis)基础及应用.pdf“、“静态时序分析STA.pdf”、“系统设计中时钟、时序相关问题.pdf”
  • 华为静态时序分析

    2018-03-15 15:28:39
    华为静态时序分析资料,写的很好,很清楚,很适合时序分析的初学者

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 19,988
精华内容 7,995
关键字:

静态时序分析