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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 17165|回复: 43

[讨论] (纯水)大家有什么想问的?问啥都行。

[复制链接]
发表于 2015-2-28 12:47:39 | 显示全部楼层 |阅读模式

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

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

x
各位坛友,新年好。
一直都比较忙,也常常想上来回复一些问题。但是,手残,翻页比较慢。
所以特开此贴,收集并解答各种问题,提供各种咨询和建议。

无论行业内还是行业外,无论技术类还是非技术类,任何问题都可以来讨论和咨询。
本人不才,能解答的将立即作答,无法解答的也请各位坛友帮忙解答。

祝大家新年工作顺利,节节高升!

2015/2/28
Shanghai
发表于 2015-2-28 13:36:43 | 显示全部楼层
回复 1# joemool


   谢版大,求证一个问题。ocv在icc guide中有-max -min的设置,这个是不是针对一个corner有两个库设置的,工程中一般一个corner只给一个库。所以用set_timing_derate来模拟两个库 max和min。 另外ocv是不是一般只设置clock上
 楼主| 发表于 2015-2-28 14:17:02 | 显示全部楼层
本帖最后由 joemool 于 2015-2-28 14:26 编辑

回复 2# fangwang85

     一般来说,derate会设在clock path上,但是并不能说data path不能设。
     Data path上同样可以定义timing derate。但是你的setup或者hold可能会更加难close。
     你不仅仅可以这样做,还可以针对cell delay和wire delay分别来定义derate。

     你这里可能存在误区。
     -max和-min是用在BcWc Analysis mode下,然而当你采用了MMMC,你需要通过-delay_coner来控制。
     

具体参见下面的例子

Examples                                                
  • The following command (1) can be used when the software is in on-chip variation analysis mode to add pessimism to both the setup and hold analyses by making the early paths 20 percent faster:                                       
    setAnalysisMode -analysisType onChipVariation                                                                               
    ...                                                                                                                                
    (1) set_timing_derate -early 0.8 -late 1.0                                                
  • The following example uses two set_timing_derate commands to set the scaling factors independently for the min and max corners. When the software is in best-case worst-case analysis mode:
    • Command (1) adds pessimism to the setup analysis by making the latching clock path 20 percent faster.
    • Command (2) adds pessimism to the hold analysis by making the latching clock path 10 percent slower.                          
      (1) set_timing_derate -max -early 0.8 -late 1.0                                                
                                                      
      (2) set_timing_derate -min -early 1.0 -late 1.1                                                        
                                      
  • When the software is in on-chip variation analysis mode, there is only one active delay corner; therefore, the                  -min  and -max parameters should not be used. The following command sequence will generate a warning:                        
    setAnalysisMode -analysisType onChipVariation                                                                               
    ...                                                                                                                                
    set_timing_derate -min -early 0.8 -late 0.9                                                                                                                set_timing_derate -max -early 1.1 -late 1.2                                                                                                             
    In this situation, the software uses 0.8 for derating early paths, and 1.2 for derating late paths.
  • The following command sets the early path scaling factor of 0.85 for instance MULT_9 cell delays:                                     set_timing_derate -early -cell_delay 0.85 [get_cells {MULT_9}]                                       
  • The following command sets the early path scaling factor of 0.75 for the net named MUX2/Z :                                       
    set_timing_derate -net_delay -early 0.75 [get_nets {MUX2/Z}]                                       
                        
  • The following command specifies power domain PD1 for derating instances:                                       
    set_timing_derate -power_domain PD1 -cell_delay 1.1                                       
  • In the following example, a design having max library as 'slow' and min library as 'fast', only the first two set_timing_derate constraints are honored:                                       
    set_timing_derate -late 1.2 [get_lib_cells {slow/BUFX1}] -cell_delay                                                                            
    set_timing_derate -early 0.8 [get_lib_cells {slow/BUFX1}] -cell_delay                                                
                              
    set_timing_derate -late 1.1 [get_lib_cells {fast/BUFX1}] -cell_delay                                                
                               
    set_timing_derate -early 0.9 [get_lib_cells {fast/BUFX1}] -cell_delay                                                
  • Consider the following library sets, in MMMC mode:                                       
    create_library_set -name libset1 -timing slow.lib                                                                               
    create_library_set -name libset2 -timing fast.lib                                                
                                                             
    create_delay_corner -name corner1 -late_library_set libset1 -early_library_set libset2                                                
       
    From the following set_timing_derate constraints only the first two are honored.                                       
    set_timing_derate -late 1.2 -cell_delay [get_lib_cells slow/*] -delay_corner corner1                                       
                  
    set_timing_derate -early 2.3 -cell_delay [get_lib_cells slow/*] -delay_corner corner1                                                
          
    set_timing_derate -late 3.4 -cell_delay [get_lib_cells fast/*] -delay_corner corner1                                                
            
    set_timing_derate -early 4.5 -cell_delay [get_lib_cells fast/*] -delay_corner corner1                                                

我只是个搬运工,希望能帮助你理解。
发表于 2015-2-28 14:29:43 | 显示全部楼层
刚提问个问题就看到这个帖子,那么我把我发的问题在这里重复一遍,谢谢版主答复


为什么ck端设了负的latency会把这只ck path做的更短而不是更长
latency是负值的话,不应该是延长了ck path吗,求指点,谢谢
 楼主| 发表于 2015-2-28 14:50:23 | 显示全部楼层
回复 4# 百姓苦


    思路没错,但是信息量不够。我不知道该如何解释。
 楼主| 发表于 2015-2-28 15:22:50 | 显示全部楼层
回复 2# fangwang85


   

仔细看看

仔细看看
发表于 2015-2-28 15:38:20 | 显示全部楼层
回复 6# joemool


   参考了一篇paper 原文如下5.4 Two Operating conditionsSometimes you may have operating conditions specifically scaled for use with on-chip variationanalysis. For a slow chip analysis, the worst case operating condition is specified with –max andthe scaled worst case operating condition is specified with –min. For a fast chip analysis, the bestcase operating condition is specified with –min and the scaled best case operating condition isspecified with –max.
set_operating_conditions –analysis_type on_chip_variation –min $WCOCV –max $WC
5.4 Single Operating conditionOn-chip variation analysis can still be run even if you have only one operating condition. In thiscase the minimum and maximum times are simply scaled versions of the delays determined fromthe single operating condition that is loaded. The scaling factors are set by the set_timing_deratecommand described next. This is the method that was used for this paper.
set_operating_conditions –analysis_type on_chip_variation $OP_CON
set_timing_derate –min 0.8 –max 1.0


发表于 2015-2-28 15:41:10 | 显示全部楼层
回复 6# joemool


   所以我的理解是ocv 和-max -min并不矛盾。前提是一个corner提供了两个库
 楼主| 发表于 2015-2-28 15:58:03 | 显示全部楼层
回复 8# fangwang85

我这里只是针对软件工具本身,ICC我不清楚,我贴上来的是EDI的Doc。
发表于 2015-2-28 16:31:56 | 显示全部楼层
回复 9# joemool


   谢谢版大回复,两个软件ocv的设置不一样。坐等icc 的童鞋
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-12-22 15:07 , Processed in 0.022381 second(s), 8 queries , Gzip On, Redis On.

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