1、什么是CPU
CPU是英语“Central Processing Unit/中央处理器”的缩写,指具有运算器和控制器功能的大规模集成电路。CPU一般由逻辑运算单元、控制单元和存储单元组成。
2、CPU发展历史
CPU的起源可以一直追溯到1971年。在那一年,当时还处在起步阶段的Intel公司推出了世界上第一颗微处理器4004。这不但是第一个用于计算器的4位微处理器,也是第一款个人有能力买得起的电脑处理器!
4004含有2300个晶体管,功能相当有限,而且速度还很慢,当时的蓝色巨人IBM以及大部分商业用户对此不屑一顾。但它毕竟是划时代的产品,从此以后,INTEL便与微处理器结下了不解之缘。可以这么说,CPU的历史发展历程一定意义上也就是Intel公司x86系列CPU的发展历程。
1974年,英特尔公司又在8008的基础上研制出了8080处理器、拥有16位地址总线和8位数据总线,包含7个8位寄存器(A,B,C,D,E,F,G,其中BC,DE,HL组合可组成16位数据寄存器),支持16位内存,同时它也包含一些输入输出端口,这是一个相当成功的设计,还有效解决了外部设备在内存寻址能力不足的问题。
1978年,Intel公司再次领导潮流,首次生产出16位的微处理器,并命名为i8086,同时还生产出与之相配合的数学协处理器i8087,这两种芯片使用相互兼容的指令集,但在i8087指令集中增加了一些专门用于对数、指数和三角函数等的数学计算指令。
1979年,英特尔公司又开发出了8088。8086和8088在芯片内部均采用16位数据传输,所以都称为16位微处理器,但8086每周期能传送或接收16位数据,而8088每周期只采用8位。因为最初的大部分设备和芯片是8位的,而8088的外部8位数据传送、接收能与这些设备相兼容。
8086和8088问世后不久,英特尔公司就开始对他们进行改进,他们将更多功能集成在芯片上,这样就诞生了80186和80188。这两款微处理器内部均以16位工作,在外部输入输出上80186采用16位,而80188和8088一样是采用8位工作。
1981年,美国IBM公司将8088芯片用于其研制的PC机中,从而开创了全新的微机时代。也正是从8088开始,个人电脑(PC)的概念开始在全世界范围内发展起来。从8088应用到IBM PC机上开始,个人电脑真正走进了人们的工作和生活之中,它也标志着一个新时代的开始。
1982年,英特尔公司在8086的基础上,研制出了80286微处理器,该微处理器的最大主频为20MHz,内、外部数据传输均为16位,使用24位内存储器的寻址,内存寻址能力为16MB。
8086~80286这个时代是个人电脑起步的时代,当时在国内使用甚至见到过PC机的人很少,它在人们心中是一个神秘的东西。到九十年代初,国内才开始普及计算机。
1985年春天的时候,英特尔公司已经成为了第一流的芯片公司,它决心全力开发新一代的32位核心的CPU—80386。Intel给80386设计了三个技术要点:使用“类286”结构,开发80387微处理器增强浮点运算能力,开发高速缓存解决内存速度瓶颈。
1985年10月17日,英特尔划时代的产品——80386DX正式发布了,其内部包含27.5万个晶体管,时钟频率为12.5MHz,后逐步提高到20MHz、25MHz、33MHz,最后还有少量的40MHz产品。由于32位微处理器的强大运算能力,PC的应用扩展到很多的领域,如商业办公和计算、工程设计和计算、数据中心、个人娱乐。80386使32位CPU成为了PC工业的标准。
1989年,我们大家耳熟能详的80486芯片由英特尔推出。这款经过四年开发和3亿美元资金投入的芯片的伟大之处在于它首次实破了100万个晶体管的界限,集成了120万个晶体管,使用1微米的制造工艺。80486的时钟频率从25MHz逐步提高到33MHz、40MHz、50MHz。
随着芯片技术的不断发展,CPU的频率越来越快,而PC机外部设备受工艺限制,能够承受的工作频率有限,这就阻碍了CPU主频的进一步提高。在这种情况下,出现了CPU倍频技术,该技术使CPU内部工作频率为微处理器外频的2~3倍,486 DX2、486 DX4的名字便是由此而来。
1993年,全面超越486的新一代586 CPU问世,为了摆脱486时代微处理器名称混乱的困扰,英特尔公司把自己的新一代产品命名为Pentium(奔腾)以区别AMD和Cyrix的产品。AMD和Cyrix也分别推出了K5和6x86微处理器来对付芯片巨人,但是由于奔腾微处理器的性能最佳,英特尔逐渐占据了大部分市场。
为了提高电脑在多媒体、3D图形方面的应用能力,许多新指令集应运而生,其中最著名的三种便是英特尔的MMX、SSE和AMD的3D NOW!。 MMX(MultiMedia Extensions,多媒体扩展指令集)是英特尔于1996年发明的一项多媒体指令增强技术,包括57条多媒体指令,这些指令可以一次处理多个数据,MMX技术在软件的配合下,就可以得到更好的性能。
多能奔腾(Pentium MMX)的正式名称就是“带有MMX技术的Pentium”,是在1996年底发布的。从多能奔腾开始,英特尔就对其生产的CPU开始锁倍频了,但是MMX的CPU超外频能力特别强,而且还可以通过提高核心电压来超倍频,所以那个时候超频是一个很时髦的行动。超频这个词语也是从那个时候开始流行的。
3、CPU厂商
Intel公司的最初取为是由摩尔命名的,“Intel”这个字是由“Integrated Electronics(集成/电子)”两个英文单词組合成的,象征新公司的主要业务将在集成电路市场上。Intel是生产X86架构CPU的老大哥,它占有80%多的市场份额,Intel生产的CPU就成了事实上的x86CPU技术规范和标准。
AMD公司(Advanced Micro Devices<高级微型仪器>)超微半导体公司
IBM和Cyrix
IBM是International Business Machines Corporation<公司>(国际机器公司)的缩写,也就是简称。
IBM在服务器芯片上一向占有强势地位,但对于微机芯片却迟迟不能打开市场份额。和Cyrix公司合并后,使其终于拥有了自己的X86芯片生产线,其成品将会日益完善和完备。现在的MII性能也不错,尤其是它的价格很低。
IDT公司
IDT是处理器厂商的后起之秀,但现在还不太成熟。
事实上,idt和cyrix已经被中国台湾的via威盛公司所收购。目前威盛公司的cpu产品主要面向嵌入式设备。
苹果机的CPU厂商
由IBM供货
主要的服务器CPU厂商
主要服务器CPU商包括:SUN,IBM,HP。
中国的CPU厂商
中国一向有不少的芯片厂商,但是在通用PC芯片市场上一直没有什么市场份额。0520就是80年代自己生产的286兼容芯片。现在龙芯等芯片也开始进入通用PC的市场。
4、CPU主要的性能指标有:
对于一个CPU来说,性能是否强大是它能否在市场上生存下去的第一要素,那么CPU的性能是由哪些因素决定的咧?下面就列出影响CPU性能的主要技术指标:
主频
CPU的主频,即CPU内核工作的时钟频率(CPU Clock Speed)。通常所说的某某CPU是多少兆赫的,而这个多少兆赫就是“CPU的主频”。很多人认为CPU的主频就是其运行速度,其实不然。CPU的主频表示在CPU内数字脉冲信号震荡的速度,与CPU实际的运算能力并没有直接关系。主频和实际的运算速度存在一定的关系,但目前还没有一个确定的公式能够定量两者的数值关系,因为CPU的运算速度还要看CPU的流水线的各方面的性能指标(缓存、指令集,CPU的位数等等)。由于主频并不直接代表运算速度,所以在一定情况下,很可能会出现主频较高的CPU实际运算速度较低的现象。比如AMD公司的AthlonXP系列CPU大多都能以较低的主频,达到英特尔公司的Pentium 4系列CPU较高主频的CPU性能,所以AthlonXP系列CPU才以PR值的方式来命名。因此主频仅是CPU性能表现的一个方面,而不代表CPU的整体性能。
CPU的主频不代表CPU的速度,但提高主频对于提高CPU运算速度却是至关重要的。举个例子来说,假设某个CPU在一个时钟周期内执行一条运算指令,那么当CPU运行在100MHz主频时,将比它运行在50MHz主频时速度快一倍。因为100MHz的时钟周期比50MHz的时钟周期占用时间减少了一半,也就是工作在100MHz主频的CPU执行一条运算指令所需时间仅为10ns比工作在50MHz主频时的20ns缩短了一半,自然运算速度也就快了一倍。只不过电脑的整体运行速度不仅取决于CPU运算速度,还与其它各分系统的运行情况有关,只有在提高主频的同时,各分系统运行速度和各分系统之间的数据传输速度都能得到提高后,电脑整体的运行速度才能真正得到提高。
提高CPU工作主频主要受到生产工艺的限制。由于CPU是在半导体硅片上制造的,在硅片上的元件之间需要导线进行联接,由于在高频状态下要求导线越细越短越好,这样才能减小导线分布电容等杂散干扰以保证CPU运算正确。因此制造工艺的限制,是CPU主频发展的最大障碍之一。
前端总线
总线是将信息以一个或多个源部件传送到一个或多个目的部件的一组传输线。通俗的说,就是多个部件间的公共连线,用于在各个部件之间传输信息。人们常常以MHz表示的速度来描述总线频率。总线的种类很多,前端总线的英文名字是Front Side Bus,通常用FSB表示,是将CPU连接到北桥芯片的总线。计算机的前端总线频率是由CPU和北桥芯片共同决定的。
北桥芯片负责联系内存、显卡等数据吞吐量最大的部件,并和南桥芯片连接。CPU就是通过前端总线(FSB)连接到北桥芯片,进而通过北桥芯片和内存、显卡交换数据。前端总线是CPU和外界交换数据的最主要通道,因此前端总线的数据传输能力对计算机整体性能作用很大,如果没足够快的前端总线,再强的CPU也不能明显提高计算机整体速度。数据传输最大带宽取决于所有同时传输的数据的宽度和传输频率,即数据带宽=(总线频率×数据位宽)÷8。目前PC机上所能达到的前端总线频率有266MHz、333MHz、400MHz、533MHz、800MHz几种,前端总线频率越大,代表着CPU与北桥芯片之间的数据传输能力越大,更能充分发挥出CPU的功能。现在的CPU技术发展很快,运算速度提高很快,而足够大的前端总线可以保障有足够的数据供给给CPU,较低的前端总线将无法供给足够的数据给CPU,这样就限制了CPU性能得发挥,成为系统瓶颈。
外频
外频是CPU乃至整个计算机系统的基准频率,单位是MHz(兆赫兹)。在早期的电脑中,内存与主板之间的同步运行的速度等于外频,在这种方式下,可以理解为CPU外频直接与内存相连通,实现两者间的同步运行状态。对于目前的计算机系统来说,两者完全可以不相同,但是外频的意义仍然存在,计算机系统中大多数的频率都是在外频的基础上,乘以一定的倍数来实现,这个倍数可以是大于1的,也可以是小于1的。
说到处理器外频,就要提到与之密切相关的两个概念:倍频与主频,主频就是CPU的时钟频率;倍频即主频与外频之比的倍数。主频、外频、倍频,其关系式:主频=外频×倍频。
倍频
CPU的倍频,全称是倍频系数。CPU的核心工作频率与外频之间存在着一个比值关系,这个比值就是倍频系数,简称倍频。理论上倍频是从1.5一直到无限的,但需要注意的是,倍频是以0.5为一个间隔单位。外频与倍频相乘就是主频,所以其中任何一项提高都可以使CPU的主频上升。
原先并没有倍频概念,CPU的主频和系统总线的速度是一样的,但CPU的速度越来越快,倍频技术也就应允而生。它可使系统总线工作在相对较低的频率上,而CPU速度可以通过倍频来无限提升。那么CPU主频的计算方式变为:主频 = 外频 x 倍频。也就是倍频是指CPU和系统总线之间相差的倍数,当外频不变时,提高倍频,CPU主频也就越高。
外频与前端总线频率的区别:前端总线的速度指的是CPU和北桥芯片间总线的速度,更实质性的表示了CPU和外界数据传输的速度。而外频的概念是建立在数字脉冲信号震荡速度基础之上的,也就是说,100MHz外频特指数字脉冲信号在每秒钟震荡一万万次,它更多的影响了PCI及其他总线的频率。之所以前端总线与外频这两个概念容易混淆,主要的原因是在以前的很长一段时间里(主要是在Pentium 4出现之前和刚出现Pentium 4时),前端总线频率与外频是相同的,因此往往直接称前端总线为外频,最终造成这样的误会。随着计算机技术的发展,人们发现前端总线频率需要高于外频,因此采用了QDR(Quad Date Rate)技术,或者其他类似的技术实现这个目的。这些技术的原理类似于AGP的2X或者4X,它们使得前端总线的频率成为外频的2倍、4倍甚至更高,从此之后前端总线和外频的区别才开始被人们重视起来。
缓存
CPU缓存(Cache Memory)位于CPU与内存之间的临时存储器,它的容量比内存小但交换速度快。在缓存中的数据是内存中的一小部分,但这一小部分是短时间内CPU即将访问的,当CPU调用大量数据时,就可避开内存直接从缓存中调用,从而加快读取速度。由此可见,在CPU中加入缓存是一种高效的解决方案,这样整个内存储器(缓存+内存)就变成了既有缓存的高速度,又有内存的大容量的存储系统了。缓存对CPU的性能影响很大,主要是因为CPU的数据交换顺序和CPU与缓存间的带宽引起的。
最早先的CPU缓存是个整体的,而且容量很低,英特尔公司从Pentium时代开始把缓存进行了分类。当时集成在CPU内核中的缓存已不足以满足CPU的需求,而制造工艺上的限制又不能大幅度提高缓存的容量。因此出现了集成在与CPU同一块电路板上或主板上的缓存,此时就把 CPU内核集成的缓存称为一级缓存,而外部的称为二级缓存。一级缓存中还分数据缓存(Data Cache,D-Cache)和指令缓存(Instruction Cache,I-Cache)。二者分别用来存放数据和执行这些数据的指令,而且两者可以同时被CPU访问,减少了争用Cache所造成的冲突,提高了处理器效能。
核心类型
核心(Die)又称为内核,是CPU最重要的组成部分。CPU中心那块隆起的芯片就是核心,是由单晶硅以一定的生产工艺制造出来的,CPU所有的计算、接受/存储命令、处理数据都由核心执行。各种CPU核心都具有固定的逻辑结构,一级缓存、二级缓存、执行单元、指令级单元和总线接口等逻辑单元都会有科学的布局。
为了便于CPU设计、生产、销售的管理,CPU制造商会对各种CPU核心给出相应的代号,这也就是所谓的CPU核心类型。
不同的CPU(不同系列或同一系列)都会有不同的核心类型(例如Pentium 4的Northwood,Willamette以及K6-2的CXT和K6-2+的ST-50等等),甚至同一种核心都会有不同版本的类型(例如Northwood核心就分为B0和C1等版本),核心版本的变更是为了修正上一版存在的一些错误,并提升一定的性能,而这些变化普通消费者是很少去注意的。一般说来,新的核心类型往往比老的核心类型具有更好的性能。因此,核心类型在某种程度上决定了CPU的工作性能。
制作工艺
通常我们所说的CPU的“制作工艺”指得是在生产CPU过程中,要进行加工各种电路和电子元件,制造导线连接各个元器件。通常其生产的精度以微米(长度单位,1微米等于千分之一毫米)来表示,未来有向纳米(1纳米等于千分之一微米)发展的趋势,精度越高,生产工艺越先进。在同样的材料中可以制造更多的电子元件,连接线也越细,提高CPU的集成度,CPU的功耗也越小。
制造工艺的微米是指IC内电路与电路之间的距离。制造工艺的趋势是向密集度愈高的方向发展。密度愈高的IC电路设计,意味着在同样大小面积的IC中,可以拥有密度更高、功能更复杂的电路设计。微电子技术的发展与进步,主要是靠工艺技术的不断改进,使得器件的特征尺寸不断缩小,从而集成度不断提高,功耗降低,器件性能得到提高。芯片制造工艺在1995年以后,从0.5微米、0.35微米、0.25微米、0.18微米、0.15微米、0.13微米、0.09微米,而0.065微米(65纳米)的制造工艺将是下一代CPU的发展目标。
封装技术
所谓“封装技术”是一种将集成电路用绝缘的塑料或陶瓷材料打包的技术。以CPU为例,我们实际看到的体积和外观并不是真正的CPU内核的大小和面貌,而是CPU内核等元件经过封装后的产品。
封装对于芯片来说是必须的,也是至关重要的。因为芯片必须与外界隔离,以防止空气中的杂质对芯片电路的腐蚀而造成电气性能下降。另一方面,封装后的芯片也更便于安装和运输。由于封装技术的好坏还直接影响到芯片自身性能的发挥和与之连接的PCB(印制电路板)的设计和制造,因此它是至关重要的。封装也可以说是指安装半导体集成电路芯片用的外壳,它不仅起着安放、固定、密封、保护芯片和增强导热性能的作用,而且还是沟通芯片内部世界与外部电路的桥梁——芯片上的接点用导线连接到封装外壳的引脚上,这些引脚又通过印刷电路板上的导线与其他器件建立连接。因此,对于很多集成电路产品而言,封装技术都是非常关键的一环。
超线程技术
超线程技术是在一颗CPU同时执行多个程序而共同分享一颗CPU内的资源,理论上要像两颗CPU一样在同一时间执行两个线程,P4处理器需要多加入一个Logical CPU Pointer(逻辑处理单元)。因此新一代的P4 HT的die的面积比以往的P4增大了5%。而其余部分如ALU(整数运算单元)、FPU(浮点运算单元)、L2 Cache(二级缓存)则保持不变,这些部分是被分享的。
虽然采用超线程技术能同时执行两个线程,但它并不象两个真正的CPU那样,每各CPU都具有独立的资源。当两个线程都同时需要某一个资源时,其中一个要暂时停止,并让出资源,直到这些资源闲置后才能继续。因此超线程的性能并不等于两颗CPU的性能。
需要注意的是,含有超线程技术的CPU需要芯片组、软件支持,才能比较理想的发挥该项技术的优势。
双核心类型
在2005年以前,主频一直是两大处理器巨头Intel和AMD争相追逐的焦点。而且处理器主频也在Intel和AMD的推动下达到了一个又一个的高峰就在处理器主频提升速度的同时,也发现在目前的情况下,单纯主频的提升已经无法为系统整体性能的提升带来明显的好处,并且高主频带来了处理器巨大的发热量,更为不利是Intel和AMD两家在处理器主频提升上已经有些力不从心了。在这种情况下,Intel和AMD都不约而同地将投向了多核心的发展方向在不用进行大规模开发的情况下将现有产品发展成为理论性能更为强大的多核心处理器系统,无疑是相当明智的选择。
双核处理器就基于单个半导体的一个处理器上拥有两个一样功能的处理器核心,即是将两个物理处理器核心整合入一个内核中。事实上,双核架构并不是什么新技术,不过此前双核心处理器一直是服务器的专利,现在已经开始普及之中。
64位技术
这里的64位技术是相对于32位而言的,这个位数指的是CPU GPRs(General-Purpose Registers,通用寄存器)的数据宽度为64位,CPU在单位时间内能一次处理的二进制数的位数。64位指令集就是运行64位数据的指令,也就是说处理器一次可以运行64bit数据。64bit计算主要有两大优点:可以进行更大范围的整数运算;可以支持更大的内存。