来自微信公众号 “数字芯片实验室”
在使用物理实现工具进行CTS时,我们使用create\_clock命令定义时钟源(clock root),然后工具可以自动trace所有其扇出的clock sinks
如果一个时钟具有generated clock,工具可以从generated clock trace到相应的master clock ,当然这是在正确定义generated clock的情况下。
可以使用check\_clock\_tree命令来检查master clock是否正确定义。
这里就体现了在做时钟树综合时,工程师和CTS工具各自的角色。
工程师正确定义crate\_clock,正确定义generated clock
EDA工具trace相应的sinks。工具操作正确的前提就是工程师对设计需求的正确定义。
时钟树综合不仅仅是一个cts\_opt可以搞定的,工具只是起到了加速优化的作用。
错误地定义master clock和generated clock会导致糟糕的CTS结果,即工具不会balance master clock和generated clock(清晰地指定设计需求,EDA工具才能实现“自动化”)。
对于下图,如果genclk2定义clk2作为master clock,则在时钟树综合时genclk2和clk2之间会进行balance。
如果在时钟路径上还有其他时钟门控逻辑,例如XOR或XNOR门,可以使用set\_case\_analysis命令指定CTS模式
icc_shell> set_case_analysis 0 U0/B
当然时钟树综合的设计需求是一个很大的词,一个设计的时钟需求仅使用create\_clock和create\_generated\_clock是远远不够的。
时钟路径有两种Endpoints:
•Stoppins
Stop pins(sink pins)是时钟树的端点,在时钟树综合时会进行DRC优化和(skew、insertion delay)优化
•Excludepins
Exclude pins是从时钟树(skew、insertiondelay)优化中排除的端点(因为设计上不需要),只进行DRC优化。
这时进行时钟树综合的工程师就需要完成一项工作,即指定Exclude pins。
这时优秀并且“懒惰”的工程师们会想“这其中哪些苦力是工具可以做的”,于是就有了implicit Exclude pins的概念。(工具隐式定义的Exclude pins)
IC Compiler工具从clock source向后trace,自动确定implicit stop pins和implicit exclude pins(自动确定的,所以称为implicit)。
generated clock和integrated clock-gating (ICG) cells都被工具定义为implicit nonstop pins
IC Compiler工具将以下时钟端点定义为implicit exclude pins(即工具自动排除):
•另一个时钟的clock source引脚
•时序单元的非时钟引脚
•多路复用器选择引脚
•三态使能引脚
•输出端口
•错误定义的时钟引脚,既不存在时钟时序
到这里,我们定义了clock source,并通过工具自动识别了implicit stop pins、implicit exclude pins和implicit nonstop pins
在定义时钟需求阶段,工具已经尽力了。还有另外其他的需求就需要工程师显式指定了。
如果clock source是输入端口,还必须准确地指定输入端口的驱动单元。
时钟驱动单元不会影响逻辑综合,因为逻辑综合使用理想时钟。
但是,时钟驱动单元会影响时钟树综合,驱动单元让工具插入更多的buffer,以满足DRC(maximum transition time and maximum capacitance)。
如果不指定驱动单元,则工具会默认clock source端口的驱动能力无穷大,导致实际芯片驱动能力不足。
icc_shell> set_driving_cell -lib_cellmylib/CLKBUF [get_ports CLK1]
或者
icc_shell> set_input_transition -rise0.3 [get_ports CLK1]
icc_shell> set_input_transition -fall0.2 [get_ports CLK1]
工具加速了设计进程,提高工作效率,但是事实上工程师的工作强度和加班时长不会变少。
可以说,工具抢走了简单的活,留下了难啃的骨头;
也可以说本文转载自公众号:芯片数字实验室
原文链接:https://mp.weixin.qq.com/s/jSgisDHCrpWJTYFMFzKFbA
未经作者同意,请勿转载!
推荐阅读
想了解更多内容,欢迎关注芯片数字实验室专栏,由于工具,你可以专注在更重要的事情上。