第五章 标量流水技术1

合集下载

标准流水线测测试试题

标准流水线测测试试题
★★
2.请写出2种数据相关方式,并举例说明分别在什么情况下发生(采用设计程序段的方式来说明)
答:
⑴写读相关:
例如程序段R0=R1×R4; R2=R0×R3若第二条指令在第一条指令前执行则最终的结果与正确结果不同,此时发生写读相关
⑵读写相关
例如程序段R2=R0×R3; R3=R4-1若第二条指令在第一条指令前执行则最终的结果与正确结果不同,此时发生读写数据相关
A. 2.4
B. 2.46
C. 2.67
D. 2.75
答案:B
★★
16.一条4个功能段的加-乘静态流水线,四个功能段如下所示,计算 ,最少需要经过多少时间,假设运算的结果有专门的输出通路连接到输入端。并且只有当一个流水线排空后流水线才可以发生另一种运算。
(1)取指
(2)译码、取数
(3)运算
(4)写结果
A. 流水线设备
B. 上海流水线
C. 无锡流水线
D. 杭州流水线
答案B
★★
3.假设一条指令的执行过程可以分为“取指令”、“分析”和“执行”三段,每一段的执行时间均为 ,连续执行n条指令所需要花费的最短时间约为(假设仅有“取指令”和“分析”可重叠并假设n足够大):
A.
B.
C.
D.
答案B
★★
4.假设一条指令的执行过程可以分为“取指令”、“分析”和“执行”三段,每一段的执行时间分别为 、 和 ,连续执行n条指令所需要花费的最短时间约为(假设仅有“取指令”和“执行”可重叠并假设n足够大):
超标量处理机一般具有多于一条的流水线,一台m度的超标量处理机可同时发射m条指令,指令的发射等待时间为1个时钟,指令的并行度为m。
超流水线处理机一般具有一条k段的超流水线,一台n度的超流水处理机可以同时发射一条指令,指令的发射等待时间为1/n个时钟周期,每个时钟周期共发射n条指令。指令的并行度为n。

流水线技术-标量流水部分(ppt 179页)

流水线技术-标量流水部分(ppt 179页)

访存
写回
s4
s5
22.10.2019
13
流水处理的时空图
22.10.2019
14
流水处理机的基本结构
22.10.2019
15
• 如果每个流水段的延迟时间(通过时间)均为Δts,锁 定时间为Δtl,则每功能段的处理时间Δti为:
• Δti= Δts+Δtl
• 流水处理机的最高工作频率为:
1
ts tl
i2
22.10.2019
7
执行时间不等时的一次重叠工作方式
分析k
执行k 分析k+1
执行k+1 分析k+2 执行k+2
分析k+3
执行k+3
22.10.2019
8
3. 先行控制方式
• 先行控制方式的基本思想: • 通过设置先行读数栈,先行操作栈,后行写数
栈等,使分析部件和执行部件能够分别连续 不断地分析和执行指令。
• 输出端的任务流出与输入端的任务流入顺序不完 全相同。
• 在乱序流动流水线中,当某任务阻塞时,后面的 任务可绕过它继续流动。
22.10.2019
30
6. Pentium的流水技术
• 在Pentium CPU内部有两个ALU,分别对应两条流水线U和V (80486只有一条流水线),U流水线执行整数和浮点数指 令;V流水线执行整数指令,以及交换寄存器的内容。所以, Pentium能在每个时钟周期内执行两条整数运算指令,或在 每个时钟周期内执行一条浮点数运算指令。
• 设各阶段周期均为t0,则执行n条指令共需
• T=nt0+2t0=(n+2)t0
• 重叠方式缩短了程序的执行时间,提高了功能部件的 利用率,但需增加硬件支持。

