intel吧 关注:747,581贴子:3,071,667

分离式内存控制器之踵,兼谈Intel的几种Tile物理结构

取消只看楼主收藏回复

正好今天Arrow Lake-S正式解禁了,并且游戏性能如之前泄露一样不容乐观。 而这其中最可能的决定性影响因素自然就是内存延迟了。我们知道,现代游戏的内存墙问题非常严重,尤其是以垃圾优化为代表的新游戏,包括Unity和续航引擎在内,这也是X3D处理器能够在很多游戏中获得极大提升,并且相应的变得对内存超频极不敏感的原因。更不要说x86这种CPU核心跑在极高频的微架构,内存延迟对于SpecINT之类的负载都会造成严重拖累。通过对比x86的移动端和桌面端以及XMP/JEDEC DDR/LPDDR的结果可以大概估算出,近几代x86微架构,内存延迟每增加40ns,SpefInt IPC大约会降低4%到5%。这点在meteor lake的笔记本上表现得尤为突出。还记得极客湾测试Ultra 5 125H的IPC对比13900K倒吸了吗?其实就是低速的ring+LPPDR+跨tile的内存控制器害的。redwood cove P核理应提高3%到4%的IPC,但实际却表现为IPC比13900K P核低了6%到7%,三项内存缓存debuff带来的IPC损失接近10%,足以抹平一代正常的代际提升。而ring的降速甚至还会增大核间延迟,减小L3带宽,据说ring降速这一debuff也继承到了arrow lake上 。可见内存缓存性能对于x86微架构目前的前景是个难以逾越的障碍。
当然,从上面的总结也可以看出,单独的chipset架构和内存控制器设计对于内存性能的影响也仅仅是一部分,我们也完全不能忽略其他因素的影响。比如AMD的IO die设计,其甚至没有使用先进封装,但在非线程撕裂者的桌面平台,也就是2CCD的设计上,除了IO Die设计和总线拓扑结构还有PCB布线密度限制的影响导致的跨CCD通信延迟高以及内存带宽效能受限以外,其内存延迟并未受到很大的冲击(当然多CCD平台还是一样得糟糕,甚至numa问题更加严重)。你的IO die比较松弛,但你的高速L3和ring设计和3D堆叠的L3又很好的弥补了这一点。
从这个意义上说,对x86处理器而言,总线设计的重要性甚至要高于很多微架构的细节。当大家过于关注前后端性能的时候,却没有意识到强悍无匹的苹果P核实际上是一个簇内P核共享巨大L2的无L3设计,这看起来怎么这么像Intel E核?其实不然,x86微架构突出一个既要又要,一种设计往往需要适应从众多高速核心大内存带宽超快互联的HPC服务器,到众多能效核心注重scalibility的云服务商,再到注重极限单核和内存性能和游戏性能又要求兼顾多核性能和能耗比还要核心数的桌面端,再到还需要同时兼顾能耗比和超低功耗的移动端,整体设计上相互冲突的要求是很多的。因此对x86来说,评价具体的产品可能远比评价某款微架构要更为有意义。从这点上来看,Lunar Lake很好地完成了他的目标和任务并且适应了市场的需求,而Arrow Lake-S/HX则看起来至少在游戏市场上已然折戟(假如可以超ring和XMP频率的话或许还有机会? 不过台积电工艺是不是也会缩缸呢? )。至于Arrow Lake-H是否能在全能本市场上崭露头角,目前来看反而要比之前更乐观一些了。
接下来,我就带大家回顾一下这些年x86 CPU总线的变迁。并展望一下未来可能出现的新结构,顺便跟大家一起等待月底的性能解禁。


