时间如流水,不会再重来——Clock Tree Debugger(二)

2023-10-29 15:31

本文主要是介绍时间如流水,不会再重来——Clock Tree Debugger(二),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


接着上文,继续介绍Clock Tree Debugger~~

Visibility

该菜单主要控制Clock tree viewer上的显示类型,如下图所示:

Cell type控制Clock tree viewer上应该显示的cell单元,有下列子菜单,去掉选项前面的勾就会取消clock tree viewer上对该项目的显示

Pin type控制Clock tree viewer上应该显示的pin类型

    Implicit stop pin: 默认的stop pin

    Implicit ignore pin: 默认的ignore pin

Power Domain:控制应该显示哪个Power domain里的clock cell显示

Logical hierarchy: 控制应该显示哪个module里的clock cell显示

Block hierarchy:控制显示哪个子module里的clock cell显示

Skew group:控制显示哪个skew group的信息

Clock tree: 控制显示哪个clock tree的信息

Signal edge:  控制显示哪些信号边沿的信息

对net来说,显示propagated到该条net的clock信号在setup check时是上升沿还是下降沿。

对cell来说,显示该cell是以下几种情况:

Root: clock root cell

Non-unate: 输出无法由输入单独决定的cell,比如与门

Simple: 输出输入信号变化一致的cell,比如buffer

Invert:输出信号与输入相反的cell,比如inverter

Net type: 控制显示哪种类型的net, 有top, trunk或者leaf

Constraints:控制显示一些don't touch, unbufferable clock nets等

Timing windows:控制显示clock sink的constraint window, 该sink可以在window中delay或者advance,如下图中的绿色波纹线所示:

 

Delays: 控制显示哪种类型的delay,分为以下四种:

Gate delay:显示clock tree上clock cell的delay

Wire delay: 显示clock tree上具体wire的delay, gate delay和wire delay的示意图如下:

Virtual delay:显示trial run模式下的delay, 该模式下,cts只做到virtual delay balance阶段,并不是做实际的implementation, 使用set_ccopt_property balance_mode trial可以运行该模式

Pin insertion delay :显示用户自己指定的pin insertion delay,以点虚线表示

Unit delay:使用unit delay mode,该模式下,clock tree结构图按cell的级数划分排列

ColorBy

该菜单栏可以控制ctd按哪种类型的分类去显示颜色,基本上的类型与Visibility差不多。

默认的我们按不同cell类型去显示,

也可以按照fanout数量去显示:

Skew group显示:

Transition time显示


当然,我们也可以选择改变当前类型的颜色种类:

 

Control Panel (控制面板)

Control Panel在主界面右边,其实就是Visibility和Color By两者的功能结合,在该面板中,可以同时实现开关某种类型以及颜色变换。不再过多介绍了。

Key Panel(按键板)

Key Panel对应着Control Panel,可以理解为Clock Tree Viewer上的一个颜色说明面板,Control Panel上每种类型对应着不同的Key Panel,比如说,当显示类型选择cell type时,Key Panel就会显示每种clock cell的图标解释

当显示类型选择Transition Time时,Key Panel就会显示每种transitiion time对应的颜色

ToolBar(工具栏)

CTD的工具栏很简单,就是一些小工具常见的快捷键,有Zoom,Highlight,Find,Attribute Editor,Ruler等,图标也一样,在Innovus部分都介绍过,这里不再重复了,有什么大家可以翻看下Innovus GUI的介绍

World Viewer(全局视角)

该按键就是和Innovus一样,GUI右下角的小窗口,可以全局显示整个clock tree的情况,不过由于界面太小,基本看不清,所以也没什么作用,可以在设置界面调节World view的窗口大小

Browser(浏览器)

该面板提供了skew group中的基本内容信息,默认放置在CTD的最下端,如下所示:里面包含了Analysis View,Skew Group,Skew,Min Delay,Max Delay,Min Pin,Min Path Level,Max Pin,Max Path Level等信息,这些从字面上就很好理解,不过多解释了。

 

