中文 英语

自定义设计,自定义问题

与会专家:最先进节点的电源和性能问题。

受欢迎程度

半导体工程坐下来讨论功率优化与奥利弗金,CTOMoortec;João Geada,首席技术专家有限元分析软件;迪诺·托夫隆,工程高级副总裁Synopsys对此;Bryan Bowyer,工程总监Mentor是西门子旗下的企业;Kiran Burli,高级市场总监手臂的物理设计组;卡姆·基特雷尔,高级产品管理集团总监节奏阿里巴巴旗下的Digital And Signoff集团;Saman Sadr,公司IP核产品营销副总裁Rambus;以及Kandou首席执行官Amin Shokrollahi。以下是那次讨论的节选。要查看本讨论的第一部分,请单击在这里而且第三部分

SE:当工程团队开始在定制和半定制设计中处理更多的分解时,他们需要记住什么?

Burli:从架构的角度来看,当你开始为图书馆等设计电网时,你如何为移动设备和基础设施设计电网,如何为NPU和CPU设计电网?这是完全不同的。首先,你需要电网的灵活性。人们告诉我们他们想要在设计中加入更多东西,他们想要达到80% - 85%的利用率。当一切都开始立即切换时,你如何引入所有的功率需求?然后我们有大数据中心告诉我们,‘我有一个PDP(配电面板)和一个热设计功率预算,你们需要达到这个预算。你们打算做些什么来帮助我们到达那里?在某些工作负载下,我们可能运行得很快,在某些情况下,我们可能运行得较慢。这是一个巨大的挑战。如果你看结尾,通常人们说10%的结尾IR下降就足够了。但现在的情况并非如此。 When people are running these designs to get well over 10%, they say, ‘Oh, maybe I need to put more margin somewhere else.’ So do you put that margin in and keep adding margin on top and not put in functionality? Or do you start looking for a way to stabilize your power? If you build new circuits on top, how do you stabilize power? Or how do you bring in power much better? Do you use something like adaptive clocking?

SE:我们看到越来越多的人关注硬件和软件的协同设计,以提高性能和降低功耗,但其中很多都是针对特定市场的。这种方法将如何影响设计?

Geada的解释:它所做的最基本的事情之一就是改变了EDA的角色。你不能等到有了芯片,才能知道这个东西是否能在软件能做的所有场景下工作,以及你为这个功能部分设想的所有使用条件下工作。这意味着你有软件可以尽早并大规模地处理这个问题。你可以考虑在一个芯片上放置数千个传感器,这很有趣,但到那时你已经有了一个芯片。你需要有一些信封来限制这种设计的操作,以确保无论软件在做什么,你已经涵盖了所有的情况,它将大部分时间呆在盒子里。在我们看来,这需要一种不同的构建EDA软件的方法。它必须是在规模上工作的东西,可以处理软件规模的向量,并在这个空间中找到有趣的条件。然后它需要告诉你,如果你的软件做了一件特别的事情,那么你的热预算可能会用完,你可能想要考虑一种不同的方式来循环你的内核。或者如果你的软件在SerDes的同时做了一些事情,你就会有一个电压下降,你必须以某种方式减轻。你需要一次看到整个画面,并进行大规模分析。 You need analytics that can actually tell you, ‘What can I do with this? How do I improve my design? How do I make it work under this bounding box of functionality and power and thermal constraints? How do I make it all work, how do I make it yield, and how do I make money?’

Toffolon:世界各地的复杂性都在上升。在软件方面,在互连方面,它也在上升。这些相互连接不像五年前那样,它们是加固设计的一部分,“设置和忘记”类型的链接。这些链接现在包括大量的固件和软件,因为你需要能够感知你的环境,实时适应,并真正优化链接的性能。对于现在的许多串行链路,瓶颈和挑战主要不是模拟。它们在固件和算法方面,你需要在各种操作条件下优化这些东西。这是一种范式转换。

Kittrell我们已经看到,一旦客户对芯片进行了测试,并将其投入生产——尤其是用于云计算或边缘计算等高性能计算的多核CPU系统——他们就会发现电源漏洞。他们燃烧的能量比他们想象的要多得多因为他们没有正确地降低一个核心,或者他们在转换过程中引起了某种总线的喋喋不休。然后他们必须回去识别并更改固件以减轻这个问题。因此,拥有测试固件的能力,或者至少在架构的早期就预见到这种能力,是非常重要的。

鲍耶:你必须在你的架构中加入边缘。你必须在硬件中留下一个你认为现在不需要的配置,以便能够做这些事情。我们看到很多硬件都是过度可控的。有些事情你从未想过要改变,但你还是把它们放在那里以防万一。AR/VR、AI、5G都是如此——它们都开始看起来像迷你处理器,所有这些重新路由、重新配置、重组,只是因为你担心可能会发生什么事情。每个人都会更高兴,如果有某种方法去模拟所有这些,以一种你真正信任的方式,你有所有的电力数据,你真正了解一切,什么都不会改变。但我们今天面临的现实是,硬件必须被软件重新编程,以解决各种各样的问题,包括电源。

SE:你们还有这样的利润吗?一旦你开始深入到高级节点,这个边际就开始被许多不同的资源所追逐。

