时钟树综合专题(Clock Tree Synthesis)

时钟树综合专题(Clock Tree Synthesis)

转载至:https://mp.weixin.qq.com/s/9c2gmTwJvzaVsd8xgK6Nnw

时钟树综合专题(Clock Tree Synthesis)

吾爱 IC 社区

最近小编知识星球上有小伙伴们提问,提到一个大部分同学都比较感兴趣的话题。今天小编简要做个分享,希望对大家有所帮助。如果觉得有用,请分享给你的朋友,或许你的分享可以帮助到有需要的人。

时钟树综合专题(Clock Tree Synthesis)

如何 Trace 时钟结构?

我们都知道想要做好时钟树综合,需要事先了解设计的时钟结构,然后才能有时钟树综合的策略,最后写工具认识的约束来 guide 工具做好时钟树。

手把手教你如何在 Innovus 中分析 clock tree 质量

如何在 Innovus 中做好 Clock Tree Synthesis?

那么当你拿到一个 design,你应该如何入手呢?

  • 可以从 RTL 来 trace,一般都会有个 clock gen 的 module,直接看这部分即可。

  • 可以利用 DC 或 verdi trace 时钟结构。

了解清楚设计的时钟结构后就可以画出整个设计的时钟结构图,这幅图一定要深深刻在脑海里。一方面是它可以帮你理清各种时钟的走向,另外一方面可以高效协助你 debug 时钟树质量。

有了时钟结构图后,就可以开始编写时钟约束文件。这个文件主要包含以下内容:

  • create_clock

  • create_generated_clock

  • set_disable_timing_arc

  • set_case_analysis

  • set_clock_sense

  • floating pin (ignore pin,exclude pin,non_stop pin,stop pin 等)

  • inter-clock balance

具体命令其实大家不用去背,关键是要搞清楚这些概念,比如每个命令的作用是什么?什么时候用 ignore pin?为何要设置 clock sense?

那到底是要定义 create_clock 还是 create_generated_clock?它取决于你的 timing 需要。如果分频点要与后面的 reg 进行交互,那么 generated clock 更为恰当。默认情况 generated clock 会和 master clock 做 balance。

更多关于时钟树约束文件的编写,可以查阅吾爱 IC 社区以往分享的文章。

ICC2 时钟树综合从入门到精通

时钟树综合 CTS 技术经验分享(高薪必备!)

数字 IC 后端时钟树综合专题(OCC 电路案例分享)

想成为数字 IC 时钟树综合(clock tree synthesis)专家,建议好好看看这个!

对于使用 hierarchical flow 的同步设计,做 top tree 时需要考虑子模块内部的 tree。另外,对于高频时钟需要格外注意主干时钟路径上的 crosstalk,通常需要做shielding处理来最大限度减少其对 timing 的影响。

数字 IC 设计实现之 hierarchical flow 系列(一)

数字 IC 设计实现 hierarchical flow 系列(二)

【思考题】 对 clock 做 shielding 处理,有何利弊?

时钟树综合默认是从时钟树是从root 开始长,比如这位星友所说的 clock port 开始直至该 clock domain 下的 sink。但很多时候由于时钟结构上有很多的 mux,即各种时钟切来切去,工具默认做 tree 可能会把整体的 tree 做的比较长。

为了让工具做出更好的时钟树质量,往往会采用分段长 tree 的方法来做,即在 mux 的输出端定义时钟,而 mux 的输入端设 floating 或 ignore pin。

但记住 cts 阶段是不负责做propgated的,这个工作是后续 timing 优化时要做的。因此,如果 CTS 阶段将两个原本是同步的分支通过 create_clock 来做 tree,那 post-cts 后可能会出现比较大的 timing violation。

好了,今天的内容分享就到这里。另外,因为公众号更改推送规则,小编分享的每篇干货不一定能及时推送给各位。为了避免错过精彩内容,请关注星标公众号,点击 “在看”,点赞并分享到朋友圈,让推送算法知道你是社区的老铁,这样就不会错过任何精彩内容了。

如果你想和小编有更进一步的沟通交流的机会,欢迎加入小编知识星球,让我们一起学习成长,共同进步。相信在这里能让你成就一个更完美的自己

小编知识星球简介(如果你渴望进步,期望高薪,喜欢交流,欢迎加入 ****)

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

  • ICC/ICC2 lab 的编写

  • 基于 ARM CPU 的后端实现流程

  • 利用 ICC 中 CCD(Concurrent Clock Data)实现高性能模块的设计实现

  • 基于 ARM 四核 CPU 数字后端 Hierarchical Flow 实现教程

  • 时钟树结构分析

  • 低功耗设计实现

  • 定期将项目中碰到的问题以案例的形式做技术分享

  • 基于 90nm 项目案例实现教程(ICC 和 Innovus 配套教程)

  • 数字 IC 行业百科全书

吾爱 IC 社区知识星球星主为公众号” 吾爱 IC 社区” 号主,从事数字 ic 后端设计实现工作近八年,拥有55nm,40nm,28nm,22nm,14nm等先进工艺节点成功流片经验,成功tapeout 过三十多颗芯片

这里是一个数字 IC 设计实现高度垂直细分领域的知识社群,是数字 IC 设计实现领域中最大,最高端的知识交流和分享的社区,这里聚集了无数数字 ic 前端设计,后端实现,模拟 layout 工程师们。

在这里大家可以多建立连接,多交流,多拓展人脉圈,甚至可以组织线下活动。在这里你可以就数字 ic 后端设计实现领域的相关问题进行提问,也可以就职业发展规划问题进行咨询,也可以把困扰你的问题拿出来一起讨论交流。对于提问的问题尽量做到有问必答,如遇到不懂的,也会通过查阅资料或者请教专家来解答问题。在这里鼓励大家积极发表主题,提问,从而促进整个知识社群的良性循环。每个月小编会针对活跃用户进行打赏。

最重要的是在这里,能够借助这个知识社群,短期内实现年薪百万的梦想!不管你信不信,反正已经进来的朋友肯定是相信的!相遇是一种缘分,相识更是一种难能可贵的情分!如若有缘你我一定会相遇相识!知识星球二维码如下,可以扫描或者长按识别二维码进入。目前已经有 800 星球成员,感谢这800童鞋的支持!欢迎各位渴望进步,期望高薪的铁杆粉丝加入!终极目标是打造实现本知识星球全员年薪百万的宏伟目标
时钟树综合专题(Clock Tree Synthesis)

欢迎关注 “吾爱 IC 社区

微信号:ic-backend2018
时钟树综合专题(Clock Tree Synthesis)

https://mp.weixin.qq.com/s/9c2gmTwJvzaVsd8xgK6Nnw

上一篇:【论文安利】2011.13775 Image Generators with Conditionally-Independent Pixel Synthesis


下一篇:关于计算机和编程