IP属地:瑞士来自Android客户端1楼2024-10-10 20:07回复
    三国演义开卷语有云,天下大势,分久必合,合久必分。很久很久以前,在酷睿2和K10的那个年代,其实CPU的总线结构还是这样的。(借用wiki的图)
    也就是著名的南北桥,CPU通过前端总线FSB连接高速总线北桥,北桥再连接高速设备包括内存和PCIE,而北桥再通过另一条总线连接低速总线南桥,再通过南桥扩展出去连接各种低速IO和设备。别看后来CPU总线集成芯片组改来改去,但其实后来所有的总线结构都和这个早期的高低速总线一脉相承。只不过集成的部分和形态发生了一些变化。


    IP属地:瑞士来自Android客户端3楼2024-10-10 20:15
    收起回复
      接下来就是初代酷睿Nehalem,北桥的功能以及内存控制器被直接集成进了CPU内部。前端总线可以说形式上消失了,因为内存控制器在CPU内部,外部直接连接DDR PHY,内部则直通L3缓存,此时可以认为原本的高速总线已经和L3和CPU内的高速总线融合。而另外一边,南桥芯片演变为了后来大家耳熟能详的芯片组。不过虽说是集成了北桥,但其实PCIE设备和高速总线仍然挂在x58芯片组上,所以实际上是一个CPU集成内存控制器+“残血北桥”+南桥的混合结构。大家此后耳熟能详的“CPU直连PCIE通道”还尚未出现。



      IP属地:瑞士来自Android客户端4楼2024-10-10 20:24
      回复
        接下来就是大家耳熟能详的2代酷睿 sandy bridge的横空出世,环形总线奠定了此后桌面端和移动端酷睿的全部基础,CPU部分开始SoC化。前端总线和北桥彻底消失,CPU内一条环形总线将所有的节点串接起来,包括CPU的每颗核心和各自对应的L3缓存部分,内存控制器和其Host的System Agent部分,原本的北桥PCIE通道则全部由SA扇出,被称为我们现在熟知的CPU直连PCIE通道。而原本高速PCIE通道连接的最重要设备也就是显卡/GPU则顺理成章地直接集成进CPU内部,占用一个ring agent,同样串接在环形总线上并且和CPU共享L3缓存并访问内存,Intel核显正式出现。当然,严格来说封装内集成显卡是更早的LGA1156平台。
        原本的南桥部分变成了我们现在熟知的芯片组,CPU通过DMI总线和其连接,以扩展出更多PCIE通道和各类外设。如果要说现在还有什么高速总线和低速总线的分别的话,那高速总线实际上就是CPU内的环形总线,而低速总线则是DMI总线。
        这一结构是如此的经典,以至于从此后一直到第一代酷睿ultra的meteor lake,无论是桌面级还是移动端的Intel酷睿系列的总线结构再也没有变过。或者说大家最喜欢的名字,“牙膏”。无非是一些小修小补和细节上的变体,比如为移动端和低功耗平台打造的DMI降速版OPIO。这其中变化最大的反而是最后消亡了的集成edram,同时也是Intel首次为x86平台引入了L4缓存的概念。


        IP属地:瑞士来自Android客户端5楼2024-10-10 20:43
        回复
          不过,这一结构可以说远远称不上完美。他之所以能沿用那么多年,一方面是由于Intel在手机和x86平板市场的彻底折戟,连同微软的Windows mobile操作系统,当然还有早已灰飞烟灭卖身转生的Nokia手机部门。另一方面也可以说是x86 PC市场长期固化下Intel不思进取的产物,毕竟各类创新设计最后全都没有通过市场的认可和检验,最后只有这一套最中庸,最不坏,最水桶的结构生存了下来。
          那么,这套结构到底都有哪些问题呢?
          1. 首先是环形总线的扩展数问题,这直接导致了Intel后来在服务器端走上了另一条暗黑邪路mesh总线,姑且按下不表。
          2.然后是核显的扩展性问题。我们知道,GPU和CPU对于LLC缓存以及内存性能的需求其实是不太一致的。CPU要求L3缓存和内存要尽量容量大带宽大的前提下,同时延迟还不能太高。但低延迟在很多情况下又和容量/带宽的扩展性是矛盾的。而GPU却尽可能的希望能获得更高的缓存命中率和带宽以及提升的等效内存带宽,相反地反而就对内存延迟并没有那么敏感。这两者对于内存缓存性能的相反偏好增大了设计难度,也间接倒向了Intel后来另外一个分支产品集成edram的移动端的CPU的诞生和失败。
          3.其次是SoC集成化的问题。我们知道,移动端和手机/平板对于扩展性的需求是和桌面CPU完全相反的。移动设备并非是不需要扩展性,相反,移动设备默认就要介入更多种不同的外设,例如摄像头,和对应的图像处理器/dsp,蓝牙,无线网卡,以及基带等等。但移动端为了降低功耗的考虑,并不需要一种通用的总线去扩展各种各样不同的外设功能组合。相反地,需要尽可能的把所有固定功能的外设扩展集成进一颗SoC里。而在Sandy Bridge这套设计上,这些东西就只能都扔在原本的SA附近,包括大家喜闻乐见的media engine和编解码器,这导致了SA变得日益臃肿。同时还影响到了桌面端游戏魔怔比们超内存和控制电压的稳定性。而另外一边,南桥芯片和DMI总线的存在也是不利于移动端提高集成度和降低基础功耗的存在,反而另外一方面这些扩展性对于很多移动端设备和平板来说又可以说是完全多余的。
          而另外一边,CPU内环形总线ring的存在也不利于降低基础功耗。我们知道,ring是作为一种”基础设施/infrastructure”存在的。ring作为一个整体运行在某个频率下,就像是一条高速运转的传送带,即使所有的工位都闲置着,传送带运转的功耗扔不可小觑。但如果我们降低ring的频率,那么由于现代x86 CPU愈发高攀的单核睿频频率,L3缓存和ring的性能又会极大地拖累此时CPU的性能。并且ring这种低功耗下的固定开支会随着核心数的增加水涨船高,随着后来x86愈演愈烈的核战把事情带到了一个难以扭转的方向。


          IP属地:瑞士来自Android客户端7楼2024-10-10 21:15
          收起回复
            一次失败的尝试:集成edram。
            显然,intel并非不知道上面这些问题的存在,尤其是在曾经非常重要的移动端轻薄本市场和大客户苹果那里。苹果的用户,包括当时使用Intel版MacBook air和macbook pro的大部分人,他们的需求是什么呢?
            1. CPU尽可能的低功耗,尽可能高的能耗比,提供一定程度的足够性能,但同时发热又必须要低。以此降低风扇转速以及避免金属机身让用户抱怨过烫,同时可以缩减散热让机器做得尽可能轻薄。同时基础功耗还要尽量低,以此延长续航时间和降低待机功耗。毕竟用户的笔记本使用习惯在往合盖不关机上靠。
            2. 提供几个高速接口,可以外接各类高速设备包括显示器,剩下的低速接口无所谓,用户可以自行扩展出去。扩展坞而已有什么买不起的。
            3. 核显性能要足够强悍,因为苹果需要给用户配高分屏以及提供给他们外接各类高分辨率苹果设备的能力,同时最好核显的性能能够高到让苹果摆脱独显的拖油瓶,从而维持机器续航和重量。从那时候开始,GPU在计算能力上就已经开始逐渐崭露头角了,无论是3D渲染,编解码,还是运行后来出现的AI模型。CPU的计算能力开始边缘化。
            现在我们知道,Intel对1的解决办法相当暴力,就是低核心数+降频。但是x86高企的基础功耗让这玩意儿的体验变得极差。而Intel针对低功耗设计的ATOM系列又相当欠缺爆发性能,并且是个低成本的cost-down设计。这导致在相当长的一段时间内,低功耗都=低端=低成本=廉价体验。而intel对2的解决方案也可以认为是不尽人意,尤其是Intel所有酷睿都要拖着一个工艺落后一代的南桥芯片的拖油瓶的时候。
            Intel真正上了心的也许只有3。可能是因为Intel核显孱弱的性能和糟糕的规模扩展性,又或者是看到了GPU未来的计算潜力,又或者是大客户苹果的要求,Intel核显后来陆续发展出了独立于L3的共享L2,以及在当时可以说是非常大胆的集成edram尝试。


            IP属地:瑞士来自Android客户端8楼2024-10-10 21:34
            回复
              Intel的集成edram最早是用在移动端酷睿上的,可以认为是Intel和苹果对于核显集成和计算能力扩展方向一致认可的产物。我们知道,CPU面临内存墙的限制,但这点对GPU也是一样的。但是DDR的设计内存带宽天生是不如牺牲延迟对带宽特化的GDDR的,更不用说核显因为和CPU共享L3还有缓存竞争的问题,那怎么样进一步提升核显的等效带宽呢?Intel想出来的解决方案是新加入一级缓存,也就是事实上的L4,其物理结构使用片上内存edram,其延迟在略低于当时主流的DDR3的同时,又能够以较低的成本提供远高于SRAM的容量,虽然也不便宜,但总的来说是一个比较中庸的选择。
              这个L4的设计也很有意思,它并非传统的LLC缓存,而是victim cache。也就是CPU从内存取数据到cache line仍然是fill进原本的L3缓存这一级,只有当标记为无用的数据被从L3缓存中被剔除时会被放入edram中。当然刨开具体的技术细节不谈,这样做的好处或许是可以简化缓存同步protocol的设计,并且减小功耗开支,因为victim cache相对而言没有普通cache那么"hot"。毕竟如果用edram做纯粹的L4很可能功耗代价会相当高。
              edram这一设计可以看作是Intel版本最早的“x3D”。这一设计并没能挽救Intel最终被苹果抛弃的命运,毕竟Intel被苹果抛弃的理由远远不止羸弱的核显性能这一项。并且其高昂的成本也限制了Intel把这一技术大规模应用到非苹果的低毛利产品上。但Intel其实一直没有放弃集成片上内存提升核显性能的探索,比如后来集成Vega和HBM的神奇混血儿冥王峡谷8809G。
              这一设计最为桌面用户熟悉的可能还是5775C这颗CPU,虽然生不逢时并不受桌面用户和游戏玩家的青睐。但其实多年以后的复测反而证明了这颗U在关闭核显让CPU独占edram缓存的前提下实际上游戏性能强于频率更高的Haswell。如果这一产品线没有死掉或者Intel能够认真发掘的话,或许其实完全有做出一个Intel版本的大缓存游戏CPU的潜力。


              IP属地:瑞士来自Android客户端11楼2024-10-10 22:00
              回复
                工艺困境,chiplet和先进封装:
                接下来的日子就是大家很熟悉的10nm延期的那些年了,Intel产品青黄不接,公司产品在几乎所有市场上节节败退:
                服务器市场,被采用chiplet设计的低成本高能效新工艺Zen系列全面冲击,另一方面则面临着来自ARM架构的服务器挑战,而数据中心业务老黄GPU异军突起,AI时代来临前的曙光已然出现。
                芯片制造业务:由于10nm的延期,原定要淘汰的14nm产能无法释出,结果14nm进军代工的第一笔重要订单无疾而终。而台积电则凭借手机端多年的积累,在finfet时代成功实现赶超,不仅一举摆脱了40nm时代遗留下来的台漏电之名,更是顺利击败三星坐稳世界第一半导体制造公司的宝座。
                移动端:苹果MacBook产品线转向自研的ARM处理器M系列,给了Intel移动端最大的金库的沉重一击。而主流市场则面对AMD 8核Zen 2+强大核显的APU全无一战之力。一直以来的奶牛现金库岌岌可危。
                桌面端:Zen 3 vs 火箭湖,至暗时刻,很难想象I炮还有比那个时候更绝望的一天。
                不过,危机既是挑战,也是机遇。Intel虽然在芯片制造领域大幅落后,但同时早在多年前就开始深耕的先进封装终于看见了一丝商业化的曙光。由于EUV光刻机的经济性问题以及FinFet结构逐渐开始接近物理极限,半导体工艺制程的进步也开始显著放缓,而且设计制造成本日益高涨,此时此刻more than moore的先进封装成为了在维持成本相对不太高的前提下进一步提高集成度的有效途径。不过,chiplet是一定有代价的,在这个过程中,Intel获得了哪些优势,又付出了哪些代价呢?


                IP属地:瑞士来自Android客户端12楼2024-10-10 22:26
                收起回复
                  又一次失败的尝试:lakefield
                  作为foveros先进封装,大小核混合架构,以及封装内存在x86消费级平台的首秀。Lakefield的表现可以用惨不忍睹来形容。这不是Intel第一次在消费级产品上使用先进封装技术,此前的冥王峡谷8809G就已经使用过了成本更低的EMIB先进封装。但foveros理应可以提高更低的能耗和更高的集成度,并且实现内存的3D堆叠封装让x86 SoC可以首次做到手机的尺寸和集成度。然而遗憾的是,Intel 第一代量产10nm糟糕的性能,1P4E的孱弱配置,再加上堆叠内存可想而知带来的糟糕散热,以及Intel的核心微架构彼时糟糕的能耗比。可以看出虽然这颗SoC的设计方向无一例外地都在向手机方向靠拢,单最终的成品体现出来的是一款不折不扣的技术试验品。比起专为需求设计的产品,大小核设计更像是用来验证混合核心可行性的原型,而foveros先进封装和堆叠内存更是只是测试自家先进封装技术的一环,就连那个新工艺10nm都是一个未成熟的半成品。虽然各方面的技术都用的是最新的,但做出来的产品却是一个彻头彻尾的失败作。让人不禁怀疑Intel是否从来没有认真的从产品定位的角度去考虑把他做成功过。不过值得称道的一点是,这确实是一颗货真价实的SoC,其实际的产品彻底摆脱了桥片的累赘。并且从各种功能单元的配置来看可以说是全方位对位手机SoC的产物。这一点即使是后来的12/13/14代Alder Lake/Raptor Lake也没有做到。从这个意义上说,Lakefield才是Lunar Lake真正意义上精神前辈,而Lunar Lake抛弃了lakefield上那些华而不实的部分,最终实现了华丽转身。


                  IP属地:瑞士来自Android客户端14楼2024-10-10 22:44
                  回复
                    Meteor Lake:姗姗来迟的实干家
                    在lakefield之后,intel消费级先进封装的产品经历了几年的沉寂。因为中间更多是延期太久太久的10nm的尾声,无论是大小核设计的Alder Lake,还是溃败的服务器sapphire rapids。intel好像是在给大企业病留下的种种弊病一一还债。与为了chiplet而chiplet反复回炉重造十几个步进让人丈二和尚摸不着头脑的sapphire rapids相比,meteor lake各方面都透露出了这是Intel第一颗对于先进封装应该对产品设计有何贡献做了认真思考的产物,非常的务实。让我一一道来:
                    1. 让我们比较Intel的chiplet和Zen系列的chiplet以及RDNA 3的chiplet有何不同之处。我们先来列举一下摩尔定律放缓带来的一些debuff以及如何用先进封装加以克服:
                    先进工艺的成本越来越高涨,这导致为了提高芯片集成度和性能芯片的制造成本水涨船高。这一成本传导到消费端带来的后果对整个行业的发展都是致命的。因此先进封装必然要向着制造更小的芯粒,提高芯片的良率降低芯片成本的方向前进。
                    而比起芯片制造成本来说,芯片的设计验证流片成本更是天文数字,而除了成本以外,高度复杂的芯片带来的验证成本拖累上手时间TTM则是半导体公司更不能容忍的问题。比起每年乏善可陈的更新,缺乏新产品提醒消费者产品本身的存在更为致命。因此先进封装的设计要尽可能模块化,要能尽量多的复用部件,这样可以减小每个部分各自的开发难度和成本。也方便更新(refresh)出新产品刺激消费者。
                    另外一点就是先进工艺的红利在不同结构上不再均等,IO和模拟电路的缩放早已停滞,而SRAM现在紧随其后,只有逻辑电路还在以比较大的步伐继续微缩。因此先进封装应该尽可能地利用不同工艺的特性,用相对便宜的工艺去实现工艺收益不高的模块。


                    IP属地:瑞士来自Android客户端16楼2024-10-10 23:03
                    回复
                      2. 接下来我们先看看AMD的做法:
                      作为chiplet的成功代表案例,AMD的Zen系列是怎么利用先进封装和chiplet的优势的呢?
                      对第一点:AMD的选择是制造只有8核的CCD。一颗CCD的面积在70到90mm^2之间,因此良率可以控制住相当高的水平,有效节约制造成本,提高产品竞争力和利润率。
                      对第二点:AMD的选择是服务器和桌面端共用一套设计和流片,这样可以让同一套mask和设计在桌面端和服务器端之间高度复用,显著降低了开发成本。
                      对第三点:AMD的选择是IO die,把难以微缩的IO电路serdes之类的通通扔到更便宜的落后工艺上去。使用最先进工艺制造的CCD只保留CPU核心和L3缓存部分。
                      那AMD付出了哪些代价呢?肉眼可见的当然就有IO die巨大的待机功耗,IO die本身对于内存带宽和延迟的debuff,以及分CCD结构以后带来的numa困境。但由于AMD实际上做的是极致的cost-down设计,这些debuff或多或少都可以忽略,而相应地通过其他措施比如X3D缓存来进行弥补。可以说Zen系列本身也有其矛盾之处,明明是缩减成本不使用先进封装走PCB基板的产物,但为了解决CCD的内存带宽问题又硬上了成本高昂的hybrid bonding先进封装的X3D缓存。反过来又导致X3D的芯片的桌面产品变成了一个口碑极好但是完全不赚钱甚至亏钱的神奇产品。不过其本身3D缓存可以选配一点无疑是正确的商业决策,但X3D产品的定位又挤压了自家其余桌面产品线的生存空间,也算是后Zen时代AMD桌面的一大困境吧。
                      而另外一方面,由于这套极致缩减成本设计的能耗debuff,其CCD+IO Die的设计甚至可以说和Intel早年的N代工艺CPU+N-1代工艺桥片思路上无甚区别,其在移动端可以说是毫无生存空间。同时因为IO die使用的工艺较为落后且面积巨大,导致AMD很难进一步为其添加更大的GPU或是别的组件,这导致了AMD消费端出现了两套体系的分裂。一套是以Zen代表的传统桌面,另一套是以移动端APU为代表的单芯SoC结构,而AMD桌面端的大核显产品则是来自于移动端反哺,移动端则在Intel各路产品的紧逼之下逐渐走上了扩张之路,从一套设计包打天下的APU到PHX流片8核和2+4两个版本,再到STX和Kraken,AMD移动端渐渐走上了Intel的老路。变成了一个萝卜一个坑这样的设计,模块化和复用流片完全无从谈起了。可以说,AMD的chiplet策略在移动端是完全失效的。
                      作为另一个例子,如果我们看看RDNA 3.5,就可以看出cost-down先行带来的弊端,如果只是单纯为了节省SRAM的高昂芯片成本,企图用暴力的胶水来获得又便宜性能又好的产品,结果很难说能尽如人意。


                      IP属地:瑞士来自Android客户端17楼2024-10-10 23:31
                      收起回复
                        3. Meteor Lake以及Intel的答卷
                        Intel的思路和AMD并不完全相同,因为Intel的先进封装一开始就是要进军移动端的。而最终目标是覆盖从服务器到消费级的所有产品线。而且因为Intel自己手握封装厂和晶圆fab的资源,相应地就不会对先进封装的成本那么敏感。因此,Intel可以选择以更激进的方式去使用先进封装。
                        对第一点,intel的想法也是一样的,通过把芯片分成更小的tile太提升良率,节约制造成本,这点并没有变化。
                        对第二点,intel的复用理念就不再一样了,Intel在移动端的服务器的失利已经证明了在不同市场复用相同的CPU设计并不是一个非常有效的方案,尤其是当这些市场之前的需求差异极大的时候。例如Intel为桌面级开发的P核架构显然是不太适合对scalability和能耗比要求高的云服务器市场的。为此Intel推出了自家的E核服务器产品,AMD也有与之对位的Zen 4C/Zen 5C系列。同时复用流片mask所节省的成本其实远不如复用IP设计的成本,后者所占的成本可能是大比例高于前者的。因此,能在不同定位的产品线之间尽量复用IP,当然能复用芯片更好,并且还要尽量减小对原本市场的影响,就成为了Intel的目标。
                        而对第三点,Intel为什么说Intel务实,因为Intel连自家工艺都可以不用了,各种tile谁的工艺便宜符合要求就给谁。这算是Intel复用性里不一样的一条,因为设计团队可以有两套不同选择,因此设计需要能复用在自家和台积电两套工艺下面。
                        因此Intel给出的方案如下:
                        IO(雷电一类)可以复用,而且可以在不同产品间复用。
                        GPU单元可以复用,可以在移动端和桌面端之间复用。
                        额外部件IP也可以复用,这包括了很多总线设计,NPU,Intel媒体引擎,以及其他的各种额外计算设备。
                        CPU不在不同定位的市场之间复用。
                        服务器和消费级不复用。
                        这就有了我们现在看到的Meteor Lake的样子


                        IP属地:瑞士来自Android客户端21楼2024-10-10 23:56
                        回复
                          天下大势,合久必分,分久必合。
                          Meteor Lake的核心其实是这颗SoC Tile。我们知道,Meteor Lake的Tile分成了四份,CPU,GPU,IO(其实就是雷电),剩下的就是这个SoC。其他三个的功能都很显然,但这个SoC他到底是什么呢?
                          如果我们对照前面的框图,其实我相信答案很简单:南北桥回来了!只是他们换了个样子。
                          严格意义上说,meteor lake的SoC Tile就如它字面意义所说,这是一颗SoC。这实际上就是一颗能够独立运行的x86 SoC。
                          他有着一条传统意义上的北桥高速总线,只不过他现在被称为NOC总线。并且上面已经连接了集成的CPU核(两颗LPE),同时上面还连接了最原始最传统的GPU/也就是显示部分,同时还有内存控制器,以及新加入的计算设备比如NPU,当然还有编解码引擎。而同样连接在这条noc总线上的CPU Tile和GPU Tile,反而更像是额外加上去的高速计算设备。
                          正如前面所说,当SA需要的功能太多太过臃肿时,他内部自然会分裂出一条全新的总线来用来连接所有这些资源。但这也带来了一个额外的问题:那就是内存控制器从Nahelem以来,第一次又重新从CPU中分离了出去。因此这势必带来内存性能的倒退,哪怕是使用了foveros封装也是如此。但如果把内存控制器移回CPU内部,那么因为foveros封装的总线带宽限制,包括GPU/NPU/编解码器和LPE这些需要内存访问带宽的设备反而有可能受到更大的影响。从布局上看,所有设备都通过NOC总线往SoC里的内存控制器获取数据权限,可以说是最“中庸”,最平衡,最不坏的一个选择。另外一个问题,则是SoC Tile本身是由更落后的N6工艺制造,因此更低的NOC总线性能势必导致内存性能表现不如传统上直接挂在ring上的。
                          而另外一边,原先的南桥或者说芯片组以及其他外围设备,包括独立出去的雷电接口,现在都统一挂载在了IOC和IO fabric上。因此,可以说这颗SoC Tile就是一颗完整可独立运行的集成了所有南北桥和CPU核(LPE)的x86 SoC。并且,由于其基础工艺使用了廉价且能耗比优异的N6来制造,并且其余各部分组件可以按需唤醒,而且也没有需要跑高频的ring总线,其基础功耗得以大幅降低,也可以认为是meteor lake延长续航的一个重要功臣。
                          不过问题也是显而易见的,在通常的编程模型中,GPU一直以来是被视作是CPU的外围设备的,将其置于较低速的NoC总线上或许问题不大,但操作系统在日常使用中的绝大部分任务都是要调度到CPU上的,而且是CPU Tile上的那些核心。此时ring总线即使运行在高速状态,由于实际的内存访问性能被NoC总线限制,很可能也只是徒增功耗,因为系统瓶颈永远是被最短板的一块儿所限制。因此,我高度怀疑,即使arrow lake产品真的来到,超ring能够提升多少内存效能也很难说。


                          IP属地:瑞士来自Android客户端25楼2024-10-11 00:29
                          收起回复
                            另外一点小插曲,meteor lake的IO Tile为什么要单独分出来?从工艺上讲,CPU,GPU,SoC,分别是Intel 4,N5,N6。IO Tile工艺和SoC一致其实可以直接合并的。而Intel展示的IO Tile单独的Scaling也就是可以做1个/2个 更多的雷电看上去更像是伪需求,颇有一点为了chiplet而chiplet的感觉。不过考虑到技术上的延续性,除了为了维持芯片整体的形状完整性以外(不然GPU Tile短一截,就只能用Lunar Lake同款大块dummy空硅片填平了,虽然meteor lake也有小块dummy),更多的应该还是给接下来在lunar lake和panther lake上演变为platform controller的IO die做铺垫吧。毕竟结构上是完全类似的。


                            IP属地:瑞士来自Android客户端26楼2024-10-11 00:46
                            回复
                              LNL:一切为了超低功耗,回归融合
                              而Lunar Lake选择了另外一条道路。作为Lakefield的精神续作,lunar lake浑身上下透露出一股不惜一切代价证明x86的气息,因此,lunar lake对于meteor lake上诸多为了成本和复用性的设计做出了改变,选择了不妥协。从前面的论述可以看出,对低功耗产品而言,永远都是monolithic的设计更有优势,只要不计成本的话,但现实的产品肯定不可能不计成本,因此,就必须要选择牺牲一部分对于核心设计目标最不重要的部分。对Lunar Lake而言,由于LPE在设计之初就是要承担和苹果E核类似的功能,需要负责在操作系统调度的绝大部分轻度任务。换句话说,就是LPE真正成为了这颗SoC的核心,此时meteor lake糟糕的LPE延迟就不能再视而不见了。可见此时noc总线再次作为设计的核心被摆到了中间。而所有连接在NoC总线上的设备,主要是CPU,GPU和NPU,又重新全部集成到了同一块昂贵的N3B Tile之上。并且还有一块统一的memory side cache支持。可以看到,DDR PHY紧贴着P/LPE核,其连接到内存控制器和包裹着的一圈memory side cache后在noc总线上紧邻的就是P核的ring以及LPE核。从intel官方的延迟测试可以看出,Lunar Lake对比meteor lake,内存延迟带宽方面有了巨大的进步。但需要注意的一点是,提升最大的是LPE,P核的提升反而较小,足以看出对动辄5 GHz高频的x86核心来说,P核内存性能的新瓶颈已经落在这个noc总线上了。而Lion Cove选择继续加大L2显然有一种水多了加面面多了加水的味道在里面,并不是一种很有性价比的方案。x86的P核显然已经到了需要彻底重新设计的地步了,实在有些积重难返。看隔壁Zen 5的桌面端则更加明显,为了成本维持CCD面积不增加选择了通过重新设计L3来缩小缓存面积,这对于x86 P核心在游戏之类的实际应用中实在撑不上是好消息。从这个意义上说,如果P核微架构不改进,仅仅只靠chiplet改回单die,确实会有所改善,但很难说会有非常大的质变。毕竟SoC化的趋势不可避免,能耗比在变得越来越重要,CPU逐渐地边缘化,游戏玩家的声量还能有多少影响力估计只能当做饭后的谈资,绝无可能仅仅为了游戏玩家的需求而去选择开设计上的倒车的。
                              回过头来看,Arrow Lake的ppt写着IPC只提升了9%,这没有达到Lion Cove宣传的14%的幅度,那这5%去哪儿了?从前面的经验估算来看,假如Intel是按照惯例使用的6400 JEDEC内存来测试的Arrow Lake的话,这很可能意味着285K在6400 JEDEC内存下延迟比14900K在5200/5600下要高40ns以上,进入120ns到130ns这个区间,且实际内存效能甚至可能更低。这一内存性能的劣化足以轻松吃掉5%左右的x86 IPC提升。但最大的问题,其实还是x86的P核,频率跑得实在太高了。



                              IP属地:瑞士来自Android客户端27楼2024-10-11 01:23
                              收起回复