2.4 时钟树综合

时钟树综合阶段首先要确定时钟树所采用的标准单元类型及驱动能力,以及期望的时钟偏差。对于关键的时钟树电源进行指定位置的放置[3]。完成时钟树综合后,先针对全局时钟偏差(global skew)进行时钟树优化,再针对局部时钟偏差(local skew)进行时钟树优化,最后给出时钟偏差的分析。生成时钟树之后,对时序给出分析并进行优化,此时的时序优化可称为时钟树后时钟优化。

2.4.1 CTS Specification介绍

CTS Specification包括了clock的定义和绕线类型的定义,并针对主树和叶子端采用不同的绕线规则,其中会采用非常规设计规则。另外,会设定clock group、exclude pin、through pin和leaf pin等。同时,会指定时钟树的最小长度和最大长度、时钟偏差的最大值,以及时钟树的扇出设置和转换时间(transition)等。

2.4.2 时钟树级数

时钟树由时钟输入端、缓冲器和寄存器组成。时钟树级数是指最长时钟路径中从时钟输入端口到寄存器时钟输入引脚的缓冲器的数量,常见的时钟树级数如图2-22所示。

图2-22 时钟树级数

2.4.3 时钟树单元选取及分布控制

时钟树综合采用的缓冲器或反相器和普通的缓冲器或反相器不同,该类缓冲器或反相器在普通的缓冲器或反相器的基础上添加了去耦合功能,从而保证在高速的时钟信号传输中,降低耦合电容,减少连线延时。

常见的时钟树单元的驱动能力分为1X、2X、4X、8X、16X。通常在主时钟树上采用较大驱动能力的单元,保证足够的驱动能力和减小时钟树级数,在叶子端(leaf)采用驱动能力较小的单元,保证整个时钟树的延迟平衡。

2.4.4 时钟树的生成及优化

时钟树的生成及优化分为时钟树综合、全局时钟偏差优化和局部时钟偏差优化三个步骤。优化后生成的时钟树报告如图2-23所示。其中,skew指两条时序路径上的延时偏差;Global skew是指同一棵时钟树上,任意时钟路径上最大的skew;Local skew是指同一棵时钟树上,有逻辑关联关系的最大的skew;Group skew是指不同的时钟树上,任意时钟路径上最大的skew。

图2-23 优化后生成的时钟树报告

新兴的时钟树时序协同优化(clock concurrent optimization,CCopt)技术在时钟树综合的基础上,同时考虑了时序的要求,即在原有CTS之上引入时序约束,从而能够有效利用时钟偏差来优化全局时序,使得时序能够加速收敛。