【计算机-CPU】CPU结构与功能

1.CPU功能

1.1程序控制:经过执行指令控制程序的执行顺序;html

1.2操做控制:一条指令需若干个操做信号来完成,每条操做信号送往不一样的部件,控制相应部件完成操做。并发

     时间控制:操做信号的出现时间、持续时间以及出现的时间顺序都要严格控制。google

1.3数据处理:CPU经过对数据进行算术运算及逻辑运算等方式进行加工处理,数据加工处理的结果被人们所利用。.net

1.4异常处理:数据处理和中断是CPU的本质功能。翻译

参考:http://www.noobyard.com/article/p-ntuomgue-dm.htmlCPU内部组成结构及指令执行过程htm

2.CPU的组成(CPU核)

参考:http://www.noobyard.com/article/p-vbieafwz-nc.html计算机的指令执行过程分析对象

2.1 控制器(含寄存器)

2.1.1 指令控制器:取指,译指后交给ALU或FPU执行,并造成下一条指令。blog

指令(IR指令寄存器)=操做码(译码器将操做码翻译交给操做控制器)+地址码(送到地址寄存器);内存

参考:http://www.noobyard.com/article/p-swjixefz-kt.html一条指令在cpu中的执行流程get

2.1.2 时序控制器:为每条指令按时间顺序提供控制信号。包括时钟发生器和倍频定义单元。

CPU外频:系统时钟频率;主板上的石英振荡芯片(一般叫时钟发生器芯片)产生的电脉冲信号;

计算机其余部件有各自的时钟频率,都与外频有关,是适应和使用外频,不然没法相互同步;

倍频:之前,外频=主频;后来,系统时钟频率和主频不断提升,但其余部件受工艺影响,不能承受更高系统时钟。如何提升CPU主频,又能兼顾其余部件。内核工做频率(主频)=外频X倍频。

参考:https://wenku.baidu.com/view/0b8b6cda80eb6294dd886ca7.html CPU外频、倍频、主频浅说

2.1.3 总线控制器:控制CPU内外部总线,包括地址总线,数据总线和控制总线等。

2.1.4 中断控制器:控制各类各样的中断请求,并根据优先级高低对中断请求排队,逐个交给CPU处理。

参考:https://wenku.baidu.com/view/0eb06af7f705cc175527096c.html 控制器的做用

CU:分析当前指令所需完成的操做,并发出各类微操做命令序列,用以控制全部被控制对象。

指令译码器控制算,地址译码器控制存(读取和写入)。

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

OC根据指令操做码时序信号,产生各类操做控制信号,以便正确地创建数据通路,从而完成取指令和执行指令的控制。

参考:https://baike.baidu.com/item/%E6%93%8D%E4%BD%9C%E6%8E%A7%E5%88%B6%E5%99%A8/1921725?fr=aladdin 操做控制器

数据的流动是由什么部件控制的呢? 一般把许多数字部件之间传送信息的通路称为“数据通路”。信息从什么地方开始,中间经

过哪一个寄存器或多路开关,最后传到哪一个寄存器,都要加以控制。

2.2 运算器(含寄存器)

 

运算器=算术逻辑单元ALU/浮点运算单元FPU+通用寄存器组(3个寄存器)/专用寄存器(一般是状态寄存器)

通用寄存器组其中ACC为累加器,MQ为乘商寄存器,X为操做数寄存器。这三个寄存器存放不一样类别操做数。

不一样机器的运算器结构是不一样的。运算器可将运算结果从ACC送至存储器中的MDR;而存储器的操做数也能够从它的MDR送至运算器中的ACC、MQ或X。有的机器用MDR取代X寄存器。

2.3 一条指令的执行过程

1.PC存放指令的地址,在控制器的协调下,将地址送到MAR,PC与MAR有一条直接通路;

处理器从PC指向的内存区域中获取指令,PC自动加1的功能,自动造成一条指令的地址。

2.MAR送到地址总线,在控制器的协调下,到这个地址取出指令,结果送到数据总线,再送到到MDR;

3.在控制器的协调下,将MDR中的指令再送到IR;

4.把IR指令中的操做码送到CU控制单元,里面有译码器进行译码而且发出取数的操做命令,再将IR中的地址码送到MAR;

5.在控制器的协调下根据地址在主存中取出数据放在MDR,再把MDR数据送至ACC。

取指周期中从内存读出的信息流是指令流,它流向控制器,而在执行周期中从内存读出的信息流是数据流,由内存流向运算器。

指令和数据以同等地位存放在存储器内,并按地址访问。 指令由操做码和地址码组成,操做码用来表示操做的性质,地址码用来表示操做数所在存储器中的位置。 指令在存储器内按顺序存放。