在时钟树的设计中,有很多方式处理分频时钟,常见的无外乎两种模式:
- 时钟二分频器(reg-clkgen)
- 门控时钟
二者在功能上略有不同,比较的大差异是前者可以简单的实现50%占空比,后者却对功耗友好同时降低了实现难度。这里结合INVS在CTS的手法,一起了解一下INVS对二者的处理差异。闲言少叙,ICer GO!

就后端工具而言,CTS是其三大引擎之一,在当下设计的高工艺、高性能的背景下,CTS的重要性越来越凸显,之前项目一键通的CTS方式,已经越来越不能满足日益提升的QoR诉求了。
INVS ccopt 系统简介
INVS在useful skew显然具备强大的优势,其中的ccopt flow,拥有灵活,高效和用户友好等多种特性,其独特的思维方式,给用户在CTS阶段提供了更多的选择和漂亮的QoR数据。
从SDC到ccopt系统转化,让INVS采用一种类似数字孪生(digital twins)的方式,将SDC里边的相关命令,一一映射到ccopt系统中,主要来自于下列三个主命令:
create_ccopt_clock_tree<=>create_clockcreate_ccopt_generated_clock_tree<=>create_gernerated_clockset_ccopt_property<==> other CTS setup
通过这种转义/隔离,巧妙的将ccopt构建成一个CTS warpper,将CTS的实现和SDC进行隔断。这样做的好处有以下几点:
- SDC里边的配置和设定,可以在ccopt系统里边进行修正和调整,而无需读入CTS专用的SDC
- CTS的配置通过导出可读文件进行抽取,继承和维护:
create_ccopt_clock_tree_spec - 在
ccopt_design开始之前,可以灵活使用set_ccopt_property命令干预ccopt的实现方式,而不用担心对原生的SDC产生影响。
用户可以在CTS阶段,放心大胆的使用ccopt系统。鉴于INVS是全局useful skew策略,即使在CTS之后,用户任然可以使用ccopt命令对CTS结构进行微调(modify),这样在后续的useful skew流程中,INVS仍然会使用ccopt引擎对相关的数据进行调整。

本文探讨了INVS在时钟树设计中的CCOPT系统如何处理时钟二分频器(reg-clkgen)和门控时钟的差异,强调了INVS的ccoptflow在CTS阶段的优势,包括灵活调整、低功耗和用户友好。文章还提到了INVS如何通过数字孪生方式将SDC命令映射到ccopt系统,以及如何利用ccopt进行时钟传播单调性处理和优化复杂拓扑结构。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



