中央处理器 CPU

02-计算机硬件 飞快学 1004浏览

当前主流的计算机都是冯•诺依曼架构计算机,遵循“存储程序控制”原理。

CPU基本原理

中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。

冯•诺依曼:提出“存储程序控制”原理。

CPU执行程序过程:程序与数据装入内存-CPU从内存中取出一条指令-分析执行指令-再取出下一条指令-反复如此。

CPU结构

041524146458228

3)CPU结构:记住CPU的结构图。
图中:四个组成部分:运算单元(运算器)、控制单元(控制器)、存储单元(寄存器组)、CACHE。
4)运算器:①算术运算(加、减、乘、除)与逻辑运算(与、或、非)。②由许多个ALU(算术、逻辑部件)组成(这样可以提高运算性能),ALU有多种,如有整数ALU、实数ALU、特殊运算的ALU等。
5)控制器: 指令计数器(放当前正在执行的指令的地址,每执行完一条指令,该计数器的值加上1)、指令寄存器(临时存放当前从内存中取来的指令,即将要进行译码与执行)、指令译码电路(对指令进行译码[看看是加法操作还是减法操作等等],发出各种控制信号)
6)寄存器组:速度最快。临时存放运算数及中间运算的结果。运算的数据:先从内存传送到寄存器,然后通过运算器进行运算。若结果不再继续运算,则最终将结果从寄存器传回到内存中。

[一]CORE 2 结构:
① 超标量结构:由多个执行部件(运算器及相关的寄存器组)组成。这些执行部件可同时执行。
② SIMD:单指令多数据。指一条指令可以处理多对数据。
③ 流水线处理技术:若没有流水线和超标量,则同一个时刻只有一条指令在执行。流水线,将一条指令的执行,分成许多个小的步骤,多条指令同时执行,但它们处于不同的阶段。因此:CPU内部时钟频率很高。
④ 流水线与CPU内部时钟频率关系?流水线级别多,CPU内部时钟可以很高,CPU执行效率高。
⑤ 超标量结构允许多个执行部件同时执行,因而有多条流水线同时进行。
⑥ 指令预取部件:将即将要执行的指令从L2CACHE中预先取出,并通过指令译码,将译码出的微操作代码放在执行跟踪CACHE中。这样以后执行指令时,直接从执行跟踪CACHE中取出微操作直接执行(节省了指令译码的时间,加快了CPU执行的性能)

超线程

线程 CPU中一个指令流(即:取指令、指令译码、执行指令、指令计数器加1.,再重复这样的步骤)

超线程就是一个CPU同时执行两个线程。

超线程带来何种效果?物理上只有一个CPU,但操作系统看到的却是两个CPU,因而同一时间可使用物理CPU中的不同部份。这样提高了操作系统中多任务、执行多线程的能力。

超线程的缺点:达不到两个物理CPU的性能。因为两个线程要共享物理CPU中的核心资源。

怎么办?采用多核心CPU。在一个VLSI中集成多个CPU核心。每一个核心都是超线程(两个线程)。如:2核心4线程。或4核心8线程。

核心结构:每一个核心有自己的寄存器组、L1CACHE、执行部件。核心之间:共享L2CACHE及CPU总线。

指令

指令本质是二进制数,是构成程序的基本单位。程序是指令的序列

一条指令大小:至少一个字节。格式:操作码和操作数地址组成。

什么是操作码?规定每一种操作(如:加、减等操作)的代码。

什么是操作数地址?指令要处理的数据或者数据所在的位置。操作数地址可以省略吗?可以省略。

一条指令的执行有哪几步?取指令(由控制器完成,指令计数器给出指令在内存中的地址,取出的指令临时放在控制器中的指令寄存器中。)、指令译码(由控制器中的译码电路译出指令,发出各种控制信号)、执行指令(由运算器完成,相关的寄存器放有操作数)、指令计数器加1.

指令系统是一个CPU所能执行的全部指令。指令系统与机器语言的关系:机器语言就是指令系统。因此:机器语言程序是硬件直接执行。

不同公司生产的CPU相互兼容吗?通常由于指令系统不相同,因而CPU不兼容。注意:AMD生产的CPU与Intel生产的CPU是兼容的。

同一公司生产的CPU兼容吗?不一定。同一公司生产的同一系列的CPU肯定是兼容的。

什么是向下兼容?由于新的CPU的指令系统是在老的CPU指令系统的基础之上扩充而来的,因而针对老的CPU指令系统写的程序在新的CPU中当然能够得到执行。这就叫新的CPU向下兼容老的CPU(新的向下兼容老的。不要弄反了)。如:Intel CPU 发展(从老到新)8086-80286-80386-80486-Pentium Pentium Pro-Pentium II-Pemtium III -Pemtium 4-Pentium D-CORE2。那么问:CORE2 向下兼容 80286吗?答:向下兼容。

MMX指令是用于处理什么的?用于处理多媒体信息的指令,提高CPU处理多媒体信息的能力。

SSE指令是什么?单指令多数据指令,128位长。用一条指令可处理多对数据,提高了CPU处理效率。

CPU的性能

CPU的性能表现在CPU执行程序的快慢。

计算机系统的性能与CPU的性能有什么关系?主要由CPU性能决定,但其它部件性能也很重要。如问:计算机A与计算机B,其它配置相同,如果计算机A的CPU性能是计算机B的CPU性能的2倍,则计算机A的系统性能是计算机B的系统性能的2倍?答:不是。达不到2倍。1倍多。

影响CPU性能指标的因素有哪些?

① 字长。什么是字长?CPU中整数寄存器与定点运算器的宽度。
如问:若地址线36位,整数寄存器是32位,则CPU的字长是多少?答:32位。字长越长,性能越高。
② 主频(CPU内部时钟频率):主频越高,执行一条指令的时间就越少。
③ CPU总线速度。CPU总线(FSB)频率及数据线宽度。
④ CACHE容量与结构。

λ 基于局部化原理。
λ CACHE是内存,但不与内存一起统一编址。只是由CPU直接访问。
λ CACHE中内容是主存(内存)的部分数据的一份拷贝或映像。

关于CACHE的进一步说明:

⑤指令系统。Intel指令系统新增的指令:MMX-SSE-SSE2SSE3

⑥CPU逻辑结构:多核心、超线程、流水线、超标量结构等。

度量CPU性能的指标
MIPS(百万条定点指令/每秒)、MFLOPS(百万条浮点指令/每秒)、TFLOPS(万亿条浮点指令/每秒)。