中央处理器

中央处理器 (CPU) 是定义计算设备的核心组件,但它不是唯一的组件,它只是大脑。该芯片位于设备内部主电路板(主板或主板)上的特殊座(插槽)中。它与临时存储信息的内存明显不同。它也与图形卡或图形芯片分离,后者可渲染屏幕上显示的所有视频和3D图形。

中央处理器 (英语:Central Processing Unit,缩写:CPU)是计算机的主要设备之一,功能主要是解释计算机指令以及处理计算机软件中的数据。计算机的可编程性主要是指对中央处理器的编程。1970年代以前,中央处理器由多个独立单元构成,后来发展出由集成电路制造的中央处理器,这些高度收缩的组件就是所谓的微处理器,其中分出的中央处理器最为复杂的电路可以做成单一微小功能强大的单元,也就是所谓的核心。

中央处理器广义上指一系列可以执行复杂的计算机程序的逻辑机器。这个空泛的定义很容易地将在“CPU”这个名称被普遍使用之前的早期计算机也包括在内。无论如何,至少从1960年代早期开始,这个名称及其缩写已开始在电子计算机产业中得到广泛应用。尽管与早期相比,“中央处理器”在物理形态、设计制造和具体任务的执行上有了极大的发展,但是其基本的操作原理一直没有改变。

通过在单个计算机芯片上放置数十亿个微型晶体管来构建CPU。这些晶体管允许它进行计算,以运行存储在系统内存中的程序。它们实际上是打开或关闭的微小闸门,因此传达的是零或零,转化为您使用设备所做的一切,无论是观看视频还是写电子邮件。

最早是在1970年代初由Ted Hoff等人在英特尔的帮助下开发的第一个CPU.CPU技术最普遍的进步之一就是使这些晶体管越来越小。几十年来,这导致了CPU速度的提高,通常被称为摩尔定律.早期的中央处理器通常是为大型及特定应用的计算机而定制。但是,这种昂贵的为特定应用定制CPU的方法很大程度上已经让位于开发便宜、标准化、适用于一个或多个目的的处理器类。这个标准化趋势始于由单个晶体管组成的大型机和微机年代,随着集成电路的出现而加速。IC使得更为复杂的中央处理器可以在很小的空间中设计和制造(在微米的数量级)。中央处理器的标准化和小型化都使这一类电子零件在现代生活中的普及程度越来越高。现代处理器出现在包括从汽车、手机到儿童玩具在内的各种物品中。

在现代设备中,台式机或笔记本电脑具有专用的CPU,可为系统执行许多处理功能。相反,移动设备和某些平板电脑使用片上系统(SoC),该芯片包含其CPU和其他组件。英特尔和AMD都提供带有图形芯片和内存的CPU,这意味着它们不仅可以执行标准的CPU功能。

中央处理器发展历史

CPU出现于大规模集成电路时代,处理器架构设计的迭代更新以及集成电路工艺的不断提升促使其不断发展完善。从最初专用于数学计算到广泛应用于通用计算,从4位到8位、16位、32位处理器,最后到64位处理器,从各厂商互不兼容到不同指令集架构规范的出现,CPU 自诞生以来一直在飞速发展。 

CPU发展已经有40多年的历史了。我们通常将其分成六个阶段。 
(1)第一阶段(1971年-1973年)。这是4位和8位低档微处理器时代,代表产品是Intel 4004处理器。 
1971年,Intel生产的4004微处理器将运算器和控制器集成在一个芯片上,标志着CPU的诞生; 1978年,8086处理器的出现奠定了X86指令集架构, 随后8086系列处理器被广泛应用于个人计算机终端、高性能服务器以及云服务器中。 
(2)第二阶段(1974年-1977年)。这是8位中高档微处理器时代,代表产品是Intel 8080。此时指令系统已经比较完善了。 
(3)第三阶段(1978年-1984年)。这是16位微处理器的时代,代表产品是Intel 8086。相对而言已经比较成熟了。 
(4)第四阶段(1985年-1992年)。这是32位微处理器时代,代表产品是Intel 80386。已经可以胜任多任务、多用户的作业。 
1989 年发布的80486处理器实现了5级标量流水线,标志着CPU的初步成熟,也标志着传统处理器发展阶段的结束。 
(5)第五阶段(1993年-2005年)。这是奔腾系列微处理器的时代。 
1995 年11 月,Intel发布了Pentium处理器,该处理器首次采用超标量指令流水结构,引入了指令的乱序执行和分支预测技术,大大提高了处理器的性能, 因此,超标量指令流水线结构一直被后续出现的现代处理器,如AMD(Advanced Micro devices)的锐龙、Intel的酷睿系列等所采用。 
(6)第六阶段(2005年至2021年)。处理器逐渐向更多核心,更高并行度发展。典型的代表有英特尔的酷睿系列处理器和AMD的锐龙系列处理器。 
为了满足操作系统的上层工作需求,现代处理器进一步引入了诸如并行化、多核化、虚拟化以及远程管理系统等功能,不断推动着上层信息系统向前发展。

