高算力芯片正处于转折点。功耗一直是二等公民,但正在成为芯片技术走向未来的最大限制因素。
在基于RTL的芯片研发流程中,我们对于RTL开发时的功耗优化投入了大量精力,但这只是可以节省的功耗的一小部分。该行业转向更大算力系统的愿望受到热量的限制,因此越来越关注减少每个操作所消耗的能源。
要取得重大进展,就必须打破孤岛。
在许多情况下,系统需要硬件和软件、数字和模拟、半导体架构师和封装等团队齐心协力创建解决方案。
没有一个团队可以完成所有工作,但一个团队肯定有可能破坏其他团队所做的所有工作。
功耗一直是并将继续是一个主要的限制因素。热密度Thermal density仍然是一个挑战,并导致越来越多的布局限制,特别是对于CPU和其他热密度高的区域。
在寻找新的封装解决方案时,挑战会越来越大。摩尔定律正在放缓,性能和功耗不再通过转移到下一个技术节点而自动提高。为了让多芯片系统multiple dies成为算力继续扩展的灵丹妙药, chiplets的功耗需要在架构层面得到更多关注。
系统的重点已经从低功耗转向能源效率。Performance per watt在数据中心应用中绝对至关重要。
高性能、低面积架构将具有高功耗,这可能导致下游的热问题。能源需要架构化,任何优化电源的方法都必须提高整体的能源效率。只有当所有所做的工作都是有用的时,理论上的能量消耗才有可能降低。
实际上,必须确保消耗的能量与完成的工作量成线性比例。从idle情况到功耗峰值情况,不同场景的能源状况可以揭示需要关注的功耗优化方向。
我们需要更多地了解系统将如何工作,系统可能有不同的目标和不同的工作负载。功耗优化方向不是凭空想象出来的,开发团队中的每个人都必须朝着这些目标努力。
内存
将数据从一种形式传输到另一种形式不会有本质区别,内存墙是一个一直存在的问题,因为不会执行任何有用的计算。
内存墙一直是性能和功耗的的壁垒,整个芯片行业现在正在更深入地研究如何将其最小化。
减少内存访问的功耗浪费正变得至关重要。如果你在执行某些指令时,能量会花在哪里?数据移动,无论是来自cache还是来自内存,都是其中的更大部分。数据传输能耗的降低是电源效率的一个前沿领域。2.5D和3D的一大优势是试图减少这部分能量消耗。
芯片行业,特别是大算力芯片行业必须更聪明地最大限度地减少数据移动。随着大模型的出现,数据移动变得越来越多。有报道称,大约90%的能源用于移动数据而不是计算。现在,情况变得更加恶劣。
一些不必要的数据移动是由于孤岛造成的。传统上,我们在 GPU 和 CPU 内存之间是隔离的。他们没有共享内存,这意味着你必须将同一物理内存系统中的副本复制到同一系统中的另一个区域,以便 GPU 可以对其进行处理。这是非常浪费的。
现在,我们必须打破这些!!!
随着 AI 模型变得越来越大,不可能将所有东西都放在芯片上或本地,所以你必须把东西换进换出。试着更聪明地优化移动的距离,尝试构建网络或片上网络,以将数据移动到其最近的节点。尽管会有一些交换,但只要减少交换的数量,并减少它穿过芯片的距离,一定就会有所帮助。
近内存计算Near-memory compute和在内存计算 in memory compute也是多家公司正在使用或者研究的技术。
后端降低功耗
虽然有人说大多数大型优化都是在系统级别进行的,但仍有许多后端降低功耗的余地。工艺节点通常为我们提供了较低的电压,虽然我们没有获得一些我们已经习惯的扩展优势,但每个工艺节点的功耗终究仍在缩小。
大多数公司的硬件系统都有横向扩展策略,例如板上有多个芯片,系统中有多个板,机架上有多个系统。最终,应该能够以二维方式拟合所有模型。另一种方法是垂直。通过垂直,穿过不同的芯片,我们可以使用不同的存储器技术。我们可以利用更密集的内存技术,如DRAM。这将给我们提高至少一个数量级的内存密度。
使用 3D 还有其他优势。最近出现了从单片 2D 集成设计转向从异构制造工艺映射到多个芯片的设计,并使用先进的 2.5D/3D 封装进行集成。这使得最新的工艺节点可以有针对性地用于对能源效率最重要的领域。先进的 3D 集成提供了通过提供更大的本地化缓存或采用新的颠覆性内存技术来更改内存层次结构的机会,同时仍保持低访问延迟并降低系统功耗。
例如,在当今的云计算中,我们看到的许多挑战都与计算密度有关。先进的 3D 集成通过为 SoC 网络架构提供额外的垂直维度来实现并行性。
距离是关键。互连本质上是给芯片带来电容负载,并且随着信号转换,电容需要充电和放电。动态功耗的公式是电容乘以电压平方乘以输入pattern。当缩短互连时间时,电容会降低,就像 3D 集成一样。
还有电压。低压差分信号(LVDS)领域有一些工作,其中信号在芯片之间没有完全摆动,但它们本质上更像是模拟的。电压摆幅减小,因此与电容充电和放电相关的功耗也降低。
垂直堆叠可以提供显著的优势。在 3D 垂直堆叠场景中,我们在芯片之间有很多垂直连接。我们可以在芯片之间封装更密集的垂直互连。然后,由于距离很近,因为芯片是堆叠在一起的,由于物理定律,可以获得更好的能源效率。
但这确实是有些其他的代价,解决一个问题总是会引入新的问题。
虽然转到新工艺节点会有所帮助,但这会产生其他问题。新工艺节点可能会降低传统意义上的功耗,但它们也会增加额外的开销,例如毛刺功耗。
在先进技术节点上,门延迟的分布导致的毛刺会引发动态功耗,这些可能高达40%。为人工智能加速器开发计算密集型逻辑的设计公司需要升级其现有的功耗分析方法,以确保它们能够解决毛刺问题。
还有很多时候需要解决不确定性的峰值瞬间功耗,就不必将电压保持在较高的水平来适应这种情况。这些类型的技术非常重要,它们可以像其他一些技术一样具有影响力。只有通过详细分析,才能实现此类技术。
还可以实现芯片级电源技术,例如动态电压和频率调整或power down。所有这些事情都需要权衡、分析和评估。如果关闭一个模块,就不可能在单个时钟周期内唤醒,还需要给它时间唤醒和初始化。
作者:数字芯片
来源:数字芯片实验室
推荐阅读
更多数字IC设计技术干货等请关注数字芯片实验室专栏。添加极术小姐姐(微信:aijishu20)微信可申请加入IC设计交流群。