本文转自:自己的微信公众号《集成电路设计及EDA教程》

​以后打算交替着推送多种EDA工具的教程而不只是单纯针对某个工具,依次来满足不同粉丝的需求。

这里分享一篇多年之前写的推文,虽然时间比较久了,但是非常实用,非常受欢迎。

 

《ICC中对Skew进行Debug的好工具--Interactive CTS Window》

CTS无疑是数字后端中一个除了Floorplan之外最复杂的一个步骤,因为这一步可能会需要很多人为的分析以及操作。

用一个例子(该例子有一个主时钟、一个它的分频时钟,此外还做了DFT,插入了scan chain、boundary scan)来讲解如果CTS之后发现自己是设计的Skew很大该如何去Debug。后边会用一个长文来讲解做时钟树过程中遇到的问题以及尝试解决该问题的步骤,其中Debug主要用的就是这个工具。

>report_clock_tree -summary (报告的是Global Skew)

>report_clock_timing -type skew (报告的是Local Skew)

从上图发现,Skew很大,那么该如何进行Debug呢?可以使用菜单栏中的Clock> New Interactive CTS Window。

ICC会显示出设计中的时钟树名称,可以右键点击任意一个时钟树,选择Clock Arrival Histogram来生成时钟树信息柱状图。

根据该图能非常方便的查找Skew很大的原因。如果在时钟树中没有找到时钟树,可能改时钟树并未出现在当前的scenario里面,可以用current_scenario来切换当前scenario,并用report_clock_tree -clock_trees“clock_name”来报告相关时钟信息,然后就可以在New Interactive CTSWindow窗口中看到了。如果不执行report_clock_tree -clock_trees “clock_name”命令,还是无法看到的。

可以非常明显的发现,所有CTS存在问题的地方都是发生在control_observer_register(DFT插入的test point用于提高故障覆盖率)的CK端上,且他们还都是直接接到tclk_pad上了,没有经过IO tclk_block。说明在DC综合的时候control_observer_register的CK端没有hookup到正确的tclk_block/C上面。

修改之后上面的问题就不存在了。

更多资料欢迎移步微信公众号《数字集成电路设计及EDA教程》

网易云课堂视频课程

链接:https://study.163.com/course/introduction/1005909004.htm

Calibredrv教程-提高流程自动化

##  为了方便大家交流讨论  ##

##  建了一个QQ群  ##

## 集成电路设计及EDA教程  ##

## 加群请备注:EDA  ##

##  群二维码如下  ##

# 本公众号有个红包和资料福利微信群  #

#  集成电路设计及EDA教程福利群  #

#  为了避免乱七八糟的人加进来  #

#  可以先加我微信,我拉你进群  #

#  加我微信 请备注下面问题的答案  #

#       ASIC的全称       #

ICC中对Skew进行Debug的好工具--Interactive CTS Window的更多相关文章

  1. C#中的两种debug方法

    这篇文章主要介绍了C#中的两种debug方法介绍,本文讲解了代码用 #if DEBUG 包裹.利用宏定义两种方法,需要的朋友可以参考下   第一种:需要把调试方法改成debug代码用 #if DEBU ...

  2. log4j中Spring控制台输出Debug级信息过多解决方法

    log4j中Spring控制台输出Debug级信息过多解决方法 >>>>>>>>>>>>>>>>> ...

  3. 音频软件开发中的debug方法和工具

    本文系作者原创.如转载,请注明出处. 谢谢! 音频软件开发同其他软件开发一样,都需要去调试.音频软件调试同其他软件调试方法有相同的地方,也有不同的地方,同时调试时还需要借助一些专门的工具,有了这些方法 ...

  4. 在pycharm_2018.2版本中开启Flask的debug的方法 (不要用命令:python **.py启动)

    断点后,先ctl+c关闭控制台程序,再点击debuger调试 问题描述:在pycharm_2018.2版本中,我明确开启了debug,代码如下所示: from flask import Flask a ...

  5. IntelliJ IDEA 中SpringBoot对Run/Debug Configurations配置 SpringBoot热部署

    运行一个SpringBoot多模块应用 使用SpringBoot配置启动: Use classpath of module选中要运行的模块 VM options:内部配置参数 -Dserver.por ...

  6. java 中的Debug eclipse 开发工具使用

    Eclipse的debug模式:代码调试 * Eclipse或MyEclipse就是java的开发工具 * Eclipse开源的.免费的Java开发工具 * MyEclipse基于Eclipse开发出 ...

  7. Java_脚本引擎_02_在Idea中进行Nashorn的Debug

    一.前言 本文承接上一节:Java_脚本引擎_01_用法入门 这一节我们来看下怎么在idea中进行Nashorn的Debug ,又或者说怎么在Idea中进行js的Debug 注:idea本身就支持js ...

  8. C#中的release和debug模式

    以下内容来源:https://www.cnblogs.com/rgjycs/p/9254332.html 在程序调试时的debug和release 网上有如下的描述:Debug 通常称为调试版本,它包 ...

  9. 安全运维中基线检查的自动化之ansible工具巧用

    i春秋作家:yanzm 原文来自:安全运维中基线检查的自动化之ansible工具巧用 前几周斗哥分享了基线检查获取数据的脚本,但是在面对上百台的服务器,每台服务器上都跑一遍脚本那工作量可想而知,而且都 ...