中央处理器操作原理

CPU的主要运作原理,不论其外观,都是执行储存于被称为程序里的一系列指令。在此讨论的是遵循普遍的冯·诺伊曼结构(von Neumann architecture)设计的设备。程序以一系列数字储存在计算机存储器中。差不多所有的冯·诺伊曼CPU的运作原理可分为四个阶段:提取解码执行写回

第一阶段,提取,从程序内存中检索指令(为数值或一系列数值)。由程序计数器指定程序存储器的位置,程序计数器保存供识别目前程序位置的数值。换言之,程序计数器记录了CPU在目前程序里的踪迹。提取指令之后,PC根据指令式长度增加存储器单元。指令的提取常常必须从相对较慢的存储器查找,导致CPU等候指令的送入。这个问题主要被论及在现代处理器的缓存和流水线架构。

CPU根据从存储器提取到的指令来决定其执行行为。在解码阶段,指令被拆解为有意义的片段。根据CPU的指令集架构(ISA)定义将数值解译为指令[isa]。一部分的指令数值为运算码,其指示要进行哪些运算。其它的数值通常供给指令必要的信息,诸如一个加法运算的运算目标。这样的运算目标也许提供一个常数值(即立即值),或是一个空间的寻址值:寄存器或存储器地址,以寻址模式决定。在旧的设计中,CPU里的指令解码部分是无法改变的硬体设备。不过在众多抽象且复杂的CPU和ISA中,一个微程序时常用来帮助转换指令为各种形态的讯号。这些微程序在已成品的CPU中往往可以重写,方便变更解码指令。

在提取和解码阶段之后,接着进入执行阶段。该阶段中,连接到各种能够进行所需运算的CPU部件。例如,要求一个加法运算,算术逻辑单元将会连接到一组输入和一组输出。输入提供了要相加的数值,而且在输出将含有总和结果。ALU内含电路系统,以于输出端完成简单的普通运算和逻辑运算(比如加法和位操作)。如果加法运算产生一个对该CPU处理而言过大的结果,在标志寄存器里,溢出标志可能会被设置。

最终阶段,写回,以一定格式将执行阶段的结果简单的写回。运算结果经常被写进CPU内部的寄存器,以供随后指令快速访问。在其它案例中,运算结果可能写进速度较慢,如容量较大且较便宜的主存。某些类型的指令会操作程序计数器,而不直接产生结果资料。这些一般称作“跳转”并在程序中带来循环行为、条件性执行(透过条件跳转)和函数。许多指令也会改变标志寄存器的状态比特。这些标志可用来影响程序行为,缘由于它们时常显出各种运算结果。例如,以一个“比较”指令判断两个值的大小,根据比较结果在标志寄存器上设置一个数值。这个标志可借由随后的跳转指令来决定程序动向。

在执行指令并写回结果资料之后,程序计数器的值会递增,反复整个过程,下一个指令周期正常的提取下一个顺序指令。如果完成的是跳转指令,程序计数器将会修改成跳转到的指令地址,且程序继续正常执行。许多复杂的CPU可以一次提取多个指令、解码,并且同时执行。这个部分一般涉及“经典RISC流水线”,那些实际上是在众多使用简单CPU的电子设备中快速普及(常称为微控制器)

中央处理器性能及结构

性能衡量指标

