左移,只是冰山一角

文摘   2024-11-25 07:00   上海  
公众号:软硬件协同设计 HW-SW Co-Design
作者:BRIAN BAILEY
翻译:Brian
校对:Mike
链接:https://semiengineering.com/shift-left-is-the-tip-of-the-iceberg/


半导体设计和 EDA 正在经历一场变革。需要创建新的语言、模型和抽象。
左移正从一个流行词演变为设计方法和 EDA 工具的更广泛的转变,虽然它仍处于早期阶段,但人们普遍认为它将带来变革。
过去几十年来,半导体行业经历了许多变化。有些变化很明显,但其他变化则是因为多种因素的融合,需要对流程本身进行系统性变革,而今天的情况就是如此。从表面上看,左移可能看起来像是涉及优化策略或引入新指标的微小变化,但这是从孤立的半导体视角到系统设计时代的开始的根本性转变。也许更令人惊讶的是,变革的推动力来自现有流程的各个方面。
这不是该行业第一次面临这样的挑战。 Cadence 战略和新业务集团总监 Rob Knoth 表示:“如果制度上的战争迷雾让我们忘记了这些教训,那我们真是太丢脸了。我们经历过多次这种情况。我们面临的范围比我们现有的工具更广,基于物理或现象,或者无法被现有工具完美捕捉。我们面临的最后期限太紧迫,无法完美地完成工作。在这些史诗中取得成功的人是那些诚实的人,他们知道他们可以模拟什么、可以估计什么,以及这将如何影响他们的上下游人员。”

变化涉及许多领域,其中一些列在下面:
优化重点的变化:优化策略已从简单的功率、性能和面积 (PPA) 指标转变为系统级指标,例如每瓦性能。“如果你回到 20 世纪 90 年代和 21 世纪,路线图非常清晰,”英特尔代工厂先进技术项目总监 Chris Auth 表示。 “只要把东西做得更小、更快、更便宜就行了。我们看到这种做法已经扩展到各种不同的途径。PPA 优化只是您要做的事情之一,但您现在要优化的还有很多其他事情,包括热量或每瓦频率。我认为如何做到这一点的故事还没有完全写出来。”
3D-IC:芯片不仅仅是制造出来的 IP。它们正在改变开发流程的许多方面。“3D-IC 正在改变市场和行业,”Keysight 高速设计部门负责人 HeeSoo Lee 说道。“PPA 现在涉及多个学科。您不再是垂直结构。您将许多不同的模块整合到系统设计中。您如何从系统角度进行优化?您将使用什么语言来与这些不同的芯片或不同的功能块进行对话?它对系统级的芯片或异构集成提出了有趣的市场需求。我们需要通过使用不同的芯片来优化系统性能,然后优化整个封装性能。”
然而,如何排列、组装、验证和测试这些芯片仍然是一项重大挑战,其中一些工作可以通过预组装、预集成的芯片提前完成。“工作负载和软件是差异化发生的地方,”Arm 汽车高级总监 Christopher Rumpf 表示。“因此,我们仍将销售 IP 产品,但我们现在正在将它们组装成更大的子系统。”
相互依赖性增强:当我们越来越接近物理学所施加的极限时,所有指标都相互关联。“设计收敛的目标是根据某些条件或用户提供的输入跨多个变量进行优化,”Synopsys 产品管理高级总监 Manoj Chacko 表示。“除了 PPA,现在还有 R,代表可靠性或稳健性。这始于我们必须考虑影响性能的 IR 压降。缓解这种情况的技术已经开发出来。然后我们看到了设备的可变性,以及基于邻居及其环境而变化的设备行为,这影响了设计的性能和功耗。”
领域特定设计:通用设计的时代已经一去不复返。在许多行业中,定制硅片是实现必要设计特性的唯一方法。英特尔的 Auth 表示:“您已经从通用计算转向了更多工作负载特定应用。每个人都有不同的方式来推动技术发展。PPA 是一个组件,但 PPA 并未涵盖很多东西。”
这在汽车设计中尤其明显。西门子 EDA 硬件辅助验证副总裁兼总经理 Jean-Marie Brunet 表示:“如果您考虑一辆汽车,这是一个真正的系统建模挑战。它们具有不同的采样率、不同的时钟、不同的模型精度。这些东西如何相互通信?这是一个行业集成挑战,这就是我们拥有数字孪生的原因。它们可以为您提供终端设备或系统的视觉表示。这是一个令人难以置信的同步和集成挑战,而且这是一个非常繁重的计算平台环境。您必须决定哪种软件可以与特定硬件配合使用。”
系统设计:系统不再只是硬件。AWS 半导体行业高级领导兼顾问 Ravi Poddar 指出,据报道沃尔沃拥有大约 120 个 ECU、1 亿行源代码以及源代码中 3000 万个位置的 300 万个函数。[1]
“我们看到使用软件和虚拟双胞胎的趋势正在向左转变,”Poddar 说。“这包括虚拟硬件在环路中,它要求你尽早测试并经常测试。”
软件现在是硬件设计不可或缺的一部分,但硬件和软件的开发计划通常不同。“在分析系统和硬件时,软件总是缺失的,”西门子 EDA 赛博电子系统工程计划的解决方案架构师 Ahmed Hamza 说。“你构建了一个系统,但如果你不知道什么软件将在系统上运行,整个等式就会改变。硬件、系统和软件是我们需要在分析中尽早组合在一起的三个部分,这将影响未来系统工程的完成方式。”
不变的是我们解决问题的方式。“优化的关键在于,随着流程的推进,你的自由度会降低,”Ansys 产品营销总监 Marc Swinnen 说道。“一开始,你的自由度很多,所以你的潜在优化程度会高得多。随着流程的进一步推进,你的自由度会降低。潜力会下降。”
工程师喜欢分而治之。“我们无法同时完成所有工作,”Keysight 的 Lee 说道。“我们知道需要按什么顺序完成工作。当然,并非所有事情对于每个应用程序或用例都同样重要。有些设计更注重系统性能,而另一些设计更注重功率。每位工程师或系统架构师都有自己的任务来优化。我们正在进入一个尚未完全稳定或成熟的新时代。”


