摸索CPU制造的环节与概念 (cpumos)

文章编号:11068 更新时间:2024-03-16 分类:互联网资讯 阅读次数:

资讯内容

为了让程序能快点,特地了解了CPU的各种原理,比如多核、超线程、NUMA、睿频、功耗、GPU、大小核再到分支预测、cache_line失效、加锁代价、IPC等各种目的(都有对应的代码和测试数据)都会在这系列文章中获取答案。当然肯定会有程序员最关心的分支预测案例、Disruptor无锁案例、cache_line伪共享案例等等。

这次让咱们从最底层的沙子开局用8篇文章来回答各种不懂以及少量的试验对比案例和测试数据。

大的方面关键是从这几个不懂来写这些文章:

系列文章

CPU的制造和概念

PerfIPC以及CPU性能

CPU性能和CacheLine

十年后数据库还是不敢拥抱NUMA?

IntelPAUSE指令变动是如何影响自旋锁以及MySQL的性能的

Intel、海光、鲲鹏920、飞扬2500CPU性能对比

一次性海光物理机资源竞争压测的记载

飞扬ARM芯片(FT2500)的性能测试

几个关键概念

为了参与对文章的了解先解释下几个高频概念

Wafer:晶圆,一片大的纯硅圆盘,资讯里常说的12寸、30寸晶圆厂说的就是它,光刻机在晶圆上蚀刻出电路

Die:从晶圆上切割上去的CPU(蕴含多个core、北桥、GPU等),Die的大小可以自在选择,得思考老本和性能,Die做成方形便于切割和测试

封装:将一个或多个Die封装成一个物理上可以售卖的CPU

路:就是socket、也就是封装后的物理CPU

node:同一个Die下的多个core以及他们对应的内存,对应着NUMA

CPU实物图片

购置到的CPU实体外观和大小,普通是40mmX50mm大小

对集成电路半导体行业的微观意识

集成电路和芯片

摸索CPU制造的环节与概念cpumos

先看一台iPhoneX拆解剖析外面的一切芯片:

半导体产业的产值散布

下图中的处置器就是咱们日常所说的CPU,当然还蕴含了GPU等

咱们常说的内存、固态硬盘这些存储器也是数字IC,前面你会看到一个CPUcore外面还会有用于存储的cache电路

半导体营收散布

美光:美国;Hynix海力士:韩国现代;美国双通:高通(CDMA)、博通(各种买买买、并购,网络设备芯片);欧洲双雄(汽车芯片):恩智浦和英飞凌

半导体行业近5年的行业前十的公司列了如下:

半导体产品的十大买家,BBK是步步高团体,蕴含vivo、oppo、oneplus、realme等

国际半导体市场状况

中国半导体协会总结过国产芯片的比例,2014年出台的《国度集成电路产业开展纲要》和2015年的《中国制造2025》文件中有明白提出:到2020年,集成电路产业与国际先进水平的差距逐渐增加;2020年中国芯片自给率要到达40%,2025年要到达50%。

国产化国度主导:紫光,紫光的战略从收买转为自建,2016年12月,兼并武汉新芯,成立长江存储,与西数合资成立紫光西数。

长江存储在量产64层NANDFlash之后,2020年首发192层3DNAND,被预测2021会拿下8%的NANDFlash份额。同时,在存储芯片畛域,中国还有一家公司叫做长鑫存储,长鑫存储以惟逐一家中国公司的名号,杀入DRAM畛域。谢环球驰名的行业剖析公司Yole公司的报告上,显示长江存储和长鑫存储与三星、SK海力士、美光和Intel齐头并进。

市场份额上,国产存储芯片市场,兴许还有望到达2025的目的。

以上是咱们对集成电路半导体行业的微观意识。

裸片Die制造

晶圆为什么总是圆的呢?消费环节就是从沙子中提纯硅,硅晶柱成长获取晶圆:

硅晶柱切片:

直径为300毫米的纯硅晶圆(从硅柱上切割上去的圆片),俗称12寸晶圆,大概是400美金。但尺寸并不是权衡硅晶圆的最关键目的,纯度才是。日本的信越公司可以消费13个9纯度的晶圆。

光刻

经常使用特定波长的光,透过光罩(相似印炒外面的母版),照耀在涂有光刻胶的晶圆上,光罩上芯片的设计图像,就复制到晶圆上了,这就是光刻,这一步是由光刻机成功的,光刻机是芯片制造中光刻环节的外围设备。你可以把光刻了解为,就是用光罩这个母版,一次性次在晶圆上印电路的环节。

光刻是最贵的一个环节,一方面是光罩越来越多,越来越贵,另一方面光刻机也很贵。光刻机是半导体制造设备中多少钱占比最大,也是最外围的设备。2020年荷兰公司ASML的极紫外光源(EUV)光刻机每台的平均售价是1.45亿欧元,而且全环球独家供货,年产量31台,有钱也未必能买获取。

短波长光源是提高光刻机分辨力的有效方,光刻机的开展历史,就从紫外光源(UV)、深紫外光源(DUV),开展到了如今的极紫外光源(EUV)。

回忆光刻机的开展历史,从1960年代的接触式光刻机、凑近式光刻机,到1970年代的投影式光刻机,1980年代的步进式光刻机,到步进式扫描光刻机、浸入式光刻机和如今的深紫外光源(DUV)和极紫外光源(EUV)光刻机,一边是设备性能的不时提高,另一边是多少钱逐年回升,且供应商逐渐增加。到了EUV光刻机,ASML就是独家供货了。

质量合格的die切割下去后,原来的晶圆成了下图的样子,是挑剩下的DowngradeFlashWafer。剩余的die是质量不合格的晶圆。彩色的局部是合格的die,会被原厂封装制造为成品NAND颗粒,而不合格的局部,也就是图中留下的局部则当做废品处置掉。

从晶圆上切割检测合格的Die(螺片),所以Die跟Wafer不一样不是圆的,而是是方形的,由于方形的在切割封测工艺上最繁难

一个大晶圆,拿走了合格的Die后剩下的次品:

可见次品率不低,前面谈判到怎样降低次品率,次品率选择了CPU的多少钱。

台积电一片5nm晶圆的加工费高达12500美金。依据台积电的财报推算,台积电平均每片晶圆可以发生近4000美金(300mm晶圆)的利润。无论是哪个数字,对比400美金的纯硅晶圆原料来说,这都是一个至少增值10倍的低价值的加工环节。

随着Die的增加,糜费的比例也从36%增加成为12.6%。依据极限常识,咱们知道假设Die的大小足够小,咱们实践上可以100%用上一切的Wafer大小。从中咱们可以看出越小的Die,糜费越小,从而降低CPU多少钱,对CPU消费者和消费者都是善报。

光刻机有一个加工的最大尺寸,普通是858mm²,而Cerebras和台积电严密协作,做了一个46255mm²,1.2T个晶体管的环球第一大芯片。这也是超摩尔定律的一个打破。

AMD在工艺落后Intel的前提下,又想要堆核怒怼。另辟蹊径,采取一个Package封装4个独立Die的做法,推出了EPYC主机芯片,即不影响良率,又可以外围数目美观,堪称一箭双雕。

惋惜衔接四个Die的片外总线终归没有片内总线效率高,在好些benchmark中败下阵来,可见没有收费的午餐。他也仿佛遗记了自己在2005年双核口水大战中调侃Intel是胶水粘的双核,自己这次可是拼积木式的,为了数据美观也够拼的了。

Intel的Pakcage外部是一个Die,Core之间原来是RingBus,在Skylake后改为Mesh。 AMD多Die封装的目的是省钱和参与灵敏性!AMD每个ZeppelinDie都比Intel的小,这对良品率提高很大,浪费了消费费用。

这种胶水核强行将多个die拼一同是没思考跨die之间的提前,基本上跨die跟intel跨socket(numa)时延一样了。

一颗芯片的1/3的老本,是花在封测阶段的

光刻的粒度越来越细,玩家也越来越少,基本干流都是代工形式:

Die和core

Onediewithmultiplecores,下图是一个Die外部图:

CPUPackagecontaining2separateDIEs:

第4代酷睿(Haswell)的die:

关键分为几个局部:GPU、4个内核、SystemAgent(uncore,相似北桥)、cache和内存控制器和其余小部件。 比如咱们发现core3和4有疑问,咱们可以间接封锁3和4。坏的关掉就是i5,都是好的就是i7。

北桥和南桥

