备战秋招,如何看懂一个陌生的timing report

  • 一、写在前面
    • 1.1 快速导航链接·
  • 二、Timing Report
    • 2.1 起始点与终止点
    • 2.2 路径时钟域的归属
    • 2.2 建立时间检查与保持时间检查
    • 2.3 解读表头
    • 2.4上升沿检查与下降沿检查
    • 2.5 数据所需时间与时序违例
  • 三、总结

一、写在前面

一个数字芯片工程师核心竞争力是什么?不同的工程师可能给出不同的答复,有些人可能提到硬件描述语言,有些人可能会提到对于特定算法和协议的理解,有些人或许会提到对于软硬件的结合划分,作者想说,这些说法,其实对也不对,硬件描述语言,翻来覆去无非是always和assign这几个语句的反复使用,而一些基础的协议算法深究起来其实也并不复杂,于作者而言,在常规的技能以外,有两项额外的技能颇为重要,其中之一便为sdc/STA的分析能力,它的重要之处在于作为桥梁建立了前端和后端的连接,虽然对于DE工程师而言,初版交付的sdc往往不甚准确,也没有办法通过这份sdc生成一份无误的timing report,但sdc的内容体现却是完完整整的将时序约束从行为级的描述映射到了gate level这样一个真实的电路层次上面。
写此专栏,一为学习记录,二为交流分享,以犒粉丝读者。

1.1 快速导航链接·

静态时序分析简明教程(一)绪论
静态时序分析简明教程(二)基础知识:建立保持时间,违例修复,时序分析路径
静态时序分析简明教程(三)备战秋招,如何看懂一个陌生的timing report
静态时序分析简明教程(四)时钟常规约束
静态时序分析简明教程(五)时钟其他特性
静态时序分析简明教程(六)端口延迟
静态时序分析简明教程(七)完整端口约束
静态时序分析简明教程(八)虚假路径
静态时序分析简明教程(九)多周期路径
静态时序分析简明教程(十)组合电路路径
静态时序分析简明教程(十一)模式分析与约束管理
静态时序分析简明教程(十二)浅议tcl语言

二、Timing Report


上面的电路图为一个典型的同步电路,包含组合逻辑和时序逻辑,是一个经典的时序分析案例,我们可以在其中找到静态时序分析简明教程(二)基础知识:建立保持时间,违例修复,时序分析路径所包含的全部的四条时序路径。对该电路进行分析,我们可以得到如下的时序报告,接下来就让我们看看这个报告中包括什么内容。

2.1 起始点与终止点

拿到timing report,我们第一个可以得到的信息就是时序分析路径的起点与终点。
在这份timing report中,Start Point为:UFF1的clk端;而Endpoint为:UFF2的clk端

2.2 路径时钟域的归属

除了起始点与中止店外,我们还能得到路径时钟域的归属,为CLKP,需要注意的是:起点的时钟和终点的时钟有可能不相同,但无论哪种情况,路径组合(Path Group)总是被归属于终点寄存器的时钟

2.2 建立时间检查与保持时间检查

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

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

本Timing Report中,Path Type为max,说明了这个是一个建立时间检查相关的时序报告,假如Path Type为min的话,就是一个保持时间检查相关的寄存器。

2.3 解读表头

表头有三项内容,分别是Point,Incr和Path。
Point代表着时序分析的点是哪一个,比如其中的”UFF1/CK(DFF)“就是第一个寄存器的clock端。
Incr为incremental delay,代表着一个分立的delay值,比如说经过组合逻辑的门电路,和寄存器的D到Q,都会产生各自的incr值。
Path为Path delay,是Incr delay的累加和。

2.4上升沿检查与下降沿检查

在Path端,我们可以发现一列数字,0.00、0.17f、0.26r,其中的f就是下降沿检查r是上升沿检查

2.5 数据所需时间与时序违例


整个表格笼统上可以分为上下两部分,上半部分为data到达的时间,下半部分为data需要的时间,是否发生违例(建立时间违例与保持时间违例),用下面的时间减去上面的时间可以得到slack值,假如slack是正值,时序违例没有发生,假如slack是负值,说明发生了时序违例,需要按照第二节的方法去修改建立时间或者保持时间

三、总结

本文中,我们梳理了有关timing report的内容,介绍内容中,判断违例发生的条件判断是建立时间检查还是保持时间的检查,为重中之重,和第二节的建立时间与保持时间公式一起,作为笔试中经常出现的内容对求职者予以考察,而在下一篇文章中,我们将从时钟信号开始讲起,讨论STA的具体约束内容。

