第9章 超标量处理机与超流水线处理机

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

浮点加法部件 IF1 ID1 MD1 MD2 MD3 WR1 通用寄存器 后行写数栈 通用寄存器 后行写数栈
指令 Cache
乘除法部件 IF2 ID2 AL 定点算术逻辑部件 IF3 ID3 LS 取数存数部件
FA:浮点加减法运算 MD:乘除法运算 AL:定点算术逻辑运算 LS:取数存数
21
指令 Cache
2 ID IF 3 EX ID IF 4 WR EX ID 5 WR EX WR 6 时钟周期
多发射处理机的指令流水线时空图
2 ID ID ID IF IF IF 3 EX EX EX ID ID ID IF IF IF 4 WR WR WR EX EX EX ID ID ID WR WR WR EX EX EX WR WR WR 5 6 时钟周期
n
c 超流水线处理机
d 超标量超流水线处理机
计算机体系结构 - 超标量处理机与超流水线处理机
5
第9章 超标量处理机与超流水线处理机
主要性能比较
以一台k段流水线的普通标量处理机为基准,假设:
基准标量机的机器流水线周期和指令发射等待时间都为1个时钟周期, 则同时发射的指令条数为1,指令级并行度ILP(Instruction Level Parallelism)为1
先行指令窗口
为了一个时钟周期内同时发射多条指令,通常设有一个先行 指令窗口,能够从指令Cache中预取多条指令,能够对窗口 内的指令进行数据相关性分析和功能部件冲突检测
计算机体系结构 - 超标量处理机与超流水线处理机
18
多发射处理机结构——超标量处理机
指令发射数量
目前的多数超标量机,每个时钟周期发射 2 条指令,通常不 超过4条
计算机体系结构 - 超标量处理机与超流水线处理机
11
9.1.2 单发射与多发射
一个4段流水结构的单 发射处理机和并行度为 3的超标量处理机的指 令执行时空图
I1 I2 I3 I4 I5 I6 I7 I8 I9 指令 1 IF IF IF I1 I2 I3 指令 1 IF
单发射处理机的指令流水线时空图
超流水线处理机
SGI的MIPS R4000,R5000,R10000等
超标量超流水线处理机
DEC的Alpha处理机
计算机体系结构 - 超Biblioteka Baidu量处理机与超流水线处理机
8
9.1.1 超标量处理机基本结构
超标量处理机的典型结构是:
1)有多个操作部件 2)一个或多个较大的通用寄存器堆 3)一个或两个高速Cache
单发射处理机的指令流水线时空图
2 ID IF 3 EX ID IF 4 WR EX ID 5 WR EX WR 6 时钟周期
多发射处理机的指令流水线时空图
1 IF IF IF 2 ID ID ID IF IF IF 3 EX EX EX ID ID ID IF IF IF 4 WR WR WR EX EX EX ID ID ID WR WR WR EX EX EX WR WR WR 5 6 时钟周期
计算机体系结构 - 超标量处理机与超流水线处理机
13
9.1.2 单发射与多发射
单发射处理机设计目标
指令级并行度ILP的期 望值>1 每个周期同时取多条 指令、同时译码多条 指令,同时执行多条 指令,同时写回多个 运算结果
I1 I2 I3 I4 I5 I6 I7 I8 I9 指令 1 IF IF IF I1 I2 I3 指令 1 IF
m
a 标量处理机流水线
b 超标量处理机流水线
n
c 超流水线处理机 d 超标量超流水线处理机
计算机体系结构 - 超标量处理机与超流水线处理机
3
第9章 超标量处理机与超流水线处理机
上述三类指令级并行处理机的结构特征
2)并行度为 n 的超流水线处理机 ——每个流水段再细分为 n 段的指令流水线
m
a 标量处理机流水线 b 超标量处理机流水线
6
计算机体系结构 - 超标量处理机与超流水线处理机
9.1 超标量处理机
一般的流水线处理机只有一条指令流水线,每个时钟周 期平均执行指令数量小于1
指令级并行度ILP<1或IPC<1(每个周期完成的指令数量) 由于存在复杂操作延时、数据相关、转移相关等不利影响
超标量、超流水线和超标量超流水线三种处理机在一个 时钟周期内可以执行完成多条指令
窗口太小,容纳的指令数量少、调度的效果不好,窗口太大, 调度所需要的硬件实现太复杂
(Super Pipelinig Processor)
超标量超流水线处理机
(Super Pipelining Superscalar Processor)
计算机体系结构 - 超标量处理机与超流水线处理机
2
第9章 超标量处理机与超流水线处理机
上述三类指令级并行处理机的结构特征
1)并行度为 m 的超标量处理机 ——有 m 条并行的指令流水线
16
WR2
FA:浮点加减法运算 MD:乘除法运算 AL:定点算术逻辑运算 LS:取数存数
计算机体系结构 - 超标量处理机与超流水线处理机
(2)多发射处理机结构——超标量处理机
通常,把一个时钟周期内能够同时发射多条指令的处理机称为超标量 处理机。最基本的要求:必须有两条或两条以上并行的指令流水线 处理机
四种不同类型处理机的性能比较
机器类型 机器流水线周期 同时发射指令条数 指令发射等待时间 指令级并行度ILP k段流水线 基准标量处理机 1个时钟周期 1条 1个时钟周期 1 m度超标量 处理机 1 m 1 m n度超流水线 处理机 1/n 1 1/n n (m,n)度超标量 超流水线处理机 1/n m 1/n m*n
17
WR2
FA:浮点加减法运算 MD:乘除法运算 AL:定点算术逻辑运算 LS:取数存数
计算机体系结构 - 超标量处理机与超流水线处理机
多发射处理机结构——超标量处理机
超标量处理机
通常,把一个时钟周期内能够同时发射多条指令的处理机称 为超标量处理机。最基本的要求:必须有两条或两条以上并 行的指令流水线
同时发射两条指令的多发射处理机的指令流水线
取指令 指令译码 FA1 执行指令 FA2 FA3 写回结果
浮点加法部件 来自指令 Cache IF1 ID1 MD1 MD2 MD3 WR1 通用寄存器 后行写数栈 通用寄存器 后行写数栈
乘除法部件 来自指令 Cache IF2 ID2 AL 定点算术逻辑部件 LS 取数存数部件
超标量处理机典型结构
Motorola公司的MC88110
整数 部件 整数 部件 位操作 部件 浮点加 部件 乘法 部件 除法 部件 图形 部件 图形 部件
内部总线 读数/存数 部件 通用寄 存器堆 扩展 寄存器堆 目标 指令 指令分配/ 转移部件
数据 Cache(8KB)
指令 Cache(8KB)
n c 超流水线处理机
d 超标量超流水线处理机
计算机体系结构 - 超标量处理机与超流水线处理机
4
第9章 超标量处理机与超流水线处理机
上述三类指令级并行处理机的结构特征
3)并行度为(m,n)的超标量超流水线处理机 ——每个流水段细分为 n 段的 m 条并行指令流水线 为1)和2)结构的综合
m
a 标量处理机流水线 b 超标量处理机流水线
同时发射两条指令的多发射处理机的指令流水线
取指令 指令译码 FA1 执行指令 FA2 FA3 写回结果
浮点加法部件 来自指令 Cache IF1 ID1 MD1 MD2 MD3 WR1 通用寄存器 后行写数栈 通用寄存器 后行写数栈
乘除法部件 来自指令 Cache IF2 ID2 AL 定点算术逻辑部件 LS 取数存数部件
指令级并行度
如果超标量处理机每个时钟周期发射m条指令,则指令级并 行度ILP的期望值是m, 实际的指令级并行度:1<ILP<m
计算机体系结构 - 超标量处理机与超流水线处理机
20
多发射处理机结构——超标量处理机
有先行指令窗口的多发射流水线处理机结构
取指 指令译码 FA1 执行指令 FA2 FA3 写回结果
发射多条指令的实现方法有多种:
使用最多的是在一个存储字中安排两条指令
计算机体系结构 - 超标量处理机与超流水线处理机
19
多发射处理机结构——超标量处理机
操作部件数量
操作部件的数量多于每个周期发射的指令条数 通常有4~16个独立的操作部件,其操作部件可选用流水线 结构 每个操作部件的时间延迟可以大于一个时钟周期
WR2
先行指令窗口
计算机体系结构 - 超标量处理机与超流水线处理机
多发射处理机结构——超标量处理机
先行指令窗口的作用:
1)从指令Cache中读入多条指令,通过硬件判断哪些指令 可以先发射到操作部件中去执行 2)把无功能部件冲突、数据相关和控制相关的指令错序发 射到操作部件中去,提高功能部件的利用率 先行指令窗口的大小对超标量处理机的性能影响很大
由于存在有数据相关和条件转移等问题,采用一般的指令调度 技术,理论上的最佳情况是每个时钟周期发射3条指令
例如:
Intel公司的i860、i960、Pentium,Motolora公司的MC88110, IBM公司的Power 6000每个时钟周期都发射2条指令 TI公司生产SuperSPARC等每个时钟周期发射3条指令
系统总线 32 位地址总线
计算机体系结构 - 超标量处理机与超流水线处理机
64 位数据总线
10
9.1.1 超标量处理机基本结构
Motorola公司的MC88110
两个寄存器堆:
整数部件通用寄存器堆,32个32位寄存器 浮点部件扩展寄存器堆,32个80位寄存器
缓冲深度为4的先行读数栈 缓冲深度为3的后行写数栈 两个独立的高速Cache中,各为8KB,采用两路组相联方式 转移目标指令Cache,用于存放另一条分支上的指令
计算机体系结构
第9章 超标量机与超流水线机
陈 伟 教授 西南石油大学计算机学院 ncchenwei@163.com
1
第9章 超标量处理机与超流水线处理机
本章主要介绍另外三种高性能的指令级并行处理 机的基本原理、典型结构和主要性能:
超标量处理机
(Superscalar Processor)
超流水线处理机
单发射处理机的指令流水线时空图
2 ID IF 3 EX ID IF 4 WR EX ID 5 WR EX WR 6 时钟周期
多发射处理机的指令流水线时空图
2 ID ID ID IF IF IF 3 EX EX EX ID ID ID IF IF IF 4 WR WR WR EX EX EX ID ID ID WR WR WR EX EX EX WR WR WR 5 6 时钟周期
先进的超标量处理机一般包含三个处理单元:
1)定点处理单元
通常称为中央处理单元(CPU),它由一个或多个整数处理部件 组成
2)浮点处理单元(FPU)
它由浮点加减法部件和浮点乘除法部件等组成
3)图形加速部件,也称为图形处理单元(GPU)
目前已与CPU基本分离
计算机体系结构 - 超标量处理机与超流水线处理机 9
计算机体系结构 - 超标量处理机与超流水线处理机
12
9.1.2 单发射与多发射
单发射处理机设计目标
每个时钟周期平均执 行一条指令,即它的 指令级并行度ILP的期 望值为1 但是由于数据相关、 条件转移和资源冲突 等原因,实际的ILP 不 可能达到1
I1 I2 I3 I4 I5 I6 I7 I8 I9 指令 I1 I2 I3 指令 1 IF
来自指令 Cache
IF
ID
MD1 MD2 MD3 乘除法部件 AL
WR
通用寄存器 后行写数栈
FA:浮点加减法运算 MD:乘除法运算 AL:定点算术逻辑运算 LS:取数存数
定点算术逻辑部件 LS 取数存数部件
15
计算机体系结构 - 超标量处理机与超流水线处理机
(2)多发射处理机结构
多个取指令部件,多个指令译码部件和多个写结果部件 设置多个指令执行部件,有些指令执行部件采用流水线结构
即它们的指令级并行度ILP>1
计算机体系结构 - 超标量处理机与超流水线处理机
7
9.1 超标量处理机
己面市的高级微处理机大多数属于超标量机:
超标量处理机
Intel 的 i860 、 i960 、 Pentium 处 理 机 , Motolora 公 司 的 MC88110,IBM的Power 6000,SUN的SuperSPARC等
计算机体系结构 - 超标量处理机与超流水线处理机
14
(1)单发射处理机结构
取指令部件和指令译码部件各设置一套 只设置一个多功能操作部件或设置多个独立的操作部件 操作部件中可以采用流水线结构,也可以不采用流水线结构
单发射处理机的指令流水线
取指令 指令译码 执行指令 EX 写回结果
FA1
FA2
FA3
浮点加法部件
相关文档
最新文档