执行阶段的数据通路

Download Report

Transcript 执行阶段的数据通路

计算机组成原理第六章
知识点二:数据通路
主讲教师:秦磊华
问题引入
指令在CPU内执行时用到了哪些功能部件?CPU内部结构的
不同如何影响指令执行的过程?
学习建议
系统观:指令执行流程与运算器及控制器内部结构、指
令功能和寻址方式等紧密相关 ;了解指令执行流程,对
合理选择指令,进行程序优化具有重要意义;熟悉指令
执行流程对CPU设计中的故障定位与调试也很有帮助。
构造观:构建指令执行的数据通路 。
1.指令周
期
将指令从取出到执行完成所需要的时间称为指令周期。
1)取指周期
根据PC的值从主存取指令 ;
执行指令的顺序寻址功能 ;
跳跃寻址不可能在取指周期完成。
2)译码/取操作数周期
识别指令类型和寻址方式;
计算有效地址并读取操作数。
3)执行周期
完成指令操作码规定的操作;
向条件状态寄存器中记录相关执行状态;
若程序出现转移,在执行周期内还要决定转移地址。
4)写回周期
将运算结果写到结果寄存器或存储器中。
基于总线结构的计算机往往将指令周期分为取指周期和
执行周期
2.数据通路
1)关于数据通路的基本概念
指令执行过程中,信息在功能部件之间传送的路径或依
次使用过的功能部件的集合 ;
指令周期的不同阶段往往使用不同的功能部件;
部分功能部件在指令周期的不同阶段可能会反复使用 ;
通常根据指令周期建立不同阶段的数据通路。
指令功能
3.影响数据通路建立的因素分
析
不同功能指令使用不同的功能部件;
CPU的内部结构
不同结构CPU中执行指令的流程存在较大差异;
寻址方式
寻址方式影响有效地址计算和操作数获得过程
连接方式
总线方式中只能串行,专用通路方式则可并行。
4.建立数据通路的基本步骤
1)分析CPU的内部结构
找到PC、IR、AR(或MAR)、DR(或MDR)等寄存器;
重点分析PC增量数据通路,一般有下列三种情况:
(a)PC寄存器具有自增功能 :数据通路为PC  PC
(b) CPU内设置专用加法器实现(如Add)PC增量
数据通路为: PC Add PC
(c)利用CPU内部的ALU执行PC增量
数据通路为: PC  ALU PC
2)分析指令功能
正确理解指令功能;
理解不同寻址方式对指令执行流程的影响。
5.基于单总线结构CPU的典型数据通路
5条典型指令及其功能分析
1)取指阶段的数据通
路
取指过程数据通路
PC → MAR → MEM →
MDR → IR
PC增量数据通路
PC → X → ALU →
Z→ PC
2) LOAD R0,6# 执行阶段的数据通路
IRA → MAR → MEM
→ MDR→ R0
3) MOVE R1,10 执行阶段的数据通路
IRA →
R1
4) ADD R0,R1 执行阶段的数据通路
R0 →X→ ALU ;
R1 → ALU → Z;
Z→ R0。
串行!
5) STORE R0, (R2) 执行阶段的数据通
路
R2 → MAR
R0 → MDR → MEM
6) STORE R0, (R2) 执行阶段的数据通
路
R2 → MAR
R0 → MDR → MEM
7) JMP 1000 执行阶段的数据通路
IRA → PC
6.基于专用通路结构CPU中的典型数据通路
1)取指令的数据通路
Add
4
指令存储器
PC
地址
指令
取指令数据通路: PC →指令存储器;
PC增量数据通路: PC → Add → PC。
2)访存类指令数据通路
ALUOP
指
令
存
储
器
R1
R2
W
Din
16
Do1
A
L
U
寄存器堆
MemWrite MemRead
地址
数据 读数据
存储器
写数据
Do2
符号扩展
32
指令存储器 → 寄存器堆中的寄存器/符号扩展(与具体寻
址方式有关) → 数据存储器 → 寄存器堆中的某寄存器。
3)算术逻辑运算指令数据通路
ALUop
指
令
存
储
器
R1
R2
DO1
寄存器堆
W
Din
A
L
U
DO2
IR 寄存器堆  ALU  寄存器
堆
知识点二 回顾
指令周期的划分;
指令周期每个阶段的任务;
数据通路的概念;
特定CPU结构中具体指令的数据通路(总线方
式和专用通路方式结构的CPU)。