计算机组成原理笔记(9)----CPU、指令流水、中断

1 CPU的结构---运算器+控制器

1.1 控制器的功能

指令控制---操作控制---时间控制---处理中断

取指令;分析指令;执行指令,发出各种操作命令;控制程序输入及结果的输出;

总线管理;处理异常情况和特殊请求

1.2 运算器的功能---数据加工

实现算术运算和逻辑运算

1.3 CPU结构框图

 1.4 CPU的寄存器

 1、用户可见寄存器

(1)通用寄存器:存放操作数,可作某种寻址方式所需的专用寄存器

(2)数据寄存器:存放寄存器(满足各种数据类型)两个寄存器拼接存放双倍字长数据

(3)地址寄存器:存放地址,其位数应满足最大的地址范围,用于特殊的寻址方式,段基值,栈指针

(4)条件码寄存器:存放条件码,可作程序分支的依据

2、控制和状态寄存器

 3、控制单元CU和中断系统

 (1)CU---产生全部指令的微操作命令序列

组合逻辑设计---硬连线逻辑;微程序设计---存储逻辑

(2)中断系统

4、ALU

2 指令周期

2.1 指令周期的基本概念

1、指令周期---取出并执行一条指令所需的全部时间

 2、每条指令的指令周期不同

 

 3、具有间接寻址的指令周期

 

 4、带有中断周期的指令周期

 

 5、指令周期的流程---仅仅完成一条指令的流程

 

6、CPU工作周期的标志 

 CPU访存的四种性质:不同周期完成不同工作

 

 2.2 指令周期的数据流

 1、取指周期数据流---IR指令存储器

 

2、间址周期数据流 

 3、执行周期数据流---不同指令的执行周期数据流不同

 4、中断周期数据流

 

 3 指令流水

 3.1 提高机器速度

1、提高访存速度---高速芯片 Cache 多体并行

2、提高I/O和主机之间的传送速度---中断 DMA 通道 I/O处理机 多总线

3、提高运算器速度---高速芯片 改进算法 快速进位链

提高整机处理能力:高速器件;改进系统结构,开发系统的并行性

3.2 系统并行性

1、并行的概念

 2、并行性的等级

 过程级(程序、进程)---粗粒度---软件实现;

指令级(指令之间、指令内部)---细粒度---硬件实现

3.3 指令流水原理

1、指令的串行执行

2、指令的二级流水 

 

 3、影响指令流水效率加倍的因素

 (1)执行时间>取指时间

 

 (2)条件转移指令对指令流水的影响

 必须等上条指令执行结束才能,确定下条指令的地址,造成时间损失

 3.4 影响指令流水线性能的因素

 1、结构相关 不同指令争用同一功能部件产生资源冲突

 解决办法:停顿;指令存储器和数据存储器分开;指令预取技术(适用于访存周期短的情况)

 2、数据相关 不同指令因重叠操作,可能改变操作数的读/写访问顺序

 

 解决办法:后推法;采用旁路技术(计算出来立即转入第二条指令)

 3、控制---条件转移造成

 3.5 流水效率---流水线中个功能段的利用率

 3.6 流水线的多发技术

 1、超标量技术

 (1)每个时钟周期内可并发多条独立指令,

配置多个功能部件

(2)不能调整指令的执行顺序

2、超流水线技术

 在一个时钟周期内再分段(3段);在一个时钟周期内一个功能部件使用多次(3次)

3、超长指令字技术(每次取出很多条指令)

 

 3.7 流水线结构

1、指令流水线结构 

  完成一条指令分6段,

 每段需一个时钟周期

2、运算流水线

  浮点加减运算可分:

 对阶---尾数求和---规格化

 分段原则:每段操作时间尽量一致

 4 中断系统

 4.1 中断因素

(1)人为设置的中断;(2)程序性事故 溢出、操作码不能识别、除法非法

(3)硬件故障;(4)I/O设备;(5)外部事件 用键盘中断现行程序

 4.2 中断请求标记和中断判优逻辑

1、中断请求标记 INTR

2、中断判优逻辑

(1)硬件实现(排队器)

分散在各个中断源的接口电路中;集中在CPU内

 (2)软件实现(程序查询)

 

4.3 中断服务程序入口地址的寻找

 (1)硬件向量法

 (2)软件查询法

 

4.4 中断响应

(1)响应中断的条件---允许中断触发器EINT=1

(2)响应中断的时间---指令执行周期结束时刻由CPU发查询信号

5、中断隐指令---不是指令,硬件自动执行的指令

(1)保护程序断点---断点存于特定地址(0号地址)内;断点进栈

(2)寻找服务程序入口地址

向量地址->PC(硬件向量法);中断识别程序入口地址M->PC(软件查询法)

(3)硬件关中断

 

 6、保护现场和恢复现场

 

 4.5 多重中断

 

 4.6 屏蔽技术

屏蔽触发器MASK,MASK=0(未屏蔽),

 INTR能被置“1” 

 程序断点存入“0”地址的断点保护

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值