新闻中心

EEPW首页 > 模拟技术 > 设计应用 > ASIC后端设计中的时钟树综合

ASIC后端设计中的时钟树综合

作者:时间:2011-05-23来源:网络收藏

2.1 布局阶段对时序的优化考虑
布局的好坏直接影响到时序的好坏。本设计采用时序驱动布局,时序驱动布局是基于连续收敛引擎而设计的,工具自动的寻找一些最关键路径,将关键路径上的单元放得很近,以减小连线长度来减小关键路径时延,平衡其setup时间约束,预先为这些关键路径留出足够的布线空间,提高关键信号线的可布通性。同时,为了减少拥塞度,对布局时的最大密度设置为70%,限制布局密度。时序驱动布局采用setPlace-
Mode-timingDriven命令设置布局模式,plaeeDesign命令执行布局。
如果只是依赖工具的时序驱动布局是不够的,为了尽量减小时钟偏移(Skew),采取的策略是,在时序驱动布局的基础上,进行手动的布局调整,根据时钟的不同,将各时钟控制的寄存器摆在靠近时钟源(Clock-source)差不多远的位置。这样,同一时钟到达各寄存器的时间差就不会太大,有利于减少插入buffer的数量,也有利于Skew的减小。
2.2 综合时的特殊处理
综合之前,需要通过约束文件来设置综合需要用到的buffer类型、时钟偏移的目标值MaxSkew、最大时延MaxDelay、最小时延MinDelay、最大扇出MaxFanout、时钟树布线规则等。本设计选用驱动能力为中间值的buffer类型来做时钟树综合,因为驱动能力大的buffer,面积也大,如果插入这种buffer太多,会对芯片的功耗和面积产生影响,而且这种buffer对于上一级也意味着更大的负载;驱动能力太小的buffer虽然面积小点,但是会增加时钟级数,产生的延时却是很大的,所以buffer的选择一定要适当,本设计在选用buffer时,将驱动能力最大的BUFHD20X和驱动能力最小的BUFHDLX去掉不选用。
对于Skew要求比较严格的设计,可以将时钟偏移目标值MaxSkew设置尽量小,工具在综合时会尽量的将Skew优化到接近到该目标值。但一般设计中,只要Skew能满足要求,就不要过分的将该值设小,因为工具为了接近该目标值会插入大量的buffer,从而占用太多的面积和太多功耗。因此,本设计选用MaxSkew的适当值为100ps。
时钟树布线规则是可以通过手动设置的,为了让时序路径的布线降低功耗,减小线路的延时,一般将时序路径的布线宽度和间距都设置的比默认值大,本设计采取一般信号线的两倍宽度和间距来布时钟信号线。而且在布线的时候,采取时钟树优先布线的策略,充分保证时钟树路径的布通。经过encounter工具自动CTS后的时钟树分布图如图3所示。

本文引用地址:http://www.eepw.com.cn/article/187514.htm

c.jpg


2.3 时钟树的手动优化
工具自动的时钟树综合总是会有一些skew没有满足设计要求,工具自动插入的一些buffer也不一定都合理,一般情况下,encounter自动综合产生的时钟树是不满足要求的,在经过了时序分析后要进行必要的修复优化。总的原则就是想办法平衡各线路的延时,一般的优化途径有以下一些:
(1)在时钟信号源(Clock Source)处手动添加驱动能力很大的drive cell,因为时钟树一般扇出很大,负载很大,所以在时钟源点处需要驱动能力大的门单元,更大驱动能力的门单元可以明显减少延时。
(2)替换(Re_sizing)驱动能力不一样的单元,尤其是buffer单元。时钟树综合完成后,经过仔细的时序分析后,根据时序分析结果报告,分析Skew违规原因,找出导致Skew违规的路径,根据延时情况来替换一些驱动能力不同的单元,如buffer等,使其延时情况与其他时钟信号线相平衡,从而达到减小Skew的目的。



评论


相关推荐

技术专区

关闭