计组——中央处理器

中央处理器

中央处理器(CPU)是计算机的中心,主要由运算器和控制器两大部分组成。

在这里插入图片描述

CPU的具体功能包括:

  • 指令控制:完成取指令、分析指令和执行指令的操作,即程序的顺序控制
  • 操作控制:CPU管理并产生由内存取出的每条指令的操作信号,把各种操作信号送往相应的部件,从而控制部件按指令要求进行动作
  • 时间控制:对各种操作加以时间上的控制,为每条指令按时间顺序提供应有的控制信号
  • 数据加工:对数据进行算术和逻辑运算
  • 中断处理:对计算机运行过程中出现的异常情况和特殊请求进行处理

基本结构

在这里插入图片描述

中央处理器(CPU)由运算器和控制器组成。其中,控制器的功能是负责协调并控制计算机各部件执行程序的指令序列,包括取指令、分析指令和执行指令运算器的功能是对数据进行加工

运算器

运算器计算机对数据进行加工处理的中心,接收从控制器送来的命令并执行相应的动作,对数据进行加工和处理,包含:

  • 算术逻辑单元(ALU):进行算术/逻辑运算
  • 暂存寄存器:用于暂存从主存读来的数据(不能存放在通用寄存器中,否则会破坏其原有内容),对应用程序员是透明的
  • 累加寄存器(ACC):一个通用寄存器,用于暂时存放ALU运算的结果信息,可作为加法运算的一个输入端
  • 通用寄存器组:用于存放操作数(包括源操作数、目的操作数及中间结果)和各种地址信息等
  • 程序状态字寄存器(PSW):保留由算术逻辑运算指令或测试指令的结果而建立的各种状态信息,状态信息参与并决定微操作的形成
  • 移位器:对操作数或运算结果进行移位运算
  • 计数器(CT):控制乘除运算的操作步数

控制器

控制器是整个系统的指挥中枢,协调并控制计算机各部件执行程序的指令序列,基本功能包括取指令、分析指令、执行指令,包含:

  • 程序计数器(PC):用于指出下一条指令在主存中的存放地址。CPU根据PC的内容去主存中取指令。因程序中指令(通常)是顺序执行的,所以PC有自增功能。
  • 指令寄存器(IR):用于保存当前正在执行的那条指令。
  • 指令译码器:仅对操作码字段进行译码,向控制器提供特定的操作信号。
  • 存储器地址寄存器(MAR):用于存放要访问的主存单元的地址。
  • 存储器数据寄存器(MDR):用于存放向主存写入的信息或从主存读出的信息。
  • 时序系统:用于产生各种时序信号,它们都由统一时钟(CLOCK)分频得到。
  • 微操作信号发生器:根据IR的内容(指令)、PSW的内容(状态信息)及时序信号,产生控制整个计算机系统所需的各种控制信号,其结构有组合逻辑型和存储逻辑型两种。

CPU内部寄存器大致可分为两类:用户可见的寄存器(通用寄存器组、PSW、PC,可编程)、用户不可见的寄存器(MAR、MDR、IR、暂存寄存器,不可编程)

指令执行过程

在这里插入图片描述

指令周期

CPU从主存中取出并执行一条指令的时间称为指令周期,一个完整的指令周期应包括取指、间址、执行和中断4个周期。指令周期常用若干机器周期(CPU周期)来表示,一个机器周期又包含若干时钟周期(也称节拍、T周期,是CPU操作的最基本单位)。不同指令的指令周期可能不同,每个指令周期内的机器周期数可以不等,每个机器周期内的节拍数也可以不等。

在这里插入图片描述

4个工作周期都有CPU访存操作,只是访存的目的不同。取指周期是为了取指令,间址周期是为了取有效地址,执行周期是为了取操作数,中断周期是为了保存程序断点。

为了区别不同的工作周期,在CPU内设置4个标志触发器FE、IND、EX和INT,分别对应取指、间址、执行和中断周期,1 状态表示有效

取指周期

在这里插入图片描述

取指周期的任务是根据PC中的内容从主存中取出指令代码并存放在IR中,数据流向:

  1. PC①MAR②地址总线③主存
  2. CU发出读命令④控制总线⑤主存
  3. 主存⑥数据总线⑦MDR⑧IR(存放指令)
  4. CU发出控制信号⑨PC内容加1

间址周期

在这里插入图片描述

间址周期的任务是取操作数有效地址,一次间址数据流向:

  1. Ad(IR)(取出IR中存放的指令字的地址字段)①MAR②地址总线③主存
  2. CU发出读命令④控制总线⑤主存
  3. 主存⑥数据总线⑦MDR(存放有效地址)

执行周期

