米乐M6

公司新闻

米乐M6 M6米乐Chiplet技术新突破降低芯片设计门槛

  近日,2022年第41届国际计算机辅助设计会议(International Conference on Computer-Aided Design,ICCAD)在美国圣迭戈召开。ICCAD和DAC一起,是集成电路设计自动化领域顶级会议。芯片设计特别是高性能芯片设计“难”、设计周期长一直是芯片领域的关键难题。在今年的会议上,国内学者针对基于芯粒集成的芯片敏捷设计方法,设计了基于高性能可重用芯粒基板,并且以此为基础提出了一套芯粒自动化设计框架,降低了高性能芯片的设计门槛,让芯片设计更快捷。

  芯片设计一直是一件很“难”的事情。芯片性能的提升,目前主要依赖制造工艺。由于愈发逼近物理极限,工艺研发难度不断加大,坚持攻克先进制程的fab厂仅剩台积电、三星、英特尔等寥寥几位玩家;从需求侧来看,先进制程下高昂的芯片研发、制造费用也给fabless公司制造了巨大的成本压力与风险。这迫使人们寻求性价比更高米乐M6 M6米乐的技术路线来满足产业界日益增长的对芯片性能的需求,芯粒(chiplet)技术所代表的“超越摩尔”(More than Moore)方案就是其中的有力候选者。

  Intel将芯粒定义为“通过封装级集成和标准化接口与其他芯粒集成的物理IP块”[1]。“芯粒”词条引用计算所对芯粒的定义为“预先制造好、具有独立功能、可重复组合集成的晶片”,二者定义内涵基本一致。芯粒技术将原本一体的die分解(disintegrate)为多个具有互联接口的芯粒,而分解也正是芯粒技术的精髓。通过将大die分解为芯粒,die面积减少了,晶圆利用率增加了,于是制造成本降低了。而且,由于分解后的芯粒可以分离制造,所以可以采用不同的工艺。对于工艺提升敏感的模块如CPU,可以采用昂贵的先进制程生产。对于工艺提升不敏感的模块比如IO部分,可以采用廉价的成熟制程制造[2]。并且,针对不同等级的产品,只需要用不同数量、品质的芯粒进行集成,而无需针对每款产品单独流片。除去这些老生常谈的制造成本优势,更为诱人的是通过构建芯粒生态有望解决当前芯片产业面临的“昆虫纲悖论”。

  应用领域有一个昆虫纲悖论,是指物联网、人工智能等应用可能像昆虫一样数量繁多,但是单种应用数量不大,加之现今硬件设计趋于专用化,使得“又慢又贵”的传统芯片设计方法难以通过走量的方式分摊成本。而芯粒通过分解手段,将SoC中CPU、加速器等资源解耦,甚至将同种资源也拆分为更细粒度的模块,使得芯粒能够在多种设计中重用。在芯粒生态中,用户可以根据自己的需求,从各种供货商提供的芯粒中挑选自己想要的芯粒,然后组合为个性化系统。

  图1与图2分别展现了传统的芯片开发流程与基于芯粒的芯片开发流程,其中包含各个步骤所需的典型耗时。可以看到,传统的芯片开发要经过RTL设计、仿真、综合等繁琐的流程,总耗时以年计,同时购买IP授权、EDA工米乐M6 M6米乐具许可、流片也需要投入大量的资金。而利用芯粒技术,设计者只需要选出满足设计规格的芯粒。在自动化工具的帮助下,这一过程可在几十分钟内完成。选出的芯粒只需要在封装层面进行集成,因此芯片开发时长大幅缩减。并且由于基于实体芯粒进行封装集成,避免了支付高昂的IP授权等费用,故所耗费的资金相较少很多。从图2中也可以看到,芯粒生态并不排斥定制化,客户可以将具有核心竞争力的电路制造为芯粒,然后与市面上的其他芯粒进行集成,构建差异化的产品。总的来说,芯粒生态能够有效降低芯片开发门槛,使得芯片开发“降本增效”,被认为是解决昆虫纲悖论的有效手段。

  在今年ICCAD上,来自中科院计算所李福平(第一作者),以及王颖、韩银和、成元庆、王郁杰等学者提出了一种新的基于可重用硅基板的芯片敏捷开发流程[3]。图4给出了传统的、现有基于芯粒的与所提出的基于可重用硅基板的三种芯片开发理念的流程对比。

  对于分解后得到的芯粒,需要重新将它们集成(integrate)在一起构成系统。集成需要解决芯粒怎么互联与芯粒如何封装这两大问题。

  芯粒间往往需要互联通信才能协同工作,在未来依托芯粒生态,单个封装中可能集成数量、种类、来源繁多的芯粒,此时拓展性强、性能高的芯粒互联网络就成了必然选择。芯粒互联网络类似于日常生活中的因特网,芯粒通过网络接口(network interface)将芯粒内部的数据格式转换为网络数据包,通过路由器(router)传递到目标芯粒的网络接口中。网络接口与路由器的连接模式被称为网络拓扑,常见的有环形(ring)、网状(mesh)等;数据包在网络中从源节点到目的节点的传输路径被称为路由。拓扑与路由需要根据系统通信流量特性进行专门优化,使用固定的网络拓扑与网络路由往往得不到理想的通信性能。

  多个芯粒需要封装后物理上才能构成一个系统。论文作者关注的是以硅基板(silicon interposer)为载体的2.5D封装方式:芯粒被并排堆叠在硅基板之上,并且借助硅基板中的导线等资源实现芯粒间的互联。相较于基于有机基板以及RDL的封装方式,硅基板能够提供更高密度的芯粒互联,集成度更高,故能够得到更小的封装面积。目前的硅基板根据是否在基板中制造有源器件可分为有源(active)硅基板与无源(passive)硅基板[4]。无源硅基板仅需要后道工艺,无论是制造难度还是制造成本均远低于有源硅基板。然而有源硅基板由于可以在其中制造反相器、寄存器等器件,数据传输延迟更低,灵活性更好。此外,如图5所示,有源硅基板还可以将上文提及的芯粒互联网络的路由器电路放在基板中,而无源硅基板则需路由器放在芯粒中,会增加芯粒的面积。

  然而,无论是有源还是无源硅基板,本质上都是大号的die,其设计制造的高昂费用可能超过使用芯粒技术的收益。从图2的流程中也可以看出,硅基板繁琐的设计制造流程可能会拖慢芯片开发的进程速度,是当前的芯粒集成流程的潜在瓶颈。因此,如何降低硅基板设计制造的时间、成本是芯粒技术的基础性问题。

  解决该问题的一个自然的想法是让硅基板也像芯粒一样能够在多个设计中重用,一方面能够通过走量来分摊高昂的一次性投入成本,另一方面能够加速系统集成。但可重用硅基板实现起来具有多方面的困难。硅基板一方面是芯粒的封装载体,可重用的硅基板设计需要支持数量、大小、位置不同的芯粒在硅基板上的布局;硅基板另一方面负责芯粒间的互联通信,为了获得理想的通信性能,可重用的硅基板设计还需要支持任意定制的芯粒互联网络拓扑与路由。

  为了克服硅基板在芯粒集成中的瓶颈问题,该论文提出了可重用硅基板的设计,如图6所示。该设计的理念类似于积木底板,如同积木底板由一个个凸块颗粒构成,论文提出的可重用硅基板也由一个个模块化的瓦片组成。每个瓦片在被使用时包含一组预先定义好功能的微凸块(microbump),它可以为芯粒提供固定数量的供电、时钟、外部IO、芯粒间互联信号。与不同大小的积木可以灵活插入积木底板类似,不同大小、数量的芯粒也可以覆盖在多个瓦片区域上,并利用瓦片提供的信号完成功能。

  如图7所示,芯粒互联网络也以瓦片为单位组织。有源与无源可重用硅基板的区别在于路由器放置的位置不同。为支持任意的芯粒互联网络拓扑与路由,文中采用了可配置的路由器结构与路由表。路由器具有多种模式,首先可以配置为包含缓存写入、路由计算、虚通道仲裁等阶段的流水线模式,此时路由器用以实现多个数据传输流在链路上传输的复用与解复用。路由器亦可以配置为旁路模式,此时路由器的流水线阶段被跳过,相当于一根导线,该模式是为了减少在无数据传输流冲突时的数据传输周期。最后,路由器还可以被完全关闭来降低功耗。可重用硅基板路由器设计还存在许多其他优化点,在此不赘述。通过配置芯粒网络接口中的路由表,可以实现不同芯粒之间的任意路由。当芯粒需要向其他芯粒发送数据时,它便会根据目的节点地址查询路由表,并将路由信息包含在所发出的数据包中。

  在完成可重用硅基板构建后,论文进一步设计了如何让它更为易用,进一步地推动芯粒生态构建。于是提出了针对可重用硅基板的自动化设计框架,用以快速生成包括芯粒位置、芯粒互联网络拓扑在内的各种参数,其架构如图8所示。类似于前人根据应用自动生成SoC,这篇文章所提出的流程能够根据输入的应用和芯粒库自动生成最优的芯粒系统。应用以任务图的形式描述,任务图的节点代表任务,边代表任务间的数据依赖关系。芯粒库里包含了不同种类的芯粒。整个自动化设计流程包括以下四个阶段。

  芯粒选择:从芯粒库中挑选优化的芯粒组合与完成任务在芯粒间的调度,得到芯粒间数据传输需求的描述。该阶段的优化目标包括选出的芯粒的成本、面积、功耗以及应用的性能。

  芯粒互联网络生成:根据芯粒选择阶段得到的芯粒间数据传输需求生成最佳的芯粒互联网络拓扑、路由。该阶段优化的是网络的功耗、面积、性能。

  芯粒布局生成:生成芯粒在硅基板上放置的位置布局。该阶段优化的目标涵盖系统的热量和通信的性能、功耗。

  可重米乐M6 M6米乐用硅基板映射:把前面生成的芯粒互联网络与芯粒布局相结合,映射到可重用硅基板上,得到诸如路由器中可配置寄存器的值、芯粒网络接口路由表的内容等。

  文中芯粒布局算法是基于模拟退火的,需要根据系统的整体表现不断调整芯粒位置,优化解的质量。在生成完所有配置后,会用各种仿真器评估多个指标,反馈到到芯粒布局生成。当优化结束后,设计人员获取最优参数后,就可以进行装配。对于有源硅基板而言,装配过程仅需把配置信息写入芯粒与硅基板,然后进行焊接。而无源硅基板由于不能在硅基板中制造开关,还需要额外对硅基板中的导线进行熔断来实现网络拓扑的配置。

  前人已有一些关于可重用硅基板的研究,文章在其中选取了SISL[6]和SiPterposer[7]。SISL是包含固定芯粒互联网络的硅基板,而SiPterposer是包含可配置导线资源的无源硅基米乐M6 M6米乐板。使用所提出的芯粒集成流程,在多个应用、多种规模的系统配置下,将所提出的可重用硅基板方案与SISL、SiPterposer进行了对比。

  文中提出的有源可重用硅基板方案(Active GIA)与采用Mesh、Folded Torus、ButterDonut网络的SISL对比结果如图9所示,有源可重用硅基板取得了平均3.15倍的性能提升,功耗降至38.91%。SISL性能、功耗表现差的原因在于它只能支持固定的芯粒互联网络,不能根据芯粒通信需求进行优化。无源可重用硅基板对比SiPterposer取得了平均60.92倍的性能提升,功耗降至33.44%。性能、功耗表现提升的原因在于我们的设计利用了更多的硅基板导线资源,能够更高效地支持定制的芯粒互联网络拓扑。

  基于芯粒的芯片设计生态如果真能构建出来,那么芯片制造和设计整个流程将发生变革性变化,设计制造一款高性能芯片不再是一件高门槛的事,不再是初创公司动不动就需要“赌命”的事。客户只需要给出应用需求,封装厂便能够利用基于可重用硅基板的敏捷集成流程在几个工作日内将芯片产品交付客户。IEEE ICCAD2022年的这篇论文着眼于芯粒生态构建中的关键环节,我国学者已经在研究上取的进展,但要真正建成芯粒生态还有接口标准化、芯粒安全等重大问题亟待解决,仍需半导体从业者的努力。