在综合阶段,或者是preCTS之前,在sdc约束中往往会存在set_clock_transition。也常常会听到所谓的ideal clock,本章节比较详细的讨论相关transition相关内容。

1. Input transition

关于input transition取自
由于前面章节介绍可以知道,对于一个cell的delay计算,取决于这个cell的input trans和output load,那么对于直连端口处的cell,比如input 端口处的cell,它的input端是个port,那它的input trans如何定义呢?对于output口处的cell,它的load是个port,那这个port的外部负载是多大呢?应该怎么表示呢?这就涉及到本小节内容:

对于input:
可以通过set_drive/set_drive_cell/set_input_transition的方式对端口处的input slew进行设置
● set_drive : 表示端口处的驱动能力,默认没有设置的时候,认为端口处的驱动能力无限强,slew为0。
set_drive 1 [all_inputs] 表示所有的输入端口电阻为1,当电阻为0时候表示驱动能力无限强
● set_drive_cell : 用具体的cell来代替port口的外部逻辑驱动。具体的驱动能力由该cell的真实的lib值决定。
set_driving_cell -lib_cell INV3 -library slow [get_ports INPB]
● set_input_trans : 直接用trans值来表示驱动能力,在芯片设计中,也常常用这种方法。
set_input_transition 0.85 [get_ports PAD1]
————————————————
因此可以看到,input transition主要用于端口的输入trans,而这个input trans会影响到后面一级cell的delay值,在STA阶段,是可以看到的。
如下图所示,假如我们有如下设定,那么图中第一级的三个buffer的输入均为0.85

create_clock  -name CLK1 –period 10 [get_ports PAD1]
set_input_transition 0.85 [get_ports PAD1]

2. Clock transition

依然参考上面所示图形状,如果我们有如下设定

set_clock_transition –rise –max 1.5 [get_clocks CLK1]
set_clock_transition –rise –min 1.5 [get_clocks CLK1]
set_clock_transition –fall –max 1.5 [get_clocks CLK1]
set_clock_transition –fall –max 1.5 [get_clocks CLK1]

可以看到对CLK1可以分别设置4中类型的transition。那么这个transitioin就会在整个clock network上面传递,上图中不止stage-1中的buffer的input trans是1.5,就连后面reg的CK的input transition也是1.5。
为什么要设置这个clock transition,主要是为了CTS前的timing check。因为在CTS之前,所有的clock 是ideal的,所以相关的clock tree的trans其实都是假的。直接用clock trans显然更加方便一些,因为在CTS之前,其实是不用clock propagate的,这个时候检查会很快,因为所有的clock tree都设定好了transition。
而在CTS之后,每一个cell其实都有了真实的RC值,这个时候需要通过clock propagate的方式,对每一级的transition进行传递和计算。这个时候set_clock_transition会无效。相关命令如下所示。它会导致整个CLK1的network都按照propagated的方式进行delay和trans的计算。
set_propagated_clock [get_clcoks CLK1]

3. Max transition

关于max_transition,从字面意思很容易理解,其实就是最大transition,也就是我们对于design中所有的pin设定的一个最大的值,如果超过了这个值,那么可能得到的delay就不准确了。一般情况下,lib里都会有一个default的max_transition,描述默认的最大trans值。而针对每一个pin也会有专门的max trans值的描述。Max_transition的设定,对于lib来说,主要是因为我们的二维查找表的trans有一个最大最小值,如果超过了这个范围,通过外插法去获取delay值将会不准确。
default_max_transition : 1.33333

Pin (I1){
Direction : “input”;
Releated_group_pin : VCCK;
Releated_power_pin :VDDK
Max_transition : 1.3333;

}
Pin (CK){
Clock : “true” ;
Direction : “input”;
Releated_group_pin : VCCK;
Releated_power_pin :VDDK
Max_transition : 0.6222;

}
在STA中如果没有特殊的max_transition设定,那么会自动拿lib中的trans进行check,而如果有特殊的需求,可以专门进行设定:

set_max_transition 1.2 [current_design]
set_max_transition 0.5 [all_clocks ] –clock_path