整体优化
在开发流程的任何给定步骤中,可实现的目标都受到预测不确定性的限制。“当您对设计进行更改时,比如功率,有信号,但也有噪声,这意味着存在不确定性,”Ansys 的 Swinnen 说道。“实际功率可能会高一点或低一点,因为您没有电线,无法进行精确的合成。您的信息中存在噪声水平,考虑到您在特定阶段的不确定性程度,您只能优化到噪声水平。除此之外,任何信息都可能是虚假的。你在浪费时间,你只是随机生成数字,但不知道它是否真的更低或更高。你受到噪声带的限制,一旦你达到噪声带,就该进入下一步了,因为在这一步,没有更多的优化是有意义的,即使是相对的。”
从哪里开始分析在很大程度上取决于优化目标。“你需要一个好的软件解决方案,可以模拟你将拥有的整个系统,”Auth 说。“然后你可以优化每个组件。你最终会得到很多非常定制的软件,可以模拟各种各样的东西。它模拟热量,它模拟频率或类似的东西。软件有很大的机会可以给你一个更好的答案,让设计师知道优化技术的最佳方法。”
但了解所用模型或信息的准确性至关重要。“一种简单的描述方式是‘垃圾进,垃圾出’,”Lee 说。 “代表异构集成中每个芯片的模型有多好?如果你的模型不够准确,而你正在其基础上进行优化,那么你就是建立在垃圾基础上的优化。虽然模拟技术非常强大,但它们需要以正确的方式解决所有因素,以保持准确性。如果你没有这些技术和模型,那么你将基于错误的输入数据开发某些东西。”
过去,该行业已经开发出抽象概念,有助于在减少计算时间的同时保持必要的准确性。“在前端,你没有指标,”Swinnen 说。“你使用代理。例如,功率密度是热的一个很好的代理。对于 RT 级别的时序,你使用基于扇出的线载模型。当你进入布局时,你使用曼哈顿距离。然后当你进入布线时,它是网络长度。路由器实际上并不关注时序。布局器也不关注时序。每一步都有自己的代理,代理会变得越来越好,只有当布线完成后,你才最终拥有一个 RC 模型。这不再是一个代理。现在你有了实际可模拟的线路延迟。”
这意味着您必须不断评估在准确性和可负担的计算能力方面可能实现的目标。“您需要什么帮助来提高流程的准确性?您可能需要一些创造力来尝试过去行不通的策略,”Cadence 的 Knoth 说。“也许您没有足够的计算能力来完成所需的所有模拟,而今天您可能有。当我们谈论 PPA 优化策略时,最近我们在功率方面看到了这一点,您没有足够的能力将矢量集成到设计优化阶段。现在算法更好了,估算技术更准确了,模拟能力更好了。您可以开始集成一些过去您只是估算的数据,现在您可以实际测量它了。”
更好的估算可以实现更多的优化和自动化。“设计片上网络 (NoC) 需要基于物理设计的分析,”Arteris 产品管理和营销副总裁 Andy Nightingale 说。“当您控制物理布局的各个方面,再加上许多分析工具时,我们可以构建一个探索工具,让您运行流量配置文件。您可以将大量事务推送到网络的任何部分,并且可以看到它在最坏情况下的服务质量方案、接口宽度和其他参数方面的表现。您对设计中的线路长度有很好的了解,对布局有很好的了解,对整个网络的延迟和带宽有很好的了解。所有这些因素结合起来,为流程的下一阶段提供了一个非常好的起点。”
系统级别是您拥有最大自由度的地方。“大部分功率和性能优化(大约 70% 到 80%)是在设计阶段的最早阶段通过架构决策决定的,”Innergy Systems 创始人兼首席执行官 Ninad Huilgol 表示。“架构师通常有某种方式执行假设模拟来确定最佳架构。越来越多的高级功率建模正在帮助这一领域,它可以执行虚拟模拟来估计功率和性能。”
如果没有必要的估算工具,那么所能实现的目标将受到限制。“关于预测不确定性,有两种方法可以解决,”Swinnen 说。“要么使用保护带,要么投入更多资金进行测量。使用保护带是最简单的方法。你只需要留出很大的余量,但这会增加噪声带并限制你的优化能力。在某些情况下,这一点并不是立即显而易见的。保护带限制了你可以进行的早期优化量,并迫使你进一步优化。”