右击browser中右击每行会出现以下相关的操作

Highlight可以高亮Max Delay或者Min Delay的path

Group By 和Ungroup可以让我们选择按analysis view或者skew group排列显示

Show Path Analyzer可以打开Path Analyzer,显示每条clock path的具体信息



往期回顾

静态时序分析STA合集一

静态时序分析STA合集二

时序基本概念介绍<sdc合集>

数字后端基本概念合集(一)

数字后端基本概念合集(二)

数字后端基本概念合集(三)

Low Power概念介绍合集

数字后端dbGet使用方法合集

号外,数字后端交流群招人啦

IC圈的世界杯 | 论芯片设计的胜利十一人

知否?知否?Block PD应该提交哪些数据?

Timing ECO手修攻略

数字后端面试100问(2019全新版)

数字后端面试100问(校招版)

简历请戳邮箱:taozhang3260@163.com

觉得有用的话,给我点个好看吧

这篇关于时间如流水,不会再重来——Clock Tree Debugger(二)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/301607

相关文章

Java获取当前时间String类型和Date类型方式

《Java获取当前时间String类型和Date类型方式》:本文主要介绍Java获取当前时间String类型和Date类型方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录Java获取当前时间String和Date类型String类型和Date类型输出结果总结Java获取

Python实现批量提取BLF文件时间戳

《Python实现批量提取BLF文件时间戳》BLF(BinaryLoggingFormat)作为Vector公司推出的CAN总线数据记录格式,被广泛用于存储车辆通信数据,本文将使用Python轻松提取... 目录一、为什么需要批量处理 BLF 文件二、核心代码解析:从文件遍历到数据导出1. 环境准备与依赖库

go中的时间处理过程

《go中的时间处理过程》:本文主要介绍go中的时间处理过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 获取当前时间2 获取当前时间戳3 获取当前时间的字符串格式4 相互转化4.1 时间戳转时间字符串 (int64 > string)4.2 时间字符串转时间

Golang如何对cron进行二次封装实现指定时间执行定时任务

《Golang如何对cron进行二次封装实现指定时间执行定时任务》:本文主要介绍Golang如何对cron进行二次封装实现指定时间执行定时任务问题,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录背景cron库下载代码示例【1】结构体定义【2】定时任务开启【3】使用示例【4】控制台输出总结背景

基于Python实现一个Windows Tree命令工具

《基于Python实现一个WindowsTree命令工具》今天想要在Windows平台的CMD命令终端窗口中使用像Linux下的tree命令,打印一下目录结构层级树,然而还真有tree命令,但是发现... 目录引言实现代码使用说明可用选项示例用法功能特点添加到环境变量方法一:创建批处理文件并添加到PATH1

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

利用Python实现时间序列动量策略

《利用Python实现时间序列动量策略》时间序列动量策略作为量化交易领域中最为持久且被深入研究的策略类型之一,其核心理念相对简明:对于显示上升趋势的资产建立多头头寸,对于呈现下降趋势的资产建立空头头寸... 目录引言传统策略面临的风险管理挑战波动率调整机制:实现风险标准化策略实施的技术细节波动率调整的战略价

Python日期和时间完全指南与实战

《Python日期和时间完全指南与实战》在软件开发领域,‌日期时间处理‌是贯穿系统设计全生命周期的重要基础能力,本文将深入解析Python日期时间的‌七大核心模块‌,通过‌企业级代码案例‌揭示最佳实践... 目录一、背景与核心价值二、核心模块详解与实战2.1 datetime模块四剑客2.2 时区处理黄金法

macOS Sequoia 15.5 发布: 改进邮件和屏幕使用时间功能

《macOSSequoia15.5发布:改进邮件和屏幕使用时间功能》经过常规Beta测试后,新的macOSSequoia15.5现已公开发布,但重要的新功能将被保留到WWDC和... MACOS Sequoia 15.5 正式发布!本次更新为 Mac 用户带来了一系列功能强化、错误修复和安全性提升,进一步增