首页资讯科技 微软设计自己的芯片

微软设计自己的芯片

张平距离微软Xbox Series X游戏主机正式发售已经过去一段时间了,虽然由于缺货、涨价等因素,有关这款游戏主机的争议依旧很多。但不得不说,凭借全新设计的SoC和整体架构,XboxSeries X还是带来了超越之前所有游戏主机的强悍性能…

微软设计自己的芯片

张平

距离微软Xbox Series X游戏主机正式发布已经有一段时间了,虽然由于缺货和涨价等因素,关于这款游戏主机的争议仍然很多。但不得不说,凭借全新设计的SoC和整体架构,XboxSeries X依然带来了超越以往所有游戏主机的强大性能和出色体验。但是,人们对这款主机产品也有很多疑问,比如为什么SoC架构要这样设计?它的散热设计有什么优势?为什么不是所有的GPU单元都打开了?在最近的ISSCC会议上,微软详细回答了大家关心的许多问题。

这个世界已经遭受了很长时间的苦难。

在2021年2月的ISSCC(国际固态电路会议)上,微软发表了主题为“Xbox Series X SoC:下一代游戏主机”的演讲。在30分钟的时间里,微软详细介绍了Xbox Series X SoC(这款处理器将简称为“X SoC”,游戏主机简称为“Xbox X”)。虽然之前应该已经知道了一些关于架构和性能的信息,但是更多的信息还是微软第一次披露,包括整个架构平衡、散热设计、存储系统、制造、工艺选择、成本等等。内容还是很多的。

代号“Scarlett”:Xbox系列x SOC概述

X SoC是微软近年来设计的最大最复杂的SoC产品。关于它的一些信息,本刊之前已经解读过,本文只对重复的内容做必要的介绍。

X SoC的RD代号为“Scarlett”,也是微软在TSMC N7工艺,即7nm工艺制造的SoC产品。整个SoC集成了153亿个晶体管,芯片尺寸为360.4mm2,两边长度分别为15.83lmm和22.765mm。

Scarlett内部封装了移动架构的Zen 2内核,共有8个内核。整体配置分为2组,每组4核,每组核共享4MBL3缓存。一般配置方案类似于AMD面向移动市场的Renoir和Lucien ne处理器。另一方面,GPU采用RDNA架构,拥有12TFLOPS的计算能力,通过可扩展的数据连接结构与CPU相连。整个GPU中共设计了56个计算单元,但只有52个单元开启。

内存方面,整个SoC通过20个16位通道连接16GB GDDR6内存,其中10GB设计为高性能通道,可为游戏提供560G B/s带宽。剩余6GB带宽仅为336GB/s,性能较低,适用于非游戏场合或非内存瓶颈场合。由于带宽降低,这部分内存的功耗也相对较低。

视频编解码方面,X SoC支持4K或8K AVC编解码,H EVC/VP9HDR解码,AVC HDR编码。此外,处理器内部还有三个音频协处理器,可以实现MOVAD(支持Opus或Vorbis)、CFPU2频域处理、Logan IP(用于计算多声道回声消除)、MEC,可以消除麦克风背景噪声等。

安全性方面,X SoC内部增加了HSP(硬件安全处理器),启用了信任根和安全硬件加密密钥等所有加密功能。当然,HSP也是微软Pluton加密架构的一部分。此外,其内置的MSP媒体流处理器可以快速加密和解密AES加密的外部媒体设备,性能足以满足PCIe 4.0的高带宽要求。在存储方面,与上一代7200rpm HDD硬盘相比,Xbox Velocity架构在启用NVMe和MPS技术后,加载速度大幅提升,并节省了约35% 空未压缩格式存储的游戏。

意味着微软Xbox X和X SoC带来了3倍的CPU性能,2倍的GPU性能,1.7倍的内存带宽,2倍的IO带宽,2.4倍的性能功耗比,同样的声学性能,但同时只有上一代0.9倍的体积,并能带来更严格的媒体版权保护。