对于CPU而言,影响其性能的指标主要有主频、 CPU的位数、CPU的缓存指令集、CPU核心数和IPC(每周期指令数)。所谓CPU的主频,指的就是时钟频率,它直接的决定了CPU的性能,可以通过超频来提高CPU主频来获得更高性能。而CPU的位数指的就是处理器能够一次性计算的浮点数的位数,通常情况下,CPU的位数越高,CPU 进行运算时候的速度就会变得越快。21世纪20年代后个人电脑使用的CPU一般均为64位,这是因为64位处理器可以处理范围更大的数据并原生支持更高的内存寻址容量,提高了人们的工作效率。而CPU的缓存指令集是存储在CPU内部的,主要指的是能够对CPU的运算进行指导以及优化的硬程序。一般来讲,CPU 的缓存可以分为一级缓存、二级缓存和三级缓存,缓存性能直接影响CPU处理性能。部分特殊职能的CPU可能会配备四级缓存。

CPU结构

通常来讲,CPU的结构可以大致分为运算逻辑部件、寄存器部件和控制部件等。所谓运算逻辑部件,主要能够进行相关的逻辑运算,如:可以执行移位操作以及逻辑操作,除此之外还可以执行定点或浮点算术运算操作以及地址运算和转换等命令,是一种多功能的运算单元。而寄存器部件则是用来暂存指令、数据和地址的。控制部件则是主要用来对指令进行分析并且能够发出相应的控制信号。而计算机的内存又可以分为随机存取存储器(RAM)和只读储存器(ROM)。两者的区别在于,随机存取存储器能够与CPU直接的进行数据的交换,也可以将其称为主存。
对于RAM可以随时的进行读写,而且这个过程的速度很快,因此由于主存所具有的这个优点也往往将其作为操作系统或其他正在运行中的程序的临时数据存储媒介;而只读存储器ROM是一种只能读出事先所存数据的存储器,使用者对于其内部存储的资料没有改变的权限也无法对其进行删除,并且在电源关闭以后资料并不会消失。这种内存也得到了广泛的应用,在那些资料不需要经常变更的电子或电脑系统中得到了很好地应用。 
对于中央处理器来说,可将其看作一个规模较大的集成电路,其主要任务是加工和处理各种数据。传统计算机的储存容量相对较小,其对大规模数据的处理过程中具有一定难度,且处理效果相对较低。随着我国信息技术水平的迅速发展,随之出现了高配置的处理器计算机,将高配置处理器作为控制中心,对提高计算机CPU的结构功能发挥重要作用。中央处理器中的核心部分就是控制器、运算器,其对提高计算机的整体功能起着重要作用,能够实现寄存控制、逻辑运算、信号收发等多项功能的扩散,为提升计算机的性能奠定良好基础。 
集成电路在计算机内起到了调控信号的作用,根据用户操作指令执行不同的指令任务。中央处理器是一块超大规模的集成电路。它由运算器、控制器、寄存器等组成,如下图,关键操作在于对各类数据的加工和处理。 
中央处理器结构
中央处理器结构
传统计算机存储容量较小,面对大规模数据集的操作效率偏低。新一代计算机采用高配置处理器作为控制中心,CPU在结构功能方面有了很大的提升空间。中央处理器以运算器、控制器为主要装置,逐渐扩散为逻辑运算、寄存控制、程序编码、信号收发等多项功能。这些都加快了CPU调控性能的优化升级。
  • 运算器:算术、逻辑(部件:算术逻辑单元、累加器、寄存器组、路径转换器、数据总线)
  • 控制器:复位、使能(部件:计数器、指令寄存器、指令解码器、状态寄存器、时钟发生器、微操作信号发生器)

CPU总线

CPU总线是在计算机系统中最快的总线,同时也是芯片组与主板的核心。人们通常把和CPU直接相连的局部总线叫做CPU总线或者称之为内部总线,将那些和各种通用的扩展槽相接的局部总线叫做系统总线或者是外部总线。在内部结构比较单一的CPU中,往往只设置一组数据传送的总线即CPU内部总线,用来将CPU内部的寄存器和算数逻辑运算部件等连接起来,因此也可以将这一类的总线称之为ALU总线。而部件内的总线,通过使用一组总线将各个芯片连接到一起,因此可以将其称为部件内总线,一般会包含地址线以及数据线这两组线路。系统总线指的是将系统内部的各个组成部分连接在一起的线路,是将系统的整体连接到一起的基础;而系统外的总线,是将计算机和其他的设备连接到一起的基础线路。

