• 注册
  • 查看作者
  • 数字后端实现时钟树综合(clock tree synthesis)基础篇

    数字后端实现时钟树综合(clock tree synthesis)基础篇

     

    时钟树综合(clock tree synthesis)

     

    今天,小编为大家简单介绍下数字后端设计流程中非常重要的一个环节,时钟树综合(clock tree synthesis)。很多两三年及以上的数字后端工程师,依旧停留在跑flow,工具如何build tree也是两眼一抹黑,甚至不知道如何去分析你的clock tree质量和debug clock tree 的一个状态。因此,很有必要再把这个步骤拎出来,唠唠嗑。

     

    1

    什么是时钟树综合

     

     

    简单概括下,时钟树综合就是指从某个clock的root点长到各个sink点的clock buffer/inverter tree。工具试图将某个clock所属的所有sinks做到相同长度。从概念上,我们可以得到几个要点。

     

    时钟树综合原理

    时钟树综合原理

     

    1. clock的root点需要定义清楚。这个可以通过create_clock来定义。如果是create_generated_clock,它的master clock也是很清晰的,即知道generate clock的source latency;

    2. clock 的sinks要知晓。

    2

    时钟树综合的目标

     

    1. clock skew尽量小,特别是对时钟质量要求比较高或者高频时钟;

    2. clock latency尽量短。

    那么,为了达到以上两大目标,数字后端工程师任到重远。首先,我们拿到一个design,需要先花点时间,理清楚clock 结构,各种mode如何切换。同时,需要不断向前端设计人员请教design相关(后端需要知道的信息),比如哪些clock是需要同步,哪些是异步。

     

    3

    时钟树质量分析

     

     

    可能很多工程师估计都没用过下面这个功能吧。ICC/ICC2中这个功能还是很不错的,可以帮助工程师快速理清clock的结构和debug clock tree 质量。特地向大家推荐下。

     

    clock tree debug

    clock tree debug

     

    clock tree hierarchy browser

    clock tree hierarchy browser

     

    借助上面推荐的方法GUI操作辅助我们分析。选中某个clock,然后查看clock的时钟树综合结果,比如clock buffer的级数,clock latency,clock的最短路径和最长路径。常见的问题就是clock skew过大,latency太长。有的是floorplan不好导致的(比如窄channel),有的是placement结果不好(cell 分布不好导致的),也有constraint约束不合理导致的。更多详细分析方法,后面会陆续更新,敬请期待。

     

    小编知识星球简介:

    在这里,目前已经规划并正着手做的事情:

    • ICC/ICC2 lab的编写
    • 基于ARM CPU的后端实现流程(已经发布)
    • 利用ICC中CCD(Concurrent Clock Data)实现高性能模块的设计实现(已经发布)
    • 基于ARM 四核CPU  数字后端Hierarchical Flow 实现教程(准备中)
    • 时钟树结构分析
    • 低功耗设计实现
    • 定期在星球布置作业题(星球已经支持布置作业功能)

    手把手教你做floorplan规划-数字后端设计实现floorplan篇

    在这里,各位可以就公众号推文的内容或者实际项目中遇到的难题提问,小编会在24小时内给予解答(也可以发表你对数字后端设计实现中某个知识点的看法,项目中遇到的难点,困惑或者职业发展规划等)。

    反正它是一个缩减版的论坛,增强了大家的互动性。更为重要的是,微信有知识星球的小程序入口。星球二维码如下,可以扫描或者长按识别二维码进入。目前已经有六十二星球成员,感谢这六十二童鞋的支持!欢迎各位铁杆粉丝加入!终极目标是打造实现本知识星球全员年薪百万的宏伟目标。(星球的门槛将会越来越高,有需求的朋友趁早上车)

    好了,今天的码字就到这里了,原创不容易,喜欢的可以帮忙转发和赞赏,你的转发和赞赏是我不断更新文章的动力(文章末尾有广告,帮忙点下,谢谢!)。小编在此先谢过!与此同时,吾爱IC社区(52-ic.com)也正式上线了。吾爱IC社区(52-ic.com)是一个专业交流和分享数字IC设计与实现技术与经验的IC社区。如果大家在学习和工作中有碰到技术问题,欢迎在微信公众号给小编留言或者添加以下几种联系方式进行提问交流。

    手把手教你做floorplan规划-数字后端设计实现floorplan篇

     

        相关文章推荐

    从数字IC后端设计实现看先进工艺7nm实现的各种挑战

    数字后端设计实现后期碰到这些问题,如何做ECO?

    我是如何在五年内实现年薪60万?

    教你彻底搞懂ARM Cortex-A75 CPU的数字后端实现报告

    这些低功耗设计实现经验,你真的懂了吗?

    深度解析Create_clock与Create_generated_clock的区别

    IR Drop分析之Redhawk分析流程

    CRPR能补偿crosstalk吗?

    原来电路最高工作频率是这么算出来的(STA基础篇)

    数字后端面试问答No.1-3(每日三问)

    教你轻松调DCT和ICC之间Timing与Congestion的一致性

    数字芯片设计实现中修复setup违例的方法汇总

  • 0
  • 0
  • 0
  • 567
  • 单栏布局 侧栏位置: