静态时序分析——基础概念

一、简述

静态时序分析是检查系统时序是否满足要求的主要手段。以往时序的验证依赖于仿真,采用仿真的方法,覆盖率跟所施加的激励有关,有些时序违例会被忽略。此外,仿真方法效率非常的低,会大大延长产品的开发周期。静态时序分析工具很好地解决了这两个问题。它不需要激励向量,可以报出系统中所有的时序违例,并且速度很快。但并没有进行系统功能上的验证

上图我们可以看到静态时序分析在整个芯片设计流程中的位置,可以发现STA几乎涉及后端的全部阶段,是sign off的重要工具。。通过静态时序分析,可以检查设计中的关键路径分布;检查电路中的路径延时是否会导致setup违例;检查电路中是否由于时钟偏移过大导致hold违例;检查时钟树的偏移和延时等情况。此外静态时序分析工具还可以与信号完整性工具结合在一起分析串扰问题。常用的静态时序工具是PrimeTime。其主要输入输出为:

相对于动态仿真,我们可以得出下表:

二、基本概念

1.建立时间(setup time)

触发器的时钟信号上升沿到来以前,数据稳定不变的时间,如果建立时间不够,数据将不能在这个时钟上升沿被打入触发器

2.保持时间(hold time)

触发器的时钟信号上升沿到来以后,数据稳定不变的时间,如果保持时间不够,数据将不能被打入触发器。 

3.时间裕量(time slack)

传输中的信号的真实时间于需求时间之间的差值。通常用来表示设计是否满足时序要求。

Setup slack = Data Required Timesetup - Data Arrival Time

Hold slack = Data Arrival Time - Data Required Time hold

4.时钟抖动(clock jitter)

指时钟边沿变化不确定的时间。

5.时钟偏斜(clock skew)

时钟和其它信号的传输一样会有延时的。下图中,时钟信号从时钟源传输到源寄存器的延时定义为Tc2s ,传输到目标寄存器的延时定义为 Tc2d。

时钟偏斜是指时钟源到达源寄存器和目的寄存器的时间偏移。其计算公式为:Tskew = Tc2d – Tc2s。

6.时序分析起点(launch edge)

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

7.时序分析终点(latch edge)

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

8.数据输出延时(Clock-to-Output Delay)

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

9.数据到达时间(data arrival time)

输入数据在有效时钟沿后到达所需要的时间。主要分为三部分:时钟到达源寄存器时间(Tc2s),寄存器输出的延时(Tco)和源寄存器到目的寄存器数据传输的延时(Tr2r),如下图:

因此,Data Arrival Time = launch edge + Tc2s + Tco + Tr2r

10.数据需求时间(Data Required Time)

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

因此,(建立)Data Required Time = latch edge + Tc2d – Tsu;

(保持)Data Required Time = latch edge + Tc2d + Th;

而习惯用Clock Arrival Time (时钟到达时间)= latch edge + Tc2d

三、基本流程

STA主要分为以下三步:

1、将整个电路设计分割成不同的时序路径

2、计算每一条时序路径的逻辑延时

3、检查时序路径是否满足其时序约束

时序路径可分为以下四种:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/253864.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux framebuffer 例子

昨天做的一个极简单的framebuffer的例子,用来学习怎样操作fb设备。 这段代码是在picogl的vesafb backend部分的基础上简出来的,所以变量名还保留着。 流程如下: 1 打开framebuffer设备; 2 通过ioctl取得f…

加载数据时,页面显示正在加载的动画,支持移动端

最近在使用ionic3做一个移动端APP,在用户网络环境差的时候,查询数据会比较慢,这个时候需要模拟其他成熟的APP给页面上加入一个加载的动画。由于一开始我不知道ionic3本身已经提供了一套组件,所以自己先做了一套样式。提供给不用框…

静态时序分析——单周期

一、建立时间的检查 建立时间的检查是指检查电路里每一个触发器的数据和时钟的关系是否满足建立时间的要求。 我们以上图为例进行建立时间检查。由图可知,我们主要针对第二个触发器UFF1进行检查。我们可以梳理时序关系如下: 通过这个图,我们…

自己搭建的CISCO实验环境

交换机:设备型号: CISCO 3750 24-TS 3台CISCO 3750 48-PS 1台路由器:设备型号:1.CISCO 2821 3台2.CISCO 3745 3台 物理拓扑图如下: 转载于:https://blog.51cto.com/zxs3026/2156424

关于大数定律的讨论(转)

科普一下所谓“大数定律的四种证法” 作者 : 王若度最近网上总是调侃数学、统计博士知道所谓“大数定律的四种证法”,本身是模仿《孔乙己》的桥段,用以调侃数学、统计博士学一些没什么用的东西。其实我是从来没听说过大数定律的四种证法这回事的&#x…