中央处理器核心部分

运算器
运算器是指计算机中进行各种算术和逻辑运算操作的部件, 其中算术逻辑单元是中央处理核心的部分。
(1)算术逻辑单元(ALU)。算术逻辑单元是指能实现多组 算术运算与逻辑运算的组合逻辑电路,其是中央处理中的重要组成部分。算术逻辑单元的运算主要是进行二位元算术运算,如加法、减法、乘法。在运算过程中,算术逻辑单元主要是以计算机指令集中执行算术与逻辑操作,通常来说,ALU能够发挥直接读入读出的作用,具体体现在处理器控制器、内存及输入输出设备等方面,输入输出是建立在总线的基础上实施。输入指令包含一 个指令字,其中包括操作码、格式码等。
(2)中间寄存器(IR)。其长度为 128 位,其通过操作数来决定实际长度。IR 在“进栈并取数”指令中发挥重要作用,在执行该指令过程中,将ACC的内容发送于IR,之后将操作数取到ACC,后将IR内容进栈。
(3)运算累加器(ACC)。当前的寄存器一般都是单累加器,其长度为128位。对于ACC来说,可以将它看成可变长的累加器。在叙述指令过程中,ACC长度的表示一般都是将ACS的值作为依据,而ACS长度与 ACC 长度有着直接联系,ACS长度的加倍或减半也可以看作ACC长度加倍或减半。
(4)描述字寄存器(DR)。其主要应用于存放与修改描述字中。DR的长度为64位,为了简化数据结构处理,使用描述字发挥重要作用。
(5)B寄存器。其在指令的修改中发挥重要作用,B 寄存器长度为32位,在修改地址过程中能保存地址修改量,主存地址只能用描述字进行修改。指向数组中的第一个元素就是描述字, 因此,访问数组中的其它元素应当需要用修改量。对于数组成来说,其是由大小一样的数据或者大小相同的元素组成的,且连续存储,常见的访问方式为向量描述字,因为向量描述字中的地址为字节地址,所以,在进行换算过程中,首先应当进行基本地址 的相加。对于换算工作来说,主要是由硬件自动实现,在这个过程中尤其要注意对齐,以免越出数组界限。

控制器

控制器是指按照预定顺序改变主电路或控制电路的接线和 改变电路中电阻值来控制电动机的启动、调速、制动与反向的主令装置。控制器由程序状态寄存器PSR,系统状态寄存器SSR, 程序计数器PC,指令均存器等组成,其作为“决策机构”,主要任务就是发布命令,发挥着整个计算机系统操作的协调与指挥作用。 控制的分类主要包括两种,分别为组合逻辑控制器、微程序控制器,两个部分都有各自的优点与不足。其中组合逻辑控制器结构相对较复杂,但优点是速度较快;微程序控制器设计的结构简单,但在修改一条机器指令功能中,需对微程序的全部重编。

中央处理器CPU分类

指令集的方式

CPU的分类还可以按照指令集的方式将其分为精简指令集计算机(RISC)和复杂指令集计算机(CISC)。RISC指令长度和执行时间恒定,CISC指令长度和执行时间不一定。 RISC 指令的并行的执行程度更好,并且编译器的效率也较高。CISC指令则对不同的任务有着更好的优化,代价是电路复杂且较难提高并行度。典型的CISC指令集有x86微架构,典型的RISC指令集有ARM微架构。但在现代处理器架构中RISC和CISC指令均会在译码环节进行转换,拆分成CPU内部的类RISC指令

嵌入式系统CPU

