最近一篇对英特尔公司Ramune Nagisetty的采访引发了诸多读者的愤怒评论,他们抨击当前的异构集成和芯粒技术换汤不换药而非创新,认为这只不过是美国制造商为了掩盖自己无力保持晶圆制造领先地位的一种策略。尽管之前讨论过的很多封装级集成都不是突破性的创新,但是毫无疑问,集成方式正在发生重大改变,逐渐远离片上系统(SoC)设计。
图1:Apple M1处理器没有采用芯粒技术。(图片来源:苹果公司)
在这样的介绍之后再来陈述SoC的优点似乎有点奇怪,但是看到苹果刚刚宣布了其芯片设计的最新尝试,这就容易理解了。M1处理器(图1)采用了苹果自己定制的SoC芯片,用于新款Macbook Air以及一些Macbook Pro和Mac Mini型号。如果我们认真看一看苹果的宣传图片,就知道将M1处理器裸片称为SoC绝不为过。我之前将所有注意力都集中在芯粒集成上是不对的,因为M1处理器看不到任何芯粒集成的影子。从苹果提供的M1裸片图片会发现,将这类设计分解为芯粒没有任何吸引人之处,由此增加的互连和通信开销反而会造成更多的麻烦。
另一个支持苹果采用SoC方法的理由是,他们不会再使用其他人的物理布局IP内核了。他们自己负责几乎所有电路模块的设计,专注于物理设计和软硬件集成的严格控制,以优化系统并改善用户体验。他们不会购买其他供应商设计的芯片或硬IP核用于自己的处理器设计。
下文将进一步介绍M1(图2),并对纯SoC设计和目前可能更适合芯粒方案的布局进行比较。
图2:M1处理器。(图片来源:苹果公司)
苹果欲在其电脑产品中采用自己的芯片这一想法由来已久,就像他们对iPhone和iPad做的一样。所提及的一种方法是,简单地将iOS软件与A系列芯片结合起来,使目前用于移动设备、基于ARM的处理器进入传统的计算机领域。由于苹果似乎将大部分资源都集中在iPhone和iPad上,而影响了电脑业务的发展,因此这种方法看似可行。不过我们现在看到的是,苹果要设计整个OS X系统。
再来看一下M1芯片的整体布局,其设计很容易让人联想到A系列处理器和移动应用处理器。找出A14和M1设计的通用部分可能比较费时,但我相信许多平面图分析师很快会找出其相似之处(图3)。
图3:M1和A系列芯片设计复用了多少IP? (左边为M1,图片来源:Apple;右边为A13,图片来源:Techinsights)
新一代电脑,尤其是苹果笔记本电脑,因为使用底部焊接BGA封装而不是插入式模块,使得RAM很难简单升级,这种设计常受到诟病。M1设计将这一理念移用到处理器,使DRAM与M1裸片共置于同一个封装衬底。但是请注意,这些不是芯粒。在苹果的产品图片中,它们被描述为某种封装好的DRAM成品,与模块或主板上使用的DRAM一样。
Apple尚未自己设计DRAM,但却乐于重新包装现成的器件:
M1还采用了统一内存架构(UMA),将高带宽、低延迟内存统一到一个定制封装内的内存池中。因此,SoC中的所有技术都可以读取相同的数据,无需在多个内存池之间来回复制,极大地提高了性能和电源效率。视频播放更容易,游戏更加丰富和突出细节,图像处理快如闪电,并且整个系统的响应速度也会更快。
苹果公司称,M1 Macbook Air的速度将是最新的英特尔版本的3.5倍,性能提升的部分原因可能在于此版本使用的DRAM类型。遗憾的是,没有更多关于“统一内存架构”的任何信息。回到芯片,将GPU集成到裸片上很可能是性能提升的另一个原因。等大家实际使用最新的苹果电脑以后,将挖掘出更多信息。
我们再回头来看芯片的分解及通过封装集成来优化系统,将SoC M1裸片布局与传统的多核处理器做个对比会很有意思。例如,英特尔一直在设计一系列微处理器,满足笔记本电脑、桌面电脑和服务器市场的需求。以笔记本电脑为例,它需要满足用户各方面的需求,比如只用于上网的低价位电脑,以及可提供最佳性能的游戏本。英特尔需要设计少数几个核到包含很多核的芯片,这可以通过不同的设计来实现,也可以通过禁用部分内核来满足低成本应用。这两种方法似乎都不太具吸引力。
图4:左侧为新的Apple M1(图片来源:苹果公司);右侧为Intel Skylake 18内核处理器(图片来源:英特尔)。
将内核(和其他功能)拆分为可根据需要集成在封装平台上的芯粒之后,便可灵活地针对较小范围的应用进行优化。采用芯粒设计方法并非不会增加成本,而且还有一些技术难题也没有解决,但这种技术的确有很大的潜力。英特尔通过两种封装技术积极推动这一设计方法,一种称为Foveros,一种是嵌入式多裸片互连桥(EMIB)技术,采用这两种封装技术的器件均已投产。
AMD在这一领域也非常活跃,其新的Zen 3架构设计突出了芯粒方法的可扩展性。AMD将设计分为计算内核裸片(CCD)和用于I/O功能的独立裸片,后者叫做IOD(IO Die)有些缺乏创意。撇开命名约定不说,新的Ryzen 5000芯片很好地展现了芯粒集成方法以及处理器内核可扩展性。首先,Ryzen设计只需增加一个CCD,即可将内核数量增加一倍以满足特定需求。其次,Ryzen是异构集成的一个范例。处理器裸片采用台积电的7nm工艺制造,IOD芯粒采用格芯的12nm工艺制造。图5显示了芯粒设计带来的好处。
图5:芯粒设计带来的好处。(图片来源:AMD)
现在来推测一下处理器的开发未来会选择哪一种方法。很显然苹果会采用硅设计方法。苹果最多有两类完全不同的电脑产品——笔记本电脑和桌面电脑。我认为iMac系列会重复使用相同的设计。毕竟,基于M1的MacBook Pro使用的M1与Air相同,只不过增加了风扇以使处理器能更好地工作。Mac Pro系列不太可能采用苹果自己的设计,只要苹果继续支持这一市场,该产品就很可能继续使用英特尔处理器。
那手机应用处理器会怎样呢?苹果的A系列、高通的骁龙和三星的Exynos,以及其他一些厂商都将继续为该市场设计完整的SoC裸片。
英特尔及AMD则不一样。他们设计的芯片要用于除苹果以外的所有电脑,并且还要吸引更多的潜在用户。更大的设计灵活性有助于占领更大的市场。针对更高端的应用,根据需要在同一个裸片上有选择地激活更多内核,利用很多产品来占领市场,从长远来看并非良策。此时芯粒技术便有了用武之地,AMD和英特尔都在朝着这个方向发展。
回头来看,Xilinx的Virtex 7采用2.5D集成方法,并利用硅中介层(interposer)作为多个FPGA裸片的平台,这即是早期的异构集成。当时人们都认为这是3D集成的第一步。Xilinx首席技术官Ivo Bolsens在一个演讲中曾提到2.5D方法可能会一种3D长期替代方法。差不多过了十年,情况确实如此。
先进的现代FPGA是能给芯粒带来更多机会的另一种产品。浏览Xilinx的产品目录,会发现大多数产品都采用了裸片上SoC集成方法,包含ARM内核、PCI Express选项、收发器以及可编程阵列。例如,Xilinx Zynq系列产品线中的Ultrascale+RFSoC包含四核ARM Cortex A53、双核Cortex-R5F、PCI Express、DisplayPort、USB 3.0,以及片上SRAM和许多外部存储控制器。
再往回看,英特尔也曾设计过一种芯粒,或者称为多芯片模块(MCM),是将FPGA裸片与其处理器集成在一起。在2010年英特尔开发者论坛上,他们宣布了Atom Processor E600系列。E600是一款可配置Atom处理器,采用通用的BGA衬底,有一个Altera FPGA。
(本文授权编译自EDN姐妹网站EETimes,原文参考链接:Apple M1 Processor, Passing on the Chiplets,由Jenny Liao编译)
本文为《电子技术设计》2021年1月刊杂志文章,版权所有,禁止转载。免费杂志订阅申请点击这里。