DM365 u-boot 启动分析

第一阶段:汇编语言启动 先看u-boot/board/davinci/dm365_ipnc/下的文件。 u-boot.lds OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm") OUTPUT_ARCH(arm) ENTRY(_start) SECTIONS { . 0x0000000…

[Luogu1821][USACO07FEB]银牛派对Silver Cow Party

由题意可知,我们需要求的是很多个点到同一个店的最短距离,然后再求同一个点到很多个点的最短距离。 对于后者我们很好解决,就是很经典的单源最短路径,跑一边dijkstra或者SPFA即可。 然而对于前者,我们应该怎么解决呢&a…

CMOS组合逻辑

1. 静态互补CMOS 实际上就是静态CMOS反相器扩展为具有多个输入。更反相器一样具有良好的稳定性,性能和功耗。 静态的概念:每一时刻每个门的输出通过低阻抗路径连到VDD或VSS上。任何时候输出即为布尔函数值。动态电路通常依赖把信号暂存在高阻抗节点的电…

绘制泰森多边形

使用到的数据文件,内容如图: 代码: clc; clear; close all; % 导入需要的坐标数据成矩阵 a load(test.txt); x a(:,1); y a(:,2); x x;%获取坐标的横坐标 y y;%获取坐标的纵坐标 %根据点 绘制泰森多边形 voronoi(x,y); %设定x轴的边界 x…

(八)限定某个目录禁止解析php、限制user_agent和PHP相关配置

2019独角兽企业重金招聘Python工程师标准>>> 限定某个目录禁止解析php 对于使用php语言编写的网站,有一些目录是有需求上传文件的。如果网站代码有漏洞,让黑客上传了一个用PHP写的木马,由于网站可以执行PHP程序,最终会…

静态时序分析——多周期、半周期和伪路径

一、多周期 multicycle paths 在一些情况下,如下图所示,两个寄存器之间的组合电路传输的逻辑延时超过一个时钟周期。在这样的情况下,这个组合路径被定义为多周期路径(multicycle path)。尽管后一个寄存器会在每一个的…

微信头像单张图片上传

后台配置 public function upload_img($img){import(ORG.Tencent.Weixin);$wx new Weixin(get_app_config());$media_data$wx->getMedia($img);$path./Uploads/.uniqid()..jpg;if(!file_put_contents($path,$media_data)){$this->error(图片上传失败);}return $path;}前…

u-boot nand flash read/write cmd

支援的命令函數說明1. nand info/nand device功能:顯示當前nand flash晶片資訊。函數調用關係如下(按先後順序):static void nand_print(struct nand_chip *nand) ;2. nand erase 功能:擦除指定塊上的數據。 函數調用關係如下(按先後順序)&am…

APP测试瞎话

APP测试 一、功能性 1、APP的安装、卸载 2、APP中业务功能 二、性能测试 1、高、中、低端机上运行效果 2、APP安装过程、卸载过程的耗时 3、APP运行时,手机的CPU、内存、耗电量、流量、FPS(画面每…

网络七层协议之物理层

我们以一个非常简单的例子开始: 两服务器通讯问题 如上图,有两台服务器,分别是 Server 1 和 Server 2 。 我们先做一个假设:计算机网络现在还没有被发明出来, 作为计算机科学家的你,想在这两台服务器间传递…

静态时序分析——On-chip Variation

OCV(on-chip variation)是指在同一个芯片上, 由于制造工艺和环境等原因导致芯片上各部分特征不能完全一样,从而造成偏差,对时序分析造成影响。这些偏差对互联线和cell的延时都是有影响的。 由于OCV对延时有影响,那么我…

Exception和RuntimeException的区别

1.Exception表示程序运行过程中可能出现的非正常状态 RuntimeException表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。 Java编译器要求方法必须声明抛出可能发生的费运行异常,但是并不要求必须声明抛出未被捕获的运行时异常, 即…

[转载]IIS7报500.23错误的解决方法

原文出处: 原文作者:pizibaidu 原文链接:http://pizibaidu.blog.51cto.com/1361909/1794446 背景:今天公司终端上有一个功能打开异常,报500错误,我用Fiddler找到链接,然后在IE里打开&#xff0c…

关于用户空间和内核空间

当一个任务(进程)执行系统调用而陷入内核代码中执行时,我们就称进程处于内核运行态(内核态)。在内核态下,CPU可执行任何指令。当进程在执行用户自己的代码时,则称其处于用户运行态(用…

kaggle中zillow比赛中模型融合的方法及其代码

在机器学习这个领域,尤其是做多媒体(声音、图像、视频)相关的机器学习方法研究,会涉及很多特征、分类模型(分类任务)的选择。以声音识别为例,常见的特征有MFCC、LPCC、spectrogram-like feature…