摘要:静态时序验证曾是寄存器传输级(RTL)抽象被接受的核心技术。它证明了只要最长组合路径能在时钟周期内稳定,功能就不会受时序影响。在 20 世纪 90 年代,这仅仅意味着累加门的数量,乘以门延迟,再与时钟周期比较。随后,布线延迟开始超过门延迟,计算变得依赖布局和路
芯片行业传统上依赖裕量来缓解时序问题,但如今越来越多的因素正在影响时序。静态时序分析(STA)能否演进以解决这些问题?
静态时序验证曾是寄存器传输级(RTL)抽象被接受的核心技术。它证明了只要最长组合路径能在时钟周期内稳定,功能就不会受时序影响。在 20 世纪 90 年代,这仅仅意味着累加门的数量,乘以门延迟,再与时钟周期比较。随后,布线延迟开始超过门延迟,计算变得依赖布局和路由,这推动了物理综合的采用,但延迟计算仍为固定值。
如今,影响时序的因素众多,且大多数与活动相关。更复杂的是,这些活动的影响时间跨度极大,从纳秒到工作时间不等。
在 STA 出现之前,所有设计都必须在门级进行仿真。西门子数字工业软件产品管理总监 Wei Lii Tan表示:“这不可扩展。当时我们无法对设计进行全定制仿真或晶体管级仿真,现在当然更不可能。设计规模越来越大,数字流程中需要考虑的效应越来越多。尽管如此,STA 一直在演进,并将继续演进以应对这些新影响。否则,我们必须对所有东西进行定制时序分析,而这是不可扩展的。”
如今,这并非影响所有人。Ansys(现属 Synopsys)产品营销总监马克・斯温宁(Marc Swinnen)表示:“大多数人只采用通用裕量。在通用裕量下,假设每个门的电压降最多可达某一值,因此每个门的速度可能降低相应幅度。但实际上,只有极小部分门会经历接近该幅度的电压降,对整个设计采用这种假设可能成本高昂。静态工具通常不依赖活动,而 STA 的优势就在于它与活动无关。”
需要考虑的因素很多。弗劳恩霍夫 IIS 自适应系统工程部门高效电子学负责人安迪・海尼格(Andy Heinig)表示:“我们采用经典方法,即为未知问题设置裕量。如今我们做的并非都那么先进,但我预计某一天这将成为必要。这与产品密切相关,包括产品类型、预期工作频率等,这使得决策非常困难。”
这是一种平衡行为。Ansys 的斯温宁说:“当芯片首次从晶圆厂回来时,其工作频率往往达不到预期。虽然裕量被认为更安全,且由于考虑了所有人的最坏情况,似乎不会遗漏任何问题,但事实并非总是如此。通过详细分析可能会发现,你遗漏了最坏情况,这完全取决于你愿意承担的风险。”
影响时序的因素有几个:最短时间尺度是 IR 压降,中等时间尺度包括热效应,最长时间尺度是老化。这些都与活动相关。3D 堆叠等新制造技术还引入了应力引起的时序问题。如果 STA 要保持相关性,就需要考虑所有这些因素。
短时间尺度
IR 压降发生在晶体管需要的电流超过某一时刻可供应的电流时。斯温宁说:“在新工艺节点中,更多晶体管被塞进同一区域,此外,这些晶体管切换更快,意味着电流需求更强烈、更突然。电流随时间的变化率(dI/dt)更大,而电流必须从本地供应。尽管片外有电容,但从晶体管的角度看,电容距离很远,其间的电阻很大,电流无法及时到达。如果电流无法到来,电压就会下降。这是一个局部问题,使用去耦电容更难解决。”
过去 10 年,这一直是先进节点的问题。Synopsys 高级产品经理马诺兹・帕拉帕西(Manoz Palaparthi)表示:“客户了解其影响,并且已经在为此设计。IR 高度依赖向量,因此将不同向量引起的最坏情况影响作为 IR-STA 的一部分来考虑是必要的。”
然而,这确实需要额外的分析步骤。西门子Tan表示:“大多数工具都有基于实例的 IR 压降静态时序分析。工具会获取每个实例的 IR 压降信息,根据进入每个实例的电压降计算影响,然后.lib 文件包含告诉 STA 工具逻辑块在该 IR 压降下如何行为的信息。”
每个门都需要根据电压对性能进行降额。斯温宁说:“需要为多个电压表征多个库,然后在这些库之间插值,以找到门在特定电源电压下的性能。给定电压值后,STA 工具就可以进行常规分析,只需根据每个门的实际电压更改其库信息。但这需要大量信息,通常只对关键路径或时序敏感路径进行。”
由于电压降与活动相关,存在未考虑最坏情况的风险。斯温宁说:“一些设计经历的电压降比预期大得多。当提高速度时,动态电压降可能会在某一时刻抑制性能,导致无法达到预期的目标性能,这通常是未检测到或逃脱的电压降情况。”
中长时间尺度
一个新兴问题是热效应,当 3D 堆叠变得更普遍时,热将成为延迟的主要因素。Synopsys 的帕拉帕西说:“到目前为止,这还不是问题,客户通过设置适用于整个芯片的统一降额来处理。但由于高性能计算(HPC)设计和多芯片堆叠,这种情况正在改变。现在,芯片上的温度影响并不均匀。如果采用单一降额或单一裕量,要么会遗漏某些情况,要么会过度设计。这就是热感知 STA 变得非常重要的原因。”
热影响正被纳入越来越多的工具中。斯温宁说:“即使在大型芯片上,也存在温度梯度。传统上,布局和路由工具并未真正测量温度,而是使用功率密度作为代理。功率密度是门使用的功率量,在一个平方区域内累加并给出一个数值,这是每个小区域产生功率的相对度量。功率密度较高的区域温度也较高,可以将芯片的不同部分区分为不同的 PVT(工艺、电压、温度)角落。”
老化和制造变化大约在 10 年前开始成为关注点,这对汽车等产品生命周期较长的行业至关重要。谭表示:“我们一开始采用统一降额,即增加 X% 的降额,只是为了为可能发生的变化留出裕量,这过于悲观。它首先演变为片上变化设置,后来演变为基于实例的设置。对于每个实例,工具会计算变化的影响。.lib 文件的方法也变得更精细 —— 不再是一刀切,因为一刀切更悲观。”
老化采用类似的方法。帕拉帕西说:“客户对整个设计应用设定的裕量来应对老化,但随着工艺节点缩小和电源电压降低,任何裕量都会在 PPA(功率、性能、面积)方面有所损失 —— 通常会牺牲性能。如今,我们正在进行真正的原生老化分析,计算老化对时序的影响,考虑不同的 BTI(偏置温度不稳定性)、不同的活动、不同的时间范围,然后进行原生老化分析,这正成为主流应用。”
随着行业继续采用 3D 堆叠,许多这些问题变得更糟。谭说:“热密度变大,协同优化开始发挥作用。例如,如何在两个相邻芯片 let 之间优化逻辑?在最基本的层面上,它仍然是 STA,但现在需要考虑更多因素。STA 必须演进得更高效、更精细。设计流程必须从布局规划到最终路由和签核阶段,都更加关注时序。”
这将成为第三方芯片 let 蓬勃发展之前的必要步骤。西门子数字工业软件产品管理高级总监乔・戴维斯(Joe Davis)表示:“在考虑芯片 let 设计时,无法对所有芯片 let 进行时序分析。根据集成方式的不同 —— 无论是集成到硅基板还是有机基板上,或者夹在不同材料之间 —— 其行为会略有不同。但所有组件之间都有接口和握手协议,这使问题变得可解决。未来将逐步引入更多创新来应对这些挑战。”
制造工艺也引入了新问题。帕拉帕西说:“应力是一个新兴问题,如今不如 IR、热和老化突出,但由于多芯片和 HBM 堆叠,一两年后它将变得重要。堆叠会产生大量热量和翘曲,应力将对这些市场变得重要。背面金属也会带来复杂性,当热量从底部传来时,影响将非常不均匀。如果冷热点之间的温差为 10° 或 20°,可能可以管理,但如果超过这个范围,就需要建模,因为它会影响时序。”
这一切都变得有点复杂。斯温宁说:“问题在于,如何为每个门分配温度、活动和老化状态。将所有这些信息整合起来驱动时序分析,这才是问题所在。不是最终的计算有问题,而是收集所有必要信息以准确捕捉芯片上的变化。”
没有所有人都使用的标准方法论,这很大程度上取决于所针对的市场、使用的技术节点以及频率压力的程度。
弗劳恩霍夫的海尼格说:“我们从旧的流片中学到经验。对于良率,你会对什么可行、什么不可行有很好的感觉。如果下一个产品在频率和技术上非常相似,你就有可以重复使用的良好知识。但如果切换到新技术,可能需要一两个周期来了解更多。可以通过重新设计改进,或者在下一代设计中改进。如果设计的是高产量产品,许多公司会进行重新流片以提高良率。如果产品产量较小,可能不会在裕量上过于激进。”
公司可以根据预期的问题程度逐步解决问题。谭表示:“如果看数字实现流程,它不是单一的同质流程。有些阶段需要进行宏观调整,如综合和布局,然后在接近尾声的阶段进行 ECO(工程变更指令)。可以进行大量微调,从使用降额和宏观调整的范围,到流程后期可以进行大量精细调整 —— 基于实例的 ECO 和基于实例的时序分析。”
需要帮助确保精力用在正确的地方。帕拉帕西说:“我们有基于图的分析,可以查看完整设计,提供整个时序的报告,然后对最坏和关键路径可以进行更详尽的基于路径的分析(PBA)。这为关键路径时序和 IR 敏感性提供了更详细和高度准确的局部分析。例如,可能有一条对 IR 高度敏感的路径,将这些路径标注回 IR 工具、获取 IR 影响,然后再次对这些路径进行时序分析非常重要。”
所有这些都需要尽早考虑。西门子的戴维斯说:“这就是架构师的价值所在,这就是为什么芯片设计中的布局规划如此关键。通过将组件放置得更近可以获得更高性能,因为这会减少延迟,但也会产生更多热量,从而导致速度下降,这需要平衡。”
许多因素与向量相关,虽然这些可能对分析 IR 压降有用,但对热和老化的分析不太现实。帕拉帕西说:“可以将向量作为输入,获取显示每个节点活动的 FSDB 文件,然后对整个设计进行活动传播。基于此,进行快速功率分析以获取时序影响。我们确实将其视为老化分析的一部分,但计算量很大。另一种方法是应用一些静态方法来解决这个问题,可以基于设计师的专业知识,对整个设计应用翻转率或静态概率。”
解决方案必须平衡准确性和计算成本。戴维斯说:“当涉及到非常大的系统时,必须使用无向量方法,但无向量方法无法告诉你任何事件何时会发生。热点在哪里?何时出现热点?这个布局规划是否可行?从物理角度来看,早期仿真变得更加关键。这是当今的一个挑战,因为很多仿真直到流程后期才进行。向左转移 —— 如何在真正了解之前获得足够好的模型?需要早期数据,可能不是完全准确,但有用。”
并非设计的所有部分都需要如此深入的分析。帕拉帕西说:“一些公司可能希望对 CPU 模块非常激进,因为这是他们在最大化整个芯片性能方面可以产生很大差异的地方,他们会花大量时间尽可能调整该模块的裕量。对于其他模块,则不会那么多,投资回报率并不显著。这取决于项目周期、复杂性、风险承受能力,也取决于所从事的应用。”
如果对遗漏风险的担忧让你夜不能寐,戴维斯提供了另一种选择:“一种逐渐流行的技术是在芯片中放置 IR 压降传感器或温度传感器,以便在检测到偏移时对时钟进行动态校正。如果你有一个安全阀,即‘如果 IR 压降偏移有可能导致竞争条件或性能问题,我将降低时钟频率,直到度过难关,然后恢复’,这确实会改变你对设计目标的看法。”
结论
尽管面临许多新增挑战,但只要有足够的计算能力,所有挑战都可以解决。戴维斯说:“关于 STA 消亡的报道被大大夸大了,它总有适用的范围。关键在于定义这个范围,随着我们逐步增加功能 —— 不同的电压、不同的温度或不同的工艺角落 —— 可以分析其影响。时序是最坏情况的传播,它表明最坏情况下,信号会在此之前到达,最坏情况下,会在此时切换。如果进行分区,总能定义一个该结论有效的区域。”
EDA 公司正在取得快速进展。帕拉帕西说:“这是一个非常有趣的时期,复杂性在增加,许多新效应正在起作用。IR、老化、热、应力 —— 这些对准确性和减少裕量极为重要。问题的另一面是,随着芯片 let 数量的增加、场景数量的增加以及每个芯片中单元实例数量的增加,STA 工具在计算需求和周转时间(TAT)方面面临巨大压力。该领域正在进行大量创新以解决这些问题。”
来源:大眼聊社会