五、中央处理器

总览:
在这里插入图片描述

5.1.2 CPU基本结构

在这里插入图片描述
CPU分为ALU寄存器控制单元CU(图中右下部分)三部分组成,还有一部分中断系统后续补充

左边运算器,右边控制器:
在这里插入图片描述
用户可见/可编程的: 通用寄存器组(上图R0~R3)、程序状态字寄存器PSW、程序计数器PC
对用户透明: MAR、MDR、IR、暂存寄存器

运算器:接收控制器的命令,对数据加工和处理

组成部分:

  1. 算术逻辑单元ALU:算术、逻辑运算
  2. 暂存寄存器:暂存主存读来的数据,对用户透明
  3. 累加寄存器:专用的通用寄存器,暂存ALU的运算结果,也可以作为加法运算的输入端
  4. 通用寄存器组:如AX、BX、CX、DX、SP等。用来存放操作数(源操作数、目的操作数、中间结果)、地址信息等。SP是堆栈指针,指示栈顶的地址。
  5. 程序状态字寄存器PSW:保留指令结果的各种状态信息:溢出标志(OF)、符号标志、零标志、进位标志等。这些位参与并决定微操作的形成
  6. 移位器:进行移位运算,可整合在暂存寄存器
  7. 计数器

控制器:取指令、分析指令、执行指令

组成部分:

  1. 程序计数器PC: 存放下一条指令地址,能自动+1
    PC和MAR位数一样
  2. 指令寄存器IR: 保存当前正在执行的指令
  3. 指令译码器:翻译操作码
  4. 存储器地址寄存器MAR: 保存要访问主存单元的地址
  5. 存储器数据寄存器MDR: 存放主存读过来或要写到主存的数据
  6. 时序系统: 用于产生时序信号
  7. 微操作信号发生器

错题记录:

  1. n位CPU指的是数据总线数是n
    解释:表示CPU一次能处理的数据的位数

  2. 间址周期结束时,MDR中的内容为:操作数地址
    解释:间址周期取操作数的有效地址EA = (A)

  3. 地址译码器是主存等存储器的组成部分,不属于CPU

  4. CPU中通用寄存器的位数取决于:机器字长
    指令寄存器的位数取决于:指令字长
    程序计数器的位数取决于:存储器的容量
    解释:PC的内容为指令在主存中的地址,因此PC的位数和存储器位数相等

  5. 在一条无条件转移指令的指令周期内,PC的值被修改2次
    取值周期结束,PC自动+1。执行周期中,PC被修改为要跳到的地址

  6. 错误:转移指令时,PC的值总被修改为目标地址
    解释:要判断转移是否成功,,失败的话+1

7.设某计算机主存空间4GB,字长32位,按字节编址。采用32位字长指令字格式。若指令按字边界对齐存放 ,则PC和IR的位数至少分别是:
答:PC给出下一条指令在主存中的地址,取决于存储器字数:4GB/32bit=230,也就是30位
IR取决于指令字长32位



5.2 指令执行过程

指令周期:

在这里插入图片描述
冯诺依曼计算机根据指令周期的不同阶段区分存储器中取出的是指令还是数据。取值周期取得指令,执行周期取得数据
控制器可以区分存储单元中是指令还是数据

在这里插入图片描述
1. 取值周期:根据PC内容取出指令放入IR中
在这里插入图片描述
2. 间址周期:根据IR中指令地址码取操作数有效地址
只看前三步即可
在这里插入图片描述
4. 中断周期:保存断点,送中断向量,处理中断请求
在这里插入图片描述
指令执行方案:

  1. 单指令周期(串行):所有指令均采用最长的指令执行时间
  2. 多指令周期(串行):需要几个周期就分配几个
  3. 流水线方案(并行)

错题记录:

  1. 采用DMA方式传递数据时,每传送一个数据就要占用存取周期
    解释:存取周期指存储器进行两次独立操作(读/写)所需的最小时间间隔

  2. 指令总是根据程序计数器从主存中读出

  3. 假定不采用Cache和指令预存技术,且机器处于"开中断"状态,则有:
    因为不采用Cache和指令预存每个指令周期都有取值周期,都需要访问内存一次。
    即使是空操作指令,PC也会自动+1。
    由于是开中断,每条指令执行结束都可能被外部中断打断

  4. 取值操作是自动执行的,控制器不需要得到相应指令

  5. 机器周期通常由存取周期决定

  6. 指令的执行周期完成后会判断是否出现中断请求,只有出现中断请求时才会进入中断周期

  7. 存储器间址通过形式地址访存,寄存器间址通过寄存器访存,操作不同

  8. CPU相应中断的时间是,一条指令执行结束后

  9. 不同长度的指令,取值操作可能不同。比如双字指令、三字指令。

  10. 指令字长等于存储字长的前提下,取值周期等于机器周期。
    指令字长和机器字长的长度没有任何关系,一般是字节或者存储字长的整数倍,如果指令字长是存储字长的2倍,取值周期就是机器周期的2倍



5.3 数据通路的功能和基本结构

数据通路: 数据在功能部件之间传送的路径
数据通路部件: 路径上的部件,如ALU、通用寄存器、状态寄存器、异常和中断处理程序等
数据通路的功能: 实现CPU内部的运算器和寄存器寄存器之间的数据交换

内部总线: 同一部件内部的,例如CPU内部的
系统总线: 同一台计算机系统的各部件

感觉有点像开闸放水
(PC)->BUS 这种是操作流程,也叫微操作
PCout有效,PC内容送总线这种是有效控制信号
在这里插入图片描述

在单总线的CPU中,ALU的一个输入端可与总线相连,另一个输入端通过暂存器与总线相连

CPU的读写控制信号的作用:控制是从存储器读还是向存储器写


错题记录:

  1. 单周期处理器中所有指令周期为一个时钟周期,下列关于单周期处理器错误的是:可以采用单总线数据结构
    解释: 单周期处理器一个时钟只允许一次操作,没法完成指令的所有操作


5.4 控制器功能和工作原理

在这里插入图片描述

在这里插入图片描述



5.5 指令流水线:提高计算机运算速度

指令执行时划分不同阶段,占用不同的资源,就可以使不同指令同时进行

指令流程图:分析影响流水线的因素
时空图:分析流水线的性能

在这里插入图片描述
性能指标:吞吐率TP、加速比S、效率E

超标量技术:
在这里插入图片描述
超流水技术:
在这里插入图片描述

  • 2
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值