传统的嵌入式领域所指范畴非常广泛,是处理器除了服务器和PC领域之外的主要应用领域。所谓“嵌入式”是指在很多芯片中,其所包含的处理器就像嵌入在里面不为人知一样。
近年来随着各种新技术新领域的进一步发展,嵌入式领域本身也被发展成了几个不同的子领域而产生了分化。
首先是随着智能手机(Mobile Smart Phone)和手持设备(Mobile Device)的发展,移动(Mobile)领域逐渐发展成了规模匹敌甚至超过PC领域的一个独立领域。由于Mobile领域的处理器需要加载Linux操作系统,同时涉及复杂的软件生态,因此,其具有和PC领域一样对软件生态的严重依赖。
其次是实时(Real Time)嵌入式领域。该领域相对而言没有那么严重的软件依赖性,因此没有形成绝对的垄断,但是由于ARM处理器IP商业推广的成功,目前仍然以ARM的处理器架构占大多数市场份额,其他处理器架构譬如Synopsys ARC等也有不错的市场成绩。
最后是深嵌入式领域。该领域更像前面所指的传统嵌入式领域。该领域的需求量非常之大,但往往注重低功耗、低成本和高能效比,无须加载像Linux这样的大型应用操作系统,软件大多是需要定制的裸机程序或者简单的实时操作系统,因此对软件生态的依赖性相对比较低。

大型机CPU

大型机,或者称大型主机。大型机使用专用的处理器指令集、操作系统和应用软件。大型机一词,最初是指装在非常大的带框铁盒子里的大型计算机系统,以用来同小一些的小型机和微型机有所区别。
减少大型机CPU消耗是个重要工作。节约每个CPU周期,不仅可以延缓硬件升级,还可以降低基于使用规模的软件授权费。
大型机体系结构主要包括以下两点:高度虚拟化,系统资源全部共享。大型机可以整合大量的负载于一体,并实现资源利用率的最大化;异步I/O操作。即当执行I/O操作时CPU将I/O指令交给I/O子系统来完成,CPU自己被释放执行其它指令。因此主机在执行繁重的I/O任务的同时,还可以同时执行其它工作。

CPU控制技术的主要形式

中央处理器强大的数据处理功有效提升了计算机的工作效率,在数据加工操作时,并不仅仅只是一项简单的操作,中央处理器的操作是建立在计算机使用人员下达的指令任务基础上,在执行指令任务过程中,实现用户输入的控制指令与CPU的相对应。随着我国信息技术的快速发展,计算机在人们生活、工作 以及企业办公自动化中得到广泛应用,其作为一种主控设备,为促进电子商务网络的发展起着促进作用,使 CPU 控制性能的升级进程得到很大提高。指令控制、实际控制、操作控制等就是计算机 CPU 技术应用作用表现。
(1)选择控制。集中处理模式的操作,是建立在具体程序指令的基础上实施,以此满足计算机使用者的需求,CPU 在操作过程中可以根据实际情况进行选择,满足用户的数据流程需求。 指令控制技术发挥的重要作用。根据用户的需求来拟定运算方式,使数据指令动作的有序制定得到良好维持。CPU在执行当中,程序各指令的实施是按照顺利完成,只有使其遵循一定顺序,才能保证计算机使用效果。CPU 主要是展开数据集自动化处理,其 是实现集中控制的关键,其核心就是指令控制操作。
(2)插入控制。CPU 对于操作控制信号的产生,主要是通过指令的功能来实现的,通过将指令发给相应部件,达到控制这些部件的目的。实现一条指令功能,主要是通过计算机中的部件执行一序列的操作来完成。较多的小控制元件是构建集中处理模式的关键,目的是为了更好的完成CPU数据处理操作。
(3)时间控制。将时间定时应用于各种操作中,就是所谓的时间控制。在执行某一指令时,应当在规定的时间内完成,CPU的指令是从高速缓冲存储器或存储器中取出,之后再进行指令译码操作,主要是在指令寄存器中实施,在这个过程中,需要注意严格控制程序时间。

CPU和GPU的比较

GPU
GPU即图像处理器,CPU和GPU的工作流程和物理结构大致是类似的,相比于CPU而言,GPU的工作更为单一。在大多数的个人计算机中,GPU仅仅是用来绘制图像的。如果CPU想画一个二维图形,只需要发个指令给GPU,GPU就可以迅速计算出该图形的所有像素,并且在显示器上指定位置画出相应的图形。由于GPU会产生大量的热量,所以通常显卡上都会有独立的散热装置。

