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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 6260|回复: 11

[求助] clock tree 的 buffer 很绕很长,导致network delay很大

[复制链接]
发表于 2018-9-3 11:34:42 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
前提:正常的长tree,其中,有一个master clock,沿着path后面定义了有10多个generated clock。

问题:有一些generated clock path特别的长,network delay最大的30ns,其中clock buffer 长得很不顺,上下左右来回的绕。

补充:看了一下上面出现问题的需要balance的ff,都比较近,不需要很多的buffer。

0903_2.jpg







0903_1.jpg
发表于 2018-9-3 13:50:36 | 显示全部楼层
抛砖引玉:
什么工艺,transition是不是压的太低了?有没有dont touch之类的设定导致logical DRC violation?
你看到的buffer乱窜不一定是它们垫长的,可能是为了balance某一路垫delay而导致的,所以你要找到真正长得很长的那一路,看看问题是啥,其它的可能是被它拉长的。
 楼主| 发表于 2018-9-4 10:15:58 | 显示全部楼层
回复 2# xingyun620


    1.用的是华宏.11的。  2.transition不禁,data path 1 clock path 0.5 。
    3.找到了最长的一条path,想先往下做下去,就把最长path上面的ff/ck端  set_clock_balance_points -consider_for_balancing false ****  。又长了一遍tree,结果这条最长的path还在。正常是不应该存在的,因为不balance 上面的ff。

    不清楚原因,难道我要从place 阶段把他 set 上?
发表于 2018-9-4 10:36:17 | 显示全部楼层
回复 3# 张馨然

  找到原因了吗?
发表于 2018-9-4 10:37:56 | 显示全部楼层
回复 2# xingyun620

有没有dont touch之类的设定导致logical DRC violation?师哥的意思是:可能有dont touch之类的设定导致logical DRC violation,工具为了修这些DRC,就多插了一些Buf,使得tree变长了?
 楼主| 发表于 2018-9-4 11:02:10 | 显示全部楼层
回复 3# 张馨然


   1.查过没有在和他相关的cell pin net上 set dont touch ,看了这些buffer都是驱动很差的1x的,按道理如果为了修drc,不会是这种buffer。

   2.在build clock之前set_clock_balance_points,用report_clock_balance_points查看,确实已经把那些ck段认为是 except points。
      在build clock之后我发现还有那条path后,我有用report_clock_balance_points查看,没起到作用,把上述的except points依旧当成 balance points。不知道是否在route clock阶段except point 才起到作用,正在try
发表于 2018-9-4 12:32:27 | 显示全部楼层



dont touch可能会导致transition不解,如果net很长,delay一下就上去了,tree也会变长。
发表于 2018-9-4 12:40:09 | 显示全部楼层
回复 6# 张馨然

建议去log里看看cts各个stage的情况,比如build clock tree时insertion delay是多大,skew多大,有没有需要注意的warning。长完后看看tree上的DRC,fanout解了没,transition异常吗;
看看很长的那一路插得inverter名字,大概能知道tool是干什么的,是垫delay的?是解drc的?
有时候设置ignore pin并不会让那一路不长tree,他只是不考虑balance而已,比如那一路是某个ICG推出来,fanout有35个,它只是其中一路,这时候你设ignore也不会让这路变短的。
发表于 2018-9-4 16:23:34 | 显示全部楼层
回复 7# xingyun620


   dont touch一般都是前端给的SDC中会设置吧?后端有时候还会误操作设置了dont touch?!我好像没有过
发表于 2018-9-6 21:36:37 | 显示全部楼层
首先还是确认下generate clock有没有设置错误,其次看看是不是为了避开大的macro。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

×

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

GMT+8, 2024-4-20 17:24 , Processed in 0.028319 second(s), 6 queries , Gzip On, Redis On.

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