中央处理器

来自计算思维百科
跳转至: 导航搜索

中央处理器(Central Processing Unit,简称CPU),又称微处理器。它是微型计算机的核心部分,担负着计算机的运算及控制功能。CPU集成在一块超大规模集成电路芯片上,人们常以它的类型和型号来概括和衡量微机系统的性能。

基本概念

中央处理器(Central Processing Unit,简称CPU),又称微处理器。它是微型计算机的核心部分,担负着计算机的运算及控制功能。CPU集成在一块超大规模集成电路芯片上,人们常以它的类型和型号来概括和衡量微机系统的性能。

CPU的内部结构

从原理来看,CPU的内部结构由控制器、算术逻辑单元和寄存器3大部分组成,分别负责计算机系统指令的执行、数学与逻辑的运算、数据的存储与传送,以及对内对外输入与输出的控制,如图1所示。

                 2.1.2.png


                     图1  CPU的结构及其与内存的关系

算术逻辑单元

算术逻辑单元(Arithmetic Logic Unit,简称ALU)是计算机的运算器,它完成算术运算和逻辑运算两种操作。

逻辑运算是通过比较来完成的,即两个数据进行比较,判断是否等于、小于或大于等。算术运算包括加、减、乘、除等运算,实际上算术逻辑单元使用一个或多个加法器来完成加、减、乘、除等运算。

寄存器

寄存器是微处理器作算术运算和逻辑运算时,用来临时寄存中间数据和地址的存储位置。它们的硬件组成类似于内存的存储单元,只是存取速度比内存的更快,容量更小。寄存器通常放在CPU内部,并由控制器控制。

许多计算机包括专用寄存器和通用寄存器。专用寄存器是计算机用于某一特殊目的的寄存器,例如指令寄存器、地址寄存器。而通用寄存器则是计算机或程序在多种状态下使用的寄存器,例如暂存数据的寄存器。

控制器

控制器是协调和控制出现在中央处理器中的所有操作。控制器并不输入、输出、处理或存储数据,而是启动和控制这些操作的顺序。此外,为了启动在存储器和输入输出设备之间进行数据或指令传送,控制器必须和输入输出设备进行通信。

当计算机执行存放在内存中的用户程序时,控制器按照它们的执行顺序来获取、解释指令,输出命令或信号来指挥系统的其它部件。

CPU的性能指标

CPU的性能可大致上反映出计算机的性能,而充分理解CPU的各项指标,则有助于更清楚地认识CPU的具体性能。

多核与超线程

多核是指单芯片多处理器。多核处理器是在一枚处理器上集成两个或多个完整的运算内核,从而在提高计算机性能的前提下降低芯片的能耗。当在多核处理器上同时运行多线程程序或多个单线程程序时,操作系统会把多个程序的指令分别发送给多个核心,从而使得同时完成多个程序的速度大大加快。如CPU有单核、双核、三核、四核、六核甚至八个核心。

超线程是一种利用特殊的硬件指令,把多线程处理器内部的两个逻辑内核模拟成两个物理芯片,从而使单个处理器就能“享用”线程级并行计算的处理器技术。

多线程技术可以在支持多线程的操作系统和软件上有效地增强处理器在多任务、多线程处理上的处理能力。对于单线程芯片来说,虽然也可以每秒钟处理成千上万条指令,但是在某一时刻,其只能够对一条指令(单个线程)进行处理,但使处理器内部的其他处理单元闲置。而超线程技术则可以使处理器在某一时刻同步并行处理更多指令和数据。超线程是一种可以将CPU内部暂时闲置处理资源充分调动起来的技术,这样就大大提高了CPU的效能。

字长

计算机内部直接用二进制代码表达指令,指令是用0和1组成的一串代码,它们有一定的位数,并分成若干段,各段的编码表示不同的含义。例如,某台计算机字长为32位,即由32个二进制数组成一条指令或其他数据信息。32个0和1可组成各种排列组合,通过线路变成电信号,让计算机执行各种不同的操作。

当前主流的CPU是64位字长的CPU,要想充分发挥64位CPU的性能,还需要相应64位操作系统的支持。

