中文 英语

权力领域实施挑战升级

更多的功率域增加了芯片的复杂性。在整个设计流程中做更多的工作可以帮助限制功率并避免调试问题。

受欢迎程度

随着芯片架构师在芯片和系统中构建更细粒度的控制,数字幂域正在上升,这大大增加了整体设计工作的复杂性。

不同的权力域是不同功能划分的重要组成部分。这种方法允许封装中的不同芯片和SoC中的不同块以足够的功率继续运行,以满足其需求,并在任何可能的情况下关闭。但从设计过程的一开始就变得越来越复杂,首先要确定需要多少功率域。

PowerArtist的产品管理主管Preeti Gupta说:“现在比以往任何时候都更难确定需要多少功率域才能达到功率预算。有限元分析软件.“对于移动手持设备,我们需要特别注意节省电力,因为与墙壁电源设备相比,它们是靠电池运行的,在电力领域实现方面要复杂得多。当今领先的移动设备包含数百个功率域,因此开销绝不是微不足道的。一位工程副总裁最近表示,如果在设计流程的早期,就有一种很好的机制来估计真正需要多少功率域才能达到功率预算,那就太好了。”

使用多个电源域的主要目的是节省电力。“你试着把你的设计划分到不同的区域,其中一些区域可能有不同的电压供应水平,或者可以单独关闭,断电,或上电,”Henry Chang说,产品管理高级总监西门子EDA.“如果某些逻辑在某个时间不需要了,可以将其关闭以节省电力。物理设计人员要实现多个功率域需要做的第一件事是,除了逻辑设计网表之外,还要在CPF或UPF中提供功率意图。例如,趟车用于定义设计的哪一部分应该在电源域1中,另一个定义将指示在开关电源域2中,其余部分在常开电源中。一旦定义好了,就必须在物理域中反映出来。这是第一步——从权力意图映射到物理领域。”

下一步是在每个电源域中为电源开关单元预留空间,它将接收打开或关闭电源的信号。Chang说:“功率域电池不能只是一个电池,因为一个电池不足以驱动一个大的功率域。”“有几种设计方法,这取决于建筑师或设计师来定义什么是最好的设计。他们可能会决定将所有的功率域置于边缘,或者在整个设计中像棋盘一样放置它们。他们需要确保有足够的电源开关电池来驱动所有的电力。”

一旦创建了权力域,就会出现许多问题。Ansys的Gupta说:“假设电源从关闭状态重新打开。“设备的功率较低,现在一个功率域正在打开。突然,它从电源中吸收了大量电流,因为所有这些打开的设备都从电源中吸收了电流。当这些情况发生时,会导致称为di/dt的高电流浪涌。从抽象的角度来看,这些芯片位于一个封装中,封装由电感控制。因此,电流的电感浪涌结合起来,在电压供应中产生显著的下垂,然后可能导致定时故障。这只是需要在设计中考虑到的场景的一个例子。否则,如果你有一个没有功率域的常规设计,你仍然会有设备所需的电流量的变化,这取决于设计的活动。但当有这些大的能量域时,它就像一个巨大的按钮,你可以打开和关闭。 It leads to a bigger step function. This also means that if there is a big current surge within a block, the voltage must stabilize before the block can be used reliably, which impacts performance when the block is switching on and off.”


图1:复杂芯片中的功率完整性映射。来源:有限元分析软件

权衡的问题
有与此活动相关的延迟方面。这需要管理功率控制开关,与大小和放置一起使用。所有这些都必须在物理设计流程中进行整理。

西门子EDA的Chang说:“如果你试图打开整个电源域,而电源域有100个电源开关单元,如果所有这些单元同时打开,它们就会开始为整个逻辑区域供电。”“这导致了涌流,这意味着所有的电流瞬间都进入了这个小功率域。然后,因为IR降,其他逻辑可能会被打乱。用于防止这种情况的最常用方法是菊花链,这意味着电源使能信号按顺序通过电源开关单元传播,因此它们不会同时打开。有一点间隙,这样你就可以把峰值电压降保持在最小。对于特定的设计,什么是最好的必须在体系结构级别上确定。那些是电源开关电池。一旦你完成了电源开关单元,那么在你的电源域的边界,你需要考虑两件事。一个是,如果你的电源域是1.3伏,但其余的是1.5伏呢?然后,要改变电源电压水平,您将需要插入一个电压转换器。1.5伏电压将被电平转换器转换为1.3伏,这样双方都能正常工作。”

当功率域关闭时,功率域的输出信号瞬间变成X,表示待定。这不是“逻辑开启”或“逻辑关闭”。

“基本上,你不知道,这可能会给设计带来问题,”Chang说。“在这里,需要一个隔离单元,这是功率意图规范的一部分,也是UPF的一部分。在UPF中,您需要告诉工具哪个单元,当它关闭时,哪个信号应该被固定为1,哪个信号应该被固定为0。然后你就可以为剩下的设计提供这种可预测的逻辑关卡。”

