CPU工作原理经典.docx

上传人:b****1 文档编号:23141435 上传时间:2023-05-08 格式:DOCX 页数:18 大小:31.96KB
下载 相关 举报
CPU工作原理经典.docx_第1页
第1页 / 共18页
CPU工作原理经典.docx_第2页
第2页 / 共18页
CPU工作原理经典.docx_第3页
第3页 / 共18页
CPU工作原理经典.docx_第4页
第4页 / 共18页
CPU工作原理经典.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

CPU工作原理经典.docx

《CPU工作原理经典.docx》由会员分享,可在线阅读,更多相关《CPU工作原理经典.docx(18页珍藏版)》请在冰豆网上搜索。

CPU工作原理经典.docx

CPU工作原理经典

CPU的原始工作模式

在了解CPU工作原理之前,我们先简单谈谈CPU是如何生产出来的。

CPU是在特别纯净的硅材料上制造的。

一个CPU芯片包含上百万个精巧的晶体管。

人们在一块指甲盖大小的硅片上,用化学的方法蚀刻或光刻出晶体管。

因此,从这个意义上说,CPU正是由晶体管组合而成的。

简单而言,晶体管就是微型电子开关,它们是构建CPU的基石,你可以把一个晶体管当作一个电灯开关,它们有个操作位,分别代表两种状态:

