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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 4841|回复: 9

[求助] 请高手帮我看看ENCOUNTER中的USEFULSKEW的问题

[复制链接]
发表于 2012-1-9 03:10:59 | 显示全部楼层 |阅读模式

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

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

x
我是在CTS之后用的USEFULSKEW,之前一直没用。但是我发现一个问题,就是USEFULSKEW好像用不出来的样子,就是CLOCK TREE几乎没有SKEW。然后我看了LOG ,发现问题可能出在这里。请看图1,本来ENCOUNTER已经计划好要用USEFULSKEW的了(TIMING 还不错),但是可能实际实施的时候出了问题,我怀疑就是那行:Info: 9268 nets with fixed/cover wires excluded.出了问题,导致没有实行。结果出现了图2以及图3的结果。(因为IO的SDC有些问题,所以大家看REG2REG就好了)。本来是0.2的SLACK,结果却变成了-4,我仔细看了下最差的10几条路径,除了一部分原因是因为路径上了用了BUFFD0这样的CELL以外,还有就是SKEW几乎为0,也就是USEFULSKEW几乎没有实施。
然后我尝试在CTS之前用USEFULSKEW,发现很正常,TIMING也好。后来我就不敢做Optdesign -postcts了,直接跳过去做Routedesign,反而还很正常。请高手们看看究竟什么问题。
附件可用写字板或者VI打开。 encounter.doc (335.26 KB, 下载次数: 12 ) 1.JPG 2.JPG 3.JPG
发表于 2012-1-9 11:56:00 | 显示全部楼层
可以从下面几个方面入手检查,
1)确认你使用useful skew的方法是正确的,特别是preCTS的useful skew,详细请参考EDI userguide
2)确认设计中确实有skew margin可以供你使用
3)上面的都成立,还是不行的话,试试用ctstch里面的macromodel
 楼主| 发表于 2012-1-10 12:18:38 | 显示全部楼层
我是在CTS之后用Useful Skew出现问题的。
我怀疑是这里出现了问题:请看图1里面的那行字:cannot find any acceptble solutions in IPO Useful Skew.
IPO是什么意思啊?ENcounter里面实施useful skew的程序的名字?
为什么Useful skew不让用。
发表于 2012-1-10 14:10:10 | 显示全部楼层
这就是我让你做2)的原因
有可能你的设计里面就没有useful skew可以拿来用
发表于 2012-1-11 10:45:49 | 显示全部楼层
回复 4# 陈涛


    请问陈老大:
    useful skew利用哪个命令打开啊?之前一直听说利用useful skew修timing,不知道怎么使用呢。
发表于 2012-1-11 13:42:12 | 显示全部楼层
好像是一组命令,在user manual里面有详细介绍
 楼主| 发表于 2012-1-11 23:58:43 | 显示全部楼层
usefulskew 的 margrin也是有的,我可以肯定。
我在CTS之前用usefulskew一点问题都没有,所以我怀疑是:
Info: 9268 nets with fixed/cover wires excluded.这条语句的问题。这条语句在其他方法中没有出现。
是不是说CTS的时候把WIRE都变成fixed状态了,所以不能改变CLOCK TREE了?
发表于 2012-1-12 01:23:00 | 显示全部楼层
我看了你的log, 直接是CTS之后的opt。
所以我猜你可能是犯了这个错误。你试试看。

preCTS采用usefulskew来优化的时候, 会自动生成两个文件: latency_file.sdc和scheduling_file.cts.
如果你saveDesign的话, 这两个文件会自动保存在enc.dat里.
latency_file.sdc里保存着每个采用usefulskew的CK端口的latency信息. 例如:
set_clock_latency 0.5 {XXX/XXX/CK}
scheduling_file.cts中保存着供时钟树综合时用到的latency信息,
也就是将用到usefulskew的CK端设为MacroModel pin的信息。例如:
MacroModel pin XXX/XXX/CK 10ps 10ps 10ps 10ps 10pf

在时钟树综合时, 必须将你原本打算使用的specfile和这个specfile都读入, 如下:
specifyClockTree –file scheduling_file.cts
specifyClockTree –file original_constraints.cts
也就是说, 至少需要两个ctstch文件。
我想你可能是忘记了encounter生成的这个ctstch文件。

这样造成的后果是, prects按照usefulskew的方式进行了优化,并在uesfulskew的前提下timing meet。
cts综合时并不知道有这件事情,依然以skew为0当作目标进行了时钟树综合。
可想而知, 必然悲剧了。
之后你进行的各种postcts opt都是于事无补。

友情提醒下, 请确认你的usefulskew的余量是足够的, 保险的方式是ff下面也报一下hold, 可能并不那么乐观。
因为我观察到你holdtargetslack仅仅是0.

PS: 真心跪了。是你现在就拿到10.1的破解版? 还是公司可以随便copy log出来?
如果是前者。 跪求破解版。
发表于 2012-8-4 12:51:59 | 显示全部楼层
回复 8# farren


    还要自己去同时指定两个文件吗,工具不会自动指定吗?
发表于 2012-8-4 20:28:03 | 显示全部楼层
也遇到同样的问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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

GMT+8, 2025-2-24 03:37 , Processed in 0.026370 second(s), 9 queries , Gzip On, Redis On.

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