在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
楼主: zzvbk

[讨论] 请教高速时钟,PR时如何得到漂亮的clock tree!

[复制链接]
 楼主| 发表于 2013-4-24 09:56:48 | 显示全部楼层
回复 9# sjtusonic

为什么我设置的rule没有起作用,clock net用的依然是default 值,下面是clock route之前的设置
define_routing_rule clk_rule \
    -default_reference_rule  -taper_level 0 -snap_to track \
    -width {M1 0.07 M2 0.07 M3 0.07 M4 0.07 M5 0.07} \
    -spacing {M1 0.14 M2 0.14 M3 0.14 M4 0.14 M5 0.14}

define_routing_rule hs_clk_rule \
    -default_reference_rule  -taper_level 0 -snap_to track \
    -width {M1 0.14 M2 0.14 M3 0.14 M4 0.14 M5 0.14} \
    -spacing {M1 0.14 M2 0.14 M3 0.14 M4 0.14 M5 0.14}
set_clock_tree_options -routing_rule clk_rule \
    -use_default_routing_for_sinks 1 \
    -layer_list {M3 M4 M5}
set_clock_tree_options -routing_rule hs_clk_rule \
    -use_default_routing_for_sinks 1 \
    -layer_list {M3 M4 M5} \
    -clock_trees {clk1 clk2}

有设置不对的的地方吗?
另外下面的设置和上面是不是等效的?
define_routing_rule clk_rule \
    -multiplier_spacing 2.0
define_routing_rule hs_clk_rule \
    -multiplier_spacing 2.0 \
    -multiplier_width 2.0
set_clock_tree_options -routing_rule clk_rule \
    -use_default_routing_for_sinks 1 \
    -layer_list {M3 M4 M5}
set_clock_tree_options -routing_rule hs_clk_rule \
    -use_default_routing_for_sinks 1 \
    -layer_list {M3 M4 M5} \
    -clock_trees {clk1 clk2}
   

蓝色字体的设置是什么,我的理解是stdcell出pin的地方需要用metal2才能跳的metal3,metal2的rule不受NDR的约束,不知道这样理解对不对?
非常感谢!
 楼主| 发表于 2013-4-24 10:04:06 | 显示全部楼层
回复 4# 陈涛

用大size的buf和inv长clock tree,小size 的是不是要设dont_use?
clock buf/inv附近加decap是不是EM考虑?

如果是block level,boundary cell需要加吗?

非常感谢!
 楼主| 发表于 2013-4-24 10:20:27 | 显示全部楼层
回复 4# 陈涛

再问一个问题,top level没有clock,sdc中只设置了max delay
set_max_delay 0.2 -from [get_pins {u_io/datein[?]] -to [get_pins [u_iomux/dataout[?]]

PR时只做了place_opt,这些path上没有做优化,但是线特别长,有1500um,但是pt报出来的tran比较大,delay是0.44,

为什么icc没有对这些path做优化,插一些buf或inv?
手动去插一些buf之后tran会变小,但是delay却变的更大了,很费解!

非常感谢!
发表于 2013-4-24 10:52:42 | 显示全部楼层
回复 11# zzvbk


-multiplier_width layer_width

Defines the layer width multiplier. You do not have to know the units or exact metal width currently defined in the library.
For example, to define double width, specify -multiplier_width 2.0.

-multiplier_spacing layer_spacing

Defines the layer spacing multiplier. You do not have to know the units and exact layer spacing currently defined in the library.
For example, to define double spacing, specify -multiplier_spacing 2.0.
-------------------------------------------------------
   
-use_default_routing_for_sinks count

Forces the default routing rule to be used on the leaf nets that drive the clock tree sinks and nets at the bottom n-1 levels of the clock tree. A net is considered as leaf net if it drives at least one flip-flop or latch. Float pins, exclude pins, and don't touch subtree pins are treated as nonsink pins of the clock tree for this purpose. For example, a net that drives only one float pin is not treated as a leaf net for this purpose.
The default is 0.
This option is valid only if the -routing_rule option is specified.

-----------------------------------------------------
 楼主| 发表于 2013-4-24 14:13:45 | 显示全部楼层
回复 14# sjtusonic

呵呵,英文理解能力有限!这个我也看到了!
-use_default_routing_for_sinks count 不理解真正的意思
   非常感谢!
发表于 2013-4-24 14:17:49 | 显示全部楼层
回复 15# zzvbk


    应该设成1吧
发表于 2013-4-28 14:23:44 | 显示全部楼层
haohao
 楼主| 发表于 2013-5-7 13:51:25 | 显示全部楼层
自顶一下!
发表于 2014-10-17 15:00:34 | 显示全部楼层
回复 15# zzvbk


  就是在哪一层sink上使用默认的rule,一般写1就可以了,最底层的sink上使用
发表于 2014-10-20 09:45:52 | 显示全部楼层
回复 11# zzvbk


   你上面的几行命令为什么要加default_reference_rule   这个option?      你define 以后可以report 一下这个rule,看每一层定义的是否是你想要的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

×

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-23 06:09 , Processed in 0.021622 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表