【精品】向量流水技术(可编辑

【精品】向量流水技术(可编辑
深度。因为这是获取第一个流水结果所需的时间。
• ⑵ 向量功能部件接收一个操作数的频率 • 流水线的启动率主要取决于相应的向量功能部件
接收一个操作数的频率。当流水线处于充分流水 状态时,就能在每个时钟周期开始时立即对一个 新操作数进行运算,从而可使启动率达到1。
22.12.2021
17
3.6.2 向量操作长度控制和向量访问步长
22.12.2021
5
向量处理机的典型结构图
22.12.2021
8
• 例:一个典型向量求解问题:
• Y=a×X+Y
• 其中X和Y为向量,初始值存放在存储 器中,a为标量。
• 采用双精度运算时的算法:a乘X后再 加Y。
22.12.2021
9
• 若用标量机运算,需要用标量指令对向 量中的每个元素进行一次乘、加和存储 操作,并且为了实现循环操作,每次必 须要指明对X和Y中元素位置的下标变 量进行增量,并使操作次数每次减1, 以判别循环是否结束。
• 例如求解单精度向量循环SAXPY的代 码段为:
• for (i=0;i<n;i++) • Y[i]=a*X[i]+Y[i];
22.12.2021
19
• 可见向量操作长度依赖于n值,而这个n 值通常在编译时无法知道,往往要在运 行时才可确定,而且这个长度也可能是 过程的参数,因此在执行时很易改变。
向量流水技术
• 向量处理机是具有向量数据表示和向量指令 系统的处理机。
• 向量处理机是解决数值计算问题的一种高性 能计算机。
• 向量处理机属大型或巨型机,也可以用微机 加一台向量协处理器组成。
• 向量处理机一般都采用流水线结构,通常有 多条并行工作的流水线。

标量处理机

标量处理机
第五章 标量处理机
1.标量处理机:只有标量数据表示和标量指令系统的处
理机称为标量处理机。标量处理机是一种最通用,也是 使用最普遍的处理机。
2.标量处理机中提高指令执行速度的主要途径有:
①提高主频;②缩短CPI——设计更好的算法和功 能部件;③指令级并行——主要方法,又可分为:
a.流水线技术和超流水线技术;
2.主存操作数相关 例如:k: add [0001],ax k+1: mov bx, [0001]
2021/8/10
第五章 标量处理机
第8 页
5.1 先行控制技术
在现代计算机中,中间结果一般写入寄存器,所以该类 相关发生不多。 解决方法:推后分析法。
2021/8/10
第五章 标量处理机
第9 页
5.1 先行控制技术
1.采用先行控制技术的处理机结构
2021/8/10
第五章 标量处理机
第4 页
5.1 先行控制技术
2.四个先行缓冲栈 (1) 先行指令缓冲栈——缓冲主存和指令分析器 (2) 先行操作栈——存放经过指令分析器预处理后的指
令。这种预处理内容很多。
2021/8/10
第五章 标量处理机
第5 页
5.1 先行控制技术
2021/8/10
第五章 标量处理机
第15 页
5.1 先行控制技术
对于条件转移,相关最严重的情况发生在条件码是 由上一条指令产生的。
下面是条件转移对程序执行速度影响的分析:
① 如果转移不成功——运算器等待一个时钟周期 ② 如果转移成功
如果L在先行指令缓冲栈中,则条件转移对程序执行的 影响是:
a.作废k+2到L-1之间的所有指令; b.运算器等待一个时钟周期。

计算机系统结构清华大学出版社第5章

计算机系统结构清华大学出版社第5章

取指令 k
分析 k 取指令 k+1
执行 k 分析 k+1 取指令 k+2
执行 k+1 分析 k+2
执行 k+2
二次重叠执行方式
2020/2/6
8
先行控制方式的原理
1.采用二次重叠执行方式必须解决两个问题:
(1)有独立的取指令部件、指令分析部件和指令执行部件 把一个集中的指令控制器,分解成三个独立的控制器: 存储控制器、指令控制器、运算控制器。
DI

L1 (t 2

t2
t1)

9 (4 1) 4

7
2020/2/6
27
缓冲深度的设计方法(续)
3.先行指令缓冲栈的工作时间关系
工作周期
1 2 3 4 5 6 7 8 9 10
指令分析器的指令序列 k+1 k+2 k+3 K+4 K+5 K+6 K+7 K+8 k+9 空
2020/2/6
23
缓冲深度的设计方法
以静态分析为主,通过模拟来确定缓冲深度。 1.先行指令缓冲栈的设计
考虑两种极端情况:假设缓冲深度为DI (1)先行指令缓冲栈已经充满
指令流出的速度最快,例如连续分析RR型指令,设这种指令序列的最 大长度为L1,平均分析一条这种指令的时间为t1。
指令流入的速度最慢,设平均取一条指令的时间为t2。从主存储器中取 到先行指令缓冲栈中的指令条数是L1-DI条。
执行 k+1 分析 k+2
执行 k+2 分析 k+3
执行 k+3
2020/2/6

教学大纲-东南大学计算机科学与工程学院

教学大纲-东南大学计算机科学与工程学院
计算机系统结构(张晨曦主编)
教学参考书
计算机系统结构(陆鑫达等编)
计算机系统结构(郑纬民等编)
课程的地位、作用及任务
随着计算机硬件、软件技术的不断发展,怎样合理地分配计算机软、硬件功能,最大限度地开发计算机的并行性,达到最佳性能/价格,是计算机系统设计人员最关心的课题。对计算机专业本科生而言,不仅要掌握计算机的软、硬件系统组成及工作原理,具有开发与应用技能;而且必须进一步掌握计算机系统设计的基本原理和方法。《计算机系统结构》正是这样一门面向计算机系统分析与设计的课程。
教学大纲
课程名称计算机系统结构
课程负责人任国林
学时48
学分3
开课院系计算机科学与工程系
制订日期1999年
东南大学
课程基本情况
课程名称
计算机系统结构
课程编号
09406
先修要求
计算机组成原理、接口与通信、操作系统、编译原理
授课对象
计算机专业本科
讲课学时
48学时
实验学时
8学时(课程设计)
上机学时
教材名称
及主编姓名
3.虚拟存储器
以Pentium为例,掌握虚拟存储器的结构与实现技术。
第四章标量流水技术
1.标量流水工作原理
介绍重叠、先行控制到流水线的发展,掌握标量流水工作原理、分类原则、性能指标及其分析、评价方法。
2.流水操作中的主要障碍
掌握流水操作中的几种相关产生原因及其解决方法,介绍Pentium系列处理器全局相关的先进处理方法—动态预测转移技术。
对学生能力培养的要求
1.掌握计算机系统结构的基本概念、组成部分及设计原则。
2.掌握计算机系统结构各组成部分的分析、设计原则和方法。

高等计算机系统结构课程大纲(精)

高等计算机系统结构课程大纲(精)

高等计算机系统结构课程大纲通过本课程学习,能够比较全面地掌握计算机系统的基本概念、基本原理、基本结构和基本分析方法,并建立起计算机系统的完整概念。

第一章计算机系统结构的基本概念1.计算机系统结构,计算机组成和计算机实现是三个不同的概念。

2.计算机系统结构的分类3.计算机系统设计的定量原理4.访问的局部性原理。

5.系统结构的评价标准第二章.指令系统1. 指令系统是计算机系统中软件与硬件的接口。

2. 数据表示3.寻址方式4.指令格式的优化设计5.指令系统的功能设计6.复杂指令系统计算机7.精简指令系统计算机第三章.存储系统1.提高存储器性能的主要方法有层次存储器、并行存储器、缓冲技术、先行控制技术等。

2.存储系统的主要性能参数:3.块/页的定位问题;替换问题;一致性问题。

第四章.输入输出系统1.磁盘存储器的技术指标。

2.输入输出系统,输入输出系统的异步性、实时性和设备无关性。

3. 程序控制输入输出方式、直接存储器访问方式(DMA)和中断输入输出方式。

4.字节多路通道、选择通道和数组多路通道。

5.输入输出处理机第五章.标量处理机与流水线1.先行控制技术(look-ahead)。

2.流水线的原理、特点及其分类。

3.流水线的性能分析。

第六章.向量处理机1.向量处理的方式:横向处理方式:向量计算是按行的方式从左至右横向进行;纵向处理方式:向量计算是按列的方式自上而下纵向进行;纵横处理方式:横向处理和纵向处理相结合的方式.2. 两种向量处理机结构:存储器—存储器结构;寄存器—寄存器结构。

3.提高向量处理机性能的常用技术:链接技术;向量循环或分段开采技术;向量递归技术;4.向量指令的处理时间第七章.互连网络1.互连网络基本概念2.互连函数:为了反映不同互连网络的连接特性,每种互连网络可用一组互连函数来描述.3.互连网络的特性:网络规模;结点度;距离;网络直径;等分宽度;结点间线长对称性;网络的传输性能特性4.互连网络分类:静态互连网络;动态互连网络5.消息传递机制:线路交换;存储转发寻径;虚拟直通;虫蚀寻径.第八章.并行处理机和多处理机1.并行处理机模型2.并行处理机基本结构:分布式存储器结构;共享存储器结构3.多处理机结构的主要特点.4.种多处理机基本结构:共享存储器结构和本地存储器结构。

计算机组成原理题库第五章

计算机组成原理题库第五章

第五章题库1 微程序控制器中,机器指令与微指令的关系是______。

A. 每一条机器指令由一条微指令来执行B. 一段机器指令组成的程序可由一条微指令执行C. 一条微指令由若干条机器指令组成D. 每一条机器指令由一段用微指令编成的微程序来解释执行2 在下面描述的流水CPU基本概念中,正确的表述是()。

A.流水CPU一定是多媒体CPUB.流水CPU一定是RISC机器C.流水CPU是以空间并行性为原理构成的处理器。

D.流水CPU是一种非常经济而实用的以时间并行技术为原理构造的处理器。

3 在微程序控制的计算机中,若要修改指令系统,只要()。

A. 改变时序控制方式B. 改变微指令格式C. 增加微命令个数D. 改变控制存储器的内容4 下面描述的RISC机器基本概念中正确的句子是______。

A.RISC机器不一定是流水CPU B.RISC机器一定是流水CPUC.RISC机器有复杂的指令系统D.CPU配置很少的通用寄存器5 在微指令的控制方式中,若微操作命令的个数已经确定,则______。

A.直接控制方式和编码控制方式不影响微指令的长度;B.直接控制方式的微指令字长比编码控制方式的微指令字长短;C.使用编码控制方式的微操作命令的条件是相容微操作。

D.编码控制方式的微指令字长比直接控制方式的微指令字长短;6 中央处理机是指___________A. 运算器B. 控制器C. 运算器、控制器、CacheD. 运算器、控制器、主存7 CPU周期是指_______A CPU从主存中取出一条指令的时间B CPU执行一条指令的时间C CPU从主存取出一条指令加上执行这条指令的时间D 时钟周期时间8 指令周期是指_______A CPU从主存中取出一条指令的时间B CPU执行一条指令的时间C CPU从主存取出一条指令加上执行这条指令的时间D 时钟周期时间9 计算机操作的最小时间单位是________A 时钟周期B 指令周期C CPU周期D 微指令周期10 计算机系统中的控制器、运算器及主存储器一起组成()A CPUB 主机C ALUD 硬件系统11 主机中能对指令进行译码的部件是()A ALUB 运算器C 控制器D 存储器12 CPU主频为1.2GHz的计算机与CPU主频为1.0GHz的计算机相比,()A 前者运算能力强B 后者运算能力强C 两者运算能力一样强D 无法判断13 CPU中运算器的全部功能是()A 产生时序信号B 完成算术逻辑运算C 取指令,分析指令并执行指令D 指令控制、操作控制、时间控制和中断控制14 在一条无条件跳转指令的指令周期内,PC的值被修改()次A 1B 2C 3D 无法确定15 间址周期结束时,CPU寄存器MDR中的内容为()A 指令B 操作数地址C 操作数D 无法确定16 在单总线结构的CPU中,连接在总线上的多个部件()A 某一时刻只有一个可以向总线发送数据,并且只有一个可以从总线接收数据B 某一时刻只有一个可以向总线发送数据,但是可以有多个从总线接收数据C 可以有多个同时向总线发送数据,但只有一个可以从总线接收数据D 可以有多个同时向总线发送数据,并且可以有多个同时从总线接收数据17 控制器的全部功能是()A 产生时序信号B 完成算术逻辑运算C 去指令,分析指令并执行指令D 指令控制、操作控制、时间控制和中断处理18 由于CPU内部操作的速度较快,而CPU访问一次存储器的时间较长,一次机器周期通常由()来确定A 间址周期B 指令周期C 机器周期D 存取周期19 硬布线控制器是一种()A 组合逻辑控制器B 微程序控制器C 储存逻辑控制器D 运算器20 微程序控制器是一种()A 组合逻辑控制器B 组合逻辑与存储逻辑混合型控制器C 存储逻辑控制器D 运算器21 微程序控制器的速度比硬布线控制器慢,主要是因为()A 增加了从磁盘控制器读取微指令的时间B 增加了从主存存储器读取微指令的时间C 增加了从指令寄存器读取微指令的时间D 增加了从控制存储器读取微指令的时间22 计算机中,控制存储器是()的组成部分A 辅助存储器B 主存储器C CPUD Cache23 微程序控制器中,形成微程序入口地址的是()A 机器指令的操作码字段B 微指令的操作码字段C 机器指令的地址码字段D 微指令的地址码字段24 兼容的微操作命令()A 可以同时出现B 可以相继出现C 可以相互替代D 互相包含25 为了确定下一条微指令的地址,通常采用断定方式,其基本思想是()A 用程序计数器PC来产生后继微指令的地址B 通过微指令的下地址字段产生后继微指令地址C 用微程序计数器uPC来产生后继微指令地址D 通过增量计数器法来产生后继微指令地址26 在微程序控制器中,控制部件向执行部件发出的某个控制信号称为()A 微地址B 微指令C 微命令D 操作码27 微地址是指微指令()A 在主存的存储位置B 在堆栈的存储位置C 在磁盘的存储位置D 在控制存储器的存储位置28 在微指令控制器中,微指令代码中的地址字段的作用是()A 存取指令B 存取数据C 确定执行顺序D 以上都不对二计算理解题1. 什么是相容微操作和相斥微操作?对TEC-4系统中的相容微操作和相斥微操作,试各举2例。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
分析k 分析 执行k 执行 分析k+1 分析 执行k+1 执行 ∆t3
如何使这种空闲状态减∆t1 分析k+2 分析 执行k+2 执行 少到最低限度, 少到最低限度,是先行 ∆t 标量处理机 分析k+3 分析 2011年4月2日星期六 计算机系统结构 第五章 2 控制方式研究的问题。 控制方式研究的问题。
主要优点: 主要优点: 指令的执行时间缩短, 指令的执行时间缩短, 功能部件的利用率明显提高。 功能部件的利用率明显提高。 主要缺点: 主要缺点: 需要增加一些硬件, 需要增加一些硬件,如指令缓冲寄存器 控制过程稍复杂。 控制过程稍复杂。
3.二次重叠执行方式 3.二次重叠执行方式 如果相邻两条指令的重叠时间再往前提前一个阶段, 如果相邻两条指令的重叠时间再往前提前一个阶段,三 个过程的时间相等,执行n条指令的时间为: 个过程的时间相等,执行n条指令的时间为: T=3t+(n-1)t=(2+n)t = + ) 在理想情况下,处理机中同时有三条指令在执行。 在理想情况下,处理机中同时有三条指令在执行。 处理机的结构要作比较大的改变, !处理机的结构要作比较大的改变,需要采用先行控制 技术。 技术。
存 储 控 制 器 控制逻辑 指令缓冲 存储器堆 指令寄存器 IR 先行程序计数器 PC1 现行程序计数器 PC
指令分析器
先行缓冲栈
设置先行缓冲栈的目的: 指令分析器和指令执行部件能独立工作 设置先行缓冲栈的目的:使指令分析器和指令执行部件能独立工作 1.先行指令缓冲栈 处于主存储器 指令分析器之间 用它来平滑 先行指令缓冲栈: 主存储器与 之间, 1.先行指令缓冲栈:处于主存储器与指令分析器之间,用它来平滑 主存储器取指令和指令分析器使用指令之间的速度差异。 主存储器取指令和指令分析器使用指令之间的速度差异。 RR型指令 不必处理, 型指令, RR型指令,不必处理,直接送先行缓冲栈 RS型指令 EA送先行读数栈 型指令, 送先行读数栈, RS型指令,EA送先行读数栈,用该先行读数栈的寄存器编号替换指 令中的主存地址码部分,形成RR* RR*指令送先行缓冲栈 令中的主存地址码部分,形成RR*指令送先行缓冲栈 RI型指令,指令中的立即数送先行读数栈,用该先行读数栈的寄存 RI型指令,指令中的立即数送先行读数栈, 型指令 器编号替换指令中的立即数部分,形成RR* RR*指令送先行缓冲栈 器编号替换指令中的立即数部分,形成RR*指令送先行缓冲栈 转移指令,一般在指令分析器中直接执行。 转移指令,一般在指令分析器中直接执行。
i =1
如果每段时间都为t,则执行n条指令所用的时间为: 如果每段时间都为t 则执行n条指令所用的时间为: T=3 n t =
取指令k 取指令 k 分析k 分析 k 执行k 执行 k 取指令k+1 分析k+1 取指令 k+1 分析 k+1 执行k+1 执行 k+1
主要优点:控制简单,节省设备 主要优点:控制简单, 主要缺点:速度慢, 主要缺点:速度慢,功能部件的利用率低
5.1 控制流机器及其改变
•控制流:指被处理的指令序列的执行顺序。 控制流:指被处理的指令序列的执行顺序。 控制流 相继的。 •通常,指令执行的顺序是相继的。但是程序 通常, 通常 指令执行的顺序是相继的 在执行中,若遇到以下的一些情况时, 在执行中,若遇到以下的一些情况时,这种 顺序的控制流将发生改变。 顺序的控制流将发生改变。 1)转移指令 ) 2)过程调用个返回 ) 3)协同程序 ) 4)中断和自陷 )
先行指令缓冲栈 主 存 储 器 存 储 控 制 器 后行写数栈 先行读数栈
指令分析器 先行操作栈 运算控制器 运算器 通 用 寄 存 器
先行指令缓冲栈的作用:只要指令缓冲栈没有充满, 先行指令缓冲栈的作用:只要指令缓冲栈没有充满,就 的作用 自动发出取指令的请求。设置两个程序计数器: 自动发出取指令的请求。设置两个程序计数器: 先行程序计数器PC 用来指示取指令, 先行程序计数器 1,用来指示取指令, 现行程序计数器PC, 现行程序计数器 ,记录指令分析器正在分析的指令地 址。
处理机结构 1.三个独立的控制器 存储控制器、指令控制器、运算控制器。 三个独立的控制器: 1.三个独立的控制器:存储控制器、指令控制器、运算控制器。 2.四个缓冲栈 先行指令缓冲栈、先行读数缓冲栈、先行操作栈、 四个缓冲栈: 2.四个缓冲栈:先行指令缓冲栈、先行读数缓冲栈、先行操作栈、 后行写数栈。 后行写数栈。 工作过程: 3. 工作过程: 4.存在的主要问题 存在的主要问题: 4.存在的主要问题: 各类指令“分析” 执行” 各类指令“分析”和“执行”的时间相差很大 数据相关以及转移或转子程序指令
重叠执行方式(一次) 2. 重叠执行方式(一次) 如果两条相邻指令的解释过程中, 如果两条相邻指令的解释过程中,某些不同解释阶段在时 间上存在重叠部分,执行n条指令的时间: = 间上存在重叠部分,执行n条指令的时间:T=(1+2n)t
取指令 k 分析 k 执行 k 取指令 k+1 分析 k+1 执行 k+1 取指令 k+2 分析 k+2 执行 k+2
取指令 k
分析 k 取指令 k+1
执行 k 分析 k+1 取指令 k+2 执行 k+1 分析 k+2 执行 k+2
二次重叠执行方式
采用二次重叠执行方式必须解决两个问题: 采用二次重叠执行方式必须解决两个问题: 1)有独立的取指令部件、指令分析部件和指令执行部件, 有独立的取指令部件 1)有独立的取指令部件、指令分析部件和指令执行部件, 把一个集中的指令控制器分解成三个独立的控制器: 把一个集中的指令控制器分解成三个独立的控制器: 存储控制器、指令控制器、运算控制器。 存储控制器、指令控制器、运算控制器。 2)要解决访问主存储器的冲突问题 2)要解决访问主存储器的冲突问题 取指令、分析指令、执行指令都可能要访问存储器 取指令、分析指令、 解决访存冲突的方法: 解决访存冲突的方法: (1)采用低位交叉存取方式 采用低位交叉存取方式: (1)采用低位交叉存取方式: 这种方法不能根本解决冲突问题。 这种方法不能根本解决冲突问题。 指令、读操作数、写结果。 指令、读操作数、写结果。 (2)两个独立的存储器:独立的指令存储器和数据存储器。 (2)两个独立的存储器:独立的指令存储器和数据存储器。 两个独立的存储器 如果再规定, 如果再规定,执行指令所需要的操作数和执行结果只写到 通用寄存器,则取指令、 通用寄存器,则取指令、分析指令和执行指令就可以同 时进行。 时进行。 在许多高性能处理机中,有独立的指令Cache和数据Cache Cache和数据Cache。 在许多高性能处理机中,有独立的指令Cache和数据Cache。 7 2011年4月2日星期六 计算机系统结构 第五章 这种结构被称为哈佛结构。 标量处理机 这种结构被称为哈佛结构。
2011年4月2日星期六 计算机系统结构 第五章 标量处理机 3
5.2 标量流水工作原理 5.2.1指令的重叠执行方式和先行控制 5.2.1指令的重叠执行方式和先行控制 1.顺序执行方式 1.顺序执行方式 执行n条指令所用的时间为: 执行n条指令所用的时间为: n
T = ∑ (t取指令i + t分析i + t执行i)
先行指令缓冲栈 主 存 储 器 存 储 控 制 器 后行写数栈 运算器 先行读数栈 运算控制器 先行操作栈 通 用 寄 存 器 指令分析器
2.先行操作栈:处于指令分析器和运算控制器之间, 2.先行操作栈:处于指令分析器和运算控制器之间,使指令分析器 先行操作栈 指令分析器 之间 和运算器能够各自独立工作 采用先进先出方式工作, 各自独立工作。 先进先出方式工作 和运算器能够各自独立工作。采用先进先出方式工作,由指令寄 存器堆和控制逻辑组成。 存器堆和控制逻辑组成。 3.先行读数栈:处于主存储器与运算器之间,滑运算器与主存储器 3.先行读数栈:处于主存储器与运算器之间, 先行读数栈 主存储器 之间 地址寄存器、 的工作。每个缓冲寄存器由地址寄存器 操作数寄存器和标志三 的工作。每个缓冲寄存器由地址寄存器、操作数寄存器和标志三 部分组成。也可把地址寄存器和操作数寄存器合为一个。 部分组成。也可把地址寄存器和操作数寄存器合为一个。 当收到从指令分析器中送来的EA EA时 就向主存申请读操作数。 当收到从指令分析器中送来的EA时,就向主存申请读操作数。读出 的操作数存放在操作数寄存器中或覆盖掉地址寄存器中地址 4.后行写数栈 每个后行缓冲寄存器由地址寄存器 数据寄存器和标志组成 后行写数栈: 地址寄存器、 组成。 4.后行写数栈:每个后行缓冲寄存器由地址寄存器、数据寄存器和标志组成。 • 指令分析器遇到向主存写结果的指令时,把形成的EA送入后行写 指令分析器遇到向主存写结果的指令时,把形成的EA EA送入后行写 数栈的地址寄存器中, 数栈的地址寄存器中,并用该地址寄存器的编号替换指令的目的 地址部分,形成RR*指令送入先行操作栈。当运算器执行*指令送入先行操作栈。当运算器执行这条RR* 先行指令缓冲栈 指令分析器 型写数指 主 存 令时只要把 令时只要把 存 储 先行操作栈 通 写到主存的 储 控 先行读数栈 用 数据送到后 器 制 运算控制器 寄 行写数栈的 数据寄存器 器 存 中即可。 中即可。 后行写数栈 运算器 器
• 忽略“取指”时间,可将“取指”合并在“分析”周期 忽略“取指”时间,可将“取指”合并在“分析” 执行n条指令 所需要的T=(1+n)t 条指令, 内。执行 条指令,所需要的
t 分析k 分析 t 执行k 执行 分析k+1 执行 执行k+1 分析 分析k+2 执行 执行k+2 分析 t t
现代计算机系统中各类指令“分析”与“执行”所需的时 现代计算机系统中各类指令“分析” 执行” 间相差很大, 间相差很大,指令分析部件和指令执行部件经常需要相互 等待。 等待。
相关文档
最新文档