对于大家关心的功耗问题,微软并没有给出太详细的数据,只是说X SoC的功耗比2013款芯片增加了1 5%左右。有媒体根据微软的相关数据和实际操作给出了估算数据——整个Xbox X的峰值功耗应该在270W左右。这是因为微软提供了最高315W的电源。考虑到必要的余量,主机的功耗应该在270W左右比较合理。X SoC应该会占据预计270W的很大一部分,微软声称在没有确定其所处的技术环境的情况下,不会提供这款芯片的功耗性能。另外,GDDR6内存和20个内存通道也会占用一些能耗,当然还有SSD。所以合理估算的话,X SoC和GDDR6内存的功耗在225W左右。考虑到16Gbps GDDR6芯片单个功耗在2.5W左右,那么内存应该是25W。推测X SoC最大应该可以承受200W左右的功耗。

当然,以上只是估算的数据,考虑到满SoC,但实际使用中基本不会出现这样的情况。即使是计算压力很大的游戏《战争机器5》在运行的时候,Xbox X的实际测试功耗也只有202W。

台积电来帮忙:XboxSeries X SoC的工艺优化

除了设计,微软做了很多改进,在制造上,微软也和厂商合作优化设计。一般来说,制造一个处理器可能有成千上万个选项,所有这些选项都会影响其他选项。制造商需要在这些复杂的比率中找到正确的组合,以生产出具有最佳性能、最佳频率、最佳功耗和最佳效率的产品,这些都需要不断尝试才能获得相对优异的值。

微软介绍,它与AMD和TSMC合作,在SoC的制造中实施了两种新方法,从而获得了更好的产品。其中之一是重新校准并进一步确定晶体管频率和漏电流定义所需的最小电压值和最小电流值;另一种方法是在定义的search 空区间内找到本地电压的最小值,即Vmin。

通过这两项措施的结合,微软宣称SoC的功耗降低了10%-15%,这是纯粹的制造增益。然而,这种优化的效果可能取决于时间和投资。毕竟不断测试芯片的电压电流值是一件很麻烦的工作,会占用很多工时。至于微软会如何实现,暂时还不清楚。

容量问题:GPU产量限制

一般来说,大尺寸芯片在生产过程中难免会产生各种缺陷,不同的芯片性能也不同。对于芯片设计和制造来说,需要兼顾性能和缺陷。不同于台式电脑、笔记本电脑等产品可以设置多个不同等级的芯片,使用屏蔽单元降低频率来实现产品分级,游戏机往往只有一个硬件配置和某个性能指标,因此良品率控制需要更加精细的调整。

上面说的很多内容主要是性能、噪声、功耗方面的,但是从良品率来说,X SoC也是值得研究的。其中一个关键内容是,X SoC在架构设计上包含了56个计算单元,但最后只开放了52个。在这方面,微软披露了很多关于ISSCC的详细信息。

微软在这里定义了一个叫做WGP的单位。一个WGP单元包含2个GPU计算单元和一些共享资源,因为X SoC有56个计算单元,也就是说整个SoC上有28个wgp。

微软声称许多现有的芯片可以启用所有28个WGPs,GPU的目标是提供12TFLOPS的性能。所以微软在这部分可以选择两种配置方案:一种是1675M Hz启用28 WGPs,一种是1825MHz启用26 WGPs。

两种方案都可以达到12TFLOPS,但前者的频率更低,意味着电压和功耗更低。微软提到,如果28个WGPs全部启用,总功耗将降低20%。

其实节省20%的功耗是很可观的,也就是说每瓦性能可以提升,有空个房间性能提升。但问题是,由于芯片良率的原因,当所有芯片都启用28 WGPs时,微软可能无法获得足够数量的芯片,这意味着28 WGPs的版本可能在经济上没有意义。

