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

 找回密码
 注册

手机号码,快捷登录

手机号码,快捷登录

搜全文
查看: 12221|回复: 25

[求助] 在后端设计中如何在worst corner下查hold

[复制链接]
发表于 2013-11-13 10:00:13 | 显示全部楼层 |阅读模式

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

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

×
求助!我在使用ICC时,以前都是在bc下修hold,而在wc下修setup。如何能新创建一个特殊的corner,可以在worst corner下查看并修复hold违例,并且和之前的默认corner并存?(也就是不用重启工具重新设置library,使bc wc的lib互换,两边来回倒。)我在MCMM下尝试也不成功,求教了!
发表于 2020-8-14 08:21:24 | 显示全部楼层
谢谢指导
回复 支持 反对

使用道具 举报

发表于 2013-11-29 16:24:45 | 显示全部楼层
回复 23# tcwyfrex


   学习了~~~~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-11-29 11:24:50 | 显示全部楼层
回复 23# tcwyfrex


   多谢!经验证该方案可行。已经成功配置了MCMM,并且需要的都能报出来。看来是之前设置的set_min_library将multi-corer限制住了,现在已经没问题,能够实现多corner的自由配置了。
回复 支持 反对

使用道具 举报

发表于 2013-11-28 11:36:19 | 显示全部楼层
本帖最后由 tcwyfrex 于 2013-11-28 11:53 编辑

关键点已经尝试成功了,剩下的就是靠设置scenario来搭配了。
举个最简单的例子,PT需要读 cmax的spef和ss1.08v125c 的db 来做sta ,那么它检查setup和hold的环境都是同一套。同时,另一个PT窗口需要读cmin的spef和ff1.32cm40c的db来做sta,它也会用同一套环境检测setup 和hold。
假如设计signoff只需要上面这4种,那么只要在ICC里设置2个scenario分别对应即可,需要有多少个pt窗口跑,我们就设几个,每个scenario看到的都和单个PT看到的完全一致。

现在ICC的思路是:整个设计都不用bc_wc那种两套库的关联,把所有corner的db都写进link_lib,把所有corner的stand cell db写进target_lib ,删除set_min_library 语句。
先remove_sdc ,然后
create_scenario func_wc_cmax_125 ;set_tlu_plus 用cmax的;read_sdc ;Set_operating_conditions 只设max的值,应该是ss1.08v125c的库,min不填默认和max的环境相同,bc_wc模式。

create_scenario func_bcl_cmin_m40 ,set_tlu_plus 用cmin的 ;read_sdc ;Set_operating_conditions 只设max的值,应该是ff1.32cm40c的库,min不填默认和max的环境相同,bc_wc模式。

建立完后,report_scenario看报告,每个场景的库设置和PVT是否是你想要的那种和PT一致的形式。
具体没跑过流程,不确定是否可行。请楼主实验后告诉结论。
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2013-11-28 09:57:41 | 显示全部楼层
绕了这么多,回复也不少,先谢谢大家。可是感觉有点跑偏。重新精简一下:

已有: max_lib和min_lib各一套
在ICC中,如何配置target_library 和operating_condition(或者使用其他方法),可以使工具同时报出如下时序:
使用max_lib报出setup timing和hold timing,使用min_lib报出hold_timing
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-11-28 09:49:47 | 显示全部楼层
回复 20# tcwyfrex


   没错,我认为关键也是这个问题,我使用bc_wc模式。可是现在的要求比较特殊。如果target lib只设置max_lib一套库,不使min_lib相关联,理论上可以报出wc下的hold。可这样bc_wc就不管用了,也就是无法在bc下报hold timing,而这种模式也是我所需要的。
回复 支持 反对

使用道具 举报

发表于 2013-11-27 21:34:33 | 显示全部楼层
我觉得问题的关键地方是: ICC大多用户是bc_wc模式来做的,而PT则只支持单个db库。

PT只需设一个target lib ,而且不支持bc_wc两套库的模式,所以看到的setup hold都是同一套db延时(我指的仅仅是普通模式,如果用DMSA方法就可以和ICC看到的bc_wc一样) 。 所以,只要想办法让ICC只读入一套库或许能达到目的。我没有亲自试过,不知道能否实现,我只是凭感觉提示一下,如果楼主找到方法,记得通知下。

我记得在设max-min关联时可以选择用同一套库的,用-none选项:
set_min_library max_library -none
这样,分析min delay时会选择和分析max delay相同的库。
(stand cell我真没试过这样设,不知道结果会如何。但是有些模拟IP或黑盒子IP只提供一个db时,我这样设置过没报什么错。)

还有Set_operating_conditions不知道这命令有没有帮助。
回复 支持 反对

使用道具 举报

发表于 2013-11-27 19:52:12 | 显示全部楼层
回复 18# xht84


   你在worst corner下report_qor报出来的hold就是你想要的啊。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-11-27 16:56:55 | 显示全部楼层
回复 17# angangang3484


   谢谢版主。我认为report_qor下报出来的Worst Hold Violation指的是hold违例中的最差路径。和setup的WNS差不多,而不是worst corner下的hold违例,如有不同意见请指出,谢谢。   另外我设置的target lib和link lib只有MAX.db,但set_min_library MAX_lib.db -min_version MIN_lib.db 所以每次报timing时工具都自动使用MAX_lib报setup timing,使用MIN_lib报hold timing。但我现在除了这些之外还需要工具使用MAX_lib报一次hold timing,也就是之前提出的问题。尝试和很多办法都无法办到。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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

GMT+8, 2025-9-15 07:29 , Processed in 0.021874 second(s), 6 queries , Gzip On, Redis On.

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