Why a system-level approach is essential, and why it's so challenging
作者:Ann Mutschler
Ann Mutschler is executive editor at Semiconductor Engineering.
将多个裸片或芯粒集成到一个封装中,与将它们放在同一硅片上有着很大的区别。在同一硅片上,它们使用相同的制造工艺开发。
随着设计变得更加异构heterogeneous 和分解disaggregated,需要在系统环境中对其进行建模、适当的平面规划、验证和调试,而不是将其作为独立的组件处理。通常情况下,这种设计过程首先需要建立一个始于高层次抽象的系统完整规范specification 。然后将规范specification 拆分成功能模块并分配给各个设计人员,以便他们独立的优化设计。最后,将所有子系统作为一个整体重新组合、验证和测试。
在最简单的设计中,只有很少的小芯片和相对简单的互连,设计过程类似于具有几个大块的SoC。西门子数字工业软件公司DRC应用和Calibre设计解决方案的营销总监John Ferguson说:“不同的团队需要协调形状、面积、引脚位置及其连接等问题。” 对于数字设计而言,这种方法将现有的place&routre技术进行了延伸。但每增加一个芯粒或者互连,就会变得更加复杂。
最初,系统公司推动了转向异构架构,他们希望提高特定数据类型的性能,同时尽可能地省电。现在,芯片制造商正在研究如何将这种功率和性能优化方式扩展到更多的市场,同时使这种优化过程简化并且标准化,并使其更具成本效益。
“目前正在发生根本性的变化,芯片正在解构 (disruption)”Synopsys公司的高级营销总监Shekhar Kapoor说到,“以前,人们通过把芯片迁移到下一个节点来获得性能和功能的受益。但现在,这些受益正在消失,成本却在上涨。因此必须考虑‘分解’,并从成本的角度来看待异质集成。过去,芯片在片内进行功能分块,而现在,如果你将芯片分割成多个裸片,每一个block或裸片就是一个芯粒,你可以在下一个设计中重新使用它。'Multiple die'概念包含了各个方面,而'chiplet'则侧重于它的reuse方面。”
“然而,要实现这种异构架构需要一种截然不同的芯片设计方式。”Cadence公司Custom IC & PCB Group 主任John Park解释道,“你需要引入系统级聚合工具的概念,以便从单一芯片设计向多芯片设计过渡。你不再是在设计一个单独的芯片,而是在设计多个chiplet及其封装方式的组合。”
优化Die-to-Die的连接是至关重要的。但也需要考虑到其他芯片和IP,以及可能组建的其他系统。
“你需要在系统层面,而不是芯片层面,来验证chiplet A与chiplet B的连接”Park说道,“这是系统级设计的转变,也是摆脱单片式芯片的第一步。你需要引入一种能够组装和优化系统的工具。这将作为你的golden netlist来进行系统级的LVS(layout versus schematic)。这非常关键。如果设计者在一开始方式就错了,那他们可能会在流程进行到一半时遇到很多问题。
一些最大的挑战和限制涉及到设计中的功率、热、应力和EM-IR等。
“如果只是二维设计,这些问题就更容易解决”Ferguson 指出,“但是,随着堆叠或连接chiplets的复杂方式越来越多,这些挑战也变得更加困难。我希望我们能够达到每个人都有约束条件、有一些合理的保护来防止问题的地步。但由于连接这些东西的方式有着如此多的不同可能性组合,需要确定的这些约束条件就会更加复杂,每个堆叠/连接项目都会变得更加复杂和棘手。”
另一个需要考虑的因素是,multiple-die中的die并一定就是chiplet。“有时候是die,有时候是chiplet”Park说,"直到三年前左右,它被称为multi-chip modules(MCM),而我们现在所说的multi-die modules。也就是将芯片从它们的封装器件中取出,将裸芯片安装在层压板基材上,这就是所谓的SiP/MCM模块。这些不会因为我们进入chiplet世界而消失。”
智能手机多年来一直采用系统级封装(SiP),特别是射频和模拟组件。Park指出:“这当然是异质集成,但我们并不关心它们是在哪个节点上建造的,或者是用哪种技术建造的。在过去,我们只是没有使用异构集成这个词。”
芯粒将是下一个增长阶段。Keysight的应用开发工程师和科学家Matthew Ozalas说:“我们希望尝试在芯粒空间里建立一些标准。因为它真的很新,而且似乎对未来非常重要 - 不仅在数字领域,而且在堆栈内存方面也是如此。”随着无线6G系统的发展,芯粒可能是到达该领域的唯一途径。通常情况下,它从低级别或数字开始演化,因为芯片已经可以用功能块构建。最终,前沿总是高频射频微波,因此这将是chiplet的领域。
原因是高频射频不是一个标准化的设计过程。“如果你看数字芯片,这些芯片中有数十亿个晶体管,没有人能进行晶体管级别的设计”Ozalas说,“因此,人们建立这些功能块,并将它们很好地整合在一起。例如,他们会在数字芯片中建立加法器块,并将这些块粘合在一起。他们已经在做这种块状功能/块状水平设计。如果你是数字设计师,你并不真正与晶体管一起工作。你唯一真正接触到晶体管的时候是当你遇到可靠性问题时,或者当其中一个晶体管出现问题时,它吸收了太多电流或变得太热,或者导致你的各种闩锁问题。模拟技术紧随其后,也有一些功能块。然后,当我们进入射频和微波领域时,几乎全部都是晶体管。那里的设计人员都在使用晶体管。这是很微妙的事情。虽然我们希望在系统中有一个低噪声放大器,但这些元件都是高频的。它们确实是功能块,但不是那么标准。如果晶体管拓扑技术发生变化,这些元件不会随之缩小。所以一切都需要改变。”
他说,这就是为什么高频模块最终成为了最后的前沿。“无论你看到哪里,这都是事实,芯片模块也是如此。如果你正在构建一个芯片模块,你可以使用高频电路构建一个功能块。但是将它们组合在一起并让它们完美地工作就更困难了。”
成本也是芯片模块越来越考虑的因素。“人们正在为摩尔定律的终结而设计”Cadence的Park说,“他们正在从单片的巨大SoC和ASIC转向解构(disaggregated )或模块化方法,其中这些大型芯片上的IP已经分解为芯片模块。在这里,每个芯片模块都可以在最有意义的技术上进行设计。”
“在某种程度上简化了设计,因为传统的I/O,例如PCIe或SerDes,仍然可以与最先进的逻辑一起使用。这可能不会改变板子上和晶片上所使用的I/O连接方式”Cadence IP Group的产品营销组主管Wendy Wu说,“但对于芯片模块方法,设计团队将使用更具新兴性质的Die-to-Die I/O,这是非常低功耗的,可能在五年前还不存在。”
chiplet通常是side by side布局的,但它们也可以堆叠在2.5D封装中,使用中间层,或者堆叠在3D-IC中。Park认为硅中介层(silicon interposers)将会消失,并会向有机中介层(organic interposer)和interconnect bridges两个方向演进。
Extra questions with multiple die
Multiple-die的一个重要考虑是共同设计。“当工程团队开始把这些系统组合成装配体时,他们不可能知道限制是什么,直到他们定义该装配系统是什么。”西门子数字工业软件公司Calibre接口和mPower产品管理高级主管Joseph Davis说:“人们现在想做的一件大事是把来自不同制造商的小芯片放在一起。这就成了一个系统问题,现在所有的模型和限制都从不同的代工厂跨越出来,进入第三方。从知识产权的角度来看,这是令人难以置信的挑战。如果你真的想从集成的角度推动你能做的事情的界限,你也在你能做的事情周围画了一个框,因为现在你必须从一个制造商那里做所有事情。”
以如今的复杂程度,每个stack 都是独一无二的。“你不能说适用于2.5D的设计就适用于3D”戴维斯指出。“当你开始制造这些东西时,你就有了技术兼容性问题。即使在一个代工厂内,每次客户说:'嘿,我想做这个stack',他们必须解释:‘我想把这个芯片和这个芯片放在一起,这个芯片要在这里,还要一个interposer。’然后晶圆厂必须与参与其中的EDA供应商合作,提供所有配套的材料。你不能只是拿着标准的PDK,然后在它们周围放上一些 baling wire 。”
Synopsys的Kapoor认为第一个挑战是产品规格(spec )的定义。“例如,这可能是你的下一个移动设计,或下一个数据服务器设计。所以现在你必须打破它。你如何打破它呢?从系统功能的角度来看,哪些部分是由硬件处理的?哪一部分是由软件处理的?对于一些客户来说,这很容易。这只是一个存储和逻辑的权衡问题。但是当你把逻辑分割开来的时候,就会使问题大大复杂化。它分成了很多部分。关键部分是什么?GPU、CPU和I/O。你如何把它们放到理想的package中?你要使用什么互连结构,这有助于你满足某些约束和规范?这些决定过去很简单,可以在PowerPoint或Excel或Visio中完成。”
现在,为了探索的目的,需要有更复杂的工具。“这些工具必须更加复杂,以便在前面带来一些分析”Kapoor 说,“散热问题(Thermal)是一个典型的例子。设计团队过去从未考虑过散热,除非他们在做PCB封装设计或系统设计。现在,这些都需要在设计早期考虑。所以他们必须在做早期架构设计时开始考虑热能作为一种约束条件。一旦你决定了如何拆分设计,那么从封装和连接的角度来看,什么是最好的和最经济的配置?你还能满足你的PPA吗?PPA总是要存在的,而现在你被分割到了整个芯片上。你又该如何权衡呢?”
Enabling chiplets
在过去五年左右的时间里,衍生(derivative )设计变得更具挑战性。“你掌握一种核心技术,然后有一个较长的那种跨越式发展,"西门子的Davis说。"然后下一个将是一项新技术,然后我们再加倍。所以行业开始说,'等一下,我是不是可以做一个芯粒,然后把两个或四个或八个它放在一个基板上,而不必重新做一个新的流片(tape-out),这样是否可以?’这都是在组装层面,而不是硅层面,所以这非常有吸引力。”
有吸引力?确实。简单?一点也不!这个方法确实有吸引力,但并不简单。对于初创公司或中等规模的公司来说,这种方法可能会让人望而却步。“对于单个芯片,有许多不同的集成商可以处理这种封装模式和集成,并与代工厂合作。但是,如果你现在要做一个定制的集合(collection),能够胜任的人会非常有限。你可能需要考虑将这项工作内部化,并验证你的功能,因为现在有更多的东西需要在系统验证中完成。从系统的角度来看,可靠性验证变得非常困难,而且制造和采购决策也更加复杂。你的制造决策可能意味着需要雇用五个人而不是一个。这在很大程度上是一项开创性(bootstrap )的事情。而且,值得一提的是,全国可能只有五个人有这方面的经验,嗯,而且,他们可能只有三年的经验。”
在芯片的预计寿命内确保可靠性变得更加具有挑战性。Kapoor指出:“因为你分割了芯片,你现在有更多的互连和接口,其中任何一个都可能出现故障,都会成为安全问题的入口。”虽然KGD(已知好芯片)已经被广泛讨论,但如何真正引入监控部分以及如何确保它在整个流程中都是可观察、可优化和可测试的,这些都是新的挑战。
此外,工程团队如何有效地完成所有这些工作?如果说单芯片设计是困难的,那么多芯片系统则引出了对新模式和标准化的需求。
“传统的芯片工作方式是采用一个基于buffer的die-to-die通信边界用于驱动和接收信号,处理SD和测试等”Cadence的Park说,“但现在它们(buffer)变得更小了,因为我们没有大电容负载一路通到电路板上。这意味着你要进行寄存器到寄存器之间的时序分析等,并通过混合键(hybrid bond)在两个不同器件之间传递信号。在多芯片设计中,您需要验证协议完整性(compliance),这可能基于AIB、UCIe、BoW或其他标准。现在有许多新兴的芯片标准,您还要验证这些标准的信号完整性。您基本上是通过一些具有正确信号行为的互连通道来验证收发器的工作,而且在该接口上没有太多的抖动或噪音。这使得信号完整性成为一个系统级问题,这个行业已经做了40多年了。”
问题在于,芯片设计者并不一定知道如何实现这一点。“数字芯片设计者只关心时序分析,而对于理解信号完整性的挑战和重要性则关注较少。由于所有这些原因,多芯片设计,包括3D异质集成,需要被视为一个系统,而不是一个单独的芯片。”