Constraints --- transition(clock transition、input transition、max transition)相关推荐

  1. 【04】HTML5+CSS3:01-HTML5新增标签、多媒体标签、input标签、新增表单属性、CSS3属性选择器、伪元素选择器、2D转换

    文章目录 HTML5 第一天 一.什么是 `HTML5` 二.`HTML5 ` 新增标签 三.多媒体音频标签 四.多媒体视频标签 五.新增 input 标签 六.新增表单属性 七.`CSS3 ` 属性 ...

  2. 初学python-字符串中引号的使用、input简介、强制类型转换、加减乘除简写、条件判断...

    一.字符串中单引号和双引号的使用: 1.字符串以英文单引号' '引用.eg:'Hello World' 2.若字符串中含有单引号,则以英文双引号" "引用.eg:"I'm ...

  3. 静态时序分析—时钟偏斜(Clock Skew:Global Skew与Local Skew)

    global skew指同时钟clock path最长与最短的差值,local skew指的是同时钟有timing check的两个寄存器clock path长度的差值,从定义上看,二者的关系似乎是g ...

  4. Python基础知识(input函数的使用、input函数的高级使用)

    input输入函数 #input使用age=input('请输入年龄') #定义一个变量名age,= 赋值运算符,input输入字符串 print(type(age)) #type类型 输出age的类 ...

  5. Android系统启动流程 -- bootloader、linux kernel、android

    转载:http://blog.csdn.NET/arnoldlu/article/details/8264721 目录: 第一部分:Bootloader启动 一.Bootloader的定义和种类 二. ...

  6. Web-big、html、css、JavaScript、vue、webpack、git、微信小程序、uni-app、性能优化、兼容性、网络请求、web安全、其他

    文章目录 01.HTML基础 1.行内元素有哪些?行内块元素有哪些?块级元素有哪些? 空(void)元素有哪些? 2.页面导入样式时,使用link和@import有什么区别? 3.title与h1的区 ...

  7. css笔记一-CSS简介、基础选择器、字体和文本样式

    一 一.CSS简介 1.1.什么是CSS? CSS(Cascading style sheets):层叠样式表 CSS作用:给页面中的HTML标签设置样式 1.2.CSS语法规则 写在哪里? css写 ...

  8. 十三、CSS 3新特性详解(一)——属性、结构伪类、伪元素选择器,nth-child与nth-of-type区别,2D rotate,calc函数、滤镜filter、过渡transition

    七.CSS3 属性选择器(上) 什么是 CSS3 在 CSS2 的基础上拓展.新增的样式 CSS3 发展现状 移动端支持优于 PC 端 CSS3 目前还草案,在不断改进中 CSS3 相对 H5,应用非 ...

  9. CSS系列之过渡 transition(CSS3)

    文章の目录 1.transition 1.1.概述 1.2.值的组成 2.transition-property 2.1.属性值 3.transition-duration 3.1.属性值 4.tra ...

  10. css 实现动画的三种方式: transition 过渡、 transform 变形、 animation 关键帧动画

    1.transition 过渡动画: 1. 语法:1. transition: 属性是个复合属性 .2. transition: property duration timing-function d ...

最新文章

  1. 使用python愉快地做高数线代题目~
  2. 什么是“单播”“组播”和“多播”
  3. “新一代人工智能”研究的三大重点方向
  4. 开发完整J2EE解决方案的八个步骤
  5. 硬核!一套基于SpringBoot + Vue 的开源物联网智能家居系统!
  6. linux下面获取当前bing-国内版的壁纸
  7. c 语言str.size,C/C++ strlen(str)和str.length()和str.size()的区别
  8. 【原创】RMQ - ST算法详解
  9. centos 安装java_自己动手基于centos7安装docker及如何发布tomcat镜像
  10. 忽略这一点,人工智能变人工智障的!
  11. 竞价实例-让ESS省上加省
  12. java批处理框架 pdf_史上最轻松入门之Spring Batch - 轻量级批处理框架实践
  13. GLSL内置数学函数部分解析
  14. 事务Transaction的理解(一)
  15. 2021-06-05 高效的wms仓储管理系统是关键
  16. 昆明理工大学计算机考研分数线,昆明理工大学2015考研分数线已公布
  17. 看完了 2021 CSS 年度报告,我学到了啥?
  18. cql oracle,Cassandra CQL中的Where和Order By子句
  19. 101. Symmetric Tree (C语言)
  20. 福建力得温控器_福建力得干变温控器LD-B10-10D、LD-B10-10F、LD-B10-10E系列高精度变压器温度控制器...

热门文章

  1. 何新生的英语史(八)—看好莱坞学英语,就是这么简单 1
  2. 基于EPON+EOC技术构建广电综合业务宽带接入网
  3. Katana:1 PGP Workthrought
  4. java pow_Java pow()方法
  5. 微信公众平台开发技术文档
  6. 离散数学知识点总结(3):等值演算,16个命题定律 / 基础等价式,重言式的替换规则,证明有效性和可满足性的方法
  7. 冯言冯语说DSP(二)序列的z变换
  8. IOS项目接入微信SDK
  9. 问题 F: 求一个3*3矩阵对角线元素之和
  10. 如何查看计算机关机事件,深度技术win7系统如何查看电脑的开关机时间【图文】...