算术运算、逻辑运算
2.控制器功能 指令控制:取指令、顺序执行操作控制:分析指令、执行指令时间控制:控制程序输入输出中断处理:总线管理、处理异常数据加工二、结构
PC 完成指令控制
CU 完成操作控制、时间控制
ALU 完成数据加工
中断系统完成中断处理
1. CPU的寄存器 (1)用户可见寄存器 通用寄存器:存放操作数,也可作为满足某种寻址方式所需的寄存器。数据寄存器:存放操作数,允许用两个连续寄存器存放双倍字长的值。地址寄存器:存放地址条件代码寄存器:存放条件码(对用户部分透明),做程序分支的依据。(2)控制和状态寄存器 控制寄存器:MAR、MDR、PC(用户可见)、IR状态寄存器:PSW2.控制单元 CU 和中断系统 (1)CU功能:提供完成机器全部指令操作的s微操作命令序列(产生并保证时间先后)
实现方法:组合逻辑设计法(硬件实现)、微程序设计方法(软件实现)
(2)中断系统三、指令周期
CPU 每取出并执行一条指令所需全部时间叫指令周期。
指令操作功能不同,指令周期也不相同。
1.指令周期 基本形式: 无条件转移指令: 加法指令: 乘法指令: 间接寻址的指令: 带有中断的指令: 2.CPU 访存的不同性质 CPU 访存的性质对应指令周期取指令取指周期取地址间址周期存取操作数或结果执行周期保存程序断点中断周期
四、指令流水
为提高系统处理能力,改进系统结构,开发系统并行性。
并行性等级:
粗粒度并行性:作业级、程序级、进程级(软件实现)细粒度并行性:指令之间或指令内部(硬件实现)1.指令流水原理 (1)指令串行执行由于取指令部件和执行机构不同,因此 CPU 执行过程中,总有一个处于空闲状态。
(2)二级流水由于指令取指时间远小于执行时间,且遇到条件转移指令时,下一条指令未知,因此降低了二级流水潜在效率。
(3)多级流水将指令周期细分,实现多级流水,如 6 级流水
将一个指令周期分为 6 个阶段。
2.流水线性能 (1)吞吐率 (2)加速比 (3)效率 3.影响性能的因素 (1)访存冲突不同指令争夺同一功能部件
解决方法:
设置两个独立寄存器分别存放操作数和指令采用指令预取技术(适用于访存周期很短的情况)停顿(2)相关问题 控制相关:由转移指令引起数据相关:不同指令因重叠操作,可能改变其读写顺序4.流水线多发技术 (1)超标量技术在每个时钟周期内,同时并发执行多条独立指令。
(2)超流水线技术一个时钟周期内再分段
(3)超长指令字技术挖掘指令间潜在并行性,将多条指令组合为一条具有多个操作码字段的超长指令。
五、中断系统 1.引起中断的因素 人为设置的中断程序性事故硬件故障I/O 中断请求外部事件(如,用户通过键盘中断进程)2.中断请求标记(INTR)、判优逻辑 3.中断隐指令
功能:
保护程序断点寻找服务程序入口地址硬件关中断4.保护现场、恢复现场 (1)保护现场 保护断点:中断隐指令完成保护寄存器内容:中断服务程序完成(2)恢复现场:中断服务程序完成
本文中图片均为笑点低的台灯教授在中国大学MOOC上的课件截图