根据微软给出的数据,目前使用的TSMC DUV 7nm工艺声称每平方厘米有0.09个缺陷。简单计算一下,300mm晶圆有706.86mm2,也就是说会有64个缺陷。按照X SoC的面积计算,300mm晶圆去除圆边后可以生产约147个芯片。在这147个芯片中,如果都满足微软设定的频率和功耗数据,再考虑缺陷率,那么每个晶圆就有107个合格的芯片。所以这部分的成品率是73%。

当然,这里的计算是理论值。当良率为73%时,考虑到GPU在SoC中占据最大的部分,大部分缺陷会出现在WGP上,这使得厂商可以禁用这个WGP,使整个芯片正常工作。当一个非GPU部分出现缺陷,比如CPU或者缓存,整个芯片就会报废。当然,这种概率不是没有,只是不高。因此,当缺陷率为每平方厘米0.09个,同一芯片上没有两个缺陷时(这种情况不存在,但很少),通过禁用两个wgp,选择只有26个wgp的芯片,几乎可以使用生产线上的所有芯片,有效降低芯片成本近1/3。显然,这是一笔划算的经济账。

微软曾经提到,这一代游戏主机的处理器成本远高于Xbox One X,甚至高于2013年的Xbox One(本刊之前的文章有详细分析)。主要原因是芯片面积更大,工艺节点更先进,生产步骤更复杂,芯片价格更高,良率更低,知识产权更多。所以以20%的功耗为代价,降低近1/3的成本是极其划算的。甚至26 WGPs的方案也很大程度上影响了Xbox X的供货,如果采用28 WGPs的方案,那么根据现有的统计,微软卖出233万台Xbox X就需要21800片300mm晶圆(73%良率),如果采用26 WGPs的方案,这个数字将减少到1 6000片。考虑到现在Xbox X等游戏主机缺货,微软做出这样的选择显然是非常合适的。

解决芯片散热问题。

所谓热密度,是指芯片单位面积产生的热量的数值。这个值可以用来指代整个芯片,也可以单独考察芯片的某一部分,特别是针对SoC产品。一般来说,芯片高热密度的区域在高负载下可能会出现极端高温,难以快速散发,导致整个芯片工作不稳定或影响芯片性能。对于芯片设计来说,需要让两个热密度高的区域尽量远离,避免相互影响,比如CPU和GPU区域,这对芯片设计提出了更高的要求。一般来说,SoC中热密度最高的区域是GPU,因为SoC的GPU规模大,数据流量大。晶体管的频繁开关会带来更高的热量,导致这个区域的热密度相对较高。

不过微软声称X SoC上的情况不同——这个SoC中热密度最高的区域反而是CPU区域。由于X SoC采用AMD 2en2高性能核心,因此比上一代超高性能功耗比的Jaguar核心具有更高的热密度,尤其是当游戏负载增加时,CPU内部的双256位浮点单元是功耗和热密度最高的区域。

从微软展示的图片(下图)中可以看到,在执行某项任务时(图片中微软并没有说明SoC在做什么样的工作,是游戏还是特殊负载测试),CPU浮点区域的最高温度高达87.4。c,接近极值。相比之下,GPU的最高温度更低,为80.9。丙.当然,温暖程度还取决于硬件的频率选择等因素,所以设计师需要在CPU、GPU和整体特性、散热、噪音之间找到一个平衡点。

微软还表示,由于CPU的温度过高,散热片的噪音与CPU的温度有显著的相关性。微软也给出一个数据,就是CPU对噪音的影响不成比例。CPU每1W功耗,其带来噪音的能力是GPU的5倍。

因为这种情况,微软花了更多的时间优化CPU频率和功耗,以平衡性能和散热。这也是为什么启动多线程时系统运行在3.6GHz,而禁用多线程时可以运行在3.8GHz的原因之一。

最佳体验:平衡噪音、功耗和散热。

