如何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. 01:认识QT

    Qt: Qt是一个1991年由Qt Company开发的跨平台C++图形用户界面应用程序开发框架.它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器.Qt是面向对象的框架,使用特 ...

  2. 清理 /dev/vda1 系统磁盘

    df-h检查一台服务器磁盘使用空间,发现磁盘已经使用了100% 思路是: 1.cd /usr 2.du -sh * 看哪个目录占用空间大 3.重复前两步,根据实际情况删除或者移走 4.日志的话可以运行 ...

  3. 回顾 Monty Hall (三门问题)

    一.问题描述 Monty Hall Problem 源于美国的一档电视节目<Let's Make a Deal>,其中Monty Hall 是这个节目的主持人. 节目中有三扇门1.2.3, ...

  4. TODO:如何模拟cpu打满,磁盘打满,网卡打满

    背景: 测试活动中,需要构造cpu打满.磁盘打满.网卡打满的场景 场景1:cpu打满 环境信息: 虚拟机,物理核数16个,每个物理核的虚拟核数1个,虚拟核数16个: [root@vm10-0-0-8 ...

  5. zabbix4.2配置监控MySQL

    1.在被监控主机安装好MySQL 相关步骤省略. 2.创建监控所需要的MySQL账户(MySQL服务器端) MariaDB [(none)]>grant usage on *.* to zabb ...

  6. [一本通学习笔记] AC自动机

    AC自动机可以看作是在Trie树上建立了fail指针,在这里可以看作fail链.如果u的fail链指向v,那么v的对应串一定是u对应串在所给定字符串集合的后缀集合中的最长的后缀. 我们考虑一下如何实现 ...

  7. 创建目录命令 - mkdir

    (1) 命令名称:mkdir (2) 英文原意:make directories (3) 命令所在路径:/bin/mkdir (4) 执行权限:所有用户 (5) 功能描述:创建新目录 (6) 语法: ...

  8. 解决 genymotion 安装apk报错 app contains ARM native code and your Genymotion device cannot run ARM instructions

    1.某些APP安装在模拟器时提示“ this probably means that the app contains ARM native code and your Genymotion devi ...

  9. 题解【洛谷P4588】[TJOI2018]数学计算

    题目描述 小豆现在有一个数\(x\),初始值为\(1\).小豆有\(Q\)次操作,操作有两种类型: \(1\;m\):\(x=x\times m\)输出\(x\%mod\); \(2\;pos\):\ ...

  10. linux软件下载

    可以到linux官网下载:http://vault.centos.org/6.10/os/Source/SPackages/