中央处理器
计算机的运算和控制核心
中央处理器(英文:Central Processing Unit)简称CPU,由采用超大规模的集成电路组成制造,是计算机的运算核心和控制核心。CPU包括运算器、控制器、高速缓冲存储器、内部数据总线、控制总线及输入/输出接口等模块。
中央处理器广义上指一系列可以执行复杂的计算机程序的逻辑机器。这个空泛的定义很容易地将在“CPU”这个名称被普遍使用之前的早期计算机也包括在内。从1960年代早期开始,这个名称及其缩写已开始在电子计算机产业中得到广泛应用。早期的中央处理器通常是为大型及特定应用的计算机而定制。例如1949年诞生电子离散变量自动计算机EDVAC)上的中央处理器,随后其构成从真空管演变为晶体管。随后这种定制CPU的方法很大程度上已经让位于开发便宜、标准化、适用于一个或多个目的的处理器类。这个标准化趋势始于由单个晶体管组成的大型机和微机年代,随着集成电路的出现而加速。集成电路(IC)使得更为复杂的中央处理器可以在很小的空间中设计和制造。1971年至90年代初,CPU主要朝计算性能提升发展,晶体管数量增长至数百万级。90年代初至2000年初,CPU发展聚焦于个人应用和多媒体,同时晶体管数量由百万级提升至千万级。中央处理器的标准化和小型化都使这一类电子零件在现代生活中的普及程度越来越高。现代处理器出现在包括从汽车、手机到儿童玩具在内的各种物品中,这种集成设备通常被称为微控制器或系统级芯片(SOC)。独立式CPU通常用于台式计算机、服务器和高性能计算系统。系统级芯片(SOC)应用在物联网(IoT)、医疗应用和实时系统等领域。微控制器(MCU)则通常用于智能制造、智能家居、遥控器消费领域。2000年代初至2010年,64位处理器问世,CPU产品开始多元化,涵盖服务器、桌面、移动端等,工艺制程亦得到显著提升。2010年以后,多核技术和更高集成化成为CPU发展的特点。
现代CPU由硅芯片(CPU核心)、填充物、陶瓷电路基板、分立元件和针脚等构成。CPU内核由高纯度单晶硅制造,以不同代号区分,代表其制造工艺和性能功能差异。CPU的主要性能指标包括:字长、主频、核心数、前端总线频率、高速CPU缓存、制造工艺、线程数、热设计功率、功耗、超频潜力等。大多数现代CPU都是基于集成电路(IC)微处理器实现的,拥有一个或多个CPU在单个集成电路芯片上。具有多个CPU的微处理器芯片称为多核处理器。各个物理CPU(称为处理器核心)也可以是多线程的。CPU分为CISC(x86架构)和RISC(如ARM、RISC-V、MIPS、POWER)指令集两大类。按应用分为通用微处理器、微控制器和专用处理器,信息化系统中主要使用微处理器。
引言
定义与基本组成
中央处理器(Central Processing Unit,CPU),由采用超大规模的集成电路组成制造,是计算机系统的运算核心和控制核心。CPU由运算器、控制器、高速缓冲存储器、内部数据总线、控制总线及状态总线输入/输出接口等模块组成。
CPU的重要性
中央处理器是计算系统中不可或缺的关键组件,是计算机的大脑。它是对计算机的所有硬件资源(如存储器、输入输出单元)进行控制调配、执行通用运算的核心硬件单元。它可以同时调节计算机的内部功能、监督功耗、分配计算资源并与各种应用程序、程序和网络连接。除了管理计算机活动之外,CPU还有助于实现和稳定数据存储与内存之间的交互关系。几乎所有计算机系统都至少包含某种类型的基本CPU。
中央处理器的性能直接决定了系统的整体表现。中央处理器决定了软件应用程序和操作系统与计算机系统的兼容性。不同的中央处理器可能具有不同的架构、指令集和功能,从而影响在特定计算机平台上有效运行的软件和操作系统。中央处理器在管理和优化不同处理单元间的通信,如CPU与GPU之间的数据交换中起着至关重要的作用,有效的通信管理对系统整体性能有显著影响。CPU的安全特性,包括认证和密封,对于维护系统操作的完整性和保密性至关重要。
历史沿革
早期CPU
早期的计算机,例如1946年完成的大型通用电子数字计算机电子数字积分器和计算机(ENIAC),必须在物理上重新布线才能执行不同的任务,这些机器被称为“固定程序计算机”。"中央处理器"(Central Processing Unit),这一术语最早出现在20世纪50年代。据《牛津英语辞典》记载,"中央处理器"一词的最早文献证据可追溯至1956年的《美国大学教师保险协会杂志》。然而,1955年美国商务部的文件中就已提及此术语。由于“CPU”一词通常被定义为执行软件(计算机程序)的设备,所以真正意义上的CPU是随着存储程序计算机的诞生而出现。
在埃克特(J. Presper Eckert)和约翰·莫奇利(John William Mauchly)ENIAC最初的设计中,就已经有了存储程序计算机的想法,但为了让ENIAC早日完工而忽略了这一想法。1945年6月30日,在ENIAC诞生之前,数学家约翰-冯-诺依曼(John von Neumann)发表了一篇题为《EDVAC报告初稿》(First Draft of a Report on the EDVAC)的论文。这是最终于1949年8月完成的存储程序计算机电子离散变量自动计算机(EDVAC)的轮廓。EDVAC上的CPU是由真空管(热电子管)构成的。
早期同步CPU是定制设计,作为大型计算机的一部分使用,且受限于其所采用的开关器件的速度,时钟频率大多较低,时钟信号频率一般为100 kHz到4 MHz。
晶体管CPU
20世纪50年代CPU开始由晶体管来构建。这一改进使得CPU可以和其他组件构建在一个印刷电路板上。1964年,IBM推出了IBM System/360计算机架构,该架构让不同速度和性能的计算机运行相同的程序。为了促进这一改进,IBM使用了微程序(microprogram)的概念,该概念在现代CPU中仍然广泛使用。与早期基于电子管或继电器的计算机相比,晶体管技术为计算机带来了多项显著优势。晶体管的使用不仅增强了系统的可靠性和降低了能源消耗,还显著提升了中央处理器(CPU)的运行速度。这主要得益于晶体管比传统电子元件拥有更短的开关时间,使得CPU能够实现数十兆赫的时钟频率。随着分立晶体管以及集成电路(IC)在CPU设计中的广泛应用,加之单指令多数据(SIMD)矢量处理器等创新高性能计算架构的引入,计算机的处理能力得到了进一步的飞跃。这些技术进步共同推动了计算机性能的显著提升。
小型集成CPU
集成电路(Integrated Circuit, IC)技术使得在单个半导体芯片上集成大量晶体管成为可能。最初,集成电路仅能小型化构成非常基础的非专业数字电路,例如NOR门。这些基于基础集成电路的中央处理器(CPU)通常被称作“小规模集成”(Small-Scale Integration, SSI)设备。SSI集成电路,如阿波罗制导计算机所使用的,一般包含数十个晶体管。尽管构建完整CPU需使用数千个此类芯片,但与早期的分立晶体管设计方案相比,SSI集成电路仍显著减少了空间占用和功耗。1965年数字设备公司推出的PDP-8计算机上使用了小型集成CPU。1969年阿波罗飞船飞船的制导计算机使用了小型集成CPU。1970年IBM推出的System/370计算机也使用了小型集成CPU。
大规模集成CPU
李-博伊塞尔(Lee Boysel)撰写了多篇文章,阐述了如何通过使用少量的大规模集成电路(LSI)来构建具备32位大型计算机性能的设备。LSI芯片包含一百个或更多逻辑门,其生产完全依赖于金属-氧化物半导体(MOS)半导体制造技术,包括PMOS、NMOS或CMOS逻辑工艺。尽管如此,由于双极型晶体管在速度上超过MOS芯片,一些公司,如Datapoint,直到1980年代初期依然利用双极型晶体管晶体管逻辑(TTL)芯片来制造处理器。在1960年代,由于速度较慢,MOS集成电路主要被视为适用于低功耗需求的解决方案。
20世纪60年代末,设计师们开始努力将计算机的中央处理器(CPU)功能集成到单个芯片上。随着1968年费德里科·法金(Federico Faggin)开发出硅栅MOS技术,该技术在20世纪70年代初期很大程度上取代了双极TTL,成为标准芯片技术。该技术及其随后的工艺优化使得将中央处理器的功能集成到单个芯片上成为可能。
随着微电子技术的显著发展,集成电路(IC)上集成的晶体管数量显著增加,这导致构成一个完整中央处理器(CPU)所需的独立集成电路数量相应减少。中规模集成(MSI)和大规模集成(LSI)技术的应用使得单个集成电路能够包含数百乃至数千个晶体管。到了1968年,构建一个完整的CPU仅需24种不同类型的集成电路,每种都大约包含1000个金属-氧化物半导体场效应管(MOSFET)。与早期的小规模集成(SSI)和MSI技术相比,数字设备公司(DEC)的PDP-11计算机首次采用LSI技术,其CPU仅由四块LSI集成电路组成。
微处理器
1971年,英特尔公司推出了世界上第一台微处理器4004,这是第一个用于计算机的4位微处理器,也是首个将中央处理器功能集成到单个芯片上的微处理器。20世纪70年代,研究人员开发了各种各样的微处理器,其中绝大多数是8位设备。1978年,Intel公司首次生产出16位的微处理器,并命名为i8086,同时还生产出与之相配合的数学协处理器i8087,这两种芯片使用相互兼容的指令集,但在i8087指令集中增加了一些专门用于对数、指数和三角函数等数学计算指令。由于这些指令集应用于i8086和i8087,所以人们也将这些指令集统一称之为x86指令集。
1979年,英特尔公司推出了8088芯片,它属于16位微处理器。1981年,8088芯片首次用于IBM PC机中,开创了全新的微机时代。也正是从8088开始,个人电脑PC(personal 计算机)的概念开始在全世界范围内发展起来。1982年,Intel推出了划时代的产品80286芯片,也就是俗称的286。这是Intel第一个可以运行所有为其撰写的处理器,在发布后的六年中,全球一共交付了一千五百万台。
1985年,MIPS推出了第一代使用MIPS指令集的处理器:R2000标志着现代RISC处理器的诞生,并引领了接下来一段时间的CPU设计潮流;同年,第一颗ARM处理器诞生。1991年,ARM推出第一款嵌入式RISC处理器,即ARM6。
1985年,中国的中科院中国科学院计算技术研究所、半导体所有关研制大规模集成电路的单位和109厂合并,成立中科院微电子中心。但这一时期,由于政策支持力度有所减弱等原因,产业完全市场化但自主性不足。
1989年,英特尔发布了Intel80486处理器。486处理器的应用意味着用户从此摆脱了命令形式的计算机,进入“选中并点击(point-and-click)”的计算时代。486处理器首次采用内建的数学协处理器,将负载的数学运算功能从中央处理器中分离出来,从而显著加快了计算速度。486是英特尔最后一款以数字为编号的处理器。此后,英特尔开始告别微处理器数字编号时代,进入到了Pentium时代。
20世纪90年代,片上系统(SoC)诞生。它不再利用不断增长的晶体管资源来提高微处理器的性能,而是将越来越多的系统功能集成到微处理器所在的同一块微芯片上。1992年,英特尔正式宣布第五代处理器被命名Pentium。Intel Pentium处理器能够让电脑更加轻松地整合“真实世界”中的数据(如讲话、声音、笔迹和图片)。x86在微架构设计上开始超越较之昂贵很多Alpha处理器
1996年,Intel推出了奔腾mmx。MMX是Intel公司在1996年为增强奔腾CPU在音箱、图形和通信应用方面而采取的新技术,为CPU增加了57条MMX指令,因此处理多媒体的能力上提高了60%左右。后来的SSE,3DNOW!等指令集也是从MMX发展演变过来的。
1997年-2000年,英特尔奔腾II、奔腾III、奔腾4相继发布,从奔腾II开始采用了Single Edge Contact匣型封装,奔腾III加入了70个新指令,首次导入0.25微米技术,奔腾4晶体管数量更是达到4200万,提供SSE2指令集。
单核时代,频率是CPU最重要的性能指标。这个标志性1GHz CPU在2000年3月由AMD首先发布,型号是Athlon 1000。自此CPU的频率从MHz跨入了GHz。
2001年,英特尔至强(Xeon)处理器发布,Intel至强处理器的应用目标是那些即将出现的高性能和中端双路工作站、以及双路和多路配置的服务器。2002年,迪吉多惠普收购,Alpha处理器基本退出市场竞争。
2002年,中国首款通用CPU—龙芯1号流片成功。
2003年,IntelPentium M处理器结合了855芯片组家族与IntelPRO/Wireless2100网络联机技术,成为IntelCentrino移动运算技术的重要组成部分,该处理器支持更耐久的电池使用时间,以及更轻更薄的笔记本电脑造型。
2003年,AMD推出AMD64–64位x86指令集扩展,该指令集由于良好的兼容性机生态,取代了英特尔推出的EPIC指令集,成为后续市场主流标准。2004年,Intel公司推出代号为Nocona内核的64位至强处理器,是Intel迄今为止推出的最成功的企业级64位服务器产品。同年,ARM发布了ARMv7架构的Cortex系列处理器,同时推出Cortex-M3。
2005年5月26日英特尔发布了首款主流双核处理器PentiumD,正式揭开处理器的多核心时代。该处理器拥有2.3亿个晶体管,采用90纳米工艺技术制造。2006年,中国的“核高基”重大专项推出,“高”即为高端通用CPU。
2006年,英特尔推出酷睿2是新一代基于Core微架构的产品体系统称。酷睿2,是一个跨平台的构架体系,包括服务器版、桌面版、移动版三大领域。其中,服务器版的开发代号为Woodcrest,桌面版的开发代号为Conroe,移动版的开发代号为Merom。2007年,第一代IPhone发布,其采用的ARM1176JZ(F)-S处理器,其后,AArch(32/64)生态统治了智能手机领域。
2010年之后CPU核心数量、频率得以大幅发展,主频突破3GHz,实现多核/多线程技术,AMD第1代APU(CPU集成GPU单元)开始出现。2011年,ARM发布了64位的ARMv8架构,并于同年推出big.LITTLE处理技术,优化了ARM系统级芯片(SoCs)的能效。ARM开始64位处理器进程。2015年,ARM Cortex-A72正式发布,定位高端市场。2014年,中国发布《国家集成电路产业发展推动纲要》,国家集成电路产业投资基金(简称国家大基金)第1期成立,主要投资集成电路制造企业。
2017年,英特尔第七代酷睿处理器i7、i5、i3发布,采用了14nm的制作工艺。同年6月,AMD发布基于Zen架构的第一代EPYC(枭龙),重返数据中心CPU处理器市场。2018年8月AMD宣布新品将转由台积电7nm工艺制造。2019年,中国国家集成电路产业投资基金第2期成立,主要投资应用端。
2020年5月23日,AMD正式发布新锐龙处理器Ryzen 7000系列,采用台积电5纳米工艺Zen 4架构打造。2020年12月24日,龙芯中科在北京发布新一代通用处理器3A4000/3B4000。该处理器采用28纳米工艺,通过设计优化提升性能,是基于中国自主研制的新一代处理器核,主频达到1.8G赫兹—2.0G赫兹,定点和浮点单核测试分值均超过20分,是上代产品的两倍以上。
2022年5月10日,英特尔正式推出第12代英特尔酷睿HX处理器家族。该处理器采用了Goldden Cove+Gracemont的混合架构,代号Alder Lake,将高性能核心和高效能核心集成在同一个芯片上;制程工艺也从14纳米缩小到10纳米。
2023年11月28日,龙芯中科发布了通用处理器龙芯3A6000。龙芯3A6000处理器采用龙芯自主指令系统龙架构(LoongArch),是龙芯第四代微架构的首款产品,主频达到2.5GHz,集成4个最新研发的高性能LA664处理器核,支持同时多线程技术,全芯片共8个逻辑核。综合相关测试结果,龙芯3A6000处理器总体性能与英特尔公司2020年上市的第10代酷睿四核处理器相当。2024年1月随着锐龙AI技术的推出,AMD首次将专用AI神经处理单元(NPU)的功能加入台式PC处理器。
主要运作原理
CPU的主要运作原理是执行储存在内存中里的一系列指令。大多数CPU的基本操作,不论其采用何种物理形式,都是执行一系列称为程序的存储指令。待执行的指令存放在某种类型的计算机存储器中。几乎所有CPU在其操作中遵循取指令、译码和执行的步骤,这些步骤一起称为指令周期。
执行一条指令后,整个过程将重复,下一个指令周期通常会因为程序计数器的值增加而获取顺序上的下一条指令。如果执行了跳转指令,则程序计数器将被修改为包含跳转到的指令的地址,程序执行将继续正常进行。在更复杂的CPU中,可以同时获取、解码和执行多条指令。以上这一流程即通常所说的“经典RISC流水线”,在许多电子设备中使用的简单CPU中非常常见(通常称为微控制器)。然而,它在很大程度上忽略了CPU缓存及其在流水线访问阶段中的关键作用。
有些指令的主要作用是操作程序计数器,而非直接产生数据结果;这些指令通常被称为“跳转”指令,它们对于实现程序的循环结构、条件执行(通过条件跳转实现)以及函数的存在至关重要。在一些处理器中,还存在其他类型的指令,它们能够改变“标志”寄存器中位的状态。这些标志位能够指示操作的结果,并对程序的行为产生影响。例如,在这类处理器中,“比较”指令会评估两个值,并通过设置或清除标志寄存器中的位来标示哪个值较大或两个值是否相等。这些标志位随后可以被后续的跳转指令所利用,以确定程序的执行流向。
CPU工作架构有约翰·冯·诺依曼结构(von Neumannarchitecture)以及哈佛结构(Harvardarchitecture)。冯·诺伊曼CPU的运作原理可分为五个阶段:提取、解码、执行、访存和写回。
结构和工作
工作原理
CPU的电路中硬连入了一组基本操作,称为指令集。这些操作可能包括,例如,两个数字的相加或相减,比较两个数字,或跳转到程序的不同部分。每个指令由一组位的独特组合表示,称为机器语言操作码。在处理指令时,CPU将操作码(通过二进制译码器)解码为控制信号,这些信号编排CPU的行为。完整的机器语言指令由操作码和在许多情况下指定操作的参数的额外位组成(例如,在相加操作中指定要相加的数字)。随着复杂度的提高,机器语言程序是CPU执行的一系列机器语言指令的集合。每条指令的实际数学操作是由CPU处理器内的组合逻辑电路执行的,该电路被称为算术逻辑单元(ALU)。通常,CPU通过从内存中获取指令,使用其ALU执行操作,然后将结果存储到内存中来执行指令。除了整数数学和逻辑操作的指令之外,还存在各种其他机器指令,例如从内存中加载数据和存储数据,分支操作,以及由CPU的浮点数单元(FPU)执行的浮点数的数学运算。
运算器
运算器是计算机的数据处理核心,负责执行算术和逻辑运算,同时也是数据交换的中心。约翰·冯·诺依曼在1945年的《电子计算机逻辑结构初探》报告中提出了现代计算机的五大基本组成部分,包括运算器,并强调了运算器在计算机系统中的中心地位。运算器的结构虽然有区别,但必须包含如下几个基本部分,即加法器、通用寄存器、输入数据选择电路和输出数据控制电路等。
加法器
加法器的主要作用是实现两个数的相加运算,对逻辑运算也给予一定的支持,并且常作为传送数据的通路使用。
通用寄存器
通用寄存器组中有若千个寄存器是用来暂时存放参加运算的数据和运算结果(或中间结果)的。这是因为要将从主存储器中取出的参加运算的数据,立即送到加法器中进行处理还存在一些问题,例如在对两个数据进行操作的情况下是不可能从存储器中同时取出两个数据并直接送入加法器中处理的,而通常是利用寄存器来暂时存放将要参加运算处理的数据。在前几节介绍的运算方法中,参加运算的数可看做是由运算器的通用寄存器直接提供的。另外有些寄存器可作变址寄存器、状态寄存器、堆栈指示器使用。不同的机器对这组寄存器使用的情况和设置的个数也不相同。
输入数据选择电路
输入数据选择电路是对送入加法器的数据进行选择和控制的电路。其作用为:一是用来选择将哪一个或哪两个数据(数据来源于寄存器或总线等部件)送入加法器;二是用来控制数据以何种编码形式(原、反、补码)送入加法器。常称这部分电路为多路开关或多路反激式变压器。这部分电路通常有实现某些逻辑运算的电路,它们也是由与、或、非门组成的。
输出数据控制电路
输出数据控制电路是一种对加法器输出数据进行控制的电路。这部分电路一般具有移位功能,并具有将加法器输出的数据送到运算器通用寄存器的通路和送往总线的控制电路。
控制器
控制器是计算机系统的控制中心和指挥中心,负责执行程序中的指令序列,确保计算机各部件按照预定的顺序和时序运行。控制器的基本功能包括:控制指令执行顺序、生成操作控制命令、处理异常情况以及提供时序控制信号。控制器是指按照预定顺序改变主电路或控制电路的接线和改变电路中电阻来控制电动机的启动、调速、制动与反向的主令装置。控制器由指令部件、地址部件、时序部件、中断控制部件和操作控制部件等组成,其作为“决策机构”,主要任务就是发布命令,发挥着整个计算机系统操作的协调与指挥作用。控制的分类主要包括两种,分别为硬连线控制器、微程序控制器,两个部分都有各自的优点与不足。其中组合逻辑控制器结构相对较复杂,但优点是速度较快;微程序控制器设计的结构简单,但在修改一条机器指令功能中,需对微程序的全部重编。
此外,控制器还包括中断逻辑,用于处理运算错误、硬件错误以及输入输出中断请求,确保在紧急事件发生时能够暂停当前程序,处理完毕后再返回原程序继续执行。控制器的分类方式多样,包括同步控制与异步控制、组合逻辑控制器与微程序控制器,以及集中控制与分布控制。随着并行处理技术、流水线技术和超级计算机的发展,控制器的结构变得更加复杂,以适应更高的运算速度和性能要求。
高速缓冲存储器
高速缓冲存储器(缓存)是位于中央处理器和主存储器之间的一种高速小容量存储器,它对程序员透明,用于缩短数据存取周期。高速CPU缓存通常采用静态存储器(sram)作为存储介质,因其速度快但成本高,而主存储器则使用成本较低、集成度更高的动态存储器(DRAM)。
高速缓存的设置基于程序访问的局部性原则,即时间局部性和空间局部性,这使得它能够提高存储系统的效率。高速缓存的组织以块为单位,命中时访问时间较短,而缺失时需要从主存储器中加载数据,增加了访问时间。命中率是衡量高速缓存性能的关键指标,它与应用程序的局部性以及高速缓存的组织结构有关。
高速CPU缓存的映射策略包括直接映射、全相联映射和组相联映射,每种策略有其特点和适用场景。块替换策略,如最近最少使用(LRU)策略,用于决定在高速缓存满时哪个块被替换。写策略则涉及数据如何写入高速缓存,包括直写和后写两种方式。为了进一步减少高速缓存缺失的影响,可以采用多级高速缓存结构,每一级高速缓存速度不同,容量也不同,以实现容量和速度的平衡。此外,虚地址高速缓存允许使用逻辑地址(或虚地址)直接访问,减少了地址转换的时间。高速缓存的思想也被应用于计算机系统的其他方面,如转换检测缓冲器(快表)、文件高速缓存、磁盘高速缓存和网页高速缓存,这些都是为了减少访问延迟,提高系统性能。
内部数据总线IDB(Internal Data Bus)
内部数据总线将CPU内部的各个组成部分连接起来,为它们的数据传输提供通路;并通过数据总线缓冲器DBB(Data Bus Buffer)缓冲后输出到CPU芯片外部,成为数据总线信号DB,用于随机存取存储器、I/O口等的数据。CPU的位数取决于其数据总线宽度。内部数据总线宽度决定了CPU在内部以多少位为基本单位进行数据的处理,称为“字长”。字长越长,所表示处理的数据精度就越高。在完成同样精度的运算时,字长较长的中央处理器比字长较短的中央处理器运算速度快。大多数中央处理器内部的数据总线与中央处理器的外部数据引脚宽度是相同的。
控制总线
总线,实际上是一组专门用于信息传输的公共信号线,各相关部件都被连接在这组公共线路上,采用分时操作进行控制,实现独立的信息传送。传输控制信息的即为控制总线。控制总线是中央处理器向各部件发出的控制信息、时序信息以及外部设备发送到微处理器的请求信息的总称,这些信息起控制作用。它包括中央处理器向存储器发送的读选通信号、写选通信号,以及外部设备向中央处理器发送的中断请求信号等。控制总线中每一根线的方向都是一定的且是单向的,但作为整体来看则是双向的。
输入/输出接口
输入/输出接口(I/O 接口)是计算机系统中连接中央处理器(CPU)与外部设备的关键组件,它充当信息交换的中转站。由于CPU与外部设备在操作特性和速度上存在差异,直接连接会导致不兼容问题,因此接口电路是必需的。接口的基本功能包括数据缓冲、寻址、联络、数据转换、输入输出控制、中断管理以及时序控制。数据缓冲功能解决速度匹配问题,寻址功能通过地址译码器选择正确的设备,联络功能提供外设状态信息,数据转换功能处理串行与并行数据格式的转换,输入输出功能控制数据流向,中断管理功能协调中断请求,而时序控制功能则同步操作。
接口电路通常包含多个端口,包括数据端口、状态端口和控制端口,这些端口通过地址总线、数据总线和控制总线与CPU相连。端口可以是只读或只写,有时多个端口可以共享一个端口地址,通过不同的方法如特征位法、特定顺序法或索引法来区分。与存储器不同,外部设备种类繁多,功能复杂,信号类型和电平多样,信息结构格式复杂,因此需要接口电路进行适配和协调。接口电路的设计必须考虑设备的多样性和复杂性,提供必要的功能以确保高效可靠的信息交换。
CPU的物理结构
CPU由硅芯片(CPU核心)、填充物、电路基板、分立元件和针脚等构成。硅芯片、填充物、电路基板等通过封装以构成CPU。CPU的接口则承担了CPU与主板的连接功能。
CPU核心,由极纯的单晶硅构成。在内核晶圆上以一定的生产工艺蚀刻了数以亿万计的晶体管,CPU内核大小为200~300mn2(指甲般大小)。CPU的内部结构由控制单元、逻辑运算单元、存储单元(包括内部总线CPU缓存器)三大部分组成。控制单元负责完成数据处理过程中的调配工作,逻辑单元负责完成指令的运算执行工作,存储单元负责原始数据和运算结果的存储工作。所以,CPU内核中蚀刻的集成电路包括指令高速缓存(指令寄存器)、译码单元(译码器)、控制单元、寄存器、逻辑运算单元(ALU)、预取单元、总线单元(内部总线)、数据高速缓存等,它们分别承担了控制、计算、数据处理等任务。
CPU的电路基板,也称为封装基板。它充当CPU核心与系统其余部分之间的接口,提供数据传输和电源分配所需的电气连接。基板是一种分层结构,通常由玻璃纤维增强环氧树脂(FR-4)或其他先进材料制成,以确保可靠的性能。在半导体封装和基板技术领域,研究工作集中在提升CPU封装基板的性能、可靠性和微型化。研究者探索了如倒装芯片技术、硅通孔(TSVs)、中介层等先进封装技术,以改善CPU封装基板的电气和热特性。此外,还研究了用于基板制造的新型材料,例如液晶聚合物(LCP)和高密度互连(HDI)基板,以满足现代CPU对高速数据处理和能效的日益增长的需求。研究工作还致力于优化CPU封装基板的设计和制造工艺,以实现更高水平的集成度、信号完整性和热管理,以适应先进的微处理器的需求。
分类
CPU是一个庞大的家族,可以按照指令集、应用领域、集成水平、封装类型等进行分类。
基于指令集
指令集是CPU所执行的指令的二进制编码方法,是软件和硬件的接口规范。日常交流中有时也把指令集称为架构。CPU按照指令集可分为CISC(复杂指令集)和RISC(精简指令集)两大类,CISC型CPU目前主要是x86架构,RISC型CPU主要包括ARM、RISC-V、MIPS、功率架构等。
基于应用领域
微处理器根据应用领域,大致可以分为三类:通用微处理器(MPU,Micro Processor Unit)、微控制器(MCU,Micro ControllerUnit)和专用处理器,中央处理器(CPU,CentralProcessing Unit)属于通用微处理器。
基于集成水平
基于封装类型
核心技术
多核心技术
CPU的多核心技术是指在单个CPU芯片上集成多个处理核心的能力。与依赖单个核心处理所有任务的传统CPU不同,多核CPU拥有两个或更多核心,能够同时执行指令,从而提高整体的处理能力和效率。多核CPU的一个主要优势在于其并行处理能力。操作系统和各种应用程序能够将任务分配到不同的处理核心上,从而优化资源的使用,提高系统的响应速度和性能。这种多任务处理和高要求应用程序的性能提升,是通过在多个核心之间平衡工作负载来实现的。
此外,多核技术还提供了计算系统的可扩展性,这比单纯增加CPU的时钟频率更为有效。在执行并行任务时,多核CPU通常比单核CPU具有更高的能效比,这一点对于功耗敏感的手持移动设备数据中心尤为重要。为了充分利用多核CPU的性能,软件开发者需要设计能够适应多核心架构的应用程序。并行编程技术和框架的开发对于实现这一点至关重要,它们能够确保应用程序能够高效地在多个核心上运行,从而最大化多核CPU的性能增益。自2006年以来,由于基于原有技术的CPU频率难以进一步提升,性能没有质的飞跃,主要的CPU生产厂商英特尔AMD相继推出了自己的多核心处理器。与单纯提升CPU频率相比,采用多核心技术的CPU在性能、功耗方面具有更多优势。
异构集成技术
CPU的异构集成技术通过将不同类型的处理单元,如中央处理器(CPU)和图形处理单元(GPU),以及其他专用加速器和协处理器(例如AI加速器)等,通过先进的封装技术集成在一起,来优化性能和效率。这种集成策略利用了每种硬件的专长,针对特定任务提供定制化解决方案,从而提高了整个系统的处理能力。异构集成技术的一个关键优势在于能够建立CPU和GPU之间的共享地址空间,从而实现两者之间的无缝通信和数据共享。这种共享内存架构增强了系统的一致性,促进了CPU和GPU之间高效的数据传输和处理。
随着异构计算技术的发展,出现了如OpenCL这样的开放标准,它们支持跨各种处理单元的编程,从单核处理器到多核处理器,再到异构平台。这种编程模型的灵活性,使得系统内不同处理单元的多样化能力得到了更好的利用。在异构集成芯片堆栈的热设计和约束方面,诸如空气间隙和热桥等技术在管理集成组件产生的热量方面发挥着至关重要的作用。有效的热管理对于确保异构集成系统的可靠性和性能至关重要。此外,异构集成技术通过先进的封装技术,将不同工艺节点制造的芯片组合成一个芯片,有助于降低设计成本并提高产量。它还允许灵活的系统集成,优化性能和功耗。为了充分利用异构集成技术,需要对相关的技术,如互连和封装技术进行更多研究,以简化系统整合的复杂性,同时提高性能、降低功耗并增加面积效率。
调度技术
CPU调度技术是操作系统中管理多个进程对CPU资源分配的核心机制,用于决定所有准备执行的进程的短期调度。调度技术旨在通过各种算法和策略来优化CPU的利用率并提升系统性能。不同的CPU调度方法包括先来先服务(FCFS)、最短作业优先(SJF)、优先级调度、轮转调度(RR)、多级队列调度(MQS)和多级反馈队列(MFQ)。这些调度技术旨在最大化CPU利用率,最小化周转时间,并优化资源分配。CPU调度算法包括非抢占和抢占两种基本类型,其中抢占类型可以中断当前运行的进程。不同的调度标准包括最大化吞吐量、最小化周转时间和响应时间等。轮回调度技术可以通过使用不同的时间片段来最大程度地提高吞吐量,减少平均周转时间和等待时间。
硅中间层技术
硅中间层( Interposer),也称为硅互连层或硅中介层,是一种大型基板,其上布置有穿透硅通孔(Through Silicon Vias TSVs),这些通孔允许在紧凑且高效的方式下集成多个核心和存储元件。它允许不同芯片组之间通过高密度的互连进行通信。这种技术的一个主要优势在于它能够促进存储器和处理器的集成,从而提高系统性能。通过利用硅中间层技术,可以实施复杂的多核系统,这些系统具有改善的内存带宽和降低的延迟。此外,硅中间层技术还提供了一个平台,用于实施创新解决方案,例如主动硅中间层。主动硅中间层装备有二极管晶体管等组件,可以通过实现更复杂的集成方案来提高系统效率并降低成本
随着技术的进步,单个芯片的制造变得越来越复杂和成本高昂。使用硅中间层和芯片组的方法可以克服这些问题。硅中间层可以使用更小、更高效的芯片组来构建大型处理器,每个芯片组可以针对特定任务进行优化。不同的芯片组可以独立设计和制造,然后通过硅中间层集成到一起。较小的芯片组通常具有更高的制造良率,这有助于降低整体成本。这种设计方法使得可以构建出具有更高性能和更小尺寸的处理器。硅中间层可以更有效地分配电源给各个芯片组,并提供更好的热管理解决方案。硅中间层还可以利用高密度互连技术,如Infinity Fabric,来实现芯片组之间的高速通信。
封装技术
CPU封装技术指用于封装和保护计算机中央处理器(CPU)的方法和材料。封装技术在保护CPU的硅芯片并为整个系统提供连接方面发挥着重要作用。封装技术涵盖了多种保护电子元件的方法,例如保形涂层、灌封和底部填充。这些技术旨在为组件提供环境保护、机械支撑和热管理,从而提高其可靠性和使用寿命。不同封装材料和工艺对电子组件性能和可靠性会产生不同的影响。封装技术可以实现CPU核心的分割,从而提高整体性能,同时保留I/O接口和内存接口的优势。不同的封装技术可以满足现代电子设备不断变化的要求,例如3D集成、光电互连和细间距封装。
流水线技术
流水线技术是中央处理器提高指令执行效率的关键方法。该技术通过将指令的执行过程分解为多个连续的阶段(例如取指令、译码、执行、访存和写回等),使得每个时钟周期内的工作量减少,从而提升主频。同时,它允许多条指令的各个阶段并行执行,如一条指令执行时,另一条可同时译码。尽管单条指令的执行时间保持不变,但流水线技术显著增加了处理器在单位时间内执行的指令总数。流水线技术因其成本效益高和对提升计算速度的显著效果,已成为计算机中广泛使用的并行处理技术。在输送流水线的每个功能段后,通常配备缓冲寄存器,用以存储当前段的执行结果,供下一阶段使用。评估流水线性能的主要参数包括吞吐率、加速比和效率:
超线程技术
超线程(Hyper-Threading, HT)是英特尔的术语,在计算机行业中也称为同步多线程或SMT。它允许单个物理CPU核心模拟两个逻辑核心,有效地将可用线程数量翻倍。这项技术通过允许多个线程同时在单个核心上运行,提高了CPU资源的利用率。当在CPU上启用超线程时,每个物理核心都会在操作系统中表现为两个虚拟核心。这意味着任务可以被划分为多个线程,CPU可以更有效地在这些线程之间切换,从而提高性能和响应能力。超线程通过复制CPU架构中某些共享于两个虚拟核心的部分来实现。这包括寄存器、执行单元和CPU缓存等资源。通过共享这些资源,CPU可以并行处理更多线程,更好地利用其处理能力。超线程对于涉及多任务处理、并行处理以及可利用多线程的应用程序特别有益。它允许更好的CPU利用率,并可在并行执行受益的任务中带来性能提升。需要注意的是,并非所有CPU都支持超线程,其效果也会因具体的工作负载和应用程序而有所不同。此外,虽然超线程可以在某些情况下提高性能,但并不总能带来显著的提升,也可能会引入一些开销。
虚拟化技术
CPU虚拟化技术允许单个物理CPU充当多个虚拟CPU,使多个操作系统和应用程序能够同时在单个物理机上运行。这项技术对于创建虚拟环境(如虚拟机)至关重要,在这些环境中,每个虚拟实例都像拥有自己的专用CPU一样运行。CPU虚拟化有两种主要方法:
CPU虚拟化技术对于服务器整合、资源优化和创建用于测试、开发和部署的隔离环境至关重要。它使组织能够通过在单个物理服务器上运行多个工作负载来最大化硬件资源的利用率。虚拟化技术已经发展到支持实时迁移等高级功能,在这种情况下,虚拟机可以在不停机的情况下在物理主机之间移动,以及硬件辅助虚拟化,它将虚拟化任务卸载到CPU以提高性能。总的来说,CPU虚拟化技术在现代计算环境中发挥着至关重要的作用,它实现了资源利用的效率、可扩展性和灵活性,有助于管理和部署跨物理硬件的虚拟化工作负载。
主要性能指标
字长
字长是指计算机运算部件一次能同时处理的二进制数据的位数。字长越长,作为存储数据,计算机的运算精度就越高;作为存储指令,计算机的处理能力就越强。通常,字长总是8的整倍数,如8位、16位、32位、64位等,如英特尔486计算机和Pentium4计算机均属32位机。现如今,64位的字长技术已经成为目前主流的一种CPU计算技术,它具有使计算机的计算能力倍增,支持可以满足任何应用的内存寻址能力。
主频
CPU的时钟频率是指CPU运行时的工作频率,又称为主频,单位为Hz(赫兹)。通常主频越高,CPU的运算速度越快,CPU主频的高低主要取决于它的外频和倍频,它们的关系为:主频=外频×倍频。任意改变CPU的外频或倍频都会改变CPU的主频。
外频是指CPU的基准频率,代表CPU和计算机其他部件之间同步运行的速度,单位为Hz(赫兹)。外频越高,CPU的处理能力就越强。
倍频又叫倍频系数,是指CPU主频与外频之间的比值。从理论上讲,在外频不变的情况下,倍频越大,CPU的实际频率就越高,运算速度也就越快。目前的CPU大都锁定了倍频,人们常说的“超频”主要就是通过修改外频来提高CPU的主频。
前端总线频率
前端总线是CPU与主板北桥芯片或内存控制器之间的数据通道,也是CPU与外界进行交换数据的主要通道,它们之间的传输速度被称为前端总线频率,前端总线频率越大,CPU与北桥芯片之间的数据传输能力越强。
高速缓存
CPU的高速缓存(缓存)是内置在CPU中的一种临时存储器,读写速度比内存快,它为CPU和内存提供了一个高速数据缓冲区
CPU读取数据的顺序:先从缓存中寻找,找到后直接进行读取;如果未能找到,才从内存中进行读取。
CPU的高速缓存一般包括一级缓存、二级缓存和三级缓存3种。一级缓存(L1Cache)主要用于暂存操作指令和数据,它对CPU的性能影响较大,其容量越大,CPU的性能也就越高。二级缓存(L2Cache)主要用于存放那些CPU处理器一级缓存无法存储的临时数据,包括操作指令、程序数据和地址指针等。三级CPU缓存(L3缓存)主要是为读取二级缓存后未命中的数据设计的一种缓存。在拥有三级缓存的CPU中,只有约5%的数据需要从内存中直接调用。不过随着内存延迟的降低,CPU的执行效率大大提高。目前,只有高端CPU才有三级缓存。
制造工艺
CPU的“制造工艺”是指在生产CPU的过程中,要制造导线连接各种电路和电子元件。制造工艺影响核心的能效和性能。通常,CPU生产的精度以纳米(nm,1纳米等于千分之一微米)来表示。精度越高,生产工艺越先进,利用同样的材料就可以制造出更多的电子元件,同时连结线也越细,CPU的集成度也越高,其功耗也越小。制造工艺的“纳米”是指IC(集成电路)内电路与电路之间的距离。IC电路设计密度愈高,意味着在同样面积的IC中,可以设计密度更高、功能更复杂的电路。微电子技术的发展与进步主要是靠工艺技术的不断改进,使器件的尺寸不断缩小,从而集成度不断提高,功耗降低,器件性能得以提高。早期的处理器都是使用0.5μm工艺制造出来的,随着CPU频率的增加,原有的工艺已无法满足产品的要求,于是便出现了3nm的制造工艺。
核心数
CPU的核心数是指单个CPU封装中的CPU内核数量,早期的CPU都是单核的,但从PentiumD开始,越来越多的CPU采用了多核心设计,例如英特尔的Core2Duo,AMD的Athlon64x2等。核心数量决定了计算机并行计算的能力,每个核心可以分别独立运行程序指令,利用并行计算的能力,可以加快程序的运行速度,提供多任务能力。例如,酷睿i74690X的主频为3.6GHz,核心数量为6核。
线程数
线程数是指中央处理器可以同时处理的线程的数量。线程是中央处理器可以执行的单独指令序列。线程数决定了中央处理器可以同时处理的任务或进程的数量。线程是CPU核心的虚拟版本。为了创建线程,英特尔处理器采用超线程技术(Hyper-Threading),而AMD处理器采用同时多线程技术(Simultaneous Multithreading,简称SMT)。这两种技术本质上是相同的,它们都是将物理核心分解为虚拟核心(线程)以提高性能的过程。例如,具有四个物理核心的AMD处理器使用SMT技术提供八个线程,而大多数具有两个物理核心的Intel处理器使用超线程技术提供四个线程。这些方法对处理器的整体性能有显著影响。
热设计功率
CPU热设计功率(TDP)是一种规格,表示计算机中的冷却系统需要散发的CPU产生的最大热量。对于系统构建者和用户来说,这是一个关键参数,可以帮助他们了解CPU的散热要求,并确保冷却解决方案足以将CPU温度保持在安全的操作限度内。TDP值通常以瓦特(W)表示,表示CPU在正常运行条件下预计会散发的最大功率(热量)。较高的TDP值表示CPU产生的热量更多,需要更强大的冷却解决方案来防止过热。TDP由多种因素决定,包括CPU的架构、时钟速度、内核数量和电压要求。在为系统选择CPU时,这是一个重要的考虑因素,尤其是在高性能计算环境中,热管理对于确保系统稳定性和使用寿命至关重要。术语热设计功率已经被处理器基本功率取代。
功耗
功耗是指中央处理器在运行时消耗的电量。它是CPU执行计算任务所消耗能量的量度,通常以瓦特(W)表示。CPU的功耗受各种因素影响,包括CPU的架构、时钟速度、内核数量、工作负载强度和电压要求。CPU的功耗可能因正在执行的特定任务而异。例如,当CPU处于空闲或轻负载状态时,与运行需要高处理能力的密集型应用程序或任务相比,它消耗的电量较少。CPU的功耗是系统设计中的一个重要考虑因素,尤其是在手持移动设备数据中心能源效率非常重要。CPU制造商通过优化设计、减少漏电和实施节能功能(例如动态频率调整和睡眠状态)来提高CPU的能源效率。降低功耗不仅有助于降低能源成本,而且还有助于延长移动设备的电池寿命并降低台式机和服务器系统的冷却要求。
超频潜力
超频潜力指的是中央处理器(CPU)能够以高于其默认或额定频率的时钟速度运行的能力。超频涉及将CPU的时钟速度提高到超出制造商规格的水平,以实现更高的性能水平。不同CPU的超频潜力各不相同,受CPU架构、热设计、供电系统以及硅晶片整体质量等因素的影响。CPU的超频潜力通常以CPU能够达到的最大稳定时钟速度来衡量,该速度不会出现系统崩溃、过热或数据损坏等稳定性问题。对于想要超频CPU的用户,通常会调整系统BIOS中的设置或使用专门的软件来增加时钟速度、电压和其他参数,以使CPU超越其原厂限制。需要注意的是,超频可能会使保修失效、增加功耗、产生更多热量,并且如果操作不当可能会缩短CPU的使用寿命。从事CPU超频的用户应该充分了解其中的风险,并采取必要的预防措施,确保系统的稳定性和长期使用。
生产过程
CPU的生产流程是半导体制造技术中的一个复杂且精细的过程,主要包括以下关键步骤:
提纯:采用高纯度硅作为半导体材料,通过熔化并使用晶种引导生长,形成单晶硅锭,进而切割成晶圆,用于后续制造过程。
影印与蚀刻:在硅基片上涂覆光阻,利用紫外线和模板曝光,再通过化学溶液清洗,形成CPU电路的初步结构。
掺杂技术:通过扩散或离子注入等手段,精确控制掺杂剂的引入,改变硅晶体的导电性,形成N型或P型半导体区域。
沉积:使用化学气相沉积(CVD)或物理气相沉积(PVD)技术,在晶圆上沉积多层材料,构成晶体管、互连线等CPU组件。
化学机械抛光(CMP):通过CMP技术,确保晶圆表面均匀平坦,为后续制造步骤提供良好基础。
金属化:在CPU的多层结构中填充金属层,如铝和铜,形成导电路径。
封装:将制造完成的CPU晶圆封装进陶瓷或塑料外壳,以便于安装和使用。
测试:对CPU进行多次电气性能测试,确保产品质量和性能符合标准。
市场规模
2023年全球中央处理器的市场规模为1150亿美元,预计2024年至2030年期间中央处理器的市场规模将以4.5%的复合年增长率增长,到2030年将达到近1201.8亿美元。
2024年第一季度里,AMD在服务器和消费类市场获得了更高的市场份额。与去年同期相比,AMD在桌面、移动、以及服务器的市场份额分别同比增长了4.7%、3.1%和5.6%,如果以收入占比的增长来看,则分别对应增长了3.8%、5.4%和5.2%,达到了19.2%、16.3%和33%。2024年第二季度,x86架构的中央处理器有64%来自英特尔处理器,而33%来自AMD处理器。仅从笔记本电脑CPU来看,英特尔在2024年第二季度的笔记本电脑CPU中占75%。
AMD
AMD成立于1969年,并于1972年在纳斯达克股票交易所全球精选市场(NASDAQ)上市,是一家硅谷初创公司,最初只有数十名员工。AMD现已发展成为一家全球性公司。其产品和服务涵盖了服务器微处理器(CPU)、图形处理单元(GPU)、加速处理单元(APU)、数据处理单元(DPU)、FPGA(FPGA)、智能网卡(SmartNIC)、人工智能(AI)加速器和数据中心自适应片上系统(SoC)产品。
AMD微处理器产品典型的核心系列有:
英特尔(Intel)
英特尔公司是一家美国跨国公司和科技公司,总部位于加利福尼亚州圣克拉拉,在特拉华州注册成立。英特尔为大多数计算机系统制造商提供微处理器,也是大多数personal computer(PC)中x86系列指令集的开发商之一。它还生产芯片组、网络接口控制器、闪存、图形处理单元(GPU)、FPGA(FPGA)以及其他与通信和计算相关的设备。
Intel微处理器产品典型的核心系列有:
高通
高通成立于1985年,一家美国跨国公司,总部位于加利福尼亚州圣迭戈,在特拉华州注册成立。高通是一家主要为便携式设备提供无线通信和数据传输半导体产品的无晶圆厂供应商。该公司的收入来自使用其知识产权的许可费、基于其设计的半导体产品的销售以及其他无线硬件、软件或服务。
龙芯
2010年,在中国科学院和北京市政府共同牵头出资支持下,龙芯开始市场化运作,对龙芯处理器研发成果进行产业化。龙芯中科主营业务为处理器及配套芯片的研制、销售及服务,主要产品与服务包括处理器及配套芯片产品与基础软硬件解决方案业务。
海思
深圳市海思半导体有限公司前身为华为集成电路设计中心,1991年启动集成电路设计及研发业务,2004年注册成立实体公司,提供海思芯片对外销售及服务。海思产品覆盖智慧视觉、智慧IoT、智慧媒体、智慧出行、显示交互、手机终端、数据中心及光收发器等多个领域,为行业客户与开发者提供芯片、器件、模组和板级解决方案。
IBM
国际商业机器公司(使用商标IBM),是一家美国跨国科技公司,总部位于纽约州阿蒙克,业务遍及175多个国家。20世纪60年代和70年代,以System/360为代表的IBM大型机是全球占主导地位的计算平台,当时该公司生产了美国80%的计算机和全球70%的计算机。
联发科技
联发科成立于1997年,在全球设有多个办事处,2013年时是全球第四大无晶圆厂芯片设计公司。联发科为无线通信、高清电视、智能手机和平板电脑手持移动设备、导航系统、消费多媒体产品和数字用户线路服务以及光盘驱动器提供芯片。
安全性
CPU安全性是计算机安全的关键领域,其中的漏洞可能引起数据泄露和未授权访问。CPU缓存侧信道攻击,例如CacheOut,展示了通过缓存驱逐可能导致敏感数据泄露的风险。差异模糊测试等技术在识别CPU设计漏洞中至关重要。此外,硬件辅助虚拟化技术面临的安全挑战可能威胁系统安全,如AMD CPU中的远程认证协议问题。
2018年,英特尔、AMD和ARM设计的处理器中发现了两个严重的安全漏洞,分别称为“Meltdown”和“Spectre”。这些漏洞由谷歌Project Zero安全团队与国际学术及行业研究人员共同揭露,几乎影响所有现代计算机设备,包括智能手机、平板电脑和个人电脑,无论其操作系统或供应商。
Meltdown漏洞主要影响1995年后生产的英特尔处理器,但不包括Itanium服务器芯片和2013年前的Atom处理器。该漏洞允许攻击者绕过应用程序与核心内存之间的硬件屏障,可能需要通过改变操作系统的内存处理方式来解决,这可能导致某些任务的性能下降高达30%。Spectre漏洞则更为普遍,影响包括英特尔AMD和ARM设计的大多数现代处理器。它允许攻击者诱使正常应用程序泄露机密信息。
2021年,苏黎世联邦理工学院(ETH 苏黎世)的研究团队揭露了英特尔处理器中软件防护扩展(SGX)的安全漏洞。SGX是英特尔为提升数据安全性而推出的硬件控制机制,设计目标是确保在操作系统遭受攻击时数据依然安全。该漏洞影响了微软谷歌的产品,并在2021年7月通过软件补丁得到修复。
研究团队发现,攻击者可以利用此漏洞从SGX的安全区域中提取数据并执行任意代码。苏黎世联邦理工学院的什维塔-辛德(Shweta Shinde)助理教授与新加坡国立大学(NUS)和中国国防科技大学(NUDT)的研究人员合作,于2021年5月识别出该漏洞,并迅速通报了英特尔和微软。
漏洞“Downfall”(CVE-2022-40982)是由谷歌研究人员发现的一种侧信道攻击英特尔CPU的方法,于2023年8月8日公布。该漏洞允许本地攻击者或恶意软件从目标设备获取潜在的敏感信息,例如密码和加密密钥。这一漏洞影响到了过去十年发布的英特尔酷睿和至强处理器。此外,云环境也可能受到影响,可能通过网页浏览器远程发起攻击。
“Downfall”漏洞对内存优化特性产生影响,并利用了Gather Data Sampling(GDS)和Gather Value Injection(GVI)两种技术。谷歌研究人员创建了一个概念验证(PoC)漏洞利用程序,能够从OpenSSL中窃取加密密钥。漏洞披露之后,多个组织发布了针对Downfall漏洞的公告。
2023年3月的一项研究表明AMD Zen架构CPU存在Rowhammer安全漏洞,该漏洞通过快速切换内存行访问引起位翻转,可能被用于破坏系统安全。ETH Zurich的研究团队开发了ZENHAMMER工具,成功对AMD Zen 2和Zen 3架构CPU实施Rowhammer攻击,在多种DDR4和DDR5设备上触发位翻转,揭示了AMD Zen CPU的潜在风险。研究团队向AMD披露了发现,技术细节和ZENHAMMER源代码已公开,以促进业界分析和缓解措施开发。
CPU与GPU的对比
中央处理器(CPU)与图形处理单元(GPU)是两种不同的计算设备,它们在架构、功能和用途上存在显著差异。CPU和GPU各有所长,它们在现代计算环境中互补使用,以满足不同的计算需求。
发展趋势
硅中间层技术
随着硅中间层制造技术的进步,CPU核心设计出现了新的可能性。这些中间层提高了性能和效率,充当不同组件之间的桥梁,实现更好的连通性和热量管理。利用硅中间层可以集成微流体冷却系统,有效散发CPU产生的热量。单片3D集成技术通过层间通孔实现组件垂直堆叠,带来紧凑和节能的设计。先进封装技术推动了多芯片集成的发展,提升了集成电路的性能和可靠性。硅中间层技术的进步改善了热量管理、连通性和整体效率,塑造了半导体器件的未来。
微架构设计
CPU微架构的持续进步显著受到CPU缓存算法、预取技术和内存管理优化的推动。这些技术对于提升现代处理器的性能和效率发挥着至关重要的作用。高性能“大型”处理器作为CPU微架构发展中的关键部分,旨在提供卓越的处理能力和效率,以满足复杂计算任务和高要求工作负载的需求。而处理器的设计和开发,以及CPU核心技术的整体进步,都依赖于CPU微架构的不断演进。
调度策略
CPU调度策略正迅速发展,研究者提出多种策略和评估方法以提高CPU性能和效率。研究领域包括动态循环算法、节能调度、利用率感知节能算法和异构任务调度。新探索如优先级和循环算法的组合,以及云计算中智能优先级框架的应用,均显示出提升调度性能的潜力。这些研究为CPU核心的效率和性能提供了关键见解。
量子计算
随着计算科学的进展,量子计算与数字科学的结合为CPU核心的进化提供了新机遇。数字量子计算机(DQCs)利用量子比特和逻辑门,为解决复杂问题提供了新途径。量子计算的高精度和速度,特别是在量子模拟和计算方面,预示着计算能力和效率的巨大提升。量子计算的进步还解决了安全性和效率的挑战,对于CPU核心的未来至关重要。其独特能力如量子纠缠和叠加,有望重新定义计算执行方式,显著提高处理和数据能力。总之,量子计算与数字科学的融合为CPU核心的演进带来了转型机遇,并为提升计算能力和推动各领域创新提供了新途径。
封装技术
封装技术在CPU核心发展中至关重要,通过多芯片模块和高带宽存储器(HBM)DRAM等技术,优化了CPU与其他组件的集成。这些技术提升了CPU与系统其他部分的连接性和通信,使得开发更高效、强大的CPU成为可能。封装技术的进步还允许创新,如在不同硅工艺中分割CPU核心,同时保持I/O和内存接口。2022年的研究显示,封装创新可提高性能,同时保留接口优势。总之,封装技术的持续进步不仅促进了CPU与其他组件的集成,还有助于提升CPU的性能、能效和用户满意度。
生产工艺
生产工艺的进步对提升CPU性能和能效至关重要。3纳米生产过程成为新趋势,三星电子等代工厂的3nm工艺量产,预示着CPU性能和能效的显著提升。超越3纳米的新型晶体管架构将进一步提升性能和效率。封装技术的发展,特别是无铅焊点的可靠性,对降低设计复杂性和提高制造效率至关重要。同时,半导体存储技术的进步,如sram位单元的缩放和逻辑工艺的优化,也在推动存储器设计创新,影响CPU性能。新材料和集成技术的应用,正在扩展CMOS技术在微电子系统和设备生产中的应用,有助于创建超高速CPU缓存存储器,进一步提升CPU性能。
参考资料
..2024-06-01
1953: TRANSISTORIZED COMPUTERS EMERGE.computerhistory.2024-04-14
The Central Processing Unit.lumenlearning.2024-06-01
multicore processor.techtarget.2024-06-01
central processing unit.牛津英语词典.2024-06-01
Stored-program computing.haverford.2024-04-14
What Is Computer Performance?.nationalacademies.2024-04-14
The First Generation.computerhistory.2024-05-25
System/360.ibm.2024-04-14
MOS GP computer.acm.2024-06-01
LSI-11, PDP-11/03 user's manual.bitsavers.2024-06-01
Microprocessors: the engines of the digital age.royalsocietypublishing.2024-06-06
详解六大国产CPU处理器.澎湃新闻.2024-04-14
Intel CPU 发展简史(一).电子科技博物馆.2024-05-25
BACKGROUNDER.intel.2024-05-25
【人民日报】国产新一代通用处理器发布.中国科学院科技创新发展中心.2024-02-04
吉林大学远程教育学院—计算机原理及系统结构.吉林大学远程教育学院.2024-06-01
CPU Package Substrates Manufacturer.highfrequencypcb-alcanta.2024-05-25
Specifications.pantheonsite.2024-05-24
MIPS: A microprocessor architecture.ResearchGate.2024-05-24
What is a Microprocessor?.intel.2024-05-24
Dedicated processors.IBM.2024-05-24
digital signal processor.britannica.2024-05-24
Introduction to System-on-Chip.torontomu.2024-05-25
What is a Multicore Processor?.javatpoint.2024-05-25
Multi-core processors - An overview..researchgate.2024-05-25
What is Hyper-Threading?.惠普中国.2024-05-25
What Is Hyper-Threading?.intel.2024-05-24
CPU Virtualization.educba.2024-05-25
Variations in CPU Power Consumption.researchgate.2024-05-25
LIMITED WARRANTY.intel.2024-05-25
CPU的生产过程.新浪科技.2024-02-04
Our Company.amd.2024-06-06
AMD 2023 Annual Report (Form 10-K). U.S. Securities and Exchange Commission.2024-06-06
INTEL CORPORATION.sec.2024-06-06
QUALCOMM Incorporated.sec.2024-06-06
Our Company.qualcomm.2024-06-06
龙芯中科技术股份有限公司.龙芯中科.2024-06-06
公司简介.海思官网.2024-06-06
About IBM.IBM.2024-06-06
IBM.britannica.2024-06-06
全球分布.mediatek.2024-06-06
关于联发科技.mediatek.2024-06-06
CPU Vs. GPU: Overview.phoenixnap.2024-05-24
目录
概述
引言
定义与基本组成
CPU的重要性
历史沿革
早期CPU
晶体管CPU
小型集成CPU
大规模集成CPU
微处理器
主要运作原理
结构和工作
工作原理
运算器
加法器
通用寄存器
输入数据选择电路
输出数据控制电路
控制器
高速缓冲存储器
内部数据总线IDB(Internal Data Bus)
控制总线
输入/输出接口
CPU的物理结构
分类
基于指令集
基于应用领域
基于集成水平
基于封装类型
核心技术
多核心技术
异构集成技术
调度技术
硅中间层技术
封装技术
流水线技术
超线程技术
虚拟化技术
主要性能指标
字长
主频
前端总线频率
高速缓存
制造工艺
核心数
线程数
热设计功率
功耗
超频潜力
生产过程
市场规模
AMD
英特尔(Intel)
高通
龙芯
海思
IBM
联发科技
安全性
CPU与GPU的对比
发展趋势
硅中间层技术
微架构设计
调度策略
量子计算
封装技术
生产工艺
参考资料