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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 11707|回复: 14

[求助] DC中transition的问题求助

[复制链接]
发表于 2010-11-10 22:32:23 | 显示全部楼层 |阅读模式

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

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

x
在跑DC时发现了这个问题。就是我的关键路径的时序都是满足的。但查看constraint violate的时候,却发现有很多的不满足约束的情况。
我就困惑了,既然约束都不满足,怎么能有正常的时序报告呢。
直接上图
max_transition
                             Required        Actual
   Net                      Transition     Transition        Slack
   -----------------------------------------------------------------
   U_sram_controller/n243 (dont_touch)
                                0.50          10.39          -9.89  (VIOLATED)
   U_sram_controller/n1239 (dont_touch)
                                0.50           9.21          -8.71  (VIOLATED)
   U_sram_controller/n729 (dont_touch)
                                0.50           6.49          -5.99  (VIOLATED)
   U_sram_controller/N746 (dont_touch)
                                0.50           6.47          -5.97  (VIOLATED)
   U_sram_controller/n683 (dont_touch)
                                0.50           4.51          -4.01  (VIOLATED)
   U_sram_controller/N9515 (dont_touch)
                                0.50           3.59          -3.09  (VIOLATED)
   U_sram_controller/N9230 (dont_touch)
                                0.50           3.57          -3.07  (VIOLATED)
   U_sram_controller/N9166 (dont_touch)
                                0.50           3.44          -2.94  (VIOLATED)
   U_sram_controller/n165 (dont_touch)
                                0.50           3.42          -2.92  (VIOLATED)
   U_sram_controller/n684 (dont_touch)
                                0.50           3.24          -2.74  (VIOLATED)
   U_sram_controller/n1240 (dont_touch)
                                0.50           3.18          -2.68  (VIOLATED)
   U_sram_push_pull_eng/N312 (dont_touch)
                                0.50           2.99          -2.49  (VIOLATED)
   U_sram_push_pull_eng/N478 (dont_touch)
                                0.50           2.50          -2.00  (VIOLATED)
   U_sram_controller/n151 (dont_touch)
                                0.50           2.43          -1.93  (VIOLATED)
   U_sram_controller/n261 (dont_touch)
                                0.50           2.26          -1.76  (VIOLATED)
以上都是不满足的情况,而且我只是设置clk 和rst是dont_touch但这上面显示的全都是dont_touch。这个我认为是因为这些路径都是由clk或rst去驱动的,不知道这理解是不是正确的。
但是,我的关键路径却又是满足我的要求的
clock clock (rise edge)                                10.00      10.00
  clock network delay (ideal)                             0.00      10.00
  U_sram_controller/data_out2_reg[0]/CK (FFEDQHDLX)       0.00      10.00 r
  library setup time                                     -0.16       9.84
  data required time                                                 9.84
  --------------------------------------------------------------------------
  data required time                                                 9.84
  data arrival time                                                 -8.79
  --------------------------------------------------------------------------
  slack (MET)                                                        1.05
哪位大神给解释下。为什么transition都那么大了,他的关键路径却还满足?
顺便在提几个问题。用什么命令可以直接检测slack,比如我想把slack规定在一个范围内,那就得用迭代的方法。但怎么能取出slack的这个数值?
综合怎么去加紧约束,就输入输出延时、负载、连续、驱动这些。那器件还不是这些器件啊,他该有多少延迟还是那么多延时。你怎么去让一个设计本来只能跑100M的提升到120M啊?
发表于 2010-11-11 09:26:06 | 显示全部楼层
transition的约束太紧了,这个violation完全可以忽略的,PR再fix
发表于 2010-11-11 11:27:11 | 显示全部楼层
set_dont_touch命令的作用你没有搞明白,所以才会有这样子的困惑,希望你能首先理解你所使用约束命令的作用
我记得你在使用report_constraints 命令时,加上它的选项-options,可以得到你想要的reports
一个design工作频率一方面跟特定工艺相关,另一方面也跟电路设计本身有关
发表于 2010-11-11 18:19:34 | 显示全部楼层
transition和slack本来就不是直接联系的
transition是DRC

你要确定这些dont-touch是不是rst需要自己去查网表,问我们也没用
 楼主| 发表于 2010-11-11 23:25:05 | 显示全部楼层
回复 3# jun_dahai


    这个不就是不插buffer吗。因为后端会用特殊的处理。这就是不明白,既然在DC里他没有插BUFFER,那么他的电平转换时间就会很高的呀,那么就会影响他的时序啊。但为什么综合出来貌似分析关键路径的时候又没有考虑这些地方
 楼主| 发表于 2010-11-11 23:27:37 | 显示全部楼层
回复 2# zh123456789


    谢谢,不过能不能说得详细一点。为什么不考虑,大概怎么处理
发表于 2010-11-12 17:30:03 | 显示全部楼层
transition是transition, 指上升下降时间,和timing slack无关.
你这如果是clock或reset, 应该设成ideal network, 这样dc认为这些net是理想的, 不去管这些net的transition.
你设了dont touch, 意思是让DC不要去优化这些net, 如果这些net不是ideal net并且fanout又很高,自然会有很大的transition violation, 但如果你的timing constration比较松, 那timing还是可以满足的.
发表于 2010-11-14 14:17:35 | 显示全部楼层
我觉得设个set_max_transition  ? [current_design]试试
发表于 2012-3-26 09:21:28 | 显示全部楼层
7#正解啊
发表于 2012-3-27 10:40:56 | 显示全部楼层
clk 和rst设ideal network
给后端时再拿掉
时钟会做时钟树,HFN会进行HFNS
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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

GMT+8, 2025-7-19 03:13 , Processed in 0.037110 second(s), 9 queries , Gzip On, MemCached On.

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