sink
时钟域内寄存器的clk端可以称为汇点 (sink )对应时钟源点 source 原点到汇点的延迟 用set_clock_latency
时钟原点到不同寄存器clock端的时间差称为 skew;
在大规模集成电路中,大部分的时序原件的数据传输都是由同步时钟控制的,时钟频率决定了数据处理的速度和传输的速度;
而决定时钟频率的主要因素主要有两个:一是组合逻辑电路的最长电路延迟,二是同步原件之间的clock_skew;
时钟树综合的主要目的就是减小时钟偏斜;以一个时钟为例; 一个时钟源要驱动很多同步元件,时钟源的fanout十分大,load 很大,这就需要一个时钟树结构,通过一级一级的buffer 去驱动下面的叶子节点;
时钟树的布线规则和一般的布局布线规则有所不同; 叫Non_default_rule;例如双倍间距,双倍宽度,屏蔽等;这些规则可以保证时钟线对串扰不敏感,并增强其抗电迁移的能力;
先定义 non_default_rule
define_routing_rule my_routing_rule
-widths {METAL3 0.4 METAL4 0.6 METAL5 0.6}
-spaceing {METAL3 0.5 METAL4 0.65 METAL5 0.65}
在定义 CTS 用 non_default_rule:
set_clock_tree_options -root clk -routing_rule my_route_rule -layout_list “METAL3 METAL4 METAL5”