[静态时序分析简明教程(三)]备战秋招,如何看懂一个陌生的timing report相关推荐

  1. [静态时序分析简明教程(一)] 绪论

    静态时序分析简明教程一:绪论 一.写在前面 1.1 快速导航链接· 二.什么是静态时序分析 三.为什么需要时序约束 四.约束的第一步:综合 4.1 什么是综合 4.2 综合与时序约束的关系 4.2.1 ...

  2. 静态时序分析简明教程(七)]端口延迟

    端口延迟 一.写在前面 1.1 快速导航链接· 二.端口延迟 2.1 输入有效 2.2 输出有效 2.3 set_input_delay 2.3.1 -clock clock_name 2.3.2 - ...

  3. 静态时序分析简明教程(四)]时钟常规约束

    STA的时钟常规约束 一.写在前面 1.1 快速导航链接· 二.时钟的特征 三.create_clock 3.1 定义时钟周期 3.2 标识时钟源 3.3 命名时钟 3.4 指定占空比 3.5 同源多 ...

  4. 静态时序分析简明教程(五)]生成时钟的sdc约束方法

    生成时钟的sdc约束方法 一.写在前面 1.1 快速导航链接· 二.生成时钟 2.1 标识时钟源 2.2 时钟命名 2.3 设定生成时钟的特性 2.3.1 -edges 2.3.2 -divide_b ...

  5. 静态时序分析(STA)附秋招面试提问

    什么是STA? 静态时序分析(Static Timing Analysis):是分析.调试并确认一个门级系统设计时序性能的方法.检验门级电路的最大延迟,以保证在指定的频率下,能否满足建立时间的要求:检 ...

  6. 研二非科班研究生如何备战秋招

    持续坚持原创输出,点击蓝字关注我吧 作者:软件质量保障 知乎:https://www.zhihu.com/people/iloverain1024 ​最近知乎收到了一位研二非科班同学的付费咨询,让我帮 ...

  7. 如何备战秋招,找到满意的工作(转B站狂神)

    1.何为秋招? 1.1.应届生 暑假:大学生(实习.工作) 8月.春招! 应届毕业生! 2015年级 2019界 2016年级 2020界 应届毕业生: 大三升大四! 大三暑假找工作找实习! 大四:毕 ...

  8. 备战秋招 |《百面机器学习》算法+leetcode开班报名!

    算法面试刷题班推荐: 以<百面机器学习>为教材 结合leetcode筛选刷题 秋招已经开始了!时间紧迫,也许别人已经得到offer了,你却还在不知所措?(文末重金招聘讲师) 六月份基本都是 ...

  9. Github | 备战秋招,最全面试题集合!

    最近很多大厂已经开始开始了校招提前批,2020届的同学们可以赶紧启动啦-社招的情况也不容乐观,除了之前的一大波裁员新闻,现在更多的是收紧HC,做人才盘点,各个厂的HC不会像以前那么多了.我在Githu ...

最新文章

  1. Machine Learning week 3 quiz: programming assignment-Logistic Regression
  2. gradle 指定springcloud 版本_springcloud小技能:服务注册发现如何隔离
  3. socket网络编程——TCP编程流程及端口号占用问题
  4. 加密选项_视频会议Zoom 5.0版本重大更新,增强加密功能提供更多安全选项
  5. COJ 1081 集训队分组
  6. css过度效果 从无到有,求教,对于CSS3 transition和transform实现的一个特效原理不是太明白?...
  7. excel表中怎么插入visio_Excel工作表中的排序,你真的掌握吗?10张动图带你了解!...
  8. 历日 [宋] 许月卿
  9. 光流(五)--HS光流及稠密光流
  10. VC知识库的5周年精华珍藏版光盘
  11. 软件工程:NFR与NFP
  12. MATLAB与信号处理
  13. 各大邮箱发送数量限制整理
  14. Prometheus(普罗米修斯)监控系统
  15. Liip-imagine-bundle 在 Nignx 无法生成缓存图的问题
  16. 使用YQL解决跨域请求json转jsonp问题
  17. 基于Springboot外卖系统09:员工信息编辑+员工信息保存
  18. JS获取特殊字符前面的字符串
  19. DEAP2.1——数据包络分析(DEA——CCR、BCC)
  20. cfa的pv怎么用计算机算,CFA考试规定使用的计算器,以及它的使用方法

热门文章

  1. 美国各州格言,大家可以看看什么词最多
  2. hdu 1548 A strange lift (BFS)
  3. python中文编辑_python用Tkinter做自己的中文代码编辑器
  4. 【信息隐藏】LSB隐写算法的实现与性能分析
  5. 【网络游戏植入案例】
  6. 区块链创业公司解散后,我去美团送外卖了 | 链人生
  7. error日志的用法
  8. [模板匹配霍夫变换]——模板匹配分析、霍夫变换分析
  9. c++ 泛型 之 TypeTraints
  10. 中文词性标注学习笔记(三)---词性标注