鲍耶这是一个非常难的设计问题。但可以肯定的是,在架构层面上有很多空间来处理这些可能永远都不需要的东西。

Shokrollahi:我们经常被客户要求最小化固件。即使是非常先进的SerDes,他们也想要某种不使用固件的智能均衡。固件也可能是一个安全问题。

萨德尔:有一些接口,出于可靠性的考虑,我们可能选择不实现基于软件的解决方案。但至少在我们所看到的广泛接口中,软件在过去10年里已经悄然出现,以至于现在必须将其纳入架构规划。如果你使用的是微控制器,软件必须是其中的一部分。大约五年前,我们开始看到,在不使用硬件的情况下,PVT(过程、电压和温度)变化的功耗趋势相对于标称情况约为30%至40%。如今,部署软件覆盖来优化你的电路是绝对必须的,以使整个pvt达到10%左右。我们不再有30%的边际,所以它绝对必须成为你的架构规划的一部分——软件与硬件结合——为我们规划和处理的接口。这些本身也成为挑战的一部分。微控制器应该是一个简单的东西,你可以把它放在你的基础设施中,但现在它们正在成为一个瓶颈,因为固件的运行速度不如你的112千兆每秒的接口。它的运行速度要低得多,但它必须管理一些快速适应的东西。如果您想要增强软件处理组件,现在就需要消耗额外的能量。所以在这个计划中需要很多聪明才智。 It’s a firmware element, and it’s showing up in every part of the vertical stack for thse interfaces. And so security is becoming a concern, as well — how to secure the whole datapath.

SE:其中一些芯片也会使用更长的时间,对吗?你必须安全地制造这些设备,处理老化的电路,所有这些都更加复杂,这推高了价格。所有这些都需要比过去更多的监控。解决方案是什么?

鲍耶:更多定制硬件。你不能一概而论。你必须非常有针对性,明确你想要做什么,你必须建立一些适合你的东西。如果不是为了电力,为什么不直接用一整个cpu网格来解决这个问题呢?这就是今天驱动许多定制硬件的真正原因——以一种有效的方式降低能耗。但随后你必须构建自定义硬件,这是一项艰巨的任务。很难预测你是否会成功。与10年前相比,现在很难知道,当你开始设计时,它是否真的会起作用。特别是在人工智能领域,我们看到很多公司都在完成大部分硬件设计过程,然后他们不得不放弃并重新尝试,因为他们意识到他们已经超出了预算,或者速度不够快,或者某些东西坏了,他们无法调整并开始工作。

Burli这些设备将有一个更长的生命周期,所以你将需要一些灵活性。人们不会花1000美元买一部新的智能手机,除非他们的手机能用上4年。所以你需要某种标准化和一个协同工作的生态系统。当你开始考虑3nm或5nm时,你确实需要开始考虑灵活性,以及如何将一些数据移动最小化,所以明天如果有新的用例,该架构也可以照顾这些情况。你必须从设备之间协同工作的角度来考虑架构。这不仅仅是NPU本身的问题。它是如何处理不同的元素的?如果两年后确实出现了不同的用例,那么可以对其进行管理,并且仍然可以控制在预算之内。

当你想到软件和老化时,软件并不是你在设计芯片时就足够了解的东西。在理想的情况下,你设计的芯片可以应对运行在它上面的任何软件,但这并不总是可行的。我们现在看到的是,越来越多的客户正在使用监控来适应通过芯片加载的软件负载。我们确实看到了针对特定任务的更具体的设计。在Moortec,我们正在与几十家人工智能公司合作,你会认为从一家到另一家,你会看到一些相似之处。但他们每个人都在做不同的事情。他们中的一些可能不起作用,但有很多原因让他们做不同的芯片。其中一些是十字线大小的,但我们也与客户合作,做非常小的人工智能芯片,非常适合特定类型的推理。但我们现在看到的更多的是这些芯片更有应用针对性。它们是为特定的用例而设计的。

Geada的解释老龄化是一个有趣的话题。我们可以模拟和预测一点点衰老,但这确实需要数据。但在3nm技术上,我们可能只有一年的数据,如果我们没有积累10年的数据,很难预测10年后的表现。我们可以运行物理模型,但很难预测所有这些非常不同的设计和架构将如何表现。这是我们真正需要的领域之一,我们需要芯片内传感器的组合,将数据馈送给数字双胞胎,它将有关当前软件或当前固件的芯片行为的所有数据,并进一步推断,‘这可能会失败吗?他说,如果手机坏了,这是一回事;但如果自动驾驶汽车上的行人传感器意外失灵,那真是一个非常非常大的问题。它不能那样做。安全关键型系统需要具有故障安全故障模式。这是很多这些领域都需要开始考虑的事情。传感器需要告诉芯片它是否接近故障。 The software needs to be aware that failure is a possibility. You can’t just assume that hardware is always going to work 100% under all conditions, and you need a plan to deal with it and make sure that you simulate those cases and deal with them.

相关文章
7/5/3nm工艺的功率和性能优化
专家:当AI芯片在十字线尺寸上达到最大值时会发生什么?



留下回复


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

Baidu