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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 4996|回复: 4

[求助] dc的min_delay/hold错误处理

[复制链接]
发表于 2012-4-13 14:57:51 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 estyzq 于 2012-4-13 15:30 编辑

在完成一次dc的综合的时候,发现某路径上有如题的错误,错误的信号 endpoint 是send_final_out_reg2;
这条路径的上的代码很简单啊,

就是把一个16分频使用下得到的信号(send_final_out_reg),用8分频的时钟完成一次“延时”得到send_final_out_reg2。

always @ ( posedge clk8 or negedge rst ) begin
    if (~rst) ..
    else begin
        send_fianl_out_reg2 <= send_final_out_reg ;
    end
end

我怀疑会不会是我对时钟的约束有问题,我约束时钟的时候设置了一个dont_touch_network和ideal net work 属性,报告如下:
Point                                                   Incr       Path
  --------------------------------------------------------------------------
  clock clk16 (rise edge)                                 0.00       0.00
  clk_div/clk16 (clk_div)                                 0.00       0.00 r
  send_encode/clk16 (send_encode)                         0.00       0.00 r
  send_encode/U66/O (INV1S)                               0.13       0.13 f
  send_encode/U170/O (AOI112S)                            0.20       0.33 r
  send_encode/U171/O (OAI112S)                            0.11       0.44 f
  send_encode/send_final_out_reg2_reg/D (QDFFSBN)         0.00       0.44 f
  data arrival time                                                  0.44

  clock clk8 (rise edge)                                  0.00       0.00
  clock network delay (ideal)                             1.00       1.00
  clock uncertainty                                       0.50       1.50
  send_encode/send_final_out_reg2_reg/CK (QDFFSBN)        0.00       1.50 r
  library hold time                                      -0.08       1.42
  data required time                                                 1.42
  --------------------------------------------------------------------------
  data required time                                                 1.42
  data arrival time                                                 -0.44
  --------------------------------------------------------------------------
  slack (VIOLATED)                                                  -0.97
 楼主| 发表于 2012-4-13 15:41:38 | 显示全部楼层
本帖最后由 estyzq 于 2012-4-13 16:08 编辑

补充一个小问题啊:
我对时钟的transition、latency、uncertainty设置不同的值进行分析,有几个疑问1、如果时钟已经设置了属性dont touch和ideal network,那么latency的值为何还会在timing report中的;如果是分频时钟要对其设置这个latency吗?
2、transition的值是否是会影响到信号通过单元的延时时间?
3、uncertainty的估算到底要如何进行,特别是hold uncertainty的设置,我一般对10Mhz的频率设置个0.4;如果是时钟是个分频时钟,那么uncertainty要如何处理?
求指导,我对这个已经头疼很久啦
发表于 2013-7-2 22:01:08 | 显示全部楼层
1、有必要。dont_touch是让dc不做时钟树,于是你要手动指定这个
2、会,计算延时要考虑输入transiton。但时钟上的不影响数据
3、这个一般根据公式:skew+pll的jitter+margin
发表于 2013-7-4 14:16:15 | 显示全部楼层
hold violation没什么问题, 在dc也不需要修,, 留到PR再处理..
发表于 2013-7-5 21:00:51 | 显示全部楼层
tree都没有,分析hold没有意义
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-5 12:41 , Processed in 0.016356 second(s), 7 queries , Gzip On, Redis On.

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