实现多功率域的另一个重要考虑事项是使用始终开启的缓冲区和功率岛。Chang说:“设计架构师需要做大量的实验来找到实现这些的最佳方法。”“有两种方法。一种是创建功率岛,另一种是在功率域内允许一个始终在线的缓冲区来保留flop。每种方法都有优点和缺点,所以这是设计师需要注意的重要内容。通常,如果路由资源是有限的,那么您可能会使用一个电源岛。如果你的时间更重要,那么你可能想要使用一个永远在线的缓冲区。”

“多个电源域也意味着不同的块可以在不同的电压下工作,并且可以关闭,这样,如果某些块在特定的操作模式下处于非活动状态,它们可以完全断电,”研究人员Godwin Maben说Synopsys对此的家伙。“设计师和芯片架构师必须问的一些问题包括电压是否固定。此外,这些电压是否通过软件和内部稳压器(DVFS)根据模式动态变化?还是通过PVT监视器或功能监视器(AVFS)的内部硬件进行更改?”

根据Maben的说法,所有这些需要最终确定的方法都考虑到了许多问题。其中包括:

  • 如何定义每个离散电压的终止角;
  • 是否有这些电压的特征库;
  • 有多少时钟周期用于电压变化和电压/锁相锁;
  • 该设计是否从物理角度进行架构,以处理多个电压岛;
  • 水平位移可用于适应块之间的通信,和
  • 如何构建PG网格以适应各种物理方面,如域之间的隔离,以及nwell隔离,nwell电压等。

关闭区块有一些重要的考虑因素。

“你应该关掉电源还是电源?”通常情况下,你会关闭电源以获得更好的电源完整性和唤醒时间,”Maben说。在内部,关闭电源/接地是通过NMOS/PMOS开关完成的,或者是外部电源门控的。”

这里,重要的是确定唤醒时间要求,是否有多种睡眠模式,如冬眠、打鼾、深度睡眠、半睡眠等。可能有多达10种睡眠模式。另外,nwell/pwell会一直开着吗?如果关闭了nwell,则需要查看合并/拆分的nwell物理实现。这需要特殊的电池,如绝缘缓冲器/逆变器/LS等。还需要询问如何在RTL/Final GLS中验证上电/下电序列。LEC是否足够好,GLS是否足够好?因为电源开关很容易漏电,所以增加电源开关的漏电补偿是多少?

Maben指出,为永远开机的细胞充电是非常具有挑战性的。需要最终确定的物理方法包括加油站、AON缓冲器/逆变器和分离的AON岛。必须确保最小的红外落差,这可能包括二级PG网格设计和路由。可能存在唤醒时间要求的物理处理,其中电源开关以菊花链、鱼骨、高扇出和低延迟配置连接。

物理方法还必须包括急流分析和方法,具有单管、双管或零管脚保留寄存器。

Synopsys IC Compiler II的产品营销经理Preeti Jain指出,还有其他考虑因素,设计人员应该注意设计分区、关键路径定时、电压缩放的多角/多模式优化、设计规划、电源规划和时钟树综合。

“设计分区可能会对设计的整体性能产生重大影响,因为在分区期间引入的新接口可能包含隔离单元格和电平转换器,”Jain说。“通过保持逻辑层次结构和功率域结构之间的强相关性,可以将穿过功率域接口的信号数量降至最低。这最大限度地减少了为维护电气完整性而引入的逻辑量,从而最大限度地减少了对设计的QoR影响。”

在关键路径计时方面,提前投入时间仔细构建电源域有助于减少对物理设计和系统计时的影响。UPF是定义功率意图规范的全球标准。她说,确保关键路径的时机,特别是在功率域接口周围,是关键。

接下来,需要针对每个多角多模式场景进行设计优化和分析。“客户反映,识别最坏情况的角落现在是他们实施过程中重要而不可分割的一部分。今天的高级实现工具使用场景规范作为优化的约束角。在使用MCMM技术时,在处理多个场景的运行时时获得良好QoR的平衡方法非常重要。”

Jain指出,越来越多的用户依赖于自动化工具流程,因为高效的SoC设计规划正在成为实现多功率域设计的一个非常关键的步骤。她说,需要仔细考虑几个因素,如电平移位器和隔离单元带来的额外延迟,电源网格中IR下降的增加,以及开关单元和保留失败导致的拥塞增加,因为它会导致QoR退化。功率意图需要覆盖在物理设计过程中,以避免限制最终的QoR或对位置优化过程施加任何限制。