芯片是可能发生这种情况的一个领域。“如果你谈论背面功率或堆叠芯片,仅仅考虑一个芯片的热量是不够的,”Auth 说。“你还必须考虑它对旁边芯片的影响。你必须知道系统将如何运用它。以前,我们专注于优化一个芯片或一个芯片组,但当芯片组位于一个包含多个芯片组的大型封装中时,优化一个芯片的重要性就不如优化最终得到的整体封装那么重要了。”
如果开发不是完全自上而下的,这可能会造成困难。Arm 客户端业务线产品管理高级总监 Kinjal Dave 表示:“优化系统和模块指标是一个互补和进化的过程。虽然我们越来越多地看到在系统层面投入更多的时间和资源,但在尚未建立完整系统的开发阶段,模块指标至关重要。在开发的早期阶段,您通常无法构建完整的系统,因为并非所有功能都已最终确定。因此,您需要继续分析这些模块指标,并在开发过程的后期逐步纳入更多系统级指标。”
在实现这些目标之前,业界还有很多工作要做。西门子的 Hamza 表示:“硬件团队和 EDA 工具花费大量时间进行分析,但不幸的是,这些信息无法返回系统工程师手中。在分析开始时,他们需要一些指标。他们需要了解发生了什么。系统工程师可以从中受益的即时信息。如果我们能以他们能阅读和理解的语言和形式提供这些信息,那会怎样?这将改变整个系统工程的概念。”
缺乏信息意味着你别无选择,只能使用保护带。Auth 表示:“当你向左移动时,你不会拥有完整的知识。你将设置一些护栏。你计划在未来获得更多知识时,你将能够减轻一些保护带,并在未来获得更高的性能。”
向左移动试图将越来越多的信息向前推进,但它需要从现有的硬件重点转移到软件和系统。 “你需要在顶层而不是底层问假设问题,”Arteris 的 Nightingale 说。“你为你的设计制作一个不计时的模型,并将软件放到上面,这样你就能知道软件对系统的要求是什么。然后你从顶层视图向下细化,确定需要哪些硬件组件。如果你说,我将从 X 类型的处理器和 Y 类型的系统结构开始,然后尝试得到一个结果,那么你永远不会收敛。你必须从最终应用开始,然后再从那里开始。”
要解决这个问题,每个人都必须坐在同一张桌子上。“半导体行业之所以能达到现在的规模,是因为我们接受了一定数量的规则,”Knoth 说。“要做到这一点,我们并不总是尽其所能。如果你走出硅片,进入封装世界,进入 PCB 世界,进入机械世界,那里的刚性就会大大降低。我们将看到更多标准化向外流动。我们已经在芯片级看到了这一点,更多的标准正在实施。”

结论
虽然左移正在引起广泛关注,但更广泛的转型正在进行中。它涉及过去从未被包括在内的参与者,他们经常使用不同的语言并拥有自己的方法。在许多情况下,需要进行的更改不仅仅是技术上的。它们还会影响组织的结构。新的工具和方法必须根据它们所需的投资水平产生良好的结果,无论是从 EDA 角度还是从设计公司的角度来看,它们都需要牢记长期方向和目标。
这个问题不会在一两年内得到解决。它需要重建整个流程,最终将系统工程和半导体开发置于一个单一的保护伞下。

Reference

Vard Antinyan, technology and strategy leader, software engineering, at Volvo Group.

软硬件协同设计 HW-SW Co-Design
欢迎后台留言,AI 客服全天在线。脱离物理硬件,开发测试和调试软件。基于虚拟原型的软硬件协同设计,提前一年实现产品上市创收,降低一半开发时间。
 最新文章