ON(开和OFF(关。

这一开一关就相当于晶体管的连通与断开,而这两种状态正好与二进制中的基础状态“0”和“1”对应!

这样,计算机就具备了处理信息的能力。

但你不要以为,只有简单的“0”和“1”两种状态的晶体管的原理很简单,其实它们的发展是经过科学家们多年的辛苦研究得来的。

在晶体管之前,计算机依靠速度缓慢、低效率的真空电子管和机械开关来处理信息。

后来,科研人员把两个晶体管放置到一个硅晶体中,这样便创作出第一个集成电路,再后来才有了微处理器。

看到这里,你一定想知道,晶体管是如何利用“0”和“1”这两种电子信号来执行指令和处理数据的呢?

其实,所有电子设备都有自己的电路和开关,电子在电路中流动或断开,完全由开关来控制,如果你将开关设置为OFF,电子将停止流动,如果你再将其设置为ON,电子又会继续流动。

晶体管的这种ON与OFF的切换只由电子信号控制,我们可以将晶体管称之为二进制设备。

这样,晶体管的ON状态用“1”来表示,而OFF状态则用“0”来表示,就可以组成最简单的二进制数。

众多晶体管产生的多个“1”与“0”的特殊次序和模式能代表不同的情况,将其定义为字母、数字、颜色和图形。

举个例子,十进位中的1在二进位模式时也是“1”,2在二进位模式时是“10”,3是“11”,4是“100”,5是“101”,6是“110”等等,依此类推,这就组成了计算机工作采用的二进制语言和数据。

成组的晶体管联合起来可以存储数值,也可以进行逻辑运算和数字运算。

加上石英时钟的控制,晶体管组就像一部复杂的机器那样同步地执行它们的功能。

CPU的内部结构

现在我们已经大概知道CPU是负责些什么事情,但是具体由哪些部件负责处理数据和执行程序呢?

1.算术逻辑单元ALU(ArithmeticLogicUnit

ALU是运算器的核心。

它是以全加器为基础,辅之以移位寄存器及相应控制逻辑组合而成的电路,在控制信号的作用下可完成加、减、乘、除四则运算和各种逻辑运算。

就像刚才提到的,这里就相当于工厂中的生产线,负责运算数据。

2.寄存器组RS(RegisterSet或Registers

RS实质上是CPU中暂时存放数据的地方,里面保存着那些等待处理的数据,或已经处理过的数据,CPU访问寄存器所用的时间要比访问内存的时间短。

采用

寄存器,可以减少CPU访问内存的次数,从而提高了CPU的工作速度。

但因为受到芯片面积和集成度所限,寄存器组的容量不可能很大。

寄存器组可分为专用寄存器和通用寄存器。

专用寄存器的作用是固定的,分别寄存相应的数据。

而通用寄存器用途广泛并可由程序员规定其用途。

通用寄存器的数目因微处理器而异。

3.控制单元(ControlUnit

正如工厂的物流分配部门,控制单元是整个CPU的指挥控制中心,由指令寄存器IR(InstructionRegister、指令译码器ID(InstructionDecoder和操作控制器0C(OperationController三个部件组成,对协调整个电脑有序工作极为重要。

它根据用户预先编好的程序,依次从存储器中取出各条指令,放在指令寄存器IR中,通过指令译码(分析确定应该进行什么操作,然后通过操作控制器OC,按确定的时序,向相应的部件发出微操作控制信号。

操作控制器OC中主要包括节拍脉冲发生器、控制矩阵、时钟脉冲发生器、复位电路和启停电路等控制逻辑。

4.总线(Bus

就像工厂中各部位之间的联系渠道,总线实际上是一组导线,是各种公共信号线的集合,用于作为电脑中所有各组成部分传输信息共同使用的“公路”。

直接和CPU相连的总线可称为局部总线。

其中包括:

数据总线DB(DataBus、地址总线AB(AddressBus、控制总线CB(ControlBus。

其中,数据总线用来传输数据信息;地址总线用于传送CPU发出的地址信息;控制总线用来传送控制信号、时序信号和状态信息等。

CPU的工作流程

由晶体管组成的CPU是作为处理数据和执行程序的核心,其英文全称

是:

CentralProcessingUnit,即中央处理器。

首先,CPU的内部结构可以分为控制单元,逻辑运算单元和存储单元(包括内部总线及缓冲器三大部分。

CPU的工作原理就像一个工厂对产品的加工过程:

进入工厂的原料(程序指令,经过物资分配部门(控制单元的调度分配,被送往生产线(逻辑运算单元,生产出成品(处理后的数据后,再存储在仓库(存储单元中,最后等着拿到市场上去卖(交由应用程序使用。

在这个过程中,我们注意到从控制单元开始,CPU就开始了正式的工作,中间的过程是通过逻辑运算单元来进行运算处理,交到存储单元代表工作的结束。

数据与指令在CPU中的运行

刚才已经为大家介绍了CPU的部件及基本原理情况,现在,我们来看看数据是怎样在CPU中运行的。

我们知道,数据从输入设备流经内存,等待CPU的处理,这些将要处理的信息是按字节存储的,也就是以8位二进制数或8比特为1个单元存储,这些信息可以是数据或指令。

数据可以是二进制表示的字符、数字或颜色等等。

而指令告诉CPU对数据执行哪些操作,比如完成加法、减法或移位运算。

我们假设在内存中的数据是最简单的原始数据。

首先,指令指针(InstructionPointer会通知CPU,将要执行的指令放置在内存中的存储位置。

因为内存中的每个存储单元都有编号(称为地址,可以根据这些地址把数据取出,通过地址总线送到控制单元中,指令译码器从指令寄存器IR中拿来指令,翻译成CPU可以执行的形式,然后决定完成该指令需要哪些必要的操作,它将告诉算术逻辑单元(ALU什么时候计算,告诉指令读取器什么时候获取数值,告诉指令译码器什么时候翻译指令等等。

假如数据被送往算术逻辑单元,数据将会执行指令中规定的算术运算和其他各种运算。

当数据处理完毕后,将回到寄存器中,通过不同的指令将数据继续运行或者通过DB总线送到数据缓存器中。

基本上,CPU就是这样去执行读出数据、处理数据和往内存写数据3项基本工作。

但在通常情况下,一条指令可以包含按明确顺序执行的许多操作,CPU的工作就是执行这些指令,完成一条指令后,CPU的控制单元又将告诉指令读取器从内存中读取下一条指令来执行。

这个过程不断快速地重复,快速地执行一条又一条指令,产生你在显示器上所看到的结果。

我们很容易想到,在处理这么多指令和数据的同时,由于数据转移时差和CPU处理时差,肯定会出现混乱处理的情况。

为了保证每个操作准时发生,CPU需要一个时钟,时钟控制着CPU所执行的每一个动作。

时钟就像一个节拍器,它不停地发出脉冲,决定CPU的步调和处理时间,这就是我们所熟悉的CPU的标称速度,也称为主频。

主频数值越高,表明CPU

的工作速度越快。

如何提高CPU工作效率

既然CPU的主要工作是执行指令和处理数据,那么工作效率将成为CPU的最主要内容,因此,各CPU厂商也尽力使CPU处理数据的速度更快。

根据CPU的内部运算结构,一些制造厂商在CPU内增加了另一个算术逻辑单元(ALU,或者是另外再设置一个处理非常大和非常小的数据浮点运算单元(FloatingPointUnit,FPU,这样就大大加快了数据运算的速度。

而在执行效率方面,一些厂商通过流水线方式或以几乎并行工作的方式执行指令的方法来提高指令的执行速度。

刚才我们提到,指令的执行需要许多独立的操作,诸如取指令和译码等。

最初CPU在执行下一条指令之前必须全部执行完上一条指令,而现在则由分布式的电路各自执行操作。

也就是说,当这部分的电路完成了一件工作后,第二件工作立即占据了该电路,这样就大大增加了执行方面的效率。

另外,为了让指令与指令之间的连接更加准确,现在的CPU通常会采用多种预测方式来控制指令更高效率地执行。

CPU的工作原理浅析

一个完整的微型计算机系统包括硬件系统和软件系统两大部分。

计算机硬件是指组成一台计算机的各种物理装置,

它们是由各种实在的器件所组成,是计算机进行工作的物质基础。

计算机硬件系统中最重要的组成部分是中央处理器(CPU。

(一CPU的基本概念和组成

中央处理器简称CPU(CentralProcessingUnit,它是计算机系统的核心,主要包括运算器和控制器两个部件。

如果把计算机比作一个人,那么CPU就是心脏,其重要作用由此可见一斑。

CPU的内部结构可以分为控制单元、逻辑单元和存储单元三大部分,三个部分相互协调,便可以进行分析,判断、运算并控制计算机各部分协调工作。

计算机发生的所有动作都是受CPU控制的。

其中运算器主要完成各种算术运算(如加、减、乘、除和逻辑运算(如逻辑加、逻辑乘和非运算;

而控制器不具有运算功能,它只是读取各种指令,并对指令进行分析,作出相应的控制。

通常,在CPU中还有若干个寄存器,它们可直接参与运算并存放运算的中间结果。

我们常说的CPU都是X86系列及兼容CPU,所谓X86指令集是美国Intel公司为其第一块16位CPU(i8086专门开发的,美国IBM公司1981年推出的世界第一台PC机中的CPU—i8088(i8086简化版使用的也是X86指令,同时电脑中为提高浮点数据处理能力而增加的X87芯片系列数学协处理器则另外使用X87指令,以后就将X86指令集和X87指令集统称为X86指令集。

虽然随着CPU技术的不断发展,Intel陆续研制出更新型的i80386、i80486直到今天的PentiumⅢ系列,但为了保证电脑能继续运行以往开发的各类应用程序以保护和继承丰富的软件资源,Intel公司所生产的所有CPU仍然继续使用X86指令集。

另外除Intel公司之外,AMD和Cyrix等厂家也相继生产出能使用X86

指令集的CPU,由于这些CPU能运行所有的为IntelCPU所开发的各种软件,所以电脑业内人士就将这些CPU列为Intel的CPU兼容产品。

由于IntelX86系列及其兼容CPU都使用X86指令集,就形成了今天庞大的X86系列及兼容CPU阵容。

(二CPU主要技术参数

CPU品质的高低直接决定了一个计算机系统的档次,而CPU的主要技术特性可以反映出CPU的大致性能。

1、位、字节和字长

CPU可以同时处理的二进制数据的位数是其最重要的一个品质标志。

人们通常所说的16位机、32位机就是指该微机中的C

PU可以同时处理16位、32位的二进制数据。

早期有代表性的IBMPC/XT、IBMPC/AT与

286机是16位机,386机和486机是32位机,586机则是64位的高档微机。

CPU按照其处理信息的字长可以分为:

八位微处理器、十六位微处理器、三十二位微处理器以及六十四位微处理器等。

位:

在数字电路和电脑技术中采用二进制,代码只有“0”和“1”,其中无论是“0”或是“1”在CPU中都是一“位”。

字节和字长:

电脑技术中对CPU在单位时间内(同一时间能一次处理的二进制数的位数叫字长。

所以能处理字长为8位数据的CPU通常就叫8位的CPU。

同理32位的CPU就能在单位时间内处理字长为32位的二进制数据。

由于常用的英文字符用8位二进制就可以表示,所以通常就将8位称为一个字节。

字节的长度是不固定的,对于不同的CPU、字长的长度也不一样。

8位的CPU一次只能处理一个宇节,而32位的CPU一次就能处理4个宇节,同理字长为64位的

CPU一次可以处理8个字节。

2、CPU外频

CPU外频也就是常见特性表中所列的CPU总线频率,是由主板为CPU提供的基准时钟频率,而CPU的工作主频则按倍频系数乘以外频而来。

在Pentium时代,

CPU的外频一般是60/66MHz,从PentiumII

350开始,CPU外频提高到1O0MHz。

由于正常情况下CPU总线频率和内存总线频率相同,所以当CPU外频提高后,与内存之间的交换速度也相应得到了提高,对提高电脑整体运行速度影响较大。

3、前端总线(FSB频率

前端总线也就是以前所说的CPU总线,由于在目前的各种主板上前端总线频率与内存总线频率相同,所以也是CPU与内存以及L2

Cache(仅指Socket

7主板之间交换数据的工作时钟。

由于数据传输最大带宽取决所同时传输的数据位宽度和传输频率,即数据带宽=(总线频率(数据宽度/8。

例如Intel公司的PⅡ

333使用66MHz的前端总线,所以它与内存之间的数据交换带宽为

528MB/s=(66×64/8,而其PⅡ

350则使用100MHz的前端总线,所以其数据交换峰值带宽为800MB/s=(100×64/8。

由此可见前端总线速率将影响电脑运行时CPU与内存、(L2

Cache之间的数据交换速度,实际也就影响了电脑的整体运行速度。

因此目前Intel正开始将其P

Ⅲ的前端总线频率从100MHz向133MHz过渡。

AMD公司新推出的K7虽然使用200MHz的前端总线频率,但有资料表明K7

CPU内核与内存之间数据交换时钟仍然是100MHz,主频也是以100MHz为基频倍频的。

4、CPU主频

CPU主频也叫工作频率,是CPU内核(整数和浮点运算器电路的实际运行频率。

在486DX2

CPU之前。

CPU的主频与外频相等。

从486DX2开始,基本上所有的CPU主频都等于“外频乘上倍频系数”了。

CPU的主要技术特征

主频是CPU内核运行时的时钟频率,主频的高低直接影响CPU的运算速度。

我们知道仅Pentium就可以在一个时钟周期内执行两条运算指令,假如主频为100MHz的Penti

um可以在1秒钟内执行2亿条指令,那么主频为200MHz的Pentium每秒钟就能执行4亿条指令,因此CPU主频越高,电脑运行速度就越快。

需要说明的是Cyrix的CPU对主频这项指标是采用PR性能等级参数(PerformanceRat

ing来标称的,表示此时CPU性能相当于Intel某主频CPU的性能。

用PR参数标称的CPU实际运行时钟频率与标称主频并不一致。

例如MⅡ-300的实际运行频率为233MHz(66×3.5,但PR参数主频标为300MH

z,意思就是MⅡ-300相当于Intel的PⅡ-300。

不过事实上也仅是MⅡ-300的BusinessWin

ston指标(整数性能能与PⅡ-300相当而已。

5、L1和L2Cache的容量和速率

L1和L2Cache的容量和工作速率对提高电脑速度起关键作用,尤其是L2Cache对提高运行2D图形处理较多的商业软件速度有显著作用。

设置L2Cache是486时代开始的,目的是弥补L1Cache(一级高速缓存容量的不足,以最大程度地减小主内存对CPU运行造成的延缓。

CPU的L2Cache分芯片内部和外部两种。

设在CPU芯片内的L2Cache运行速度与主频相同,而采用PⅡ方式安装在CPU芯片外部的L2

Cache运行频率一般为主频的二分之一,因此其效率要比芯片内的L2Cache要低,这就是赛扬只有128KB片内Cache但性能却几乎超过同主频P

Ⅱ(有512KB但工作时钟为主频一半的片外L2Cache的重要原因。

(三CPU主要技术术语浅析

1、流水线技术

流水线(pipeline是

InteI首次在486芯片中开始使用的。

流水线的工作方式就象工业生产上的装配流水线。

在CPU中由5~6个不同功能的电路单元组成一条指令处理流水线,然后将一条X86指令分成5~6步后再由这些电路单元分别执行,这样就能实现在一个CPU时钟周期完成一条指令,因此提高CPU的运算速度。

由于486CP

U只有一条流水线,通过流水线中取指令、译码、产生地址、执行指令和数据写回五个电路单元分别同时执行那些已经分成五步的指令,因此实现了

486CPU设计人员预期的在每个时钟周期中完成一条指令的目的(按笔者看法,CPU实际上应该是从第五个时钟周期才达到每周期能完成一条指令的处理速度。

到了Pentium时代、设计人员在CPU中设置了两条具有各自独立电路单元的流水线,因此这样CPU在工作时就可以通过这两条流水线来同时执行两条指令,因此在理论上可以实现在每一个时钟周期中完成两条指令的目的。

2、超流水线和超标量技术

超流水线是指某些CPU内部的流水线超过通常的5~6步以上,例如Pentiumpro的流水线就长达14

步。

将流水线设计的步(级数越多,其完成一条指令的速度越快,因此才能适应工作主频更高的CPU。

超标量(superscalar是指在

CPU中有一条以上的流水线,并且每时钟周期内可以完成一条以上的指令,这种设计就叫超标量技术。

3、乱序执行技术

乱序执行(out-of-orderexecution是指CPU采用了允许将多条指令不按程序规定的顺序分开发送给各相应电路单元处理的技术。

比方说程序某一段有7条指令,此时CPU将根据各单元电路的空闹状态和各指令能否提前执行的具体情况分析后,将能提前执行的指令立即发送给相应电路执行。

当然在各单元不按规定顺序执行完指令后还必须由相应电路再将运算结果重新按原来程序指定的

指令顺序排列后才能返回程序。

这种将各条指令不按顺序拆散后执行的运行方式就叫乱序执行(也有叫错序执行技术。

采用乱序执行技术的目的是为了使CPU

内部电路满负荷运转并相应提高了CP

U的运行程序的速度。

4、分技预溯和推测执行技术

分枝预测(branchprediction和推测执行(speculatlonexecution

是CPU动态执行技术中的主要内容,动态执行是目前CPU主要采用的先进技术之一。

采用分枝预测和动态执行的主要目的是为了提高CPU的运算速度。

推测执行是依托于分枝预测基础上的,在分枝预测程序是否分枝后所进行的处理也就是推测执行。

5、指令特殊扩展技术

自最简单的计算机开始,指令序列便能取得运算对象,并对它们执行计算。

对大多数计算机而言,这些指令同时只能执行一次计算。

如需完成一些并行操作,就要连续执行多次计算。

此类计算机采用的是“单指令单数据”(SISD处理器。

在介绍CPU性能中还经常提到“扩展指令”或“特殊扩展”一说,这都是指该CPU是否具有对X86指令集进行指令扩展而言。

扩展指令中最早出现的是InteI公司自己的“MMX”,其次是AMD公司的“3D

Now!

”,最后是最近的PentiumIII中的“SSE”。

MMX和SSE:

MMX是英语“多媒体指令集”的缩写。

共有57条指令,是Intel公司第一次对自1985年就定型的

X86指令集进行的扩展。

MMX主要用于增强CPU对多媒体信息的处理,提高CPU处理3D图形、视频和音频信息能力。

但由于只对整数运算进行了优化而没有加强浮点方面的运算能力。

所以在3D图形日趋广泛,因特网3D网页应用日趋增多的情况下,MMX已心有余而力不足了。

MMX指令可对整数执行SIMD运算,比如-40、0、1、469

或32766等等;SSE指令则增加了对浮点数的SIMD运算能力,比如

-40.2337,1.4355或87734

3226.012等等。

利用MMX和SSE,一条指令可对2个以上的数据流执行计算。

就前面的例子来说,再也不必每秒执行529000条指令了,只需执行264600条即可。

因为同样的指令可同时对左、右声道发生作用。

显示时,每秒也不需要70778880条指令,只需23592960条,因为红、绿、蓝通道均可用相同的指令控制。

SSE:

SSE是英语“因特网数据流单指令序列扩展/InternetStreamingSIMDExt

ensions”的缩写。

它是InteI公司首次应用于PentiumIII中的。

实际就是原来传闻的MMX2以后来又叫KNI(Katmai

NewInstruction,Katmai实际上也就是现在的PentiumIII。

SSE共有70条指令,不但涵括了原MMX和3D

Now!

指令集中的所有功能,而且特别加强了SIMD浮点处理能力,另外还专门针对目前因特网的日益发展,加强了CPU处理3D网页和其它音、象信息技术处理的能力。

CPU具有特殊扩展指令集后还必须在应用程序的相应支持下才能发挥作用,因此,当目前最先进的Penthm

III450和PentiumII450运行同样没有扩展指令支持的应用程序时,它们之间的速度区别并不大。

SSE除保持原有的MMX指令外,又新增了70条指令,在加快浮点运算的同时,也改善了内存的使用效率,使内存速度显得更快一些。

对游戏性能的改善十分显著,按Intel的说法,SSE对下述几个领域的影响特别明显:

3D几何运算及动画处理;图形处理(如Photoshop;视频编辑/压缩/解压(如MPEG和DVD;语音识别;以及声音压缩和合成等。

3D

NOW!

:

AMD公司开发的多媒体扩展指令集,共有27条指令,针对MMX指令集没有加强浮点处理能力的弱点,重点提高了AMD公司K6系列CPU对3D图形的处理能力,但由于指令有限,该指令集主要应用于3D游戏,而对其他商业图形应用处理支持不足。

(四CPU的生产工艺及产品构架

1、CPU的生产工艺

表明CPU性能的参数中常有“工艺技术”一项,其中有“0.35um”或“0.25um”等。

一般来说“工艺技术”中的数据越小表明CPU生产技术越先进。

目前生产CPU主要采用CMOS技术。

CMOS是英语“互补金属氧化物半导体”的缩写。

采用这种技术生产CPU时过程中采用“光刀”加工各种电路和元器件,并采用金属铝沉淀在硅材料上后用

“光刀”刻成导线联接各元器件。

现在光刻的精度一般用微米(um表示,精度越高表示生产工艺越先进。

因为精度越高则可以在同样体积上的硅材料上生产出更多的元件,所加工出的联接线也越细,这样生产出的CPU工作主频可以做得很高。

正因为如此,在只能使用0.65

um工艺时生产的第一代Pentium

CPU的工作主频只有60/66MHz,在随后生产工艺逐渐发展到0.35um、0.25um时、所以也相应生产出了工作主额高达266MHz的Pentium

MMX和主频高达500MHz的PentiumIICPU。

由于目前科学技术的限制,现在的CPU生产工艺只能达到0.25u

m,因此Intel、AMD、

Cyrix以及其它公司正在向0.18um和铜导线(用金属铜沉淀在硅材料上代替原来的铝技术努力,估计只要生产工艺达到0.18um后生产出主频为l000MHz的CPU就会是很平常的事了。

AMD为了跟Intel继续争夺下个世纪的微处理器发展权,已经跟摩托罗拉(Motorola达成一项长达七年的技术合作协议。

Motorola将把最新开发的铜导线工艺技术(Copper

Interconnect

授权给AMD。

AMD准备在2000年之内,制造高达1000MHz(1GHz的K7微处理器。

CPU将向速度更快、64位结构方向前进。

CPU的制作工艺将更加精细,将会由现在0.25微米向0.18微米过渡,到2000年中大部分CPU厂商都将采用0.18微米工艺,2001年之后,许多厂商都将转向0.13微米的铜制造工艺,制造工艺的提高,味着体积更小,集成度更高,耗电更少。

铜技术的优势非常明显。

主要表现在以下方面:

铜的导电性能优于现在普遍应用的铝,而且铜的电阻小,发热量小,从而

可以保证处理器在更大范围内的可靠性;采用0.13微米以下及铜工艺芯片制造技术将有效的提高芯片的工作频率;能减小现有管芯的

体积。

与传统的铝工艺技术相比,铜工艺制造芯片技术将有效地提高芯片的速度,减小芯片的面积,从发展来看铜工艺将最终

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1