今年intel innovation(英特尔on技术创新大会)应该算是场大戏了,尤其是对pc处理器而言——主要是因为meteor lake的全面揭晓。我们之前就meteor lake的预先报道应该算是非常多了,包括intel 4工艺、3d先进封装、微架构改进等等。
不过代号为meteor lake的这一代酷睿处理器并非14代酷睿。今年年中,intel就宣布了酷睿(core)处理器品牌变化,最新的meteor lake被称为酷睿ultra第1代处理器;而处理器不同sku也改成了酷睿ultra 5、ultra 7和ultra 9等。
meteor lake之所以瞩目,我们认为关键并不在它表明intel四年5个工艺节点的计划顺利开展,而是它标志着pc处理器基于先进封装chiplet时代的到来。amd那边虽然chiplet方案也用了挺久,但除了3d v-cache之外,其die与die之间的互联方式都很难称得上“先进封装”。
另外,intel emib、foveros之类的先进封装技术,虽然此前就已经应用到了数据中心芯片产品上,但在pc处理器上大规模应用还是头一回。这不仅是对intel技术能力的考验,也是pc处理器迈向新时代的开端。酷睿ultra的品牌定位重置,应该也是基于这样的变化。
所以在intel innovation活动之前,intel就面向媒体做了技术向的pre-briefing——而且是就ccg业务做半导体制造向的技术科普。不过先期宣讲是没有把重点放在酷睿ultra产品层面的,而是把大部分精力放在了chiplet、先进封装,和大框架的结构上。(最新消息是,新一代酷睿ultra处理器产品预计要到12月14日发布)
我们基于这部分信息,来率先看一看这颗将要应用intel 4制造工艺,并且全面开启pc平台基于先进封装chiplet时代的电脑处理器。
值得一提的是,由于meteor lake处理器新增了名为npu的ai加速器,有关ai的部分,我们会另外撰文探讨(点击这里查看)。intel 4制造工艺及foveros先进封装部分,本次有一些内容更新,也将单独成文(点击这里查看);
后续intel innovation活动期间若有更多酷睿ultra处理器产品层面的信息更新,我们也将再行撰文报道。本文主要谈谈meteor lake的关键技术信息,这些内容对pc和技术爱好者而言,应该都是一场难得的盛宴。
总览meteor lake的chiplet设计
meteor lake是intel接下来即将推向pc市场的新一代酷睿ultra处理器,大方向上采用intel 4制造工艺,并融合了先进封装技术。meteor lake芯片层面,目前已知的几个核心处理器模块包括了cpu、gpu、npu,io支持包括雷电4、usb 4、pcie 5、wifi 7、蓝牙5.4等。
去年hot chips 34期间,我们就meteor lake的chiplet设计做过了比较详细的解读——就先进封装层面的详细信息,包括die间通信功耗、协议、带宽等,推荐阅读这篇文章。
而有关chiplet和先进封装技术本身,这两年电子工程专辑的封面故事都花很多篇幅去聊过(《先进封装的现在和将来,价值链的未来重心》《这次不说chiplet的好,来谈谈chiplet的“坏”》)。
简单来说,随着晶体管微缩的速度放缓,以及半导体尖端制造工艺成本的增加,外加芯片制造面临reticle limit之类的限制,高性能计算领域的芯片面积,已经大到无法用单die去解决的程度。
而chiplet就把一颗设想中很大的die,切成很多小片die,每片小die都叫做一个chiplet。而先进封装,就是通过更为密集的i/o互联间距,将这些小die“缝合”起来,封装到一起成为一整颗芯片。
meteor lake就是基于这种思路的产物——而且未来很长一段时间的酷睿处理器产品,不出意外也会按照这个思路去走。
从这次intel的介绍来看,meteor lake依旧分成了compute tile(上面主要是cpu)、graphics tile(核显)、soc tile(其上包含有低功耗e-core,npu,wifi与蓝牙模块、显示引擎、ddr内存控制器等)、io tile(主要是pcie gen 5与thunderbolt 4支持实现)。intel称其为“tile”,中文译作“模块”,实际上就是chiplet。
此前我们就提过,intel的chiplet思路和隔壁amd的差异还是比较大的。不过从介绍来看,intel这种模块化设计的灵活度,在划分不同sku,及未来性能和架构扩展和进化方面会提供极大的帮助。
intel在介绍中提到,meteor lake的核心设计理念包括(1)性能功耗效率提升;(2)首次将npu集成到pc处理器;(3)集显性能飞跃;(4)采用intel 4制造工艺。
这里的采用intel 4制造工艺,主要是指compute tile部分用的是intel 4——毕竟chiplet的灵活性之一,就体现在不同的chiplet可以用不同的工艺。而且meteor lake的其中某些die应该是台积电造的,也体现了idm 2.0策略。
cpu部分:新增一种低功耗e-core
intel从12代酷睿(alder lake)开始,cpu部分就采用异构设计了,即包含p-core性能核、e-core能效核两种不同架构的核心设计。
meteor lake的cpu部分主要位于compute tile之上——示意图给出的是6+8的方案,6颗p-core,以及4核心一组的e-core总共8个核心,和ring fabric环形总线。其实就截止发稿前,我们还并不清楚在酷睿ultra产品层面,这代处理器的具体配置如何,包括核心数、频率等。这个部分后续还会单独刊文报道。
目前就cpu部分了解到的信息是,p-core代号redwood cove,e-core代号crestmont。但这并非meteor lake的全部。
在soc tile上,intel还额外给了两颗low power e-core(以下简称lp e-core)。
截至发稿前,暂不清楚这两颗单独的e-core在架构层面,是否与compute tile上的e-core一致。猜测应该是不同的,因为在介绍调度策略时,intel给出这种类似三丛集架构(intel称其为3d性能混合架构)的功耗与性能关系,大致如下图:
这张图画的还是相当随意,但总体都是在表达不同核心集群,负责不同性能和功耗区间的工作,以达成最高的能效。记得此前arm说自己是全球唯一在做3-cluster核心cpu设计的企业,这会儿intel也是了。..
lp e-core所在的soc tile(或其中一部分)似乎是被intel称作为“low power island”(低功耗岛)的,也不光是因为两颗lp e-core,还在于其他模块——这个我们放到后文去谈。
不过intel在介绍中提到,很多情况下“只要soc tile是活着的,工作就可以继续;而compute tile、graphics tile都可以挂起睡眠或进入超低功耗模式,甚至关闭。”“保证在不损失性能的情况下,在大部分时间里,都让整个package处于非常低功耗的状态”。
intel在举例中提到了类似it后台工作,大部分情况下可以交给lp e-core去跑。在需要性能和响应速度时,再切往e-core和p-core。
这种3集群的结构,实际上会给调度提出更高的要求。考虑到自12代酷睿起,p-core + e-core的两集群异构设计,在某些场景下就存在调度问题,这次的meteor lake对intel和微软而言都会是相当大的技术挑战。
所以在媒体会上,intel又花较大篇幅去谈了intel thread director(以下简称itd)。这个itd是在intel发布12代酷睿时,也同期发布的、辅助操作系统做调度决策的机制——它介于cpu与操作系统scheduler之间,给予scheduler以hint,或者说建议。
这次intel好像对thread director做了大改——起码从介绍来看是如此:我们来大致了解一下现在的itd机制:
上图左边classification,不同的class代表不同类型的指令或工作。纵坐标代表不同集群核心的ipc(每周期执行指令数)比值。比如说对于class 0而言,p-core与e-core的情况基本类似(大部分指令落在这个区间内);而class 1部分则代表,p-core执行此类指令的ipc将大于e-core;class 2显然是p-core的ipc远高于e-core;class 3则是相反的。
右边这张图,则就每一类class,针对不同的核心,有ee(energy efficiency,能效)与perf(性能)两个打分。得分最高的,就将该核心推荐给os scheduler。就像上面这张图,就class 0,若追求性能,则itd倾向于推荐p-core n,而若追求能效,则推荐e-core n。
这张表是动态更新的,基于功耗、发热等情况发生变化;“主打一个当有其他ip占用power budget时,做动态的评估和判断”;还有像是基于soc运行时间能力做更新等。比如intel举例中,存在有时class 0指令,无论从性能还是能效维度考量,都推荐e-core的情形。“在正确的时间让正确的线程跑在正确的core上”。
intel针对这一代itd的总结还包括面向操作系统增强的feedback和更智能的hint,以及基于“系统运行模式、硬件特征”等,都“纳入到控制逻辑里面来”。
intel在媒体会上举了个比较抽象的调度案例。比如说有个高资源占用的前台app跑起来,有4个进程跑在p-core上;然后有个低资源占用的app跑了2条线程在e-core上;在高资源占用app跑完以后,若两个轻载线程还在跑,则itd会建议操作系统将它们搬到lp e-core核心,让compute tile整体闲置,以节约能耗。
其实当工作负载很复杂时,全流程仍然相当考验intel和微软的功力。这种3集群设计,在理想情况下可以做到低功耗、高能效;但如果不理想,则会对体验产生很大影响(而且lp e-core现在是在不同的die上,不知道线程迁移的延迟会不会因此大幅增加)。具体就看产品发布后的实际情况了,毕竟这方面的工作arm也是和谷歌协调了好多年才走向成熟的。
gpu:核显性能翻番、支持光追
接下来聊一聊graphics tile上的核显,以及soc tile上的媒体与显示引擎(另显示的phy部分是放在了io tile上的,如下图)。以前,这三者习惯上我们总是放在一起聊的。
从总体上来看,intel说这次的xe核显吸取了arc独显方面的技术积累和经验;新版的xe-lpg相比于前代xe-lp,性能和能效(perf/watt)都实现了翻番;而且新增了一些directx 12 ultimate特性,新增光线追踪(8个rtu)支持,两倍速率hiz,异步拷贝(async copies),以及乱序采样(out of order sampling)。
这里面的确有许多特性是继承自xe-hpg独显。具体架构层面的变化,媒体分享会上并没有详谈——据说有互联、cache方面的优化。从intel提供的ppt来看,这一代xe-lpg相比前代的xe-lp,主要是提高了主频、扩大了规模、提升了架构效率。
提频依赖于架构、逻辑与电路设计,以及工艺进化(虽然不知道graphics tile是否基于intel自己的intel 4)。
而在规模扩大的问题上,从下面这张架构框图来看,跟xe-hpg的render slice的确还挺像的(只不过似乎还是没有xmx)。
核显总体规模就是8个xe核心,总共128个矢量引擎——相比上代的96eu提升了33%;geometry管线达成双倍拓宽;sampler和pixel backends都有对应提升。按照intel所说相比前代2倍图形性能提升,矢量引擎数字提升却没有这么多,还是能看出整体架构上的优化的。
当然每个xe核心对应的有一个光线追踪单元,看来往后光追是真的要普及了。intel在酷睿ultra处理器核显上,将rtu作为标准件推广,对于其自身的光追和图形生态发展也相当有好处。不过基于embree的blender光追性能测试提升,intel给的提升数据是相比cpu渲染提升2.5倍左右的性能,其实就光追部分来看还是挺弱的。
但如果说整体图形性能真的达成了2倍提升(假定是3dmark这类benchmark成绩提升100%),而且存储不成为瓶颈,那么隔壁“大核显”就可以被比下去了。则明年用轻薄本全面玩游戏,的确还是可以期待一下。
有关图形部分,这里其实还有个问题,我们此前提过,即以往的酷睿处理器都是monolithic的soc,核显都是挂在环形总线上,甚至还能享用llc的。meteor lake显然就不能再这么做了,因为graphics tile都独立了,和compute tile中间还隔着个soc tile。
此前我们就分析过,这么做可能实际造成的性能负面影响很有限(因为图形的cache hit rate原本就很低);而且这么做对整体系统功耗的降低,似乎还有相当大的帮助,后文谈uncore的部分会提及这一点。
此外,xe显示引擎、媒体引擎主要都位于soc tile上,并没有放在graphics tile上。媒体引擎支持最高8k60 10bit hdr解码,8k30 10bit hdr编码;格式方面,主流的vp9, avc, hevc, av1都有支持。
显示引擎部分,intel强调做了功耗方面的优化;全路径(optimized end to end unified compression)压缩,“当遇到显示输出与分辨率不匹配时,压缩提供了很不错的输出能力,功耗也控制得非常好”;低功耗模式,“降低对cpu、内存、图形方面的资源需求”。
显示连接支持hdmi 2.1, display 2.1, edp 1.4;输出最高8k60 hdr, 4x 4k60 hdr, 或者1080p/1440p 360hz。
为低功耗而生的soc tile
前面谈到媒体引擎、显示引擎主要都是放在了soc tile上的;soc tile上另外还有lp e-core、npu、内存控制器、ipu,以及包括对usb、ethernet、wifi 6e/7、蓝牙等的支持。另外,io tile部分主要是实现pcie gen 5和thunderbot 4支持(似乎此种架构下,也就没有了pch的概念——其实以前的pch+cpu,也属于多die方案,只不过严格意义上不属于先进封装)。
这种chiplet式的模块化设计,不仅是让不同chiplet得以用最适配的工艺来制造,而且也确实某种程度上达成了不同模块的解耦,包括未来要对显示、媒体、imaging成像(ipu),或者pcie和thunderbolt支持做加强,会更便利。intel说这种架构思路,会影响到未来数代cpu架构设计。
其实这种设计的关键还在于die间通信带宽、功耗、延迟。intel在宣传中说foveros技术具备高密度(单位面积线数)、高带宽、低延迟、简单、高能效的特点,但这次没给具体的数字。去年的hot chips上intel给过一组数据,量级上可供各位同学参考:
不过其实soc和io tile的设计,还是挺有讲究的。就逻辑框图来看,soc tile位于整个meteor lake芯片的中间位置,上承graphics tile,下接compute tile和io tile。die与die之间有专门的高速互联总线(foveros die interconnect,不同die之间基于不同的通信协议)。
从上图来看,soc tile内部有两条总线,“北边的是noc(network on chip),特性是高带宽、快速响应,能够让挂在上面的设备快速、低功耗地访问memory”。前文着重提到的lp e-core、显示与媒体引擎、npu,乃至compute tile和graphics tile都挂在noc上。
“南边的是io fabric”,io tile、pcie、usb,以及soc tile内部的audio、ethernet、wifi蓝牙都挂在io fabric上。这部分还有两个相关安全的组成部分,silicon security和security & managebility engine(csme),分别是silicon level和platform level的安全控制。
就不同tile的定位,intel在宣传中对graphics tile的描述是“为3d性能做优化”,对compute tile的描述则为“为cpu性能做优化”——这两样都很好理解。而soc tile描述为“为功耗做优化”。
soc tile(或其中一部分)又被intel称作low power island低功耗岛。其实不光是因为lp e-core位于其上,还包括集成dlvr、动态的内部总线频率调节、基于负载的性能调节soc算法、和前文提及itd线程调度等特性。
而soc tile实现低功耗的根本原因或许还在下面。
uncore设计,为将来打基础
有关soc tile,及其中相关uncore的部分,在于践行低功耗、高能效理念过程里,这部分存在的价值。intel花了不少篇幅去谈uncore的设计指导原则——也可能成为未来酷睿处理器设计的基础:包括第一,对计算密集型ip的重新划分,实现功耗优化;第二,io带宽可扩展;第三,引入低功耗核心(即lp e-core);第四,重组电源管理设计。
我们一个个来看。首先是“计算密集型ip重新划分”——大致上体现在几个方面,过去monolithic时代的酷睿处理器设计,媒体编解码器是和核显(graphic ip)是放在一起的;而核显则挂在llc(l3 cache)上——前文也提到了这一点。下面这张图展示了ring fabric将这些ip串起来。
“任何一个cpu core,或者graphic(核显),或者media(媒体引擎)要访问内存,就会藉由ring总线,通过system agent(系统代理),到达内存。对内存访问而言,这是非常高性能的解决方案。”以往很多代的酷睿处理器即是这么做的。
这种设计存在一个问题,即ring总线上的任何一环需要访问内存时,“包括ring、core complex、graphic等逻辑单元就都需要激活”——intel在介绍中说,对于具体的应用而言,这种操作是没有必要的。最终结果就是功耗更高。
比如说只是流媒体播放的话,media ip对memory做访问,就要把整个ring都开启。那么为了解决这个问题,前文已经提到meteor lake的核显部分是单独位于graphics tile的;媒体引擎则位于soc tile;cpu核心主要位于compute tile。也包括内存控制器,“它们都有自己独立的、在soc总线上面attach的位置。”如下图。
“无论graphics,media,还是compute core,要对内存做访问时,不需要其他部分供电。”比如上面这张图展示媒体引擎工作,与内存控制器、显示引擎之间通讯即可,其余部分是可以关闭的。那么在进行视频播放时,功耗自然就能得到降低。
不过intel并未给出有关这能带来多大程度功耗降低的具体数据(这一点其实很重要)。或许这将有助于笔记本的日常使用场景下,降低低负载下的系统功耗水平——这其实一直以来都是intel pc处理器的一大顽疾。
此外,谈到uncore的第二个设计理念,是io带宽可扩展,用以支持soc内部所有模块对于带宽的需求。尤其由于部分新ip的引入,则沿用过去的方案就会造成内部io的瓶颈和流量拥塞。
“碰到带宽问题,常规解决办法是制定优先级,为一些ip创建高优先级。过去我们就是这么做的。但现在由于新ip的引入和划分,meteor lake不能再沿用老的设计方式。”“所以我们针对soc做了全新的带宽扩展,适配soc内部所有ip对带宽的需求,消除soc中ip与ip、ip与总线、io之间的通信瓶颈。”
“同时,我们还添加了io缓存块。”应该是指上图中的ioc(io cache?),“来管理传入io的量和地址转换,确保维持较好的次序。”虽然其实就intel的讲解来看,我们没听出scalability可缩放特性表现在哪儿,但应当至少包含了带宽的增加。
其三,前文也已经提到,就是meteor lake的混合架构在soc tile上引入了lp e-cores。因为毕竟不同ip之间的交互,还是需要控制、协调的。如果这个时候要依靠compute tile上的cpu核心来协调,显然是得不偿失的。
就这个角度来看,lp e-core的引入似乎是现有chiplet架构下的必行之策。比如用前面的例子来看,进行流媒体播放时,lp e-core就能做基本控制,不需要compute tile参与。
其四,是电源管理设计的“重塑”。主要表现为不同的tile,内部都有独立的电源管理控制器(pmc);而在soc tile上,又有个punit,“它跟不同tile上的电源管理控制器沟通,提供实时、可扩展的电源管理架构”,并“和上层的操作系统、软件协同工作”。
这又是个模块化、可缩放的方案,也是去中心化的组成部分。intel说这种新架构“为meteor lake提供了很多电源管理方面新的功能,也为将来芯片设计的电源管理,奠定了非常好的基础”。怪不得chips and cheese认为intel的chiplet方案相比amd的更松散、更灵活。
从intel的描述来看,uncore的这些设计理念,应该是meteor lake实现“出色的性能功耗效率”相当重要的一环;同时也是后续进一步达成低功耗的探索和基础。所以媒体分享会上,intel说了好几次meteor lake是“intel历史上能效最高的客户端处理器”。虽然可能在大部分用户看来,这是一句正确的废话。
最后总结一下meteor lake的要点,如上图所述。(1)核显性能2倍提升并支持光追;(2)新增soc tile上的lp e-core,作为更高能效比及更低功耗区间段的第三个集群,加入到了cpu核心中;(3)新增npu加速单元;(4)采用intel 4制造工艺,与foveros 3d先进封装技术。
有关npu部分点击这里查看;intel 4工艺与foveros先进封装技术更多信息则点击这里查看。
很难得的,本文没谈cpu核心微架构,光在封装级的系统设计层面打转就已经耗费了将近7000文字。怪不得这两年大家都在说,摩尔定律停滞之际,芯片设计的复杂性是往后端和系统层面进一步倾斜了。
感觉要一次完成这么多工作,应该会相当困难。不知道最后meteor lake——即酷睿ultra第1代处理器交付时,最终能达成多少intel自己的预设。其实即便其中的某些设计与方案未能达成预期,在我们看来也不要紧,因为meteor lake对未来的酷睿ultra处理器也会是至关重要的一代产品。meteor lake对intel而言,乃是重回半导体技术王座的坚实一步。
极飞R150农业无人车发布,打造“农田里的变形金刚”
磁场传感器的定义、分类及应用
确保信号完整性的电路板设计准则
涡轮流量计在安装的时候需要哪些注意事项
沃达丰即将成为欧洲最大的移动宽带和电视服务提供商
全面揭晓Meteor Lake关键技术
微软Azure Stack混合云打进中国市场,于2018年上半年正式商
2018年全国无线电管理将适时发放5G系统频率使用许可
关于嵌入式安全的相关理解与分析
深度解析工业交换机与工业自动化的紧密关系
什么牌子的骨传导运动耳机好?佩戴舒适的运动耳机推荐
Linux下spi驱动技术分析
极片正反面电阻分解测试新方法
校源行|开放原子校源行走进华中科技大学活动成功举办
DSO用不同的方法产生相同效果
中国上半年家电网购破2000亿元 国内品牌优势明显
“反向”研发芯片就侵权?也未必!
基于可变电阻和温度索引查找表(LUT)的稳压器输出补偿
国产FPGA或将再现千万门级芯希望
科创板南微医学创始人及高管信息大全