NoC,成为重要技术
👆如果您希望可以时常见面,欢迎标星🌟收藏哦~
来源:内容由半导体行业观察(ID:icbank)编译自semiengineering,谢谢。
片上网络 (NoC) 已成为一项重要技术,它使芯片的复杂性不断增长,但当设计走向 3D 时,或者当第三方Chiplet变得普遍时,尚不清楚 NoC 将如何发展或会产生什么影响将采用Chiplet架构。
NoC使数据能够在异构计算元素之间移动,同时最大限度地减少连接它们所需的资源。可以对 NoC 的拓扑、消耗的资源以及与定义带宽的流量相关的延迟进行权衡。NoC 还可以帮助保持分布式计算元件之间的数据一致性。
Arteris解决方案和业务开发副总裁 Frank Schirrmeister 表示:“每个设计都需要一个 NoC,或者可以从中受益,即使是较小的设计。” “对于非常复杂的设计,您可能会在芯片上看到超过 10 个 NoC 的层次结构。有几个原因。第一个是相干域和非相干域的分离。第二个是芯片安全的重要性是混合的。其中一部分只是分而治之。随着越来越多的层次结构被连接起来,人们很自然地通过不同的领域来分离设计、问题。”
图 1:分而治之,显示使用相干和非相干(coherent and non-coherent) NoC IP 连接的不同块通信网络不断发展。
“众所周知,NoC 在 20 世纪 90 年代初就出现了,它具有各种专有实现来解决我们如何处理多处理器核心以及它们在自己的内存域之外进行通信的能力的问题,”西门子数字化工业软件公司的 IP验证产品经理 Gordon Allan 说道 。“当时开发了分组组织的片上网络拓扑,用于分布式处理。现在,2.5D 和 3D-IC 正在为通信拓扑带来新的机遇。几十年来发生的创新可以通过 3D-IC 以新的方式继续下去,因为它能够以非常快速、非常广泛的网络安排让更多的核心靠近。”
随着 3D 芯片构造世界的进展,设计层次变得更深。Fraunhofer IIS 自适应系统工程部高效电子部门负责人 Andy Heinig 表示:“大型、复杂的多核Chiplet需要新概念来实现内核、内存和外设之间的高级通信。” “这样的通信结构必须是分层的,芯片上至少有一个层次结构,而结合两个芯片的系统层上至少有一个层次结构。”
成功意味着 NoC 基本上保持隐形。“NoC 必须跨芯片和Chiplet无缝扩展,”Achronix 副总裁兼首席技术专家 Raymond Nijssen 表示。“这对于以封装范例实现系统至关重要,这对于扩大技术规模以保持摩尔定律的活力至关重要。从设计角度来看,使用Chiplet间 NoC 不需要新的协议或使用模型,这一点也很重要。例如,如果现有的芯片内 NoC 在 AXI 端口之间传输事务,那么Chiplet间 NoC 应该看起来是一样的。”
目前看来至少可以通过三种方式来解决总体问题。Blue Cheetah 联合创始人兼首席执行官埃拉德·阿隆 (Elad Alon) 表示:“第一个是单一供应商,这意味着一家公司可以有效控制所有部件,包括所有Chiplet。” “他们会做任何在特定产品或产品系列中有意义的事情。另一个极端是即插即用Chiplet市场。公司在这里构建Chiplet,我可以购买这些Chiplet并将它们集成在一起以形成独特的设计。它不仅要求功能按照我想要的方式进行划分,而且要求它们在电气和机械上兼容,所有协议选择一致,并且在所需的用例中有意义。”
图 2:Chiplet 用例
这是一个不可能实现的梦想吗?“如果您在一个封装中并排放置了真正的异构系统,可能使用 EMIB 式连接或基板连接,那么您可以在每个封装上使用标准接口,例如 UCIe,”西门子的 Allan 说道。“您可以通过隧道( tunnel)传输更高级别的协议,或者将它们分层,例如以太网、CXL 或 PCIe。您的芯片具有不同的几何形状、不同的厚度或不同的电气特性并不重要。封装中将存在与芯片周围留出的空间相关的属性。但一般来说,这就是Chiplet的意义所在。您可以集成这些异质、不同几何形状的模具,而不会产生任何后果。”
在我们实现这一目标之前,第三种方法正在受到关注。“多供应商生态系统正在兴起,”Blue Cheetah 的 Alon 说道。“这里的区别在于一组公司之间存在合作。他们聚集在一起,像大型整体组织一样进行规划。如果 A 公司擅长任务 X,而公司 B 擅长任务 Y,那么我们将如何将这些东西组合在一起。该产品是预先构思的,是针对特定的目标市场和目标规格而设计的。人们知道他们需要建造什么。”
关注点分离
分层设计依赖于一些可以提供显著优势的基本原则。“有多种方式可以实现这一点,”Arteris 的 Schirrmeister 说道。“开发团队可以是分布式的,并且可能有多个学科,但不能完全理解另一个学科的工作。例如,可能有一名安全岛专家负责硬件安全模块子系统。他们不需要了解有关 CPU 集群的任何信息,即 4×4 个 CPU 连贯地连接。”
安全问题日益受到关注。“先进的 NoC 本身必须提供支持安全性的功能,”Fraunhofer 的 Heinig 说。“在开放式Chiplet系统中,每个节点都可能导致安全问题,因此需要先进 NoC 的概念来弥补这些差距。”
但 NoC 无法妨碍。“大多数人设计这些东西时,NoC 看起来实际上是透明的,除了存在额外的延迟这一事实,”Alon 说。“但从功能角度来看,你不应该能够分辨出来。话虽如此,人们不想在某个地方进行盲切。如果你这样做,你可能会在数据接口上给自己带来更多的带宽痛苦和痛苦,而如果你对事物进行稍微不同的分区,则可能会造成更多的痛苦。”
恰当的功能边界还有其他好处。“作为人类工程师,我们如何充分掌握整体设计的复杂性以便能够对其进行验证?”艾伦问道。“我们一直说这个设计太大了,难以理解。好吧,不,如果我们将其充分抽象为我们可以理解的层次结构和组件,那就不是这样了。我们不需要一下子理解所有内容。我们需要了解今天正在验证的细节,无论是低级块、Chiplet、两个Chiplet之间的接口还是该接口上承载的网络协议。这种关注点的分离使我们能够超越摩尔定律,同时仍然了解我们实际设计的内容。”
自上而下还是自下而上?
半导体行业始终采用自上而下的规划与自下而上的实施和验证相结合的方式。随着 IP 构建块模型的开发,这一点得到了巩固,并且当这些块被硬化为Chiplet时,这一点预计会变得更加明显。
然而,一些自上而下的问题需要回答。“如何设计由Chiplet构建的系统?”Schirrmeister问道。“从顶部开始,存在一些架构问题,例如涉及各种接口和带宽要求可以容忍的延迟的问题。接口是双向的吗?您需要多少个channels?过去有 PCIe 通道,但现在有 UCIe 通道。你需要在芯片上放置基板,并且需要考虑这些架构效应。”
但到目前为止,这只需要降低层级即可。“一家公司可能计划在一个产品系列中或几代产品中使用单独的Chiplet,”Alon说。“他们会对每个分区提供的功能有相当详细的规范,这确实意味着你必须先做出一些选择,例如有关协议的详细信息以及每个Chiplet具有哪些功能。一般来说,只要你在功能上了解两侧发生的情况,人们就可以适当地提供这些东西。”
协议成为核心架构决策。“如果我有一个依赖于缓存一致性的处理器,可能与另一个Chiplet,它可能会讲 CHI,”Schirrmeister 说。“有人使用 CXL,这是一种略有不同的一致性形式。这就是Chiplet上的 NoC 所要表达的内容。然后你需要弄清楚数据是如何打包的。有用于流式传输的接口,例如 AMBA CXS。UCIe 有一个叫做 FDI 的东西,它是一个 Flit 接口,其中这些并行位基本上呈现给链路层,而 PHY 则承载数据。它会影响性能,因为您正在打包数据。虽然这些因素会改变延迟,但迁移到不同的技术节点也会改变延迟。”
标准化机构正在努力使其合理化。“ODSA OCP 规范定义了两个概念,”Alon 说。“一个是接口配置文件,另一个是总线变体。接口配置文件定义为:“该Chiplet具有一组特定的芯片间接口,将承载以下协议组。”例如,接口配置文件可能会说:“我携带了一定数量的 AXI 请求端口和一定数量的响应器端口。”这是它们的封装方式。它定义了可用于该 NoC 连接点的协议集以及它们的承载方式。第二个概念是总线变体。当你说某物使用 CHI 时,这并不是一个唯一的定义。人们会在特定领域进行很多选择和优化。总线差异是一种说明该特定接口正在使用该特定版本协议的方式。从整体性能 NoC 的角度来看,这并不能保证一切都能达到人们想要的性能水平。但至少在功能上,它表示这些联系可以以一致的方式建立,只要每个人都发布了他们在该边界实际上正在做的事情。”
通信协议的每一层都在快速进步。“我们看到以太网正在朝着同步、时间敏感协议的方向发展,”艾伦说。“根据处理器的功能,我们可能会看到芯片之间同步网络的一些创新。有些人希望将光学技术带到桌面上。我们将看到transport领域的创新,UCIe 就是其中之一。无论是分组化还是同步网络,拓扑和方法都会有创新——甚至可能类似于旧的令牌环网络(token ring networks),在其中创建带宽,如果需要,您可以使用该带宽。这是一个去中心化的组织,而不是一个自上而下的组织。”
通过在软件包中引入更多功能,延迟和带宽将会发生重大变化。此外,即使与单芯片解决方案相比,通过采用 3D 技术来缩短距离也将减少通信时间。Achronix 的 Nijssen 表示:“在所有情况下,跨芯片的 NoC 事务都会受到延迟影响,即使在 3D 情况下也是如此,尽管程度较小。” “Chiplet之间的带宽将会少得多,并且Chiplet之间的功耗也会增加。这与没有 NoC 的多芯片路由没有本质区别。不同之处在于,NoC 在相同的物理连接上复用事务,并且可以在不同流之间权衡 QoS(如延迟)。这种建模的一个挑战是大多数设计尚未指定通信块之间的延迟约束。”
简而言之,并非每个人都需要相同的解决方案。“当你进入开放式Chiplet环境时,正如人们所希望的那样,你需要标准,”Schirrmeister 说。“你必须做出决定,这最终将围绕驱动某些子集的生态系统类型。Imec 发起了一项汽车Chiplet计划,其中一项讨论是您在该生态系统中需要什么接口。这对于数据中心人员来说可能行不通。消费设备可能会有很大不同。它本质上是我们已经面临的片上分层 NoC 挑战的延伸,但现在面对 2.5D 和 3D 环境的分解,它变得更加复杂。”
预计这种情况会随着时间的推移而改变。“想象一下,五年后,我们将不再谈论 UCIe 兼容Chiplet的生态系统,”Allan 说。“我们可能会讨论更高层的兼容性,例如,chiplet 可以提供的某些网络拓扑,可以作为 SIP 设备轻松即插即用地参与某些网络。标准化使我们能够想象如何解决这个问题。这是必要的一步,它使我们在 EDA 领域能够提供基于标准的验证 IP。”
但到达那里的道路可能需要较小的步骤。“至少在接下来的几年里,我们实际上不必解决最困难、最棘手的一般问题,”Alon说。“我们只需要让人们聚集在一起去追求特定的目标市场,而这种情况正在发生。这些问题并没有消失。但如果你尝试专门针对给定目标解决它,而不是你可能做的所有可能的事情,你可以更快地获得牵引力。”
原文链接
https://semiengineering.com/the-noc-in-3d-space/
END
*免责声明:本文由作者原创。文章内容系作者个人观点,半导体行业观察转载仅为了传达一种不同的观点,不代表半导体行业观察对该观点赞同或支持,如果有任何异议,欢迎联系半导体行业观察。
今天是《半导体行业观察》为您分享的第3725期内容,欢迎关注。
推荐阅读
『半导体第一垂直媒体』
实时 专业 原创 深度
公众号ID:icbank
喜欢我们的内容就点“在看”分享给小伙伴哦
微信扫码关注该文公众号作者