早期CPUcore和内存硬盘的衔接方式(FSB是瓶颈):

实物图:

由于FSB变成了系统性能的瓶颈和对多CPU的制约,在台式机和笔记本电脑中,MCH(MemoryControlHub)被请进CPU中,主机市场虽然持久的发生了IOH。

集成北桥后的内存实物图:

北桥曾经集成到CPU中,南桥还没有,关键是由于:集成后Die增大不少,消费良品率降低老本回升;不集成两者驳回不同的工艺;另外就是CPU引脚不够了!

SoC(SystemonChip):南桥北桥都集成在CPU中,单芯片处置打算。ATOM就是SoC

一个Core的典型结构

Intelskylake架构图

iTLB:instructTLB

dTLB:dataTLB

多个core加上L3等组成一个Die:

多核和多个CPU

假设要成功48core的计算才干,可以有如下三个打算

打算1:一个大Die集成48core:

打算2:一个CPU封装4个Die,也叫MCM(Multi-Chip-Module),每个Die12个core

四个Die之间的衔接方法:

上图最上方的打算为Intel驳回的EMIB(EmbeddedMulti-dieInterconnectBridge)打算,cost最低。两边的打算是经常使用硅中介层(Interposer,AMD驳回的打算)。这象征着你能在两枚关键芯片的上方搁置和经常使用第三枚芯片。这枚芯片的目的是使得多个设备的衔接愈加容易,然而也带来了更高的老本。

打算3:四个物理CPU(多Socket),每个物理CPU(Package)外面一个Die,每个Die12个core:

三者的比拟:

性能必需是大Die最好,然而良品率地,老本高;

打算2的多个Die节俭了主板上的少量布线和VR老本,总老本略低,然而打算3更容易堆出更多的core和 内存

多core通讯和NUMA

uma下cpu访问内存

早期core不多一致走北桥总线访问内存,对一切core时延一致

如下图,左右两边的是内存条,每个NUMA的cpu访问间接插在自己CPU上的内存肯定很快,假设访问插在其它NUMA上的内存条还要走QPI,所以要慢很多。

如上架构是4路CPU,每路之间经过QPI相连,每个CPU外部8core用的是双RingBus相连,MemoryControlHub集成到了Die外面。一路CPU能连4个SMB,每个SMB有两个channel,每个channel最多接三个内存条(图中只画了2个)。

