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

    2019-02-27 10:27:39
    静态时序分析(英语:Static Timing Analysis, STA),或称静态时序验证,是电子工程中,对数字电路的时序进行计算、预计的工作流程,该流程不需要通过输入激励的方式进行仿真。
  • 摘要 本文介绍了数字集成电路设计中静态时序分析St at i c Ti mi ng Anal ysi s和 形式验证For mal Ver i f i cat i on的一般方法和流程这两项技术提高了时序分 析和验证的速度在一定程度上缩短了数字电路设计的周期...
  • altera 官方对于fpga静态时序分析的描述文档,阐述了如何进行时序分析的流程
  • 静态时序分析.ppt

    2020-10-11 10:07:33
    静态时序分析.ppt
  • 静态时序分析(statictiminganalysis,STA)是分析、调试并确认一个门级系统设计时序性能的比较彻底的方法。在门级电路设计过程中,为得到一个最佳的电路设计,在结构逻辑、电路布局布线等方面,时序分析起着关键...

    3010429b0e64bfea54ac123b39e9028f.png
    “ 静态时序分析(statictiminganalysis,STA)是分析、调试并确认一个门级系统设计时序性能的比较彻底的方法。在门级电路设计过程中,为得到一个最佳的电路设计,在结构逻辑、电路布局布线等方面,时序分析起着关键性的作用。静态时序分析既要检验门级电路的最大延迟、以保证电路在指定的频率下能够满足建立时间的要求,同时又要检验门级电路的最小延迟、以满足保持时间的需求。芯片的设计只有通过了静态时序分析才能真正完成,甚至在从逻辑综合开始后的每一个设计步骤的结果都需要满足或部分满足时序的要求。

    Prime Time

    PrimeTime是针对复杂、亿万门芯片进行全芯片、门级静态时序分析的工具。芯片级的静态时序分析,同时整合了延迟计算和先进的建模功能,以实现有效而又精确的时序认可。PrimeTimeSI是全芯片门级信号完整性分析工具。PrimeTimeSl建立在成功流片验证过的PrimeTime平台之上,提供精确的串扰延迟分析、IRDrop(电压降落)分析和静态时序分析。

    64b11e77adb7c3f4a627bdbf7f19949f.png

    prime两种模式

    pt_shell模式

    7cd5a054abfcf2330def4fca8df8b764.png

    GUI(图形界面模式)

    30beb4b5ce813d24ecad642745482a6e.png

    STA Concepts

    逻辑门单元

    逻辑门单元是实现基本逻辑运算和复合逻辑运算的单元电路。逻辑门单元分为组合逻辑门单元和时序逻辑门单元两种。CMOS工艺下,数字电路逻辑门单元主要由PMOS和NMOS晶体管构成。时序分析中逻辑门延时和信号线延时这两个参数值组成的阶段延时(stagedelay)是时序分析中计算延时的主要组成部分,如图所示。

    fc7f39894bae35a056c74b160b50eb01.png

    逻辑门延时定义为逻辑单元自身逻辑求值的时间;信号线延时的定义为:逻辑信号从逻辑门单元的输出端口开始在互连线上传播到下一级逻辑输人端口的延时。

    门单元的 时序计算参数

    静态时序分析中,需要通过提取逻辑门单元相关的时序参数的数值来验证设计在时序上的正确性。组合逻辑门单元相关的时序参数主要包括信号转换延时和逻辑门延时。

    信号转换延时

    输人端口或者输出端口的信号电平由高电平转换成低电平,或者由低电平转换成高电平。所需要的时间即为信号转换延时。

    9a50d8f2432a1975cff8752254be52ea.png

    逻辑门延时

    通过由晶体管组成的逻辑门可以使高、低电平输人信号进行逻辑求值并产生对应的高电平或者低电平信号输出,而从输人信号改变到对应的正确输出信号的时间间隔即为逻辑门延时。

    7cb4a69883891fd444d80508da8b07d0.png

    时序单元相关约束

    相比组合逻辑单元,时序单元除了具有组合逻辑单元的时序参数属性,还存在更多的时序约束参数属性,这些都是时序单元特有的相关时序约束。时序单元的时序约束是为了保证时序单元能够实现正确的逻辑功能所规定的输人或者输出信号数据需要保持稳定的最小时间间隔值。时序单元相关约束信息包括:建立时间、保持时间等。

    建立时间

    对于时序单元,建立时间是指时序单元正常工作时,在功能上为了保证正确性,输人信号数据应该在时钟信号有效前到达并保持的最小时间。

    !建立时间](https://test-bhs120811.oss-cn-shanghai.aliyuncs.com/img/image-20201102221109699.png)

    保持时间

    对于时序单元,保持时间是指时序单元要实现正确的逻辑功能,数据信号在时钟沿有效后必须保持的最小时间长度。

    ee74e48f73a19f3e328bb1a9790f1121.png

    时序路径

    时序路径(timingpath)是指设计中数据信号传播过程中所经过的逻辑路径。每一条时序路径都存在与之对应的一个始发点和一个终止点。时序分析中定义的始发点可以分为两种:组合逻辑单元的数据输人端口和时序单元的时钟输人端口,如图时序分析中定义的终止点也可以分为两种:组合逻辑单元的数据输出端口和时序单元的数据输人端口。

    时序路径根据始发点和终止点的不同可分为4种类型的时序路径:触发器到触发器(registertoregister)、触发器到输出(registertooutput)、输人端到触发器(inputtoregister)和输人端到输出端(input№output)。

    da533e4532ea09a5c0984254ca757ccc.png

    时钟特性

    在同步电路设计中,各功能逻辑单元之间的数据传输都由一个同步信号控制,这个执行统一指挥的信号就是时钟信号。随着设计工艺水平的不断提高,由于时钟本身所引起时序问题的现象越来越严重,因此有必要了解和掌握高速时钟本身的时序特性,并且在静态时序分析过程中要把这些影响设计时序性能的时钟特性考虑进来。时钟的时序特性主要分为时钟周期(clockperiod)、时钟占空比(clockdutycycle)、时钟转换时间,、时钟延迟(clocklatency)、时钟偏斜(clockskew)和时钟抖动(clockjitter)。

    时钟周期

    时钟周期也称为振荡周期,定义为时钟频率的倒数。静态时序分析中需要设置时钟周期即时钟信号的工作频率,作为时序参考基础,来检查时序路径是否满足时序要求。

    时钟占空比

    时钟占空比是指时钟信号高电平在一个周期之内所占的时间比率。

    时钟转换时间

    理想情况下,时钟信号在不同电平之间进行切换是不需要时间的,但是实际时钟信号在不同电平之间切换时,由于供电电压、工艺变化、扇出负载大小和互连负载大小等因素,是需要转换时间的。因此,时钟转换时间一般定义为时钟信号的电压从标准供电电源电压的10%变化到标准供电电源电压的90%的时间间隔。

    时钟延迟

    时钟延迟是指时钟信号从时钟源输出端口到达时序单元时钟输人端口所需要的传播时间,受工艺的影响。

    时钟偏移

    非理想情况下,由于时钟线长度及时钟树叶节点负载不同等因素,导致时钟信号到达同一时序路径下的相邻两个时序单元时钟端口的时间并不相同,这种时钟信号之间的偏移就是相同时钟信号之间的时钟偏斜。

    时钟抖动

    芯片工作过程中通常都是根据系统时钟脉冲信号同步工作的。最理想的情况是,时钟输人信号在下一个时钟的有效电平或者信号边缘到来之前切换,并在其正确的逻辑电平上保持稳定,从而使整个电路系统的行为合乎预设。但是在时钟电路设计实现中,不同实现单元的速度在不同时刻可能有着大小不一的差别,时钟信号可能并不能准确地在理想的信号边缘到来之前的瞬间保持在其正确的信号值上,它保持稳定所需的时间比理想情况有一定的偏移,这种偏移是在同一个时序单元的时钟输人端口上的时钟偏移,该时钟偏移主要表现为时钟抖动。

    时序弧

    静态时序分析是基于时序弧(timingarc)数据的时序分析。时序弧是用来描述两个节点延时信息的数据,时序弧的信息一般分为连线延时和单元延时。连线延时是单元输出端口和扇出网络负载之间的延时信息;单元延时是单元输人端口到输出端口的延时信息。因此一条完整路径的时序信息计算由连线延时和单元延时组成。

    ebeb2d91d472782ecff4bcb95dbabf07.png

    PVT环境

    为了使静态时序分析的结果更接近实际芯片工作环境的情况,需要对芯片设计工作环境,包括工艺、工作电压、工作温度等参数进行设置,该参数的组合简称为PVT;PVT各参数都可以分为典型的(typical)、最好的(best)和最坏的(worst)3种工艺情况。对应不同的工艺情况,单元延时也不一样,如图所示,可以看出,best工艺模型下单元延时最快,worst模型下单元延时最慢,typical模型下单元延时处于中等水平。

    8e8c60ec9183e235f182006a6b82d567.png
    展开全文
  • 华为静态时序分析

    2018-03-15 15:28:39
    华为静态时序分析资料,写的很好,很清楚,很适合时序分析的初学者
  • 静态时序分析与逻辑..静态时序分析与逻辑..静态时序分析与逻辑..静态时序分析与逻辑..静态时序分析与逻辑..静态时序分析与逻辑..静态时序分析与逻辑..静态时序分析与逻辑..静态时序分析与逻辑..静态时序分析与逻辑.....
  • 非常有用的学习文件!非常非常有用!课程目录如下: 1.静态时序的概念、目的; 2.静态时序分析路径; 3.静态时序分析方法; 4.静态时序分析工具介绍; 5.静态时序分析报告及逻辑优化设计。
  • FPGA静态时序分析.doc

    2020-04-24 18:05:43
    FPGA静态时序分析.doc
  • 静态时序分析与动态时序分析

    千次阅读 2019-07-25 10:35:01
    静态时序分析(static timing analysis, STA) 通过分析每个时序路径的延时,计算设计中各项时序性能指标,仅仅用于时序性能的分析,并不涉及逻辑功能,根据给定的工作条件(PVT)的时序库.lib文件计算信号在这些...

    静态时序分析(static timing analysis, STA) 

     通过分析每个时序路径的延时,计算设计中各项时序性能指标,仅仅用于时序性能的分析,并不涉及逻辑功能,根据给定的工作条件(PVT)的时序库.lib文件计算信号在这些路径的传播延时,根据最大路径延时和最小路径延时找出违背时序约束的错误。逻辑功能验证需要通过仿真和形式验证进行。

    动态时序仿真(dynamic timing analysis, DTA)

    主要用于验证设计在器件实际延时情况下的逻辑功能。给定仿真输入信号波形,模拟设计在器件实际工作时的功能和延时,分为晶体管级和门级仿真,由动态时序仿真报告无法得到时序性能指标。

    展开全文
  • 任何学FPGA的人都跑不掉的一个问题就是进行静态时序分析静态时序分析的公式,老实说很晦涩,而且总能看到不同的版本,内容又不那么一致,为了彻底解决这个问题,我研究了一天,终于找到了一种很简单的解读办法,...
  • 此文档详细介绍了静态下的时序如何去分析,如何使得时序符合时序要求,得到更好的设计方案。学习静态时序分析,这个就够了。
  • 包含“静态时序分析(Static_Timing_Analysis)基础及应用.pdf“、“静态时序分析STA.pdf”、“系统设计中时钟、时序相关问题.pdf”
  • FPGA静态时序分析.pdf

    2019-05-31 17:07:33
    FPGA静态时序分析,网上找到的资源,希望对大家有帮助。
  • 有关TimeQuest静态时序分析的核心知识总结
  • 静态时序分析纳米设计实用教程 各种dc约束 以及常见电路时序分析
  • 静态时序分析SAT

    2019-03-09 15:01:38
    静态时序分析SAT 1. 背景 静态时序分析的前提就是设计者先提出要求,然后时序分析工具才会根据特定的时序模型进行分析,给出正确是时序报告。  进行静态时序分析,主要目的就是为了提高系统工作主频以及增加...

    静态时序分析SAT

    1.   背景

         静态时序分析的前提就是设计者先提出要求,然后时序分析工具才会根据特定的时序模型进行分析,给出正确是时序报告。

      进行静态时序分析,主要目的就是为了提高系统工作主频以及增加系统的稳定性。对很多数字电路设计来说,提高工作频率非常重要,因为高工作频率意味着高处理能力。通过附加约束可以控制逻辑的综合、映射、布局和布线,以减小逻辑和布线延时,从而提高工作频率。

    2.   理论分析

       2.1   固定参数launch edge、latch edge、Tsu、Th、Tco概念

    2.1.1         launch edge

     

      时序分析起点(launch edge):第一级寄存器数据变化的时钟边沿,也是静态时序分析的起点。

    2.1.2        latch edge

      时序分析终点(latch edge):数据锁存的时钟边沿,也是静态时序分析的终点。

    2.1.3         Clock Setup Time (Tsu)

      建立时间(Tsu):是指在时钟沿到来之前数据从不稳定到稳定所需的时间,如果建立的时间不满足要求那么数据将不能在这个时钟上升沿被稳定的打入触发器。如图3.2所示:

     

     图3.2  建立时间图解

    2.1.4        Clock Hold Time (Th)

      保持时间(Th):是指数据稳定后保持的时间,如果保持时间不满足要求那么数据同样也不能被稳定的打入触发器。保持时间示意图如图3.3所示:

     

     

    图3.3  保持时间图解

    2.1.5         Clock-to-Output Delay(tco)

      数据输出延时(Tco):这个时间指的是当时钟有效沿变化后,数据从输入端到输出端的最小时间间隔。

    2.2    Clock skew

      时钟偏斜(clock skew):是指一个时钟源到达两个不同寄存器时钟端的时间偏移,如图3.4所示:

     

     

    图3.4  时钟偏斜

      时钟偏斜计算公式如下:

                                               Tskew = Tclk2 - Tclk1           (公式2-1)

    2.2    Data Arrival Time

      数据到达时间(Data Arrival Time):输入数据在有效时钟沿后到达所需要的时间。主要分为三部分:时钟到达寄存器时间(Tclk1),寄存器输出延时(Tco)和数据传输延时(Tdata),如图3.5所示

     

    图3.5  数据到达时间

      数据到达时间计算公式如下:

       Data Arrival Time = Launch edge + Tclk1 +Tco + Tdata        (公式2-2)

    2.3    Clock Arrival Time

      时钟到达时间(Clock Arrival Time):时钟从latch边沿到达锁存寄存器时钟输入端所消耗的时间为时钟到达时间,如图3.6所示

    图3.6  时钟到达时间

    时钟到达时间计算公式如下:

                                              Clock Arrival Time = Lacth edge + Tclk2              (公式2-3)

    2.4    Data Required Time(setup/hold)

      数据需求时间(Data Required Time):在时钟锁存的建立时间和保持时间之间数据必须稳定,从源时钟起点达到这种稳定状态需要的时间即为数据需求时间。如图3.7所示:

     

     

    图3.7  数据需求时间

      (建立)数据需求时间计算公式如下:

             Data Required Time = Clock Arrival Time - Tsu            (公式2-4)

      (保持)数据需求时间计算公式如下:

                       Data Required Time = Clock Arrival Time + Th               (公式2-5) 

    2.5    Setup slack

      建立时间余量(setup slack):当数据需求时间大于数据到达时间时,就说时间有余量,Slack是表示设计是否满足时序的一个称谓。

     图3.8  建立时间余量

      如图3.8所示,建立时间余量的计算公式如下:

              Setup slack = Data Required Time - Data Arrival Time        (公式2-6)

      由公式可知,正的slack表示数据需求时间大于数据到达时间,满足时序(时序的余量),负的slack表示数据需求时间小于数据到达时间,不满足时序(时序的欠缺量)。

    3.1.7    时钟最小周期

      时钟最小周期:系统时钟能运行的最高频率。

      1.  当数据需求时间大于数据到达时间时,时钟具有余量;

      2.    当数据需求时间小于数据到达时间时,不满足时序要求,寄存器经历亚稳态或者不能正确获得数据;

      3.    当数据需求时间等于数据到达时间时,这是最小时钟运行频率,刚好满足时序。

      从以上三点可以得出最小时钟周期为数据到达时间等于数据需求时间,的运算公式如下:

                                                                   Data Required Time = Data Arrival Time 

    图解Setup 与 Hold Slack

     

     

    从上面两个图中可以清晰的看出Setup与Hold Slack的定义与计算方法:

    Setup slack=latch edge+Tclk2-Tsu-(launch edge+Tclk1+Tco+Tdata)

                    =(latch edge-lanuch edge)+(Tclk2-Tclk1)-(Tsu+Tco+Tdata)

    对于工具默认的单周期来说,latch edge-lanuch edge=T,如果不考虑时钟的skew,Tclk2-Tclk1=0,上式可以表达成:

    Setup slack=T-(Tsu+Tco+Tdata),这就是为什么说源寄存器与目的寄存器之间延迟不能太长的原因,延迟越长,slack越小。

    Hold slack=data arrival time – data required time
                 =(launch edge + Tclk1 + Tco + Tdata) – (latch edge + Tclk2 + Th)
                 =(launch edge – latch edge) – (Tclk2 – Tclk1) + (Tco + Tdata + Th)

    注意,上式中的launch edge为next launch edge,即为latch edge,所以launch edge – latch edge=0,如果不考虑时钟的skew,Tclk2-Tclk1=0,上式可以表达成:

    Hold slack=Tco + Tdata – Th,这就是为什么说源寄存器与目的寄存器之间延迟不能太短的原因,时间太短,slack越小。

     

    setup  slack 计算

     

     

    hold  slack 计算

     

    展开全文

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,012
精华内容 404
关键字:

静态时序分析