主频、外频和倍频

主频(CPU clock speed)是CPU工作的时钟频率,单位是兆赫兹(MHz)或吉赫兹(GHz)。CPU的工作是周期性的,它不断地执行取指令、执行指令等操作。这些操作需要精确定时,按照精确的节拍工作,因此CPU需要一个时钟电路产生标准节拍,一旦机器加电,时钟便连续不断地发出节拍,就像乐队的指挥一样控制CPU有节奏地工作,这个节拍的频率就是主频。主频是由外频和倍频决定,其计算公式为:主频=外频×倍频。而外频就是系统总线的工作频率,倍频则是指CPU外频与主频相差的倍数。

很多人以为CPU的主频就是CPU的运行速度,实际上这个认识是片面的。CPU的主频表示在CPU内部数字脉冲信号振荡的速度,与CPU实际的运算能力没有直接关系。当然,主频与实际的运算速度有一定的联系,但是目前还没有一个确定的公式能够实现两者之间的数值关系,而且CPU的运算速度还要看CPU的流水线等各方面的性能指标。因此,主频仅仅是CPU性能表现的一个方面,而不代表CPU的整体性能。

缓存

CPU在向内存读取数据或指令时,其本身会有一个短暂的空闲期。为了减少CPU的空闲时间,在CPU和内存之间放置一个称为Cache存储区。Cache的作用是暂存数据和指令,以减少CPU访问内存及硬盘的次数,从而提高CPU的运行效率.

目前,CPU的缓存主要有一级缓存、二级缓存和三级缓存3种类型。

一级缓存(L1 Cache)

一级缓存是CPU第一层高速缓存,分为数据缓存和指令缓存两种。内置的L1高速缓存的容量和结构对CPU的性能影响较大,不过高速缓冲存储器均由静态RAM组成,结构较复杂。在CPU管芯面积不能太大的情况下,L1级高速缓存的容量不可能做得太大。一般L1缓存的容量在32~256KB之间。

二级缓存(L2 Cache)

二级缓存是CPU的第二层高速缓存,分为内部和外部两种芯片。内部的芯片二级缓存运行速度与主频相同,而外部的二级缓存则只有主频的一半。L2高速缓存容量也会影响CPU的性能,原则是越大越好。一般高性能CPU的L2高速缓存可达8MB以上。

三级缓存(L3 Cache)

三级缓存分为两种,早期是外置,现在都是内置。其逻辑位置处于L2 Cache与内存之间,且拥有比L2 Cache还要大的容量,L3缓存的应用可以进一步降低内存延迟,同时提升大数据量计算时处理器的性能。降低内存延迟和提升大数据量计算能力对游戏都很有帮助。

指令集与扩展指令集

指令集是CPU中用来计算和控制计算机系统的一套指令的集合。每类CPU在设计时就规定了一系列与其硬件电路相配合的指令系统。而指令集的先进与否关系到CPU的性能发挥,也是CPU性能体现的一个重要标志。

CPU的指令集从主流的体系结构上分为精简指令集RISC(Reduced Instruction Set Computing)和复杂指令集CISC(Complex Instruction Set Computing),而普通计算机的处理器基本上使用的是复杂指令集。现在RISC指令集也不断地向桌面CPU渗入,相信以后的处理器指令集会慢慢地向RISC靠拢,使得处理器的指令集结构更加完善。

从具体应用上看,如Intel的MMX(MultiMedia Extended)、SSE(Streaming-Single instruction multiple data-Extensions)、SSE2、SEE3、SSE4系列和AMD的3DNow!等都是CPU的扩展指令集,分别增强了CPU的多媒体、图形图像和Internet等的处理能力。其中,MMX包含有57条命令,SSE包含有50条命令,SSE2包含有144条命令,SSE3包含有13条命令。

制造工艺

制造工艺是指在硅材料上生产CPU时内部各元器件的连接线宽度,一般用nm(纳米)表示。线宽数值越小,生产制作工艺越先进,集成的晶体管就越多,CPU内部功耗和发热量就越小。目前CPU的制作工艺主要有180nm、130nm、90nm、65nm、45nm、32nm和22nm等。