极速通道互联 [[(英语:Inteluickathnterconnect,缩写:)[[,是一种由英特尔开发并经常使用的点对点处置器互联架构,用来成功CPU之间的互联。英特尔在2008年开局用QPI取代以往用于至强、安腾处置器的前端总线(), 用来成功芯片之间的间接互联,而不是再经过FSB衔接到北桥 。Intel于2017年颁布的SkyLake-SPXeon中,用UPI(ltraathnterconnect)取代QPI。

RingBus设计繁难,双环设计可以保障任何两个ringstop之间距离不超越RingStop总数的一半,提前控制在60ns,带宽100G以上,然而core越多,ringbus越长性能降低迅速,在12core之后性能降低显著。

于是驳回如下两个RingBus并列,而后再经过双向总线把两个RingBus连起来。

在至强HCC(HighCoreCount,核很多版)版本中,又参与了一个ringbus。两个ringbus各接12个Core,将提前控制在可控的范围内。俩个RingBus间接用两个双向PipeLine衔接,保障通讯顺畅。与此同时由于Ring0中的模块访问Ring1中的模块提前显著高于本Ring,亲缘度不同,所以两个Ring分属于不同的NUMA(Non-UniformMemoryAccessArchitecture)node。这点在BIOS设计中要特地留意。

Mesh网络

Intel在Skylake和KnightLanding中引入了新的片内总线:Mesh。它是一种2D的Mesh网络:

一个skylake28coredie的成功:

Mesh网络引入片内总线是一个渺小的提高,它有很多优势:

RAM提前大大缩短:

上图左边的是ringbus,从一个ring外面访问另一个ring外面的内存控制器。最坏状况下是那条绿线,拐了一个大圈才抵达内存控制器,须要310个cycle。而在Mesh网络中则门路缩短很多。

Mesh网络带来了这么多好处,那么缺陷有没有呢?网格化设计带来复杂性的参与,从而对Die的大小带来了负面影响

""isatermusedbytodescribethefunctionsofamicroprocessorthatarenotinthecore,butwhichmustbecloselyconnectedtothecoretoachievehighperformance.[Ithasbeencalled" systemagent "sincethereleaseoftheSandyBridgemicroarchitecture.[

Thecorecontainsthecomponentsoftheprocessorinvolvedinexecutinginstructions,includingthe,,and.Uncorefunctionsincludecontrollers,,snoopagent,on-diememorycontroller,on-diePCIExpressRootComplex,andThunderboltcontroller.[Otherbuscontrollerssuchasandarepartofthe.[

MetricDescription

TheLLC(last-levelcache)isthelast,andlongest-latency,levelinthememoryhierarchybeforemainmemory(DRAM).AnymemoryrequestsmissingheremustbeservicedbylocalorremoteDRAM,withsignificantlatency.TheLLCMissmetricshowsaratioofcycleswithoutstandingLLCmissestoallcycles.

一些IntelCPUNUMA结构参考

IntelXeonPlatinum8163(Skylake)阿里云第四代主机驳回的CPU,Skylake架构,主频2.5GHz,计算性能疑问。8163这款型号在intel官方上并没有相关消息,应该是阿里云向阿里云定制的,与之相近的IntelXeonPlatinum8168,多少钱是$5890,约合¥38900元。

lscpu:Architecture:x86_64CPUop-mode(s):32-bit,64-bitByteOrder:LittleEndianCPU(s):96On-lineCPU(s)list:0-95Thread(s)percore:2Core(s)persocket:24Socket(s):2NUMAnode(s):4VendorID:GenuineIntelCPUfamily:6Model:85Modelname:Intel(R)Xeon(R)Platinum8260CPU@2.40GHzStepping:6CPUMHz:2400.000CPUmaxMHz:3900.0000CPUminMHz:1000.0000BogoMIPS:4800.00Virtualization:VT-xL1dcache:32KL1icache:32KL2cache:1024KL3cache:36608KNUMAnode0CPU(s):0-3,7-9,13-15,19,20,48-51,55-57,61-63,67,68NUMAnode1CPU(s):4-6,10-12,16-18,21-23,52-54,58-60,64-66,69-71NUMAnode2CPU(s):24-27,31-33,37-39,43,44,72-75,79-81,85-87,91,92NUMAnode3CPU(s):28-30,34-36,40-42,45-47,76-78,82-84,88-90,93-95Model:85Modelname:Intel(R)Xeon(R)Platinum8268CPU@2.90GHzStepping:6CPUMHz:3252.490BogoMIPS:5800.00Virtualization:VT-xL1dcache:32KL1icache:32KL2cache:1024KL3cache:36608KNUMAnode0CPU(s):0,4,8,12,16,20,24,28,32,36,40,44,48,52,56,60,64,68,72,76,80,84,88,92NUMAnode1CPU(s):1,5,9,13,17,21,25,29,33,37,41,45,49,53,57,61,65,69,73,77,81,85,89,93NUMAnode2CPU(s):2,6,10,14,18,22,26,30,34,38,42,46,50,54,58,62,66,70,74,78,82,86,90,94NUMAnode3CPU(s):3,7,11,15,19,23,27,31,35,39,43,47,51,55,59,63,67,71,75,79,83,87,91,95lscpu:Architecture:x86_64CPUop-mode(s):32-bit,64-bitByteOrder:LittleEndianCPU(s):192On-lineCPU(s)list:0-191Thread(s)percore:1Core(s)persocket:24Socket(s):8//每个物理CPU24个物理core,这24个core应该是散布在2个Die中NUMAnode(s):16VendorID:GenuineIntelCPUfamily:6Model:85Modelname:Intel(R)Xeon(R)Platinum8260CPU@2.40GHzStepping:7CPUMHz:2400.000CPUmaxMHz:3900.0000CPUminMHz:1000.0000BogoMIPS:4800.00Virtualization:VT-xL1dcache:32KL1icache:32KL2cache:1024KL3cache:36608KNUMAnode0CPU(s):0-3,7-9,13-15,19,20NUMAnode1CPU(s):4-6,10-12,16-18,21-23NUMAnode2CPU(s):24-27,31-33,37-39,43,44NUMAnode3CPU(s):28-30,34-36,40-42,45-47NUMAnode4CPU(s):48-51,55,56,60-62,66-68NUMAnode5CPU(s):52-54,57-59,63-65,69-71NUMAnode6CPU(s):72-75,79-81,85-87,91,92NUMAnode7CPU(s):76-78,82-84,88-90,93-95NUMAnode8CPU(s):96-99,103,104,108-110,114-116NUMAnode9CPU(s):100-102,105-107,111-113,117-119NUMAnode10CPU(s):120-123,127,128,132-134,138-140NUMAnode11CPU(s):124-126,129-131,135-137,141-143NUMAnode12CPU(s):144-147,151-153,157-159,163,164NUMAnode13CPU(s):148-150,154-156,160-162,165-167NUMAnode14CPU(s):168-171,175-177,181-183,187,188NUMAnode15CPU(s):172-174,178-180,184-186,189-191//v62#lscpuArchitecture:x86_64CPUop-mode(s):32-bit,64-bitByteOrder:LittleEndianCPU(s):104On-lineCPU(s)list:0-103Thread(s)percore:2Core(s)persocket:26Socket(s):2NUMAnode(s):2VendorID:GenuineIntelCPUfamily:6Model:85Modelname:Intel(R)Xeon(R)Platinum8269CYCPU@2.50GHzStepping:7CPUMHz:3200.097CPUmaxMHz:3800.0000CPUminMHz:1200.0000BogoMIPS:4998.89Virtualization:VT-xL1dcache:32KL1icache:32KL2cache:1024KL3cache:36608KNUMAnode0CPU(s):0-25,52-77NUMAnode1CPU(s):26-51,78-103//2016Intel开局发售IntelXeonE5-2682v4。这是一种基于Broadwell架构的桌面处置器,关键为办公系统而设计。它具备16外围和32数据流并经常使用,售价约为7000人民币#lscpuArchitecture:x86_64CPUop-mode(s):32-bit,64-bitByteOrder:LittleEndianCPU(s):64On-lineCPU(s)list:0-63Thread(s)percore:2Core(s)persocket:16Socket(s):2NUMAnode(s):2VendorID:GenuineIntelCPUfamily:6Model:79Modelname:Intel(R)Xeon(R)CPUE5-2682v4@2.50GHzStepping:1CPUMHz:2499.902CPUmaxMHz:3000.0000CPUminMHz:1200.0000BogoMIPS:5000.06Virtualization:VT-xL1dcache:32KL1icache:32KL2cache:256KL3cache:40960KNUMAnode0CPU(s):0-15,32-47NUMAnode1CPU(s):16-31,48-63Flags:fpuvmedepsetscmsrpaemcecx8apicsepmtrrpgemcacmovpatpse36clflushdtsacpimmxfxsrssesse2sshttmpbesyscallnxpdpe1gbrdtscplmconstant_tscarch_perfmonpebsbtsrep_goodnoplxtopologynonstop_tscaperfmperfeagerfpupnipclmulqdqdtes64ds_cplvmxsmxesttm2ssse3fmacx16xtprpdcmpciddcasse4_1sse4_2x2apicmovbepopcnttsc_deadline_timeraesxsaveavxf16crdrandlahf_lmabm3dnowprefetchidaaratepbinvpcid_singleplnptsdthermspec_ctrlibpb_supporttpr_shadowvnmiflexpriorityeptvpidfsgsbasetsc_adjustbmi1hleavx2smepbmi2ermsinvpcidrtmcqmrdtrdseedadxsmapxsaveoptcqm_llccqm_occup_llccqm_mbm_totalcqm_mbm_localcat_l3

intel架构迭代

2008年的Nehalem是驳回45nm工艺的新架构;

2009年的Westmere更新到32nm;

2010年的Lynnfield/Clarkdale基于45nm/32nm工艺的新架构,第一代智能酷睿处置器;

2011年的SandyBridge,基于32nm工艺的新架构,第二代智能酷睿处置器;

2012年的IVYBridge,是SandyBridge的22nm更新版,第三代智能酷睿处置器;

2013年的Haswell,基于22nm工艺的新架构,第四代智能酷睿处置器;

2014年的Broadwell,是Haswell的14nm更新版,第五代智能酷睿处置器;

2015年则推出SkyLake,基于14nm工艺的新架构;

Core架构代号是Yonah,把NetBurst做深了的流水线级数又砍上去了,主频虽然降上去了(而且即使起初工艺优化到45nm之后也没有超越NetBurst的水平),然而却提高了整个流水线中的资源应用率,所以性能还是优化了;把奔流4上曾经用过的超线程也砍掉了;对各个局部启动了强化,双核共享L2cache等等。

从Core架构开局是真的走向多核了,就不再是以前胶水粘的伪双核了,这时刻曾经有最高4核的处置器设计了。

Core从65nm改到45nm之后,基于45nm又推出了新一代架构叫Nehalem,新架构Nehalem 驳回IntelQPI来替代原来的前端总线 PCIE和DMI控制器间接做到片内了 ,不再须要北桥。

SandyBridge引入核间的ringbus

觉得Broadwell前面这几代都是在优化cache、通讯;接上去的Broadwell和SkyLake就开局改良不大了,疯狂挤牙膏(惟一比拟大的改良就是 Ringbus到Mesh

不同的架构下的参数

主频睿频超频

主频=外频×倍频系数

不只是CPU须要一个切换频率,像GPU、cache、内存都须要一个外频来指点他们的电压脉冲的切换频率。CPU的开展比其它设备快,所以没法统逐一个,于是就各自在外频的基础上X倍频系数。

超频:以为放大CPU的倍频系数,切换变快以后最大的疑问是电容在短期间内充电不完整,这样造成信号失真,所以普通配套须要参与电压(充电更快),带来的结果是温度更高。

睿频:大多时刻多核用不上,假设能智能地关掉无用的核同时把这些关掉的核的电源累加到在用的核上(经过参与倍频来成功),这样单核领有更高的主频。也就是把其它核的电源目的和发热目的给了这一个核来经常使用。

CPU能耗公式:

C是常数,f就是频率,V电压。f频率放大后由于充放电带来的GateDelay,也就是频率参与,充放电期间短,为了保障信号的完整性就肯定要参与电压来放慢充放电。

所以最终能耗和f频率是f^3的指数相关。

即使不思考散热疑问,Core也没法做到有限大,目前光刻机都有最大加工尺寸限度。~~另外要不要思考光速无法逾越的影响,也就是1GHz电信号智能流传30cm,10GHz的话电信号只能流传3cm,也就是Die的大小不能超越3cm。当然这个推论简化了很多其余起因~~

UEFI和Bios

,全称UnifiedExtensibleFirmwareInterface,即一致的可扩展固件接口,是一种具体形容全新类型接口的规范,是实用于电脑的规范固件接口,旨在替代BIOS(基本输入/输入系统)

电脑中有一个BIOS设置,它关键担任开机时检测配件配置和疏导操作系统启动的配置。而UEFI则是用于操作系统智能从预启动的操作环境,加载到一种操作系统上从而节俭开机期间。

UEFI启动是一种新的主板疏导项,它被看做是bios的继任者。UEFI最关键的特点是图形界面,更利于用户对象图形化的操作选用。

UEFI图形界面:

繁难的来说UEFI启动是新一代的BIOS,配置愈增弱小,而且它是以图形图像形式显示,让用户更方便的直观操作。

如今很多新产品的电脑都允许UEFI启动形式,甚至有的电脑都已放弃BIOS而仅允许UEFI启动。这不美观出UEFI正在取代传统的BIOS启动。

UEFI固件经过ACPI报告给OSNUMA的组成结构,其中最关键的是SRAT(SystemResourceAffinityTable)和SLIT(SystemLocalityInformationTable)表。

socket对应主板上的一个插槽,也可以繁难了解为一块物理CPU。同一个socket对应着/proc/cpuinfo外面的physicalid一样。

一个socket至少对应着一个或多个node/NUMA

GPU只处置有限的计算指令(关键是浮点运算--矩阵操作),不须要分支预测、乱序口头等,所以将Core外面的电路简化(如下图左边),同时经过SIMT(SingleInstruction,MultipleThreads,相似SIMD)在取指令和指令译码的阶段,取出的指令可以给到前面多个不同的ALU并前启动运算。这样,咱们的一个GPU的核里,就可以放下更多的ALU,同时启动更多的并行运算了(如下图左边)。在SIMD外面,CPU一次性性取出了固定长度的多个数据,放到寄存器外面,用一个指令去口头。 而SIMT,可以把多条数据,交给不同的线程去处置。

GPU的core在流水线stall的时刻和超线程一样,可以调度别的义务给ALU,既然要调度一个不同的义务上来,咱们就须要针对这个义务,提供更多的口头高低文。所以,一个Core外面的口头高低文的数量,须要比ALU多。

在经过芯片瘦身、SIMT以及更多的口头高低文,咱们就有了一个更长于并前启动暴力运算的GPU。这样的芯片,也正适宜咱们当天的深度学习和挖矿的场景。

NVidia2080显卡的技术规格,就可以算出,它究竟有多大的计算才干。2080一共有46个SM(StreamingMultiprocessor,流式处置器),这个SM相当于GPU外面的GPUCore,所以你可以以为这是一个46核的GPU,有46个取指令指令译码的渲染管线。每个SM外面有64个CudaCore。你可以以为,这里的CudaCore就是咱们上方说的ALU的数量或许PixelShader的数量,46x64呢一共就有2944个Shader。而后,还有184个TMU,TMU就是TextureMappingUnit,也就是用来做纹理映射的计算单元,它也可以以为是另一种类型的Shader。

2080的主频是1515MHz,假设智能超频(Boost)的话,可以到1700MHz。而NVidia的显卡,依据配件架构的设计,每个时钟周期可以口头两条指令。所以,能做的浮点数运算的才干,就是:

最新的Inteli99900K的性能是多少呢?不到1TFLOPS。而2080显卡和9900K的多少钱却是差不多的。所以,在实践启动深度学习的环节中,用GPU所破费的期间,往往能增加一到两个数量级。而大型的深度学习模型计算,往往又是多卡并行,要花上几天乃至几个月。这个时刻,用CPU显然就不适宜了。

为什么GPU比CPU快

GPU领有更多的计算单元

GPU像是大卡车,每次去内存取数据取得多,然而Latency高(AP);CPU像是法拉利,更在意处置速度而不是一次性处置很少数据,所以CPU有多级cache,都是围绕速度在优化(TP)。在GPU中取数据和处置是流水线所以能消弭高Latency。

GPU的每个core领有更小更快的cache和registry,然而整个GPU的registry累加起来能比CPU大30倍,同时带宽也是后者的16倍

总之GPU相关于CPU像是一群小在校生和一个大学传授一同较量计算10以内的加减法。

英伟达的GPU出圈

2016年之前英伟达的营收和是指基本跟intel分歧,然而2021年4月中旬的数字,Intel是英伟达的近5倍,然而假设论市值,英伟达是Intel的1.5倍。

GPGPU:点亮并行计算的科技树

2007年,英伟达首席迷信家DavidKirk十分前瞻性地提出GPGPU的概念,把英伟达和GPU从单纯图形计算拓展为通用计算,强调并行计算,激励开发者用GPU做计算,而不是局限在图形减速这个传统的畛域。GPGPU,前面这个GP,就是GeneralPurpose通用的意思。

CUDA(ComputeUnifiedDeviceArchitecture,一致计算架构),CUDA不只仅是一个GPU计算的框架,它对下形象了一切的英伟达出品的GPU,对上构建了一个通用的编程框架,它实质上制订了一个GPU和下层软件之间的接口规范。

在GPU市场的早期竞争中,英伟达意识到软配件之间的规范的关键性,花了10年苦功,投入CUDA软件生态树立,把软配件之间的规范,变老自己的外围竞争力。

英伟达可以说是配件公司中软件做得最好的。雷同是生态弱小,Wintel的生态是微软帮助建的,ARM-Android的生态是Google建的,而GPU-CUDA的生态是英伟达自建的。

这个规范有多关键?这么说吧,一流企业定规范,二流企业做品牌,三流企业做产品。在一切的半导体公司中,制订出软件与配件之间的规范,而且如今还算成功的,只要3个,一个是x86指令集,一个是ARM指令集,还有一个就是CUDA了。

GPU相对CPU的TOPSperWatt(破费每瓦特电能可以取得的算力)的差异竞争优势,它的实质就是将晶体管花在计算上,而不是逻辑判别上

2020年超级计算机TOP500更新榜单,可以看到TOP10的超级计算机中有8台驳回了英伟达GPU、InfiniBand网络技术,或同时驳回了两种技术。TOP500榜单中,有333套(三分之二)驳回了英伟达的技术。

挖矿和深度学习撑起了英伟达的市值。

现场可编程门阵列FPGA(Field-ProgrammableGateArray)

设计芯片十分复杂,还要不时验证。

那么不用独自制造一块专门的芯片来验证配件设计呢?能不能设计一个配件,经过不同的程序代码,来操作这个配件之前的电路连线,经过编程让这个配件变成咱们设计的电路连线的芯片呢?这就是FPGA

FPGA经过软件来控制配件

公用集成电路ASIC(Application-SpecificIntegratedCircuit)

为处置特定运行疑问而定制设计的集成电路,就是ASIC(ApplicationSpecificIC)。当ASIC规模够大,逐渐通用起来,某类ASIC就会有一个专有称号,成为一个品类。例如如今用来处置人工智能疑问的神经网络处置器。

除了CPU、GPU,以及刚刚的FPGA,咱们其实还须要用到很多其余芯片。比如,如今手机里就有专门用在摄像头里的芯片;录音笔里会有专门处置音频的芯片。虽然一个CPU能够处置好手机拍照的配置,也能处置好录音的配置,然而咱们间接在手机或许录音笔里塞上一个IntelCPU,显然比拟糜费。

由于ASIC是针对专门用途设计的,所以它的电路更精简,单片的制形老本也比CPU更低。而且,由于电路精简,所以通常能耗要比用来做通用计算的CPU更低。而咱们上一讲所说的早期的图形减速卡,其实就可以看作是一种ASIC。

由于ASIC的消费制形老本,以及能耗上的优势,过去几年里,有不少公司设计和开发ASIC用来挖矿。这个挖矿,说的其实就是设计专门的数值计算芯片,用来挖比特币、ETH这样的数字货币。

假设量产的ASIC比拟小的话可以间接用FPGA来成功

张量处置器TPU(tensorprocessingunit)

张量处置器 (英语:tensorprocessingunit,缩写:TPU)是为机器学习定制的公用芯片(ASIC),专为Google的深度学习框架TensorFlow而设计。

在性能上,TPU比如今的CPU、GPU在深度学习的推断义务上,要快15~30倍。而在能耗比上,更是好出30~80倍。另一方面,Google曾经用TPU交流了自家数据中心里95%的推断义务,堪称是拿自己的实践业务做了一个明证。

其它基础常识

晶振频率 :控制CPU上的晶体管开关切换频率。一次性晶振就是一个cycle。

从最繁难的单指令周期CPU来说,其实时钟周期应该是放下最复杂的一条指令的期间长度。然而,咱们如今实践用的都没有单指令周期CPU了,而是驳回了流水线技术。驳回了流水线技术之后,单个时钟周期外面,能够口头的就不是一个指令了。咱们会把一条机器指令,拆分红很多个小步骤。不同的指令的步骤数量或许还不一样。不同的步骤的口头期间,也不一样。所以,一个时钟周期外面,能够放下的是最耗期间的某一个指令步骤。

不过没有pipeline,一条指令起码也要N个circle(N就是流水线深度);然而现实状况下流水线跑满的话一个指令也就只要要一个circle了,也就是IPC能到实践最大值1;加上超标流水线普通IPC都能4,就是普通CPU的超标量。

制程 :7nm、14nm、4nm都是指的晶体大小,用更小的晶体可以在相反面积CPU上集成更多的晶体数量,那么CPU的运算才干也更强。参与晶体管可以参与配件能够允许的指令数量,参与数字通路的位数,以及应用好电路自然的并行性,从配件层面更快地成功特定的指。打个比如,比如咱们最繁难的电路可以只要加法配置,没有乘法配置。乘法都变成很多个加法指令,那么成功一个乘法须要的指令数就比拟多。然而假设咱们参与晶体管在电路层面就成功了这个,那么须要的指令数就变少了,口头期间也可以缩短。

功耗和电压的平方是成正比的。这象征着电压降低到原来的1/5,整个的功耗会变成原来的1/25。

堆栈溢出:函数调用用压栈来保留地址、变量等相关消息。没有选用间接嵌套扩展代码是防止循环调用下嵌套是个无尽循环,inline函数内联就是一种嵌套代码扩展优化。

windows下的exe文件之所以没法放到linux上运转(都是intelx86芯片),是由于可口头程序要经过链接,将所依赖的库函数调用兼并出去构成可口头文件。这个可口头文件在Linux下的ELF(ExecuatableandLinkableFileFormat)文件格局,而Windows的可口头文件格局是一种叫作PE(PortableExecutableFormat)的文件格局。Linux下的装载器只能解析ELF格局而不能解析PE格局。而且windows和linux的库函数肯定不一样,没法做到兼容。

链接器 :扫描一切输入的目的文件,而后把一切符号表里的消息搜集起来,构成一个全局的符号表。而后再依据重定位表,把一切不确定要跳转地址的代码,依据符号表外面存储的地址,启动一次性修正。最后,把一切的目的文件的对应段启动一次性兼并,变成了最终的可口头代码。这也是为什么,可口头文件外面的函数调用的地址都是正确的。

虚构内存地址 :运行代码可口头地址必需是延续,这也就象征着一个运行的内存地址必需延续,实践一个OS上会运转多个运行,没方法保障地址延续,所以可以经过虚构地址来保障延续,虚构地址再映射到实践零散的物理地址上(可以处置碎片疑问),这个零散地址的最小组织方式就是Page。虚构地址原本是延续的,经常使用一阵后数据局部也会变成碎片,代码局部是无法变的,不时延续。另外虚构地址也繁难了OS层面的库共享。

为了扩展虚构地址到物理地址的映射范围同时又要尽或许少地浪费空间,虚构地址到物理地址的映射普通分红了四级Hash,这样4Kb就能治理256T内存。然而带来的疑问就是要经过四次查找使得查找慢,这时引入TLAB来换成映射相关。

共享库 :在Windows下,这些共享库文件就是.dll文件,也就是Dynamic-LinkLibary(DLL,灵活链接库)。在Linux下,这些共享库文件就是.so文件,也就是SharedObject(普通咱们也称之为灵活链接库).不同的进程,调用雷同的lib.so,各自全局偏移表(GOT,GlobalOffsetTable)外面指向最终加载的灵活链接库外面的虚构内存地址是不同的,各个程序各自保养好自己的GOT,能够找到对应的灵活库就好了,有点像函数指针。

符号表:/boot/System.map和/proc/kallsyms

超线程(Hyper-Threading) :在CPU外部参与寄存器等配件设备,然而ALU、译码器等关键单元还是共享。在一个物理CPU外围外部,会有双份的PC寄存器、指令寄存器乃至条件码寄存器。超线程的目的,是在一个线程A的指令,在流水线里进度的时刻,让另外一个线程去口头指令。由于这个时刻,CPU的译码器和ALU就空进去了,那么另外一个线程B,就可以拿来干自己须要的事件。这个线程B可没有关于线程A外面指令的关联和依赖。

总结

Wafer:晶圆,一片大的纯硅圆盘,资讯里常说的12寸、30寸晶圆厂说的就是它,光刻机在晶圆上蚀刻出电路

Die:从晶圆上切割上去的CPU(蕴含多个core、北桥、GPU等),Die的大小可以自在选择,得思考老本和性能,Die做成方形便于切割和测试

封装:将一个或多个Die封装成一个物理上可以售卖的CPU

路:就是socket、也就是封装后的物理CPU

node:同一个Die下的多个core以及他们对应的内存,对应着NUMA

如今计算机系统的CPU和芯片组内核Die都是先封装到一个印制板上(PCB,printedcircuitboard),再经过LGA等等插槽(Socket)连上主板或间接焊接在主板上。这个环节叫做封装(Package),相关技术叫做封装技术。

系列文章

CPU的制造和概念

CPU性能和CacheLine

PerfIPC以及CPU性能

Intel、海光、鲲鹏920、飞扬2500CPU性能对比

飞扬ARM芯片(FT2500)的性能测试

十年后数据库还是不敢拥抱NUMA?

一次性海光物理机资源竞争压测的记载

IntelPAUSE指令变动是如何影响自旋锁以及MySQL的性能的


电脑的cpu是怎么制作的?

1、硅提纯

生产CPU等芯片的材料是半导体,主要的材料为硅Si,在硅提纯的过程中,原材料硅将被熔化,并放进一个巨大的石英熔炉。这时向熔炉里放入一颗晶种,以便硅晶体围着这颗晶种生长,直到形成一个几近完美的单晶硅。

2、切割晶圆

硅锭造出来了,并被整型成一个完美的圆柱体,接下来将被切割成片状,称为晶圆。晶圆才被真正用于CPU的制造。

切割晶圆用机器从单晶硅棒上切割下一片事先确定规格的硅晶片,并将其划分成多个细小的区域,每个区域都将成为一个CPU的内核(Die)。一般来说,晶圆切得越薄,相同量的硅材料能够制造的CPU成品就越多。

3、影印(Photolithography)

在经过热处理得到的硅氧化物层上面涂敷一种光阻(Photoresist)物质,紫外线通过印制着CPU复杂电路结构图样的模板照射硅基片,被紫外线照射的地方光阻物质溶解。

而为了避免让不需要被曝光的区域也受到光的干扰,必须制作遮罩来遮蔽这些区域。这是个相当复杂的过程,每一个遮罩的复杂程度得用10GB数据来描述。

4、蚀刻(Etching)

蚀刻使用的波长很短的紫外光并配合很大的镜头。短波长的光将透过这些石英遮罩的孔照在光敏抗蚀膜上,使之曝光。接下来停止光照并移除遮罩,使用特定的化学溶液清洗掉被曝光的光敏抗蚀膜,以及在下面紧贴着抗蚀膜的一层硅。

然后,曝光的硅将被原子轰击,使得暴露的硅基片局部掺杂,从而改变这些区域的导电状态,以制造出N井或P井,结合上面制造的基片,CPU的门电路就完成了。

5、重复、分层

为加工新的一层电路,再次生长硅氧化物,然后沉积一层多晶硅,涂敷光阻物质,重复影印、蚀刻过程,得到含多晶硅和硅氧化物的沟槽结构。重复多遍,形成一个3D的结构,这才是最终的CPU的核心。每几层中间都要填上金属作为导体。

Intel的Pentium 4处理器有7层,而AMD的Athlon 64则达到了9层。层数决定于设计时CPU的布局,以及通过的电流大小。

6、封装

这时的CPU为一块块晶圆,它还不能直接被用户使用,必须将它封入一个陶瓷的或塑料的封壳中,这样它就可以很容易地装在一块电路板上了。封装结构各有不同,但越高级的CPU封装也越复杂,新的封装往往能带来芯片电气性能和稳定性的提升,并能间接地为主频的提升提供坚实可靠的基础。

7、多次测试

测试为一个CPU制造的重要环节,也是一块CPU出厂前必要的考验。这一步将测试晶圆的电气性能,以检查是否出了什么差错,以及这些差错出现在哪个步骤(如果可能的话)。接下来,晶圆上的每个CPU核心都将被分开测试。

由于SRAM(静态随机存储器,CPU中缓存的基本组成)结构复杂、密度高,所以缓存是CPU中容易出问题的部分,对缓存的测试也是CPU测试中的重要部分。

每块CPU将被进行完全测试,以检验其全部功能。某些CPU能够在较高的频率下运行,所以被标上了较高的频率;而有些CPU因为种种原因运行频率较低,所以被标上了较低的频率。

最后,个别CPU可能存在某些功能上的缺陷,如果问题出在缓存上,制造商仍然可以屏蔽掉它的部分缓存,这意味着这块CPU依然能够出售,只是它可能是Celeron等低端产品。

当CPU被放进包装盒之前,一般还要进行最后一次测试,以确保之前的工作准确无误。根据前面确定的最高运行频率和缓存的不同,它们被放进不同的包装,销往世界各地。

扩展资料

CPU控制技术的主要形式

1、选择控制。集中处理模式的操作,是建立在具体程序指令的基础上实施,以此满足计算机使用者的需求,CPU 在操作过程中可以根据实际情况进行选择,满足用户的数据流程需求。 指令控制技术发挥的重要作用。根据用户的需求来拟定运算方式,使数据指令动作的有序制定得到良好维持。

CPU在执行当中,程序各指令的实施是按照顺利完成,只有使其遵循一定顺序,才能保证计算机使用效果。CPU 主要是展开数据集自动化处理,其 是实现集中控制的关键,其核心就是指令控制操作。

2、插入控制。CPU 对于操作控制信号的产生,主要是通过指令的功能来实现的,通过将指令发给相应部件,达到控制这些部件的目的。实现一条指令功能,主要是通过计算机中的部件执行一序列的操作来完成。较多的小控制元件是构建集中处理模式的关键,目的是为了更好的完成CPU数据处理操作。

3、时间控制。将时间定时应用于各种操作中,就是所谓的时间控制。在执行某一指令时,应当在规定的时间内完成,CPU的指令是从高速缓冲存储器或存储器中取出,之后再进行指令译码操作,主要是在指令寄存器中实施,在这个过程中,需要注意严格控制程序时间。

CPU是怎么制造出来的

从沙子到CPU制作全过程现在市场上产品丰富,琳琅满目,当你使用着配置了最新款CPU的电脑在互联网上纵横驰骋,在各种程序应用之间操作自如的时候,有没有兴趣去想一想这个头不大、功能不小的CPU是怎么制作出来的呢。 在今天的半导体制造业中,计算机中央处理器无疑是受关注程度最高的领域,而这个领域中众所周知的两大巨头,其所遵循的处理器架构均为x86,而另外一家号称信息产业的蓝色巨人的IBM,也拥有强大的处理器设计与制造能力,它们最先发明了应变硅技术,并在90纳米的处理器制造工艺上走在最前列。 在今天的文章中,我们将一步一步的为您讲述中央处理器从一堆沙子到一个功能强大的集成电路芯片的全过程。 制造CPU的基本原料如果问及CPU的原料是什么,大家都会轻而易举的给出答案—是硅。 这是不假,但硅又来自哪里呢?其实就是那些最不起眼的沙子。 难以想象吧,价格昂贵,结构复杂,功能强大,充满着神秘感的CPU竟然来自那根本一文不值的沙子。 当然这中间必然要经历一个复杂的制造过程才行。 不过不是随便抓一把沙子就可以做原料的,一定要精挑细选,从中提取出最最纯净的硅原料才行。 试想一下,如果用那最最廉价而又储量充足的原料做成CPU,那么成品的质量会怎样,你还能用上像现在这样高性能的处理器吗?除去硅之外,制造CPU还需要一种重要的材料就是金属。 目前为止,铝已经成为制作处理器内部配件的主要金属材料,而铜则逐渐被淘汰,这是有一些原因的,在目前的CPU工作电压下,铝的电迁移特性要明显好于铜。 所谓电迁移问题,就是指当大量电子流过一段导体时,导体物质原子受电子撞击而离开原有位置,留下空位,空位过多则会导致导体连线断开,而离开原位的原子停留在其它位置,会造成其它地方的短路从而影响芯片的逻辑功能,进而导致芯片无法使用。 这就是许多Northwood Pentium 4换上SNDS(北木暴毕综合症)的原因,当发烧友们第一次给Northwood Pentium 4超频就急于求成,大幅提高芯片电压时,严重的电迁移问题导致了CPU的瘫痪。 这就是intel首次尝试铜互连技术的经历,它显然需要一些改进。 不过另一方面讲,应用铜互连技术可以减小芯片面积,同时由于铜导体的电阻更低,其上电流通过的速度也更快。 除了这两样主要的材料之外,在芯片的设计过程中还需要一些种类的化学原料,它们起着不同的作用,这里不再赘述。 CPU制造的准备阶段在必备原材料的采集工作完毕之后,这些原材料中的一部分需要进行一些预处理工作。 而作为最主要的原料,硅的处理工作至关重要。 首先,硅原料要进行化学提纯,这一步骤使其达到可供半导体工业使用的原料级别。 而为了使这些硅原料能够满足集成电路制造的加工需要,还必须将其整形,这一步是通过溶化硅原料,然后将液态硅注入大型高温石英容器而完成的。 而后,将原料进行高温溶化。 中学化学课上我们学到过,许多固体内部原子是晶体结构,硅也是如此。 为了达到高性能处理器的要求,整块硅原料必须高度纯净,及单晶硅。 然后从高温容器中采用旋转拉伸的方式将硅原料取出,此时一个圆柱体的硅锭就产生了。 从目前所使用的工艺来看,硅锭圆形横截面的直径为200毫米。 不过现在intel和其它一些公司已经开始使用300毫米直径的硅锭了。 在保留硅锭的各种特性不变的情况下增加横截面的面积是具有相当的难度的,不过只要企业肯投入大批资金来研究,还是可以实现的。 intel为研制和生产300毫米硅锭而建立的工厂耗费了大约35亿美元,新技术的成功使得intel可以制造复杂程度更高,功能更强大的集成电路芯片。 而200毫米硅锭的工厂也耗费了15亿美元。 下面就从硅锭的切片开始介绍CPU的制造过程。 单晶硅锭在制成硅锭并确保其是一个绝对的圆柱体之后,下一个步骤就是将这个圆柱体硅锭切片,切片越薄,用料越省,自然可以生产的处理器芯片就更多。 切片还要镜面精加工的处理来确保表面绝对光滑,之后检查是否有扭曲或其它问题。 这一步的质量检验尤为重要,它直接决定了成品CPU的质量。 新的切片中要掺入一些物质而使之成为真正的半导体材料,而后在其上刻划代表着各种逻辑功能的晶体管电路。 掺入的物质原子进入硅原子之间的空隙,彼此之间发生原子力的作用,从而使得硅原料具有半导体的特性。 今天的半导体制造多选择CMOS工艺(互补型金属氧化物半导体)。 其中互补一词表示半导体中N型MOS管和P型MOS管之间的交互作用。 而N和P在电子工艺中分别代表负极和正极。 多数情况下,切片被掺入化学物质而形成P型衬底,在其上刻划的逻辑电路要遵循nMOS电路的特性来设计,这种类型的晶体管空间利用率更高也更加节能。 同时在多数情况下,必须尽量限制pMOS型晶体管的出现,因为在制造过程的后期,需要将N型材料植入P型衬底当中,而这一过程会导致pMOS管的形成。 在掺入化学物质的工作完成之后,标准的切片就完成了。 然后将每一个切片放入高温炉中加热,通过控制加温时间而使得切片表面生成一层二氧化硅膜。 通过密切监测温度,空气成分和加温时间,该二氧化硅层的厚度是可以控制的。 在intel的90纳米制造工艺中,门氧化物的宽度小到了惊人的 5个原子厚度。 这一层门电路也是晶体管门电路的一部分,晶体管门电路的作用是控制其间电子的流动,通过对门电压的控制,电子的流动被严格控制,而不论输入输出端口电压的大小。 准备工作的最后一道工序是在二氧化硅层上覆盖一个感光层。 这一层物质用于同一层中的其它控制应用。 这层物质在干燥时具有很好的感光效果,而且在光刻蚀过程结束之后,能够通过化学方法将其溶解并除去。 光刻蚀这是目前的CPU制造过程当中工艺非常复杂的一个步骤,为什么这么说呢?光刻蚀过程就是使用一定波长的光在感光层中刻出相应的刻痕,由此改变该处材料的化学特性。 这项技术对于所用光的波长要求极为严格,需要使用短波长的紫外线和大曲率的透镜。 刻蚀过程还会受到晶圆上的污点的影响。 每一步刻蚀都是一个复杂而精细的过程。 设计每一步过程的所需要的数据量都可以用10GB的单位来计量,而且制造每块处理器所需要的刻蚀步骤都超过20步(每一步进行一层刻蚀)。 而且每一层刻蚀的图纸如果放大许多倍的话,可以和整个纽约市外加郊区范围的地图相比,甚至还要复杂,试想一下,把整个纽约地图缩小到实际面积大小只有 100个平方毫米的芯片上,那么这个芯片的结构有多么复杂,可想而知了吧。 当这些刻蚀工作全部完成之后,晶圆被翻转过来。 短波长光线透过石英模板上镂空的刻痕照射到晶圆的感光层上,然后撤掉光线和模板。 通过化学方法除去暴露在外边的感光层物质,而二氧化硅马上在陋空位置的下方生成。 掺杂在残留的感光层物质被去除之后,剩下的就是充满的沟壑的二氧化硅层以及暴露出来的在该层下方的硅层。 这一步之后,另一个二氧化硅层制作完成。 然后,加入另一个带有感光层的多晶硅层。 多晶硅是门电路的另一种类型。 由于此处使用到了金属原料(因此称作金属氧化物半导体),多晶硅允许在晶体管队列端口电压起作用之前建立门电路。 感光层同时还要被短波长光线透过掩模刻蚀。 再经过一部刻蚀,所需的全部门电路就已经基本成型了。 然后,要对暴露在外的硅层通过化学方式进行离子轰击,此处的目的是生成N沟道或P沟道。 这个掺杂过程创建了全部的晶体管及彼此间的电路连接,没个晶体管都有输入端和输出端,两端之间被称作端口。 重复这一过程从这一步起,你将持续添加层级,加入一个二氧化硅层,然后光刻一次。 重复这些步骤,然后就出现了一个多层立体架构,这就是你目前使用的处理器的萌芽状态了。 在每层之间采用金属涂膜的技术进行层间的导电连接。 今天的P4处理器采用了7层金属连接,而 Athlon64使用了9层,所使用的层数取决于最初的版图设计,并不直接代表着最终产品的性能差异。 接下来的几个星期就需要对晶圆进行一关接一关的测试,包括检测晶圆的电学特性,看是否有逻辑错误,如果有,是在哪一层出现的等等。 而后,晶圆上每一个出现问题的芯片单元将被单独测试来确定该芯片有否特殊加工需要。 而后,整片的晶圆被切割成一个个独立的处理器芯片单元。 在最初测试中,那些检测不合格的单元将被遗弃。 这些被切割下来的芯片单元将被采用某种方式进行封装,这样它就可以顺利的插入某种接口规格的主板了。 大多数intel和AMD的处理器都会被覆盖一个散热层。 在处理器成品完成之后,还要进行全方位的芯片功能检测。 这一部会产生不同等级的产品,一些芯片的运行频率相对较高,于是打上高频率产品的名称和编号,而那些运行频率相对较低的芯片则加以改造,打上其它的低频率型号。 这就是不同市场定位的处理器。 而还有一些处理器可能在芯片功能上有一些不足之处。 比如它在缓存功能上有缺陷(这种缺陷足以导致绝大多数的 CPU瘫痪),那么它们就会被屏蔽掉一些缓存容量,降低了性能,当然也就降低了产品的售价,这就是Celeron和Sempron的由来。 在CPU的包装过程完成之后,许多产品还要再进行一次测试来确保先前的制作过程无一疏漏,且产品完全遵照规格所述,没有偏差

CPU是如何制造出来的?

中央处理器(CPU,central processing unit)作为计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元,是运算和处理数据的核心,又称为“微处理器”。现如今,对于 PC ,甚至手机而言,CPU的规格与频率甚至直接被用来衡量电脑及手机性能强弱重要指标。

CPU里面最重要的东西就是晶体管了,提高CPU的速度,最重要的就是提高单位面积里晶体管的数量,由于CPU实在太精密,里面组成了数目相当多的晶体管,早在多年前就只能通过光刻工艺来进行加工了。

晶体管可以在逻辑上直接理解为一个开关:如果您回忆起基本计算的时代,那就是一台计算机需要进行工作的全部。两种选择,开和关,对于机器来说即0和1,而这些开关能构建门电路,进而组合成复杂的大规模运算器,就成了CPU。

制造CPU的基本原料

沙子:硅是地壳内第二丰富的元素,而脱氧后的沙子(尤其是石英)最多包含25%的硅元素,以二氧化硅(SiO2)的形式存在,这也是半导体制造产业的基础。

硅熔炼:12英寸/300毫米晶圆级,下同。通过多步净化得到可用于半导体制造质量的硅,学名电子级硅(EGS),平均每一百万个硅原子中最多只有一个杂质原子。此图展示了是如何通过硅净化熔炼得到大晶体的,最后得到的就是硅锭(Ingot)。

制备单晶硅锭

单晶的意思是指原子在三维空间中呈现规则有序的排列结构,而单晶硅拥有“金刚石结构”,每个晶胞含有8个原子,其晶体结构十分稳定。

单晶硅的“金刚石”结构

通常单晶硅锭都是采用直拉法制备,在仍是液体状态的硅中加入一个籽晶,提供晶体生长的中心,通过适当的温度控制,就开始慢慢将晶体向上提升并且逐渐增大拉速,上升同时以一定速度绕提升轴旋转,以便将硅锭控制在所需直径内。这一步是通过熔化硅原料,然后将液态硅注入大型高温石英容器而完成的。结束时,只要提升单晶硅炉温度,硅锭就会自动形成一个锥形尾部,制备就完成了,一次性产出的IC芯片更多。

制备好的单晶硅锭直径约在300mm左右,重约100kg。而目前全球范围内都在生产直径12寸的硅圆片,硅圆片尺寸越大,效益越高。

将制备好的单晶硅锭一头一尾切削掉,并且对其直径修整至目标直径,同时使用金刚石锯把硅锭切割成一片片厚薄均匀的晶圆(1mm)。有时候为了定出硅圆片的晶体学取向,并适应IC制作过程中的装卸需要,会在硅锭边缘切割出“取向平面”或“缺口”标记。

研磨硅圆片

切割后的晶圆其表面依然是不光滑的,需要经过仔细的研磨,减少切割时造成的表面凹凸不平,期间会用到特殊的化学液体清洗晶圆表面,最后进行抛光研磨处理,还可以在进行热处理,在硅圆片表面成为“无缺陷层”。一块块亮晶晶的硅圆片就这样被制作出来,装入特制固定盒中密封包装

在掺入化学物质的工作完成之后,标准的切片就完成了。然后将每一个切片放入高温炉中加热,通过控制加温时间而使得切片表面生成一层二氧化硅膜。通过密切监测温度,空气成分和加温时间,该二氧化硅层的厚度是可以控制的。在intel的90纳米制造工艺中,门氧化物的宽度小到了惊人的5个原子厚度。这一层门电路也是晶体管门电路的一部分,晶体管门电路的作用是控制其间电子的流动,通过对门电压的控制,电子的流动被严格控制,而不论输入输出端口电压的大小。

准备工作的最后一道工序是在二氧化硅层上覆盖一个感光层。这一层物质用于同一层中的其它控制应用。这层物质在干燥时具有很好的感光效果,而且在光刻蚀过程结束之后,能够通过化学方法将其溶解并除去。

前工程——制作带有电路的芯片

涂抹光刻胶

买回来的硅圆片经过检查无破损后即可投入生产线上,前期可能还有各种成膜工艺,然后就进入到涂抹光刻胶环节。微影光刻工艺是一种图形影印技术,也是集成电路制造工艺中一项关键工艺。首先将光刻胶(感光性树脂)滴在硅晶圆片上,通过高速旋转均匀涂抹成光刻胶薄膜,并施加以适当的温度固化光刻胶薄膜。

光刻胶是一种对光线、温度、湿度十分敏感的材料,可以在光照后发生化学性质的改变,这是整个工艺的基础。

光刻蚀

这是目前的CPU制造过程当中工艺非常复杂的一个步骤,光刻蚀过程是使用一定波长的光在感光层中刻出相应的刻痕, 由此改变该处材料的化学特性。这项技术对于所用光的波长要求极为严格,需要使用短波长的紫外线和大曲率的透镜。刻蚀过程还会受到晶圆上的污点的影响。每一步刻蚀都是一个复杂而精细的过程。

当这些刻蚀工作全部完成之后,晶圆被翻转过来。短波长光线透过石英模板上镂空的刻痕照射到晶圆的感光层上,然后撤掉光线和模板。通过化学方法除去暴露在外边的感光层物质,而二氧化硅马上在陋空位置的下方生成。

光刻胶(Photo Resist):图中蓝色部分就是在晶圆旋转过程中浇上去的光刻胶液体,类似制作传统胶片的那种。晶圆旋转可以让光刻胶铺的非常薄、非常平。

就单项技术工艺来说,光刻工艺环节是最为复杂的,成本最为高昂的。因为光刻模板、透镜、光源共同决定了“印”在光刻胶上晶体管的尺寸大小。

将涂好光刻胶的晶圆放入步进重复曝光机的曝光装置中进行掩模图形的“复制”。掩模中有预先设计好的电路图案,紫外线透过掩模经过特制透镜折射后,在光刻胶层上形成掩模中的电路图案。一般来说在晶圆上得到的电路图案是掩模上的图案1/10、1/5、1/4,因此步进重复曝光机也称为“缩小投影曝光装置”。

一般来说,决定步进重复曝光机性能有两大要素:一个是光的波长,另一个是透镜的数值孔径。如果想要缩小晶圆上的晶体管尺寸,就需要寻找能合理使用的波长更短的光(EUV,极紫外线)和数值孔径更大的透镜(受透镜材质影响,有极限值)。

由此进入50-200纳米尺寸的晶体管级别。一块晶圆上可以切割出数百个处理器,不过从这里开始把视野缩小到其中一个上,展示如何制作晶体管等部 件。晶体管相当于开关,控制着电流的方向。现在的晶体管已经如此之小,一个针头上就能放下大约3000万个。

溶解光刻胶

对曝光后的晶圆进行显影处理。以正光刻胶为例,喷射强碱性显影液后,经紫外光照射的光刻胶会发生化学反应,在碱溶液作用下发生化学反应,溶解于显影液中,而未被照射到的光刻胶图形则会完整保留。显影完毕后,要对晶圆表面的进行冲洗,送入烘箱进行热处理,蒸发水分以及固化光刻胶。

蚀刻

将晶圆浸入内含蚀刻药剂的特制刻蚀槽内,可以溶解掉暴露出来的晶圆部分,而剩下的光刻胶保护着不需要蚀刻的部分。期间施加超声振动,加速去除晶圆表面附着的杂质,防止刻蚀产物在晶圆表面停留造成刻蚀不均匀。

清除光刻胶

通过氧等离子体对光刻胶进行灰化处理,去除所有光刻胶。此时就可以完成第一层设计好的电路图案。

光刻胶

再次浇上光刻胶(蓝色部分),然后光刻,并洗掉曝光的部分,剩下的光刻胶还是用来保护不会离子注入的那部分材料。由于现在的晶体管已经3D FinFET设计,不可能一次性就能制作出所需的图形,需要重复之前的步骤进行处理,中间还会有各种成膜工艺(绝缘膜、金属膜)参与到其中,以获得最终的3D晶体管。

离子注入(Ion Implantation)

在真空系统中,用经过加速的、要掺杂的原子的离子照射(注入)固体材料,从而在被注入的区域形成特殊的注入层,并改变这些区 域的硅的导电性。经过电场加速后,注入的离子流的速度可以超过30万千米每小时

在特定的区域,有意识地导入特定杂质的过程称为“杂质扩散”。通过杂质扩散可以控制导电类型(P结、N结)之外,还可以用来控制杂质浓度以及分布。

现在一般采用离子注入法进行杂质扩散,在离子注入机中,将需要掺杂的导电性杂质导入电弧室,通过放电使其离子化,经过电场加速后,将数十到数千keV能量的离子束由晶圆表面注入。离子注入完毕后的晶圆还需要经过热处理,一方面利用热扩散原理进一步将杂质“压入”硅中,另一方面恢复晶格完整性,活化杂质电气特性。

离子注入法

离子注入法具有加工温度低,可均匀、大面积注入杂质,易于控制等优点,因此成为超大规模集成电路中不可缺少的工艺。

清除光刻胶

完成离子注入后,可以清除掉选择性掺杂残留下来的光刻胶掩模。此时,单晶硅内部一小部分硅原子已经被替换成“杂质”元素,从而产生可自由电子或空穴。

左:硅原子结构;中:掺杂砷,多出自由电子;右:掺杂硼,形成电子空穴

而注入区域(绿色部分)也已掺杂,注入了不同的原子。注意这时候的绿色和之前已经有所不同。

绝缘层处理

此时晶体管雏形已经基本完成,利用气相沉积法,在硅晶圆表面全面地沉积一层氧化硅膜,形成绝缘层。同样利用光刻掩模技术在层间绝缘膜上开孔,以便引出导体电极。

在绝缘材(品红色)上蚀刻出三个孔洞,并填充铜,以便和其它晶体管互连。

沉淀铜层

利用溅射沉积法,在晶圆整个表面上沉积布线用的铜层,继续使用光刻掩模技术对铜层进行雕刻,形成场效应管的源极、漏极、栅极。最后在整个晶圆表面沉积一层绝缘层以保护晶体管。

电镀:在晶圆上电镀一层硫酸铜,将铜离子沉淀到晶体管上。铜离子会从正极(阳极)走向负极(阴极)。

铜层:电镀完成后,铜离子沉积在晶圆表面,形成一个薄薄的铜层。

抛光

将多余的铜抛光掉,也就是磨光晶圆表面。

构建晶体管之间连接电路

经过漫长的工艺,数以十亿计的晶体管已经制作完成。剩下的就是如何将这些晶体管连接起来的问题了。同样是先形成一层铜层,然后光刻掩模、蚀刻开孔等精细操作,再沉积下一层铜层......,这样的工序反复进行多次,这要视乎芯片的晶体管规模、复制程度而定。最终形成极其复杂的多层连接电路网络。

金属层:晶体管级别,六个晶体管的组合,大约500纳米。在不同晶体管之间形成复合互连金属层,具体布局取决于相应处理器所需要的不同功能性。芯片表面看 起来异常平滑,但事实上可能包含20多层复杂的电路,放大之后可以看到极其复杂的电路网络,形如未来派的多层高速公路系统。

后工程——从划片到成品销售

晶圆级测试

前工程与后工程之间,夹着一个Good-Chip/Wafer检测工程,简称G/W检测。目的在于检测每一块晶圆上制造的一个个芯片是否合格。通常会使用探针与IC的电极焊盘接触进行检测,传输预先编订的输入信号,检测IC输出端的信号是否正常,以此确认芯片是否合格。

由于目前IC制造广泛采用冗余度设计,即便是“不合格”芯片,也可以采用冗余单元置换成合格品,只需要使用激光切断预先设计好的熔断器即可。当然,芯片有着无法挽回的严重问题,将会被标记上丢弃标签。

内核级别,大约10毫米/0.5英寸。图中是晶圆的局部,正在接受第一次功能性测试,使用参考电路图案和每一块芯片进行对比。

晶圆切片(Slicing)

IC内核在晶圆上制作完成并通过检测后后,就进入了划片阶段。划片使用的划刀是粘附有金刚石颗粒的极薄的圆片刀,其厚度仅为人类头发的1/3。将晶圆上的每一个IC芯片切划下来,形成一个内核Die。

裂片完成后还会对芯片进行外观检查,一旦有破损和伤痕就会抛弃,前期G/W检查时发现的瑕疵品也将一并去除。

晶圆级别,300毫米/12英寸。将晶圆切割成块,每一块就是一个处理器的内核(Die)。

丢弃瑕疵内核:晶圆级别。测试过程中发现的有瑕疵的内核被抛弃,留下完好的准备进入下一步。

单个内核:内核级别。从晶圆上切割下来的单个内核,这里展示的是Core i7的核心。

封装:封装级别,20毫米/1英寸。衬底(基片)、内核、散热片堆叠在一起,就形成了我们看到的处理器的样子。衬底(绿色)相当于一个底座,并为处理器内核提供电气与机械界面,便于与PC系统的其它部分交互。散热片(银色)就是负责内核散热的了。

芯片进行检测完成后只能算是一个半成品,因为不能被消费者直接使用。还需要经过装片作业,将内核装配固定到基片电路上。装片作业全程由于计算机控制的自动固晶机进行精细化操作。

等级测试

CPU制造完成后,还会进行一次全面的测试。测试出每一颗芯片的稳定频率、功耗、发热,如果发现芯片内部有硬件性缺陷,将会做硬件屏蔽措施,因此划分出不同等级类型CPU,例如Core i7、i5、i3。这里说明一下,高中低档的cpu制作成本是一样的,只是最后测试时,性能高的就是高端,性能低的就是入门级。

装箱:根据等级测试结果将同样级别的处理器放在一起装运。

零售包装:制造、测试完毕的处理器要么批量交付给OEM厂商,要么放在包装盒里进入零售市场。

当CPU被放进包装盒之前,一般还要进行最后一次测试,以确保之前的工作准确无误。根据前面确定的最高运行频率不同,它们被放进不同的包装,销往世界各地。

标签: CPU中央处置器Intel处置器英特尔

本文地址: https://yihaiquanyi.com/article/f1c04f44aebef1b2a95d.html

上一篇:极光数据库引领数据库新潮流极光数据网...
下一篇:极光DB数据库服务的下一个飞跃极光pn...

发表评论