generated clock
内部时钟的定义:
create_generated_clock,通过-source,-edges,-divide_by,-multiply_by来执行clock沿。
create_generated_clock -name DIVIDE -source [get_ports SYSCLK] -divide_by 2 [get_pins FF1/Q]
-source来指定参考时钟,以它的rising edge来进行后续的edge操作。
最后的get_pins,指定generated clock的定义点,之后fanout的clock,称为该clock。
-edges操作,指定{上升沿,下降沿,上升沿} -edges{1 5 7}
generated clock的定义也会create一个新的clock domain,供PT分析。
generated clock可以进行shift移位,这个时间不作为clock latency来进行计算。
create_generated_clock -edges {3 5 9} -edge_shift {2.2 2.2 2.2} -name DIV3 -source [get_ports SYSCLK] [get_pins U4/QN]
-name选项,指定generated clock的名字。
-edge_shift选项,指定相对于edge的移动时间。
在一个source的port上有多个clock时,可以通过-master_clock来选择某一个作为source。
这时,同时使用-source和-master_clock
generated clock的选择,使用-filter选项或者搜索名字规则。
set_false_path -from [get_clocks CLK_DIV*] -to [get_clocks CLKB]
set_false_path -from [get_clocks CLK* -filter "is_generated==TRUE"] -to [get_clocks CLKB]
去掉定义的generated clock
remove_generated_clock
generated clock的source latency会继承master clock的source latency,所以generated clock的source latency一般会比master的大。
PT选择,generated clock内的worst-case path来计算generated clock的source latency。
source latency表示源时钟自带的延时,network latency表示CTS之后clock tree insertion delay,所以DC阶段不需要设置network latency,
除非不同的clock有不同的clock tree insertion delay,又不想平衡这些clock,
Pulse clock:算是一种特殊的clock,通过PG模块(Pulse generated)产生,使用set_clock_sense来进行定义,
set_clock_sense -pulse rise_triggered_high_pulse get+pins and2/z
对于pulse的建模有四种方式:rise_tiggered_high_pulse
rise_tiggered_low_pulse
fall_tiggered_low_pulse
fall_tiggered_high_pulse
通过set_pulse_clock_min_width和set_pulse_clock_max_width来对clock pulse的width进行约束。
generated clock的更多相关文章
- CTS 如何处理 gating clock 和 generated clock
1. CTS 时会将 ICG cell 作为 implicit nostop pin 处理,直接穿透,以 ICG cell 后面的 sink 点作为真正的 sink 来长 tree 2. CTS 时会 ...
- clock gating and PLL
一个gating的clock是指:clock network除了包含inverter和buffer外,还有其他logic. PrimeTime会自动的对gating input进行setup和hold ...
- clock divider
一个clock的产生: 1) Clock source的选择: cgm_mux5(.clk_out, .clk_in0, .clk_in1, .clk_in2, .clk_in3, .clk_in4, ...
- clock时钟
①时钟的偏移(skew):时钟分支信号在到达寄存器的时钟端口过程中,都存在有线网等延时,由于延时,到达寄存器时钟端口的时钟信号存在有相位差,也就是不能保证每一个沿都对齐,这种差异称为时钟偏移(cloc ...
- Timequest GUI
Tasks界面 使用Tasks界面可以访问常用命令,例如生成网表建立报告等. 两个常用命令位于Tasks界面中:打开工程和编写SDC文件.其他命令在下面的文件夹中: Netlist Setup Rep ...
- STA分析(七) sdc
STA分析前的环境设置,包括:setup clocks,specifying IO characteristics 1)定义一个master clock:create_clock -name .. - ...
- 【黑金原创教程】【TimeQuest】【第七章】供源时钟与其他
声明:本文为黑金动力社区(http://www.heijin.org)原创教程,如需转载请注明出处,谢谢! 黑金动力社区2013年原创教程连载计划: http://www.cnblogs.com/al ...
- Xilinx Spartan6常用资源Verilog例化
// DSP48A1 : In order to incorporate this function into the design, // Verilog : the following insta ...
- vivado下创建基本时序周期约束
创建基本时钟周期约束.(验证我们的设计能否在期望的频率上运行) (学习记录,晚一点会做实验传上来的.) 时钟基本概念:https://blog.csdn.net/wordwarwordwar/arti ...
随机推荐
- POI操作Excel常用方法总结 (转)
以下的链接为原创地址: http://blog.csdn.net/huazhangena/article/details/7587731 http://blog.csdn.net/huazhangen ...
- TFS任务更新
由于不熟悉TFS任务更新的操作,花了四五个小时一个个的新建任务.下图是部分更新的任务截图: 每个任务的估计时间为3~5小时,每位成员的任务总时长均为19~20小时. 项目完成需要的总时间为135小时.
- SSH框架中新建立实体类后的配置
strut 层 public class Sellauthentication extends ActionSupport { private SellauthenticationService ...
- css文本溢出省略号
.ellip{ display: block; width:200px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; ...
- matplotlib 安装与使用
1.在ubuntu下输入 sudo apt-get install python-matplotlib 安装matplotlib 2.简单代码使用
- MySQL执行存储过程权限
http://url.cn/f2bj78 MySQL grant不能在on后面写多个对象
- BizTalk开发系列(三十四) Xpath
XPath 是在 XML 文档中查找信息的语言,在BizTalk的开发中应用非常广泛,当然你可以不必先学Xpath再去学BizTalk.但是如果对Xpath有一定了解的 话,在很多应用下会使你的开发更 ...
- 四则运算之C++实现篇
对四则运算的一些要求如下: 1.题目避免重复:2.可定制(数量/打印方式):3.可以控制下列参数: 是否有乘除法.数值范围.加减有无负数.除法有无余数.否支持分数 (真分数, 假分数, …): 一 ...
- poj2142-The Balance(扩展欧几里德算法)
一,题意: 有两个类型的砝码,质量分别为a,b;现在要求称出质量为d的物品, 要用多少a砝码(x)和多少b砝码(y),使得(x+y)最小.(注意:砝码位置有左右之分). 二,思路: 1,砝码有左右位置 ...
- P1026 统计单词个数
题意 给出一段字符串和一个字典,把字符串划分为n个连续的子串,求一种最优的划分方式使字符串所含单词数最大.(详见NOIp2001) 思路 这个题是一个很典型的线性dp,难点主要在预处理上. 理解题意后 ...