对于任何一个独立的系统,比如游戏机、PC,平衡噪声、功耗、散热都类似于解多维方程组,尤其是当新系统有更大的功率输出,但同时又严格要求设备体积的时候。微软解释说,对于Xbox X,他们的设计目标是比上一代产品的TDP高15%,但体积降低了20%,噪音基本与上一代产品相同。

最终的结果是Xbox X的尺寸比上一代缩小了10%。但微软采用了三通道并行散热设计方案,设计了既能冷却SoC又能冷却内存的一体化蒸汽室散热器,冷却电源部分、南桥等部件的中央机箱气流挡板,以及后置电源的冷却通道。风扇方面,Xbox X采用130mm轴流风扇,三相无刷电机。这种电机的特点是高性能、低噪音、高可靠性,能够满足Xbox X长期使用的稳定性和可靠性。

微软还提供了Xbox X运行时的详细横截面热图像。从这个图可以看出,右边的SoC散热器是整个设备散热压力最重的区域,中间是气流挡板,左边是系统其余部分,包括第二块PCB,有10个芯片。整个Xbox X有2个PCB,其中一个包含X SoC,另一个用于所有10相关的设备、连接等。这样的设计可以将两部分的热量分开,提高空之间的利用率。但唯一需要考虑的问题是,电路板之间的连接会产生相对较少的热量,它们之间的数据带宽也需要小心处理。

一点也不浪费:芯片的电源控制优化

一般来说,对于一个给定的系统,在给定了功率状态之后,就会得到关于能耗、热量、噪声以及当前任务所需性能的数据。比如通知系统运行在峰值状态,可以尽快完成计算任务,但是会降低能耗比,带来更多的热量和噪音。

电脑经常改变电源状态,例如,它针对不同的情况有不同的电源状态设置。AMD此前推出了一项名为CPPC2的技术,该技术允许根据不同的使用情况不断改变电源状态。但是游戏主机不能使用类似的功能,所以AMD的CPPC2技术与游戏开发者使用主机的方式不同。

为此,微软重新定义了系统的一部分电源状态,以便为游戏、视频播放、下载等功能提供正确的电源配置和性能输出。根据微软的说法,Xbox X的每个部分都有自己的一套电源状态。其中CPU有8种功耗状态,GPU有5种功耗状态,GDDR内存有3种功耗状态,其他内部结构有4种功耗状态。整个Xbox X系统根据需要在这些不同的电源状态下运行。

此外,微软还定义了一些条件,使开发人员能够优化和测试给定的功能和性能。按照微软的定义,一款游戏在1920x1080分辨率下运行至少30fps是最基本的标准。但是,如果开发人员认为系统性能已经超出需求,他也可以手动调整电源状态,以获得不同的性能水平。

微软给出了一张表格,展示了Xbox X的性能水平和电量状态设置信息,可以看到,在3D游戏中,所有的性能状态都被设置为最大,因此系统可以充分反映最高水平的性能数据。在视频播放期间,系统将根据不同的视频格式设置为不同的电源状态和性能水平。最高要求是播放8K@30Hz视频时,游戏满载时CPU会有相当于27%的功耗上限。另外还有后台下载、连接等待、待机等待等模式。当然,除了微软给出的数据,还有一些低性能消耗的模式,包括2D游戏或者独立游戏,系统检测到一些性能要求极低的情况。

提高能源消耗率:电力管理的新途径

微软提到,这款新SoC设计的目标之一就是试图在SoC上尽可能多的区域实现功耗控制,哪怕能节省1%的能源,积少成多。这次微软通过和AMD的合作实现了很多新的功能,大部分也用在了AMD的APU和CPU上。从时间上来看,X SoC是当时第一款基于2en2的SoC产品,所以很多技术在上面的应用都是创新性和原创性的。微软宣称,整个X SoC的能耗控制包括三个关键领域:一是功耗监控和监管,二是工艺优化,三是功耗状态管理,分别带来约10%、10%-15%以及可调范围的节能。

