STA学习笔记-0
如今的逻辑设计复杂度和工作频率要求越来越高。为了保证设计稳定可靠,必须对设计附加时序约束,对综合实现结果进行时序分析。
导言
时序约束:主要用于规范设计的时序行为,表达设计者期望满足的时序条件,指导综合和布局布线阶段的优化算法等。
时序约束的作用:1、提高设计的工作频率。 2、获得正确的时序分析报告。
静态时序分析(英语:Static Timing Analysis, STA),或称静态时序验证,是电子工程中,对数字电路的时序进行计算、预计的工作流程,该流程不需要通过输入激励的方式进行仿真。
静态时序分析是相对于“动态时序仿真”而言,动态时序仿真占用的时间非常长,效率低下。因此STA成为最常用的分析、调试时序性能的方法和工具。分析每个时序路径的延迟,计算出设计的最高频率,发现时序违规。
STA的目的仅聚焦于时序性能的分析,并不涉及设计的逻辑功能。
本文将介绍STA的理论和方法,后期配合相关时序分析题目检验所学的知识。
下面将介绍时序概念:周期、最大时钟频率、时钟建立时间、时钟保持时间、时钟到输出的延时、管脚到管脚的延时、Slack和时钟偏斜。

图中Tclk是时钟的最小周期。Micro Tco 是寄存器固有的时钟输出延时,Tlogic 是同步元件之间的组合逻辑延时,Tnet是网线延迟,Micro Tsu 是寄存器固有的时钟建立时间,Tclk_skew 是时钟偏斜。
最小周期和最高频率计算如下:

fmax能综合体现设计的时序性能,是最重要的时序指标之一。
建立时间:输入信号应该提前时钟上升沿(如上升沿有效)T时间到达芯片,这个T就是建立时间:Setup time.如果不满足Setup time,这个数据就不能被这一时钟打入触发器,只有在下一个时钟上升沿,数据才能被打入触发器。
举个例子:坐火车时需要提前到站检票安检,而不是一到火车站就可以乘坐。必须的提前到站的时间就是建立时间。
保持时间:保持时间是测试芯片对输入信号和时钟信号之间的时间要求。保持时间是指触发器的时钟信号上升沿到来以后,数据稳定不变的时间(数据保持不变以便能够稳定读取)。

时钟建立时间 Clock Setup Time

Micro Tsu 是寄存器固有的时钟建立时间,触发器固有属性,通常小于1ns。
时钟保持时间 Clock Hold Time

Micro Th 是寄存器固有的时钟保持时间,触发器固有属性,通常小于1ns。
时钟输出延时 Clock Output Delay
定义:指的是在时钟有效沿到数据有效的最大时间间隔。

Micro Tco 是寄存器内部延时参数,触发器固有属性,通常小于1ns。
引脚到引脚的延时 Pin to Pin Delay

时钟偏斜 Clock Skew


以下面为例,静态时序分析:


launch edge : 时钟源第一个上升沿对应时刻,数据发送沿。STA以该时刻为0时刻。
latch edge : 时钟源第二个上升沿对应时刻,数据接收沿。STA以该时刻为结束时刻。
Tsu :建立时间。 Th :保持时间。 Tco : 时钟输出延时。 Tdata : 两个REG中组合逻辑延时。 Tskew: 时钟偏斜。




STA分析核心公式:T+Tskew-Tco-Tdata-Tsu>=0 满足此不等式,即可判断是否满足建立时间裕量,即满足时序要求。

保持时间约束条件:Tco+Tdata-Tskew-Th>=0