执行周期的任务是取操作数,并根据 IR 中的指令字的操作码和操作数通过ALU操作产生执行结果。不同指令的执行周期操作不同,没有统一的数据流向。

数据流是根据指令要求依次访问的数据序列。

中断周期

在这里插入图片描述

中断周期的任务是处理中断请求,为了能够恢复当前任务,需要保存断点到堆栈,数据流向:

  1. CU控制将SP减1,SP①MAR②地址总线③主存
  2. CU发出写命令④控制总线⑤主存
  3. PC⑥MDR⑦数据总线⑧主存(程序断点存入主存)
  4. CU(中断服务程序的入口地址)⑨PC

CPU在每条指令执行结束前,都要发出中断查询信号,若有中断请求,进入中断周期,响应中断。

执行方案

一个指令周期通常要包括几个执行步骤,每个步骤完成指令的一部分功能,几个依次执行的步骤完成指令的全部功能。出于性能和硬件成本等考虑,可以采用单指令周期、多指令周期、流水线3种不同的方案来安排指令的执行步骤

1、单指令周期

对所有指令都选用相同的执行时间(指令周期)来完成,称为单指令周期方案。指令周期取决于执行时间最长的指令的执行时间,指令之间串行执行,可能会降低整个系统的运行速度。

2、多指令周期

对不同类型的指令选用不同的执行时间(指令周期)来完成,称为多指令周期方案。可选用不同个数的时钟周期来完成不同指令的执行,指令之间串行执行,需要更复杂的硬件设计。

3、流水线方案

通过在每个时钟周期启动一条指令,尽量让多条处在不同的执行步骤中的指令同时运行,称为流水线方案。追求在每个时钟脉冲周期完成一条指令的执行过程(理想情况下),指令之间可以并行执行

数据通路

数据在功能部件之间传送的路径称为数据通路,包括数据通路上流经的部件。数据通路由控制部件控制,其功能是实现CPU内部的运算器与寄存器及寄存器之间的数据交换。数据通路的基本结构主要有CPU内部单总线方式、CPU内部多总线方式、专用数据通路方式三种。

1、CPU内部单总线方式

将所有寄存器的输入端和输出端都连接到一条公共通路上,结构比较简单,但数据传输存在较多的冲突现象,性能较低。

在这里插入图片描述

注意:内部总线是指同一部件,如CPU 内部连接各寄存器及运算部件之间的总线;系统总线是指同一台计算机系统的各部件,如CPU、内存、通道和各类I/O接口间互相连接的总线。

2、CPU内多总线方式

将所有寄存器的输入端和输出端都连接到多条公共通路上,同时在多个总线上传送不同的数据,提高效率。

3、专用数据通路方式

根据指令执行过程中的数据和地址的流动方向安排连接线路,避免使用共享的总线,性能较高,但硬件量大。

在这里插入图片描述

在执行完一个微操作后,CU和撤销相应的控制信号,让总线恢复空闲。

控制器

控制器是计算机系统的指挥中心,它根据指令操作码、指令的执行步骤(微命令序列)和条件信号来形成当前计算机各部件要用到的控制信号。计算机整机各硬件系统在这些控制信号的控制下协同运行,产生预期的执行结果。根据控制器产生微操作控制信号的方式的不同,控制器可分为硬布线控制器和微程序控制器

在这里插入图片描述

每条指令的执行是由控制器发出的一组微操作实现的。

CPU的控制方式:

控制单元控制一条指令执行的过程,实质上是依次执行一个确定的微操作序列的过程。由于不同指令所对应的微操作数及复杂程度不同,因此每条指令和每个微操作所需的执行时间也不同。主要有以下3种控制方式。

1、同步控制方式

所谓同步控制方式,是指系统有一个统一的时钟,所有的控制信号均来自这个统一的时钟信号。通常以最长的微操作序列和最烦琐的微操作作为标准,采取完全统一的、具有相同时间间隔和相同数目的节拍作为机器周期来运行不同的指令。

优点:控制电路简单

缺点:运行速度慢

2、异步控制方式

异步控制方式不存在基准时标信号,各部件按自身固有的速度工作,通过应答方式进行联络。

优点:运行速度快

缺点:控制电路比较复杂

3、联合控制方式

联合控制方式是介于同步、异步之间的一种折中,对各种不同的指令的微操作实行大部分采用同步控制、小部分采用异步控制的办法。

硬布线控制器

硬布线控制器,又称组合逻辑控制器,由复杂的组合逻辑门电路和一些触发器构成,它根据指令的要求、当前的时序及外部和内部的状态,按时间的顺序发送一系列微操作控制信号

基本结构

在这里插入图片描述

每个输出的控制信号对应一个微命令,即对应一个微操作

控制单元CU的输入信号来源:

  • 经指令译码器译码产生的指令信息
  • 时序系统产
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值