设计结构

CPU有强大的算术运算单 元,可以在很少的时钟周期内完成算术计算。同时,有很大的缓存可以保存很多数据在里面。此外,还有复杂的逻辑控制单元,当程序有多个分支的时候, 通过提供分支预测的能力来降低延时。GPU是基于大的吞吐量设计,有很多的算术运算单元和很少的缓存。同时GPU支持大量的线程同时运行,如果他们需要访问同一个数据,缓存会合并这些访问,自然会带来延时的问题。尽管有延时,但是因为其算术运算单元的数量庞大,因此能够达到一个非常大的吞吐量的效果。

使用场景

显然,因为CPU有大量的缓存和复杂的逻辑控制单元,因此它非常擅长逻辑控制、串行的运算。相比较而言,GPU因为有大量的算术运算单元,因此可以同时执行大量的计算工作,它所擅长的是大规模的并发计算, 计算量大但是没有什么技术含量,而且要重复很多次。这样一说,我们利用GPU来提高程序运算速度的方法就显而易见了。使用CPU来做复杂的逻辑控制,用GPU来做简单但是量大的算术运算,就能够大大地提高程序的运行速度。
中央处理器大规模应用在个人电脑上,现今电脑可进入家庭。全因集成电路的发展,令PC在大小、性能以及价位等多个方面均有长足的进步。现今中央处理器价钱平宜,用户可自行组装个人电脑。主板等主要电脑组件,均配合中央处理器设计。不同类型的中央处理器安装到主板上不同类型的CPU插槽中(如英特尔的LGA 1151、AMD的Socket AM4),令中央处理器变得更省电,温度更低。大多数IBM PC兼容机(Pentium以后被称为“标准PC”(Standard PC))使用x86架构的处理器,他们主要由英特尔和超微两家公司生产,此外威盛电子也有参与中央处理器的生产。但与IBM PC兼容机不同,在2006年之前苹果电脑所使用的处理器一直是IBM PowerPC RISC,之后的苹果电脑转而采用英特尔的处理器,以及EFI固件。可见中央处理器在现代电脑的重要地位。

中央处理器生产公司

以下公司曾经或正在生产中央处理器;包含已经倒闭、退出市场或被并购的公司。

  • AMD(超微)
  • Andes (晶心科技)
  • ARM(安谋)
  • Apple(苹果)
  • Broadcom Limited(博通)
  • Cirrus Logic(凌云逻辑)
  • Cyrix(赛瑞克斯)
  • 龙芯(中国科学院)
  • DEC(迪吉多)
  • Fairchild(仙童)
  • Fujitsu(富士通)
  • Harris(哈瑞斯)
  • Hewlett Packard(惠普)
  • Hitachi(日立),见Renesas(瑞萨)
  • HUAWEI (华为)
  • IBM(国际商业机器)
  • IDT
  • Intel(英特尔
  • Intersil
  • Maxwell(麦克斯韦)
  • MHS
  • Microsystems International
  • MIPS Technologies(美普思科技)
  • Mitsubishi(三菱),见Renesas(瑞萨)
  • MOS Technology
  • Motorola (摩托罗拉)
  • MTK(联发科)
  • NS(国家半导体)
  • NEC(日本电气),见Renesas(瑞萨)
  • NexGen
  • OKI(冲电气)
  • OPTi
  • Philips(飞利浦)
  • Qualcomm(高通)
  • RCA(美国无线电)
  • Renesas(瑞萨)
  • Rise
  • Rockwell(洛克威尔)
  • Samsung (三星)
  • SGS,见ST(意法半导体)
  • Sharp
  • ST(意法半导体)
  • Siemens(西门子)
  • Synertek
  • Sun(昇阳)
  • Thompson(托马森)
  • Thomson(汤姆逊半导体),见ST(意法半导体)
  • TSMC(台积电
  • TI(德克萨斯仪器)
  • Toshiba(东芝)
  • Transmeta(全美达)
  • UMC(联电)
  • VIA(威盛)
  • Western Design Center(西部设计中心)
  • Western Electric(西部电气)
  • ZiLOG

Entires个相关