参考资料:1、建立时间_百度百科 (baidu.com)
3、Intel FPGA/CPLD设计
4、(105条消息) 静态时序分析(STA)概念 例题_昨日傍晚的博客-CSDN博客_静态时序分析题目
STA学习笔记-0的更多相关文章
- 驱动开发学习笔记. 0.07 Uboot链接地址 加载地址 和 链接脚本地址
驱动开发学习笔记. 0.07 Uboot链接地址 加载地址 和 链接脚本地址 最近重新看了乾龙_Heron的<ARM 上电启动及 Uboot 代码分析>(下简称<代码分析>) ...
- ArcGIS API for JavaScript 4.2学习笔记[0] AJS4.2概述、新特性、未来产品线计划与AJS笔记目录
放着好好的成熟的AJS 3.19不学,为什么要去碰乳臭未干的AJS 4.2? 4.2全线基础学习请点击[直达] 4.3及更高版本的补充学习请关注我的博客. ArcGIS API for JavaScr ...
- boost 学习笔记 0: 安装环境
boost 学习笔记 0: 安装环境 最完整的教程 http://einverne.github.io/post/2015/12/boost-learning-note-0.html Linux 自动 ...
- JavaScript学习笔记[0]
JavaScript学习笔记[0] 使用的是廖雪峰JavaScript教程. 数据类型 Number 表示数字,不区分浮点整形. === 比较时不转化数据类型. == 反之. NaN与任何值都不想等, ...
- Spark学习笔记0——简单了解和技术架构
目录 Spark学习笔记0--简单了解和技术架构 什么是Spark 技术架构和软件栈 Spark Core Spark SQL Spark Streaming MLlib GraphX 集群管理器 受 ...
- 驱动开发学习笔记. 0.04 linux 2.6 platform device register 平台设备注册 1/2 共2篇
驱动开发读书笔记. 0.04 linux 2.6 platform device register 平台设备注册 1/2 共2篇下面这段摘自 linux源码里面的文档 : Documentatio ...
- 驱动开发学习笔记. 0.02 基于EASYARM-IMX283 烧写uboot和linux系统
驱动开发读书笔记. 0.02 基于EASYARM-IMX283 怎么烧写自己裁剪的linux内核?(非所有arm9通用) 手上有一块tq2440,但是不知道什么原因,没有办法烧boot进norflas ...
- 驱动开发学习笔记. 0.06 嵌入式linux视频开发之预备知识
驱动开发读书笔记. 0.06 嵌入式linux视频开发之预备知识 由于毕业设计选择了嵌入式linux视频开发相关的项目,于是找了相关的资料,下面是一下预备知识 UVC : UVC,全称为:USB v ...
- 驱动开发学习笔记. 0.05 linux 2.6 platform device register 平台设备注册 2/2 共2篇
驱动开发读书笔记. 0.05 linux 2.6 platform device register 平台设备注册 2/2 共2篇 下面这段摘自 linux源码里面的文档 : 内核版本2.6.22Doc ...
- 驱动开发学习笔记. 0.01 配置arm-linux-gcc 交叉编译器
驱动开发读书笔记. 0.01 配置arm-linux-gcc 交叉编译器 什么是gcc: 就像windows上的VS 工具,用来编译代码,具体请自己搜索相关资料 怎么用PC机的gcc 和 arm-li ...
随机推荐
- JUC中常见的集合
Map: HashMap ===> ConcurrentHashMap List: ArrayList ===> CopyOnWriteArrayList Set: HashSet === ...
- 用Aspose-Java免费实现 PDF、Word、Excel、Word互相转换并将转换过得文件上传OSS,返回转换后的文件路径
嘿嘿嘿.嘿嘿,俺又回来了! github代码地址 https://github.com/Tom-shushu/work-study 接口文档有道云 https://note.youdao.com/s/ ...
- 计算机网络之MAC和IP地址
MAC地址 在局域网中,硬件地址,又称为物理地址或MAC地址. 目前现在的局域网中实际上使用的都是6字节的MAC地址,所以每一个以太网设备都具有唯一的MAC地址. MAC地址的格式 假设传输使用的是I ...
- P8936 月下缭乱 Sol
考虑对操作的区间 \([l_i,r_i]\) 的下标进行扫描线而不是对操作的值扫.用 \(m\) 个 set 动态维护 \(x_i\) 对应的操作的下标集合,再用一个可删堆来维护当前所有操作 \(x_ ...
- Mastering Regular Expressions(精通正则表达式) 阅读笔记:前言
General Concept(一般概念) If you master the general concept of regular expressions, it's a short step to ...
- #Python 文本包含函数,pandas库 Series.str.contains 函数
一:基础的函数组成 '''Series.str.contains(pat,case = True,flags = 0,na = nan,regex = True)'''测试pattern或regex是 ...
- 2020-10-23:go中channel的创建流程是什么?
福哥答案2020-10-23:1.元素大小是否小于2的16次方,否则throw.2.对齐检查,否则throw.3.元素大小和容量的乘积不能超出范围,否则panic.4.生成*hchan,设置buf.4 ...
- Stream流根据属性去重
List根据属性去重 创建一个user集合 User user1 = new User("user1", 18, "AAA"); User user2 = ne ...
- 解决 VMware EXSI的Windows虚拟机中,配置静态IP后,DHCP自动默认开启获取IP,导致无法访问
解决 VMware EXSI的Windows虚拟机中,配置静态IP后,DHCP自动默认开启获取IP,导致无法访问 前言:在EXSI上部署了Windows虚拟机,但是配置了静态IP后却不能Ping通:逐 ...
- 让ChatGPT帮我写SQL
推荐一个Github上Start超过3.4K,可将自然语言转化为SQL语句的开源项目. 项目简介 这是一个利用ChatGPT,SQL与自然语言的翻译器.可以将自然语言转换为SQL语句,同样也可以把SQ ...