第 5章 重叠、流水和向量处理机
5.1 重叠方式
5.1.1 一次重叠
1.指令的解释方式
解释的含义
指令的解释过程
顺序解释
重叠解释及可能性
5.1.1 一次重叠
2,重叠解释
定义 在解释第 k条指令的操作完成前,
就可以开始解释第 k+1条指令的方法叫做重叠解释,
作用 加快程序的执行速度
特征 每条指令的解释速度没有加快,程序整体执行速度提高
对计算机组成的要求数据与指令分别存储在不同存储区域多体交叉存储器
FIFO指令缓冲器指令的执行与分析独立同步机构
3,一次重叠的控制
条件转移指令的处理
相关及分类
相关及分类定义,由于一段机器语言程序的邻近指令之间出现了某种关联后,为了避免出错而使得它们不能同时被解释的现象就称为相关,
分类 数 (据 )相关 指令相关数相关产生的原因 相关指令间访问的操作数地址相同 重叠引起数相关可能产生的问题 数据出错指令相关产生原因 指令可以被修改所造成指令相关可能产生的问题 对指令缓冲器的影响
5.1.2 相关的处理
1.指令相关的处理
指令相关发现的难度
指令相关的根本原因与处理
IBM 370的处理
2,主存空间数相关的处理
主存空间数相关的分析
主存空间数相关的处理推后读方法
访存操作的优先级别的确定,写数高于读数
3,通用寄存器组相关的处理
指令的基本格式
分类 通用寄存器组相关通用寄存器组基址值或变址值相关
通用寄存器组相关重叠操作通用寄存器组的时间关系
L1相关,L1( k+1) = L3( k)
L2相关,L2( k+1) = L3( k)
操作码 L1 L3 B2 d2
L1 L3 L2操作码解决方法推后读相关专用通路法目的结构与原理二种方法的比较差异用途
通用寄存器组基址值或变址值相关操作数有效地址的形式
(Xd)+(B2)(B2≠0000)+d 2
B一次相关
B二次相关处理方法推后读
B相关专用通路法
总结,相关处理的方法选择出发点运用 Huffman
压缩概念选择推后读或相关专用通路法重叠的代价 空间代价通用寄存器组运算器
B C
数据总线 相关专用通路
5.2 流水方式
5.2.1 基本概念
1.流水解释含义,在解释第 k条指令的操作完成前,就可以同时解释后边多条指令的方法叫做 流水解释,
流水处理的过程时 (间 )-空 (间 )图意义画法流水处理的作用,显著提高程序执行速度
1
1
2
1
2
3
1
2
3
4
2
3
4
5
3
4
5
6
4
5
6
5
6
6
空间 (s)
时间 (t)
0 t1 t2 t3 t4 t5 t6 t7 t8 t9
执行取操作数指令译码取指令取指令 指令译码 取操作数 执行入 出重叠 (Overlap)与流水 (Pipelining)的区别与联系高速接口锁存器的作用,消除各子部件速度的差异,由同步信号控制进行同步
2,流水线的分类
(1) 按扩展方式分类
部件级流水线
处理机级流水线
系统级流水线
2,流水线的分类
(2)按流水线功能分类
单功能流水线定义,只能实现一种功能的流水线实例,CRAY-1
多功能流水线定义,同一流水线的各个段之间可以有多种不同的连接方式,以实现不同的运算和功能的流水线叫做多功能流水线,
实例,TI-ASC(Taxes Instrument Advanced
Scientific Computer)
(3) 按多功能流水线各部件同时的功能分类
静态多功能流水线,在某一时间内各功能段只能按一种功能联接流水,全部排空 后才可以切换成按另一种功能来连 接流水的流水线,
作用的有效发挥,连续处理相同运算的指令
动态多功能流水线,在同一时间内各功能段可以按不同运算或功能联接的流水线,
静态 /动态多功能流水线时空图
1
1
2
1
2
3
1
2
3
4
1
2
3
4
…
2
3
4
…
…
3
4
…
…
n-1
4
…
…
n-1
n
…
…
n-1
n
…
n-1
n
n-1
n
n
1 2 3 4 … … n-1 n
一 二 三 四一 二 三一 二一
s
t
1
2
3
4
5
6
7
8
静态多功能流水线时 -空图举例浮点加法 定点乘法
1
1
2
1
2
3
1
2
3
4
1
2
3
4
…
2
3
4
…
…
3
4
…
…
n-1
4
…
…
n-1
n
…
…
n-1
n
…
n-1
n
n-1
n
n
1 2 3 4 … … n-1 n
一 二 三 四 五 六 七一 二 三 四 五 六一 二 三 四 五一 二 三 四
s
t
8
7
6
5
4
3
2
1
动态多功能流水线时 -空图举例浮点加法 定点乘
(4) 按照数据表示分类
标量流水线
向量流水线
(5) 按照有无反馈回路分类
线性流水线均匀流水线 非均匀流水线
非线性流水线
(6) 多维流水线脉动式阵列处理机
5.2.2 流水线处理机的主要性能术语建立时间,流水线从开始启动到流出第一个结果所需要的时间排空时间,最后一个任务(或指令)进入流水线到流出流水线的时间
1.吞吐率定义,单位时间内流水线执行的指令条数单位时间内流水线能流出的任务数或结果数,
5.2.2 流水线处理机的主要性能
1.吞吐率 (Throughput Rate)
瓶颈 (Bottleneck)子过程流水线中经过时间最长的过程
非均匀线性流水线的最大吞吐率 Tpmax
均匀线性流水线的最大吞吐率 Tpmax
流水线瓶颈子过程的消除方法及实例瓶颈子过程的细分重复设置多套部件 (并联 )
实际吞吐率 TP
实际吞吐率与最大吞吐率的关系
加速比 Sp(Speedup Ratio):指流水线方式相对非流水线顺序串行方式速度提高的比值
非均匀流水线的实际吞吐率与加速比
2,效率 (Efficiency)
定义,指流水线中的设备 (部件 )实际使用时间与整体运行时间之比,
2,效率 (Efficiency)
均匀流水线的效率
均匀流水线的效率与吞吐率的关系
非均匀流水线的效率
加权流水线的效率
时空图对于复杂非流水线的吞吐率和效率的作用
3,流水线工作举例
1 2 3 5
4
X
Y
Z
加法流水线,1>2>3>5
乘法流水线,1>4>5
5.2.3 流水机器的相关处理和控制
流水机器相关的产生
流水机器相关的分类全局性相关 — 条件转移引起 (影响指缓 )
局部性相关 — 主存操作数相关、通用寄存器组的操作数相关、通用寄存器组基址值变址值相关 (不影响指缓)
1,局部性相关的处理
推后读法,顺序流动(同步流动)
异步流动举例
推后读 (异步流动 )带来的问题可能产生的新相关写 -写相关先读后写相关原有相关,先写后读相关
相关直接通路分布式控制方式公共数据通路
2,全局性相关的处理
猜测法方法猜测依据猜测错误时的处理方法等待条件码产生再执行不回送结果后援寄存器指令的预取
加快和提前形成条件码单条指令内部条件码的形成程序段提前形成条件码
2,全局性相关的处理
采用延迟转移特点,软件方法实现
加快短循环程序的处理
3 流水机器的中断处理特殊性不精确断点法 不利于编程和程序排错精确断点法针对第 i条,其后部分可以恢复,需要后援寄存器
5.3 向量的流水处理与向量流水处理机向量流水处理机向量处理机 (Vector Processor)]
=向量数据表示 +流水线技术
5.3.1 向量的流水处理
向量的自身特性及其运算类型
横向 (水平 )处理方式相同下标 元素的一组操作完成后再进行下一组操作的处理方式
纵向 (垂直 )处理方式相同操作 完成后再进行另外一种操作的处理方式
5.3.1 向量的流水处理
对数据存储方式的要求多体交叉存储器
STAR-100,CDC,1974年存储器有 32个体,0.5~1M字 /体,
数据宽度 8个字 ⅹ 64位最大信息流量,200MW/s
速度,向量加法运算 1亿次 /秒标量运算 3~6百万次 /秒
5.3.1 向量的流水处理
对数据存储方式的要求多体交叉存储器面向寄存器 -寄存器型的结构
CRAY-1,1976年主存 1兆字( 16 个体)
8000万次浮点操作 /秒
长向量的处理分组纵横处理方法 CRAY-1采用本方法
5.3.2 向量流水处理机
1.向量流水处理机的指令系统分类,向量型和标量型两类 (CRAY-1,128条 )
向量型运算类指令向量到向量向量到标量向量与向量到向量向量与标量到向量特殊操作的向量
5.3.2 向量流水处理机
1.向量流水处理机的指令系统分类,向量型和标量型两类 (CRAY-1,128条 )
向量指令的格式操作码 地址码(向量地址)
CRAY-1的 结构中央处理机 诊断维护控制计算机磁盘存储系统 前端处理机
2.向量流水处理机的结构
中央处理机的组成单功能流水线 12条向量寄存器组 64╳ 64位 8组 V0-V7
标量寄存器 S0-S7
地址 寄存器 A0-A7
指令缓冲器 256个 16位,4组向量屏蔽寄存器 VM
向量长度寄存器 VL
2.向量流水处理机的结构
向量冲突
Vi 冲突,并行工作的各向量指令的源向量或结果向量使用了相同的 Vi
源向量冲突,并行工作的各向量指令的源向量使用了相同的 Vi
功能部件冲突,一个功能部件被一条以上的要求并行工作的向量指令所使用
2.向量流水处理机的结构
CRAY-1的向量处理向量处理部件向量屏蔽寄存器 VM
向量寄存器与向量处理部件的联系
2.向量流水处理机的结构
CRAY-1的向量处理
4种向量处理指令并行处理的条件,无 Vi 冲突和功能部件冲突链接处理,只要没有 功能部件冲突和源向量冲突,通过 链接机构可以使有数据相关的向量指令仍能流水处理,
链接的时机链接的实质,数据相关通路方法链接处理的优点,并行程度高链接举例向量的递归操作意义与目的实现方法举例
3,超级向量流水处理机举例
CRAY-1的向量处理机
1976年,CRAY-1
1979年,CRAY-1S
1983年,CRAY X-MP
1988年,CRAY Y-MP
1991年,CRAY Y-MP C-90
其它
CDC,STAR-100 CYBER 205 ETA10
Fujitsu,VP-2000
NEC,SX-X
银河系列
5.4 指令级高度并行的超级处理机
超标量处理机
超长指令字处理机
超流水线处理机
5.1 重叠方式
5.1.1 一次重叠
1.指令的解释方式
解释的含义
指令的解释过程
顺序解释
重叠解释及可能性
5.1.1 一次重叠
2,重叠解释
定义 在解释第 k条指令的操作完成前,
就可以开始解释第 k+1条指令的方法叫做重叠解释,
作用 加快程序的执行速度
特征 每条指令的解释速度没有加快,程序整体执行速度提高
对计算机组成的要求数据与指令分别存储在不同存储区域多体交叉存储器
FIFO指令缓冲器指令的执行与分析独立同步机构
3,一次重叠的控制
条件转移指令的处理
相关及分类
相关及分类定义,由于一段机器语言程序的邻近指令之间出现了某种关联后,为了避免出错而使得它们不能同时被解释的现象就称为相关,
分类 数 (据 )相关 指令相关数相关产生的原因 相关指令间访问的操作数地址相同 重叠引起数相关可能产生的问题 数据出错指令相关产生原因 指令可以被修改所造成指令相关可能产生的问题 对指令缓冲器的影响
5.1.2 相关的处理
1.指令相关的处理
指令相关发现的难度
指令相关的根本原因与处理
IBM 370的处理
2,主存空间数相关的处理
主存空间数相关的分析
主存空间数相关的处理推后读方法
访存操作的优先级别的确定,写数高于读数
3,通用寄存器组相关的处理
指令的基本格式
分类 通用寄存器组相关通用寄存器组基址值或变址值相关
通用寄存器组相关重叠操作通用寄存器组的时间关系
L1相关,L1( k+1) = L3( k)
L2相关,L2( k+1) = L3( k)
操作码 L1 L3 B2 d2
L1 L3 L2操作码解决方法推后读相关专用通路法目的结构与原理二种方法的比较差异用途
通用寄存器组基址值或变址值相关操作数有效地址的形式
(Xd)+(B2)(B2≠0000)+d 2
B一次相关
B二次相关处理方法推后读
B相关专用通路法
总结,相关处理的方法选择出发点运用 Huffman
压缩概念选择推后读或相关专用通路法重叠的代价 空间代价通用寄存器组运算器
B C
数据总线 相关专用通路
5.2 流水方式
5.2.1 基本概念
1.流水解释含义,在解释第 k条指令的操作完成前,就可以同时解释后边多条指令的方法叫做 流水解释,
流水处理的过程时 (间 )-空 (间 )图意义画法流水处理的作用,显著提高程序执行速度
1
1
2
1
2
3
1
2
3
4
2
3
4
5
3
4
5
6
4
5
6
5
6
6
空间 (s)
时间 (t)
0 t1 t2 t3 t4 t5 t6 t7 t8 t9
执行取操作数指令译码取指令取指令 指令译码 取操作数 执行入 出重叠 (Overlap)与流水 (Pipelining)的区别与联系高速接口锁存器的作用,消除各子部件速度的差异,由同步信号控制进行同步
2,流水线的分类
(1) 按扩展方式分类
部件级流水线
处理机级流水线
系统级流水线
2,流水线的分类
(2)按流水线功能分类
单功能流水线定义,只能实现一种功能的流水线实例,CRAY-1
多功能流水线定义,同一流水线的各个段之间可以有多种不同的连接方式,以实现不同的运算和功能的流水线叫做多功能流水线,
实例,TI-ASC(Taxes Instrument Advanced
Scientific Computer)
(3) 按多功能流水线各部件同时的功能分类
静态多功能流水线,在某一时间内各功能段只能按一种功能联接流水,全部排空 后才可以切换成按另一种功能来连 接流水的流水线,
作用的有效发挥,连续处理相同运算的指令
动态多功能流水线,在同一时间内各功能段可以按不同运算或功能联接的流水线,
静态 /动态多功能流水线时空图
1
1
2
1
2
3
1
2
3
4
1
2
3
4
…
2
3
4
…
…
3
4
…
…
n-1
4
…
…
n-1
n
…
…
n-1
n
…
n-1
n
n-1
n
n
1 2 3 4 … … n-1 n
一 二 三 四一 二 三一 二一
s
t
1
2
3
4
5
6
7
8
静态多功能流水线时 -空图举例浮点加法 定点乘法
1
1
2
1
2
3
1
2
3
4
1
2
3
4
…
2
3
4
…
…
3
4
…
…
n-1
4
…
…
n-1
n
…
…
n-1
n
…
n-1
n
n-1
n
n
1 2 3 4 … … n-1 n
一 二 三 四 五 六 七一 二 三 四 五 六一 二 三 四 五一 二 三 四
s
t
8
7
6
5
4
3
2
1
动态多功能流水线时 -空图举例浮点加法 定点乘
(4) 按照数据表示分类
标量流水线
向量流水线
(5) 按照有无反馈回路分类
线性流水线均匀流水线 非均匀流水线
非线性流水线
(6) 多维流水线脉动式阵列处理机
5.2.2 流水线处理机的主要性能术语建立时间,流水线从开始启动到流出第一个结果所需要的时间排空时间,最后一个任务(或指令)进入流水线到流出流水线的时间
1.吞吐率定义,单位时间内流水线执行的指令条数单位时间内流水线能流出的任务数或结果数,
5.2.2 流水线处理机的主要性能
1.吞吐率 (Throughput Rate)
瓶颈 (Bottleneck)子过程流水线中经过时间最长的过程
非均匀线性流水线的最大吞吐率 Tpmax
均匀线性流水线的最大吞吐率 Tpmax
流水线瓶颈子过程的消除方法及实例瓶颈子过程的细分重复设置多套部件 (并联 )
实际吞吐率 TP
实际吞吐率与最大吞吐率的关系
加速比 Sp(Speedup Ratio):指流水线方式相对非流水线顺序串行方式速度提高的比值
非均匀流水线的实际吞吐率与加速比
2,效率 (Efficiency)
定义,指流水线中的设备 (部件 )实际使用时间与整体运行时间之比,
2,效率 (Efficiency)
均匀流水线的效率
均匀流水线的效率与吞吐率的关系
非均匀流水线的效率
加权流水线的效率
时空图对于复杂非流水线的吞吐率和效率的作用
3,流水线工作举例
1 2 3 5
4
X
Y
Z
加法流水线,1>2>3>5
乘法流水线,1>4>5
5.2.3 流水机器的相关处理和控制
流水机器相关的产生
流水机器相关的分类全局性相关 — 条件转移引起 (影响指缓 )
局部性相关 — 主存操作数相关、通用寄存器组的操作数相关、通用寄存器组基址值变址值相关 (不影响指缓)
1,局部性相关的处理
推后读法,顺序流动(同步流动)
异步流动举例
推后读 (异步流动 )带来的问题可能产生的新相关写 -写相关先读后写相关原有相关,先写后读相关
相关直接通路分布式控制方式公共数据通路
2,全局性相关的处理
猜测法方法猜测依据猜测错误时的处理方法等待条件码产生再执行不回送结果后援寄存器指令的预取
加快和提前形成条件码单条指令内部条件码的形成程序段提前形成条件码
2,全局性相关的处理
采用延迟转移特点,软件方法实现
加快短循环程序的处理
3 流水机器的中断处理特殊性不精确断点法 不利于编程和程序排错精确断点法针对第 i条,其后部分可以恢复,需要后援寄存器
5.3 向量的流水处理与向量流水处理机向量流水处理机向量处理机 (Vector Processor)]
=向量数据表示 +流水线技术
5.3.1 向量的流水处理
向量的自身特性及其运算类型
横向 (水平 )处理方式相同下标 元素的一组操作完成后再进行下一组操作的处理方式
纵向 (垂直 )处理方式相同操作 完成后再进行另外一种操作的处理方式
5.3.1 向量的流水处理
对数据存储方式的要求多体交叉存储器
STAR-100,CDC,1974年存储器有 32个体,0.5~1M字 /体,
数据宽度 8个字 ⅹ 64位最大信息流量,200MW/s
速度,向量加法运算 1亿次 /秒标量运算 3~6百万次 /秒
5.3.1 向量的流水处理
对数据存储方式的要求多体交叉存储器面向寄存器 -寄存器型的结构
CRAY-1,1976年主存 1兆字( 16 个体)
8000万次浮点操作 /秒
长向量的处理分组纵横处理方法 CRAY-1采用本方法
5.3.2 向量流水处理机
1.向量流水处理机的指令系统分类,向量型和标量型两类 (CRAY-1,128条 )
向量型运算类指令向量到向量向量到标量向量与向量到向量向量与标量到向量特殊操作的向量
5.3.2 向量流水处理机
1.向量流水处理机的指令系统分类,向量型和标量型两类 (CRAY-1,128条 )
向量指令的格式操作码 地址码(向量地址)
CRAY-1的 结构中央处理机 诊断维护控制计算机磁盘存储系统 前端处理机
2.向量流水处理机的结构
中央处理机的组成单功能流水线 12条向量寄存器组 64╳ 64位 8组 V0-V7
标量寄存器 S0-S7
地址 寄存器 A0-A7
指令缓冲器 256个 16位,4组向量屏蔽寄存器 VM
向量长度寄存器 VL
2.向量流水处理机的结构
向量冲突
Vi 冲突,并行工作的各向量指令的源向量或结果向量使用了相同的 Vi
源向量冲突,并行工作的各向量指令的源向量使用了相同的 Vi
功能部件冲突,一个功能部件被一条以上的要求并行工作的向量指令所使用
2.向量流水处理机的结构
CRAY-1的向量处理向量处理部件向量屏蔽寄存器 VM
向量寄存器与向量处理部件的联系
2.向量流水处理机的结构
CRAY-1的向量处理
4种向量处理指令并行处理的条件,无 Vi 冲突和功能部件冲突链接处理,只要没有 功能部件冲突和源向量冲突,通过 链接机构可以使有数据相关的向量指令仍能流水处理,
链接的时机链接的实质,数据相关通路方法链接处理的优点,并行程度高链接举例向量的递归操作意义与目的实现方法举例
3,超级向量流水处理机举例
CRAY-1的向量处理机
1976年,CRAY-1
1979年,CRAY-1S
1983年,CRAY X-MP
1988年,CRAY Y-MP
1991年,CRAY Y-MP C-90
其它
CDC,STAR-100 CYBER 205 ETA10
Fujitsu,VP-2000
NEC,SX-X
银河系列
5.4 指令级高度并行的超级处理机
超标量处理机
超长指令字处理机
超流水线处理机