如何debug 一颗cell 或一段net 的delay,  常用的办法是用report_delay_calculation 报这颗cell 或这段net, 会得到形式如下的report, 从该report 中可以得到:

  • 表头需要特别关注的是command, 确定report 的对象及加的option;

  • From/To pin: cell 的input pin 和 output pin;

  • Cell: 该cell 对应的lib cell;

  • Library: 该cell 来自哪个lib, 需要特别关注一下,确定用的lib 正确,避免低级错误;

  • Arc sense: Arc sense 分三种positive unate, negetive unate, non unate; 输出信号同输入信号跳变方向相同的称为positive unate 如buffer 的timing arc; 输出信号同输入信号跳变方向相反的称为negetive unate 如inverter 的timing arc;  输出信号的跳变方向由另一个输入信号的值决定称为non unate 如xor 的timing arc;

  • Delay type: 标示是cell delay 还是net delay;

  • Base or SI: 因为加了option -si, 所以当前是SI delay;

  • RC summary for net: 从这一块可以得到电容电阻个数、net 电容值、总上升电容值、总下降电容值、总电阻值。这部分信息在debug 不同工具间的correlation 时非常有用。

  • SI information: 从这一块可以得到所有的attacker 信息,及每个attcker 的status, direction, slew, coupling cap, fanout, voltage, timing window, clock. 另外还可以得到attacker 的model type 要特别注意用的是什么model, 是NLDM, CCS, ECSM, 示例中是ECSM, 这一点同样在debug 不同工具间的correlation 时至关重要。

  • delay information: 从这一块可以分别得到rise/fall 的输入transition, incr cell delay (由cross talk 造成的delay), cell delay, timing derate, derated cell delay, output transition.

check_timing

用于check SDC 的quality, 会check 以下列出的内容,可以概括为:少了什么、多了什么、冲突了什么、错了什么;SDC 可以看作是STA 的『法规』,所以对制定者要高要求,STA 工具并不能check 出SDC 中所有的问题,有一些问题必须由设计者负责,如multi-cycle 设多少,写SDC 时是否手一抖把不该设false path 的地方设了false path, 这些人为大坑是STA 工具没办法check 到的。复杂SDC 的quality 通常需要用CDC 工具去做check, 除了SDC 本身还需要check 设计中是否放了正确的同步电路等。

需要对check_timing 报出的warning 做细致check, 把需要修的都修掉,可以忽略的都要有明确的原因。

report_annotated_parasitics

用于check RC的反标情况,要保证所有的real net 都可以被正确反标上,如果有未反标的net, 需要去找抽RC 的坑友确认。首先确认数据是否匹配,再确认是否做了该做的change_name 动作,再确认除了real net 之外的其他warning, 为什么有assign 为什么有dangling net, 最好让坑友一齐处理掉,看着清爽。

report_analysis_coverge

check STA coverge: check 设计中有多少需要check 的东西,在当前约束下,总共有多少被check 到了,多少没有被check 到,check 到的有哪些满足了需求有哪些没有满足。这个report 很重要,如果是初次分析最好把每一项的详细信息报出来,列一张表,对没有被check 到的部分进行分类,并对每一类归因。

Tempus 中分成以下几类check , 不同工具大同小异。

report_delay_calculation/check_timing/report_annotated_parasitics/report_analysis_coverge的更多相关文章

  1. Prime Time使用

    PrimeTime一般用作sign off的timing check,也可用在DC之后的netlist的timing analysis 一般的使用流程: 1) Read design data,--- ...

  2. Timing path

    Timing path:从register clock/input port开始,经过一些combinational logic,终止在register data/output port. PT以pa ...

  3. Tcl与Design Compiler (六)——基本的时序路径约束

    本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 时序约束可以很复杂,这 ...

  4. Tcl与Design Compiler (八)——DC的逻辑综合与优化

    本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 对进行时序路径.工作环 ...

  5. Tcl与Design Compiler (十二)——综合后处理

    本文如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 概述 前面也讲了一些综合后的需要进行的一些工作,这 ...

  6. Tcl与Design Compiler (十三)——Design Compliler中常用到的命令(示例)总结

    本文如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 本文将描述在Design Compliler中常用 ...

  7. Tcl与Design Compiler (五)——综合库(时序库)和DC的设计对象

    本文如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 前面一直说到综合库/工艺库这些东西,现在就来讲讲讲 ...

  8. Vivado Design Suite用户指南之约束的使用第二部分(约束方法论)

    Constraints Methodology(约束方法论) 关于约束方法论 设计约束定义了编译流程必须满足的要求,以使设计在板上起作用. 并非所有步骤都使用所有约束在编译流程中. 例如,物理约束仅在 ...

  9. standard cell timing model

    standard cell timing model 主要包括两方面的信息: Cell Delay  calculation Output Transition  calculation 首先,cel ...

随机推荐

  1. RN开发-Android原生交互

    在使用RN开发过程中,难免有些原生功能需要要自己来实现,下面总结一下在使用RN与原生开发交互. 1.在原生代码中定义实现类 1.1  首先继承 ReactContextBaseJaveModule抽象 ...

  2. Git学习笔记-上传一个新的项目到GitHub上

    前提: 已有Github账号,已在Github上建立了仓库,已在Github上配置了SSH,已上传过一些项目到Github上 目标: 目前有一个新的项目,需要上传到github上 我的做法记录: 1. ...

  3. blob - 二进制文件流下载

    /** * 返回值文件类型为 blob 二进制流文件 * responseType: 'blob' * params 接口所需参数 * 命名文件名:依据时间戳命名文件名 * (导出时需要延迟,否则导出 ...

  4. SIFT解析(一)高斯模糊

    "模糊"的算法有很多种,其中有一种叫做"高斯模糊"(Gaussian Blur).它将正态分布(又名"高斯分布")用于图像处理. 所谓&qu ...

  5. os和sys模块_python

    一.os模块 1.os模块的功能 提供对系统调用的借口,常用于系统文件目录打交道. 2.常用的方法 二.sys模块 1.模块功能 与python解释器交互 2.常用方法 print(sys.path) ...

  6. wcf编程资料

    如下为WCF编辑资料 链接:https://pan.baidu.com/s/1kZnc6eNOfEggHSfJNXj8Ag 提取码:gj7s 复制这段内容后打开百度网盘手机App,操作更方便哦 第01 ...

  7. 输入一个整形数组,数组里有正数也有负数。 数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。 求所有子数组的和的最大值。要求时间复杂度为O(n)

    我没有实现时间复杂度为O(n)的算法. 思路:从第一数开始,onelist[0]:onelist[0]+onelist[1]:这样依次推算出每个子数组的sum值.和max进行比较.最后得到max值. ...

  8. war文件—Web项目部署

    war文件是什么? Web存档(war)文件包含Web应用程序的所有内容.它减少了传输文件所需要的时间.  war文件的优点 节省时间:war文件将所有文件合并为一个单位. 所以在将文件从客户端传输到 ...

  9. SSM项目中的.tld文件是什么,有什么作用?怎么自定义tld文件

    原文链接:https://www.cnblogs.com/guaishoubiubiu/p/8721277.html TLD术语解释:标签库描述文件,如要在JSP页面中使用自定义JSP标签,必须首先定 ...

  10. PHP multipart/form-data 远程DOS漏洞

    import sys import urllib,urllib2 import datetime from optparse import OptionParser def http_proxy(pr ...