多个电力域需要仔细和详细的电网规划,因为电网可能变得非常复杂。“每个电力领域都需要一个单独的电力轨道结构,”她说。“这些额外的动力轨道引入了不同程度的红外下降,限制了可实现的电力效率。每个电源轨道还需要芯片上的电源分配,这需要花费面积,并进一步使电源规划和物理地板规划复杂化。先进的EDA工具提供了自动化电网综合(PNS)功能,用于在整个设计中分配电力,以帮助实现多电压设计。”

此外,一个时钟树在设计中起着重要作用的整体功耗。”时钟门控最小化时钟树插入延迟可以减轻时钟树电源的影响。多电压设计给时钟树带来了额外的限制,以满足低功耗和高性能的要求。如果时钟路径缓冲和数据路径缓冲没有很好地平衡,倾斜管理将变得非常困难,”她说。

需要全面的方法
实现多个权力域不仅仅局限于物理实现。它需要整合到整个设计过程中。

“需要一种全面的方法,”阿卡什·贾尼(Aakash Jani)表示Movellus.“如果你不在架构阶段采取整体方法,它确实会导致时钟网络的冗余。它可能会导致冗余,可能会导致增加的功率惩罚,可能会导致更高的芯片变化惩罚,这可以用更慢的时钟速度来补偿。这反过来意味着更低的性能或更少的可用时钟周期。”

当架构师开始设想他们的产品,并开始决定使用多种功率状态时,Jani说他们必须了解设计中有多少将驻留在每种不同的功率状态/功率域。“通过了解设计将在一个功率域上花费95%的时间,而在另一个功率域上仅花费15%的时间,架构师/设计师可以开始使用不同的杠杆,使用始终打开的模块,而不是在时钟主干上进行复制和时钟控制。随着电源状态的定义,可以拉动不同种类的杠杆,而时钟网络是与之共同设计的。”

例如,不同的功率域就有不同的时钟域,他说。“当你有定时信号和数据路径时,穿过这些路径中的每一条都将创建跨域时钟路径,这开始最大化芯片上的变化惩罚。随着芯片上变化的增加,这开始消耗可用的时钟周期,并消耗可以为性能所做的工作,或者为动态功耗所做的工作。最重要的是,如果你有,比如说,五个功率域,如果你不在架构阶段共同设计,物理设计工程师可能会受到限制。有了五个功率域,他们也可能会创建五个时钟域,这在他们开始将时钟网络传递到每个不同的功率域时产生了很多冗余。”

贾尼说,最后要看的是功率损失。“如果你弄清楚在哪里可以使用永远在线的域,而不是必须对它进行电源门,然后根据实际功耗以及用户在该电源状态和电源域上实际花费的时间,你也可以开始弄清楚如何规划永远在线的域,并围绕它设计时钟结构。整个想法是采用时钟网络,并与功率域共同设计,以最小化来自时钟消耗的动态功率。”

早期分析至关重要,UPF是其中的关键要素。

Ansys的Gupta表示:“UPF在早期电动工具的指定和‘假设’分析方面发挥了重要作用。“通过UPF约束文件,你可以指定,‘我想让这个块使用这个控制信号来打开和关闭。“所以你可以创建一个原型场景,模拟那个场景,然后得出它的幂数。它为你提供了一个工具,让你在实施所有这些权力领域时,可以早期了解到什么是值得的。”

这里发生了很多事。例如,记忆有自己独立的能量域。古普塔说:“这是非常精细的电源控制,尤其是在设备上。”“几年前,当它还不那么复杂的时候,芯片架构师会利用他们的经验来确定应该实现多少功率域,以及需要功率门控的区块。但是,复杂性已经变得如此之大,没有自动化就无法做到这一点。有一些工具允许设计师指定这些约束,但它们有自己的语言。UPF是一种通用语言,使设计师能够预先进行‘假设’原型分析。”

公司解决方案和生态系统高级集团总监Frank Schirrmeister说节奏表示同意。“对于芯片设计师和芯片架构师来说,多个电源域的成本远远超出了物理实现的范围。通常有数百个域,团队需要首先在模拟和仿真中仔细评估UPF验证。这些设置的成本可能是可观的。他们还需要考虑权力域之间的通信方面及其验证。”

结论
Schirrmeister说,结合团队在动态功率分析中看到的效果,受控制各种功率域的软件的影响,芯片架构师有时不得不考虑增加功率域的投资回报率,而不是作为平衡整体功率包线的一部分所需的验证工作。

西门子EDA的Chang指出,最耗时的活动发生在电源规格尚未完成的时候。“如果在功率意图文件中出现了错误,那么在设计的最后阶段就需要花费更长的时间进行调试。”

最后,虽然实现多个功率域可能具有物理挑战性,但这些问题正在得到解决。Maben说:“市场上有成千上万的芯片采用90nm以上的硅,并且有非常成熟和成熟的技术来满足当今设计的高性能/低功耗需求。”



留下回复


(注:此名称将公开显示)

Baidu