3.6 时钟树综合:让时钟同时到达


3.6 时钟树综合:让时钟同时到达

本节摘要:时钟网是全芯片扇出最大、要求最苛刻的一张网:数十万个触发器的时钟引脚要在皮秒级偏差内同时收到时钟沿。本节讲清偏差(skew)的来源与预算账、三类时钟树拓扑(H 树、生成树、DME 精确算法)的机制与取舍,以及时钟树综合在流程中的位置与其对功耗的巨大影响。SVG 图将对比三类拓扑的结构与偏差特征。

一张网的特殊待遇

普通信号网延迟几百皮秒无关紧要,只要数据在周期内稳定到达即可。时钟网不同:它的使命是给所有时序单元提供一个对齐的时间基准,任何到达时间差异(时钟偏差 skew)都直接从时序预算里扣除或补贴。一个十万个触发器的模块,时钟引脚的分布散布几毫米,若时钟信号从单一驱动器直接拉到每个引脚,到达时间差可达数百皮秒——1 GHz 设计中周期才一千皮秒,偏差就吃掉三成。时钟树综合(CTS)的任务就是把这张星形网改造成一棵精心平衡的树,把偏差压到几十皮秒以内。

先算清预算账。偏差的定义是任意两时钟引脚到达时间的最大差。对建立检查(setup),捕获端时钟比发射端晚到反而有利(多借到时间),早到则扣预算;对保持检查(hold)方向相反,发射与捕获是同一时钟沿时偏差直接叠加到保持路径上。工程上常见的偏差预算:1 GHz 设计的全局偏差控制在周期的 5% 以内即 50 皮秒,先进工艺的 CPU 核甚至要求 10 皮秒级。CTS 的输入正是这份预算加上时钟网定义、触发器坐标、缓冲器库,输出是一棵缓冲器树的网表。

H 树与生成树:两个方向的早期方案

H 树是最直观的几何平衡:从时钟源头出发,每次分叉都走几何对称的两条支路,逐级分叉直到覆盖所有叶子。纯 H 树在叶子均匀分布的理想网格上偏差近乎为零,结构规整得可以画在方格纸上。但真实触发器分布不均匀——存储阵列区密、随机逻辑区疏——H 树的叶子数目与位置对不上真实需求,工程上只用于规则阵列(存储器、规律数据通路)。它更大的价值是概念上的:平衡不是靠碰运气,而是靠结构对称性获得

生成树方案(method of trees and edges)走另一极端:把时钟引脚当成普通节点跑最小生成树或斯坦纳树,再在长边上插缓冲器。它的线长最优(总连线最短),但偏差完全失控——树的自然结构对不同深度路径的延迟差异没有任何抑制。早期工具用"可调延迟"补救:在浅路径上人为加延迟单元对齐深路径。这条路线暴露了时钟树的根本矛盾:线长最优与偏差最小是两个目标,单目标优化必然牺牲另一个

DME:从合并点到精确解的算法转折

DME(Deferred-Merge Embedding)算法是时钟树综合的算法转折点,它解决的问题是:给定一棵自底向上逐对合并的二叉树拓扑(每步把两个子树的驱动点合并并插一个缓冲器),如何选择每个合并点的几何位置,使总连线最短且叶子偏差为零。DME 的洞察是把问题拆成两遍:自底向上的"合并段"计算——每对子树自下而上算出各自的"延迟-半径"折线(子树内在其驱动点周围存在一个可行区域,驱动点放在区域内部任一点,子树偏差与线长都可控);自顶向下的嵌入——从根开始,把每个父节点的位置定下来,再在父节点的可行区域内选使子树线长最短的位置放合并点。两遍下来,零偏差约束下的线长最小解被精确求出(在合并拓扑给定的前提下),这是时钟树综合里少有的精确算法。

DME 只解决"拓扑给定后的嵌入",拓扑本身(谁和谁配对合并)仍需构造:密度聚类的合并策略(相邻近的引脚先合并)、考虑缓冲器负载的容量约束、以及对工艺不对称的修正都在拓扑层解决。工业 CTS 引擎在此基础上叠加更多现实因素:不同触发器时钟引脚的负载差异、时钟门控单元的插入(省功耗的关键,见下)、OCV 变异余量(第 4 章展开)、以及与时序分析工具的闭环——CTS 后立即跑 STA,把实测偏差反馈回树结构调整。

图:三类时钟树拓扑的结构与偏差对比

图:三类时钟树拓扑的结构与偏差对比

时钟门控:CTS 顺手的省电生意

时钟网的翻转率是 100%——每个周期两次翻转,而数据网平均翻转率只有一成上下。这使时钟网成为动态功耗的第一大户:典型设计中时钟分配网络消耗全芯片动态功耗的三到四成。时钟门控(clock gating)是针对性的省电手段:模块空闲时把它的时钟分支关断(用带使能的锁存门控单元)。CTS 工具在建树时同时寻找门控机会——哪些寄存器组在同一使能下可以共享一个门控——好的门控策略能砍掉两到五成的时钟功耗。门控与时钟树结构互相影响(门控单元本身就是树上的中间节点),所以现代工具把两者放进同一个 CTS 流程联合处理,而不是先后两步。

有用偏差(useful skew)再补一角:偏差并非总是敌人——刻意让关键路径的捕获端时钟晚到、发射端早到,等于把周期预算从富裕路径挪给紧张路径。DME 的零偏差框架可以推广为"目标偏差"框架:给每个触发器指定一个目标到达时间,算法求满足目标的最短线长树。代价是账本变复杂:一处挪借,上下游路径的检查全部要重新核算,签核工具必须全盘感知。工业用法因此保守:有用偏差主要做局部的最后几个皮秒的抢救,而不是全局重新分配。

CTS 与后端流程的接口再交代清楚。时钟树综合插入了大量缓冲器,直接改变布局的密度分布,所以先进流程的顺序通常是"布局、CTS、再布局优化(post-CTS optimization)、布线",而不是一条直线走完;CTS 之后单元数量可能增加百分之几,拥挤区域需要局部重排。另外时钟树的金属资源是独占优先的——布线器会为时钟网预留高层轨道。理解了这个接口,你就能理解为什么 CTS 质量的两个指标(偏差与插入延迟)之外,工程上还紧盯着第三个:缓冲器数量与总面积开销,它直接挤占数据通路的资源预算。

本节要点回顾

  • 时钟网特权:偏差直接进时序预算,1 GHz 设计偏差预算约 50 皮秒,高频核 10 皮秒级。
  • H 树:结构对称天然零偏差,但要求叶子均匀,真实分布下失配。
  • 生成树方案:线长最优偏差失控,靠插延迟补救,先进节点弃用。
  • DME 两遍法:合并段计算加自顶向下嵌入,零偏差约束下线长精确最优。
  • 时钟功耗:时钟网占动态功耗三到四成,门控与建树联合决策可省两到五成。
  • 闭环结构:CTS 后立刻 STA,实测偏差反馈修正,树不是一次建成的。

作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U