随机推荐

  1. 电脑端TIM登录时记住密码

    为什么每次登录TIM时点了记住密码,下次再登录时还是记不住呢? 不是扫码就是还得输出密码,为这事愁了好多次, 最近终于发现如何记住密码了... 进入登录界面以后,点击左下角这个小图标>> ...

  2. vue项目准备工作

    1.写文档: 产品说明.工作日志.接口说明文档.数据库说明文档.项目架构说明文档等···· 例如:后台管理系统:商品的管理.店铺的管理.店铺类别管理.管理员的管理.用户管理等·····    前端渲染 ...

  3. Oracle数据库连接工具的使用(三)

    一.PL/SQL Developer介绍 1.简介 PL/SQL Developer是一个集成开发环境,专门开发面向Oracle数据库的应用.PL/SQL也是一种程序语言,叫做过程化SQL语言(Pro ...

  4. 51nod 1086背包问题V2 (完全背包模板题)

    1086 背包问题 V2 1 秒 131,072 KB 20 分 3 级题 题目描述 有N种物品,每种物品的数量为C1,C2......Cn.从中任选若干件放在容量为W的背包里,每种物品的体积为W1, ...

  5. Markdown 复杂公式&常用符号

    公式格式 行内公式 行内公式(不会换行)使用 $ 作为起止符,例如:$a + b = c$, 效果为:\(a + b = c\) 块级公式 块级公式(单独一行)使用 $$ 作为起止符,例如:$$a + ...

  6. EFCore Database-first深入研究

    EFCore Database-first深入研究 使用Scaffold-DbContext从数据库生成实体 说明文档: 关于 Scaffold-DbContext 微软有官方说明文档 https:/ ...

  7. 最强常用开发库总结 - JSON库详解

    最强常用开发库总结 - JSON库详解 JSON应用非常广泛,对于Java常用的JSON库要完全掌握.@pdai JSON简介 JSON是什么 JSON 指的是 JavaScript 对象表示法(Ja ...

  8. Python中with标签的使用详解

    1.在python DTL模板中,想要定义变量,可以通过"with"语句来实现. 2."with"语句有两种使用方式: 第一种是"with xx=xx ...

  9. # 曹工说Spring Boot源码(10)-- Spring解析xml文件,到底从中得到了什么(context:annotation-config 解析)

    写在前面的话 相关背景及资源: 曹工说Spring Boot源码(1)-- Bean Definition到底是什么,附spring思维导图分享 曹工说Spring Boot源码(2)-- Bean ...

  10. sin 与 cos 的用法

    这两个函数使用过程中要,如 sin(x) , x 在这里表示的是弧度,至于弧度要如何计算呢 ? pi / 180 = 弧度 / 角度 内部的参数可以整数或者浮点数,以前面做过的一道题而言,大量的调用函 ...