电子产业一站式赋能平台

PCB联盟网

搜索
查看: 52|回复: 0
收起左侧

为什么reg2cgate的setup难以满足?

[复制链接]
匿名  发表于 2024-10-29 12:17:00 |阅读模式
Reg2cgate的setup天生是难以满足的,其中缘由是什么呢?通过下面一张图大家便可以直观的了解到。
    从图上我们可以看出,clock gate的clock latency是delay1,reg1的clock latency是delay1+delay2,可以明显的看出,reg2cgate的setup,其launch clock path delay天生是要比capture clock path delay要多delay2的,因此其setup相对于reg2reg是不好满足的。


    根据setup的计算公式可以看出:
Launch_clock_path_delay +data_path_delay+setup_check
    我们将下图中的一些值代入到上述公式可以得到:
(Launch_clock_path_delay - capture_clock_path_delay) + data_path_delay+setup_check
    所以为了解决reg2cgate的setup,我们可以降低delay2,delay3的值,delay3为data path delay,这个工具默认是为去降低的。因此,能够让我们去处理的就是delay2的值。
    那么delay2的值是如何降低的呢?下面有几种方法供大家参考。
    a. 在长clock tree的时候,让clock gate尽量贴近其后面的register,尽量不要在clock gate后面用插buffer的方式,去解clock gate的fanout。这么操作会导致delay2变大。如果clock gate的fanout特别大,可以去问一下综合人员是否可以优化一下netlist,或者我们在长clock tree的时候可以将clock gate clone选项打开;
    b. 如果reg1与其他register没有timing交互的话,可以在reg1的ck端设置ignore pin,这样工具在长clock tree的时候,便会将reg1的clock latency做短,即减少了delay2的值。
    那么,通过上述方法,基本上可以解决掉reg2cgate的setup问题。
    另外,在innovus中,我们也可以在对reg2cgate创建group path,并对group path level设置一个较高的值。那么,工具在优化的时候,会着重去优化reg2cgate path。
    以上就是解决reg2cgate setup的原理和方法。

#小编也是一个入行几年的数字后端工程师。由于本身对编程方面比较感兴趣。因此,在数字后端脚本、flow上比较擅长,大家如果有相关的问题,可以提供答疑咨询服务。另外,欢迎大家加入我的知识星球“芯冰乐”或者关注微信公众号“芯冰乐”,获取更多干货知识分享。

本帖子中包含更多资源

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

x
回复

使用道具

发表回复

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

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表