完美风暴
在工艺尺寸的缩减过程中,阈值电压早早地停止了追随摩尔定律的脚步。
“实际上从16nm开始,阈值电压就没有真正改变过了,”Geada说。“不过降低供电电压的压力一直存在,因为这是降低功耗的最简单方法之一。所以,尽管阈值电压不再改变了,你依然存在降低供电电压的竞争压力。随着供电电压的下降,每个单元的电压裕度越来越小了,这时,由于金属层和内部阻抗以及同时性的开关动作,供电行为变得不可预测了。所有这些因素都使得时序变得不可预测了,除非你能够使得时序能够适应电压条件。现在,你不仅需要灵活掌握供电网络的运行方式,还必须知道供电网络对时序的影响。”
在7nm工艺上,过去只需要单独考虑的许多常见因素变得互相关联了,比如时序、供电和发热。“过去,我们考虑发热时只需要担心它带来的物理损坏和长期影响,”Johnson说。“通常整个硅片都遵循同一个热梯度,但是现在不同了。你需要研究之前从未考虑过的影响时序和路径的热梯度。需要研究TSV的电感效应、耦合效应。EMI问题也变得不同了。”
最重要的是,这些芯片内部的复杂程度要高得多,从而使得单独处理问题变得愈发困难了。
“我们的客户正在试图将更多功能集成到7nm芯片中,芯片变得越来越大,”Synopsys接口IP部门产品营销高级主管Navraj Nandra表示。“这迫使人们考虑芯片-to-芯片或者芯片-on-芯片或者裸片-to-裸片多种解决方案。此外,人们也倾向于从外围获得更多信号,以及降低电源/地的数量。电源完整性工程师、负责签核的人员和希望能够在芯片上处理更多信号和功能的芯片架构师之间对此并没有形成统一的意见。”
分析
分析工作从最坏的情形开始。“对于有些应用程序,我们可以对典型或常见的使用情景和边界使用情景进行一些有根据性的猜测,”Microchip的Sheerin解释道。“我们可以执行针对这些使用情景的分析。在有软件的器件中,我们必须猜测软件要执行哪些功能,哪些计算是常见的,哪些计算是罕见的,这使得分析变得非常复杂。”
要解决分析的复杂性问题,需要进行仔细分析。“为了执行功耗分析,我们需要了解芯片内部活动,”Zhao说道。“活动分为无矢量和矢量型两种。你可以启动系统或者玩视频游戏,这些都是可以看到真实活动的地方。消耗最大功率的活动时间窗口通常能够决定芯片的最大功率、芯片上的最高温度以及芯片上最差的时序偏差。”
但是这些方法已经不能覆盖完整的分析了。“压降和静态时序的相互耦合成为电气签核的基石,”Zhao解释道。“你不能单独签核压降和静态时序的某一项。即便你在关键路径上使用有效供电电压对每个实例进行了签核,你无法保证芯片生产出来后不会失效。这种耦合不仅仅是压降自身,它更像是关键路径对电压变化程度的灵敏度。”
也许更加令人不安的是,最坏的情形并非你所认为的那种情况。
“16nm是在高压角上执行电网分析,”Geada警告称。“在低电压下,系统消耗的功率更低,电压更低,此时的系统变得对任何少量的电压降都非常敏感。你正在以接近阈值的供电电压运行大部分单元。因此非常小的电压降变化都可能导致延迟呈指数级变化,这可能会导致低压角上的时序发生意外。在高压角上,电压时序和温度也会互相影响。所以,你不能再只观察一个电压角就把它们推广到其它电压角上了。”
有的路径甚至处于隐身状态。“对于有些路径,按照传统方法来看,它可能并不是一条关键路径,”Zhao确认道。“这个路径的时序特性很好。但是在现实运行中,这条路径可能对电压变化非常敏感。因此,某种模式将触发这种敏感,导致时序违反签核条件。”
避免
设计团队可以做些什么避免供电带来的各种问题呢?“你不能不考虑其他设计而独立设计供电网络,特别是供电网络和时序已经确定无疑地互相耦合的时候,”Geada说。“这不是那种通过提供时序余量就能够保证安全设计的问题,你必须分析供电网络在关键时序角的行为,而不是仅仅从该设计的峰值功耗和大的di/dt事件来分析供电网络。你还需要分析供电网络对时序的影响,以及时序对供电网络的影响。”
设计团队还需要了解发热等因素带来的短期影响和长期影响,并在其间进行权衡。“在很多情况下,通过设计一种热保护机制,便可以在无需担心可靠性或质量问题的情况下更接近最高运行速度,”Sheerin说。“因此,如果你在芯片中拿出一部分电路监控芯片温度,并且保证它可以在过热时正常关闭,那么你就已经覆盖了很多最坏情况,可以你可以更加积极地实施其它热设计。”
芯片、封装和电路板都是耦合系统的一部分。“在项目早期开始设计供电策略,并将封装纳入研究范围内非常重要,”Heinig建议道。“之前通常的做法是在不考虑封装的情况下开发供电策略。通过装配设计套件在芯片设计早期将供电和封装进行协同优化,非常有助于避免以后出现问题。”
设计自动化
EDA可以独立解决上述这些问题的一部分难点,但是完全解决仍然需要人的参与。
“在具体实施阶段,你必须考虑因为电压下降带来的潜在危害,”Zhao说。“通过优化布局,你可以减少或者消除IR降或者发热点,对时序来说同样如此。所以,如果有时序问题,工具可以执行本地ECO来解决这个问题。作为一家工具公司,我们需要做的就是进一步改进技术,将更多预测和机器学习相结合,以引导用户解决问题。将来,EDA可以解决大部分问题,但是关键问题仍然需要工程师大牛的支持。”
Johnson同意这种观点。“记得在2005年,功能和时序的耦合成为一个棘手问题,但是到了2007年,业界就已经将解决方案内置到P&R算法中了。这次可能不会解决得那么快,但是我希望EDA系统可以作出自己的贡献。但是,当我们解决7nm的供电耦合性问题后,到了5nm和3nm时可能又会再次出现。这一波问题可能会伴随我们挺长一段时间。EDA可能会解决一些7nm时的问题,但是5nm又会带来一系列新的突发问题。”
而且,上面所说的这些只是工艺节点迁移变得更加困难的原因之一。Johnson说:“我们从来没有遇到过这种耦合性的复杂问题,整个行业将积极回应,但是它非常复杂,比前几代更难以解决,这是我第一次看到跨域耦合的挑战。”