我们先来看电源监控和调节部分。在发布会上,微软展示了许多以前在AMD相关产品中使用过的功能,包括数字低压差稳压器、动态电压频率缩放和DC启动时的校准。其实AMD在第一代Zen架构产品中就已经实现了电源监控的相关功能。当时,AMD能够提供内核内部关键路径能耗的附加信息,以便针对给定的工作负载优化电压保护的相关设计。而且这个功能可以和DLDO稳压器配合使用,DLDO稳压器可以根据每个内核的实际情况提供电压控制的功能,而不是每个AMD定义的ccx。X SoC引入了很多使用Zen 2架构但面向移动平台的技术,更类似于雷诺阿APU。而AMD自己只是在第二代Lucienne APU上为其移动平台配备了DLDO功能,类似的功能已经在桌面平台上使用了两代。

此外,DVFS(细粒度动态电压频率缩放技术)也是AMD在锐龙及相关APU中使用的技术。这项技术不仅可以更好地控制CPU频率,还可以将功耗状态降低到芯片在目标频率下所能承受的最低电压。这样,通过DVFS,AMD可以降低芯片电压来降低功耗,从而提高功耗比。结合DLDO功能,AMD可以精细控制每个内核上的电压和功耗。此外,DVFS还可以与AMD的CPPC2电源状态一起使用,以达到更好的效果。

另一项技术是CLDO(片上LDO)。AMD很少提到这项技术,但微软给出了它的细节。这项技术的目的是降低L2和L3缓存的功耗。随着缓存的增加,缓存本身的功耗就成为整个芯片中需要严格控制的一部分。这对移动处理器来说是好事,因为2en2架构移动处理器的每个ccx只有4MB的L3缓存,但在台式电脑上,缓存高达16MB,是X SoC的4倍。所以这项技术在桌面电脑上应用的时间很长,在移动设备上也有显著的效果。微软在这里明确提到了这个功能,但没有说是针对CCX还是每个内核。但是,CLDO非常有效,可以提高性能功耗比。

最后一项技术是DC-BTC(电流和电压容差的启动校准)。这个技术比较老,是AMD在推土机时代开发的。其目的是在芯片和元件老化时提供相对合理的电压加成。一般来说,芯片在长期使用后会因电子迁移和热效应而老化,所以通常需要较高的电压才能达到之前较低电压的效果。如果没有DC-BTC控制,SoC会在开始时略微提高电压,这被称为“老化裕度”,并伴随着更高的电压调节容限。这其实带来了一个恶性循环,因为更高的电压会带来更高的电子迁移率和发热量,导致芯片过早老化。因此,在芯片工作时,通过一定的方式进行老化校准,加上最小的电压,可以使芯片的功耗更低,寿命延长,性能功耗比提高。

小型游戏机,庞大的系统工程

事实上,很少有制造商如此详细地披露他们在开发产品时遇到的各种技术选择和大量测试。根据微软之前的消息,大家似乎已经知道了Xbox X和X SoC的各种内容。不过在ISSCC上,微软再次给出了更多的内部信息,让我们对微软如何平衡性能、功耗、噪音、体积、成本等诸多因素有了更深入的了解,甚至包括为什么这么做,背后的原因,以及面临的选择。可见,一个看似很小的游戏机,其实是一个庞大的系统工程。

本文来自网络,不代表管理窝立场。转载请注明出处: https://www.guanliwo.com/a/zx/61667.html
上一篇如何提高自己的办公效率
下一篇 锐龙产品线
管理窝

作者: 管理窝

这里可以再内容模板定义一些文字和说明,也可以调用对应作者的简介!或者做一些网站的描述之类的文字或者HTML!

为您推荐

评论列表()

    联系我们

    联系我们

    0898-88888888

    在线咨询: QQ交谈

    邮箱: email@wangzhan.com

    工作时间:周一至周五,9:00-17:30,节假日休息

    关注微信
    微信扫一扫关注我们

    微信扫一扫关注我们

    关注微博
    返回顶部