第5章标量处理机(5.7) 超标量超流水处理机

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

T (1,1) m(k N 1) S (m,1)= T (m,1) N m(k 1)
当N→∞时,超标量处理机的加速比最大值为m,即超标量 处理机同时发射指令的条数。
计算机科学与技术 yangruioot@yahoo.com.cn
5.5.2 超流水处理机

定义 一个周期内能够分时发射多条指令的处理机称 为 超流水线处理机。 指令流水线有8个或更多功能段的流水线处理 机称为超流水线处理机。 分时发射多条指令?

计算机科学与技术
yangruioot@yahoo.com.cn
1 超流水处理机的指令执行时空图

每隔1/n个时钟周期发射一条指令,流水线周期为 1/n个时钟周期
空间 3 2 1 3 2 1 3 2 1 3 2 1 0 1 1 1 3 2 4 2 5 7 3 6 8 10 4 5 6 7 8 时间∆t 1 3 2 4 9 11 5 7 12 6 8 10 1 3 2 4 9 11 5 7 12 6 8 10 3 2 4 9 11 5 7 12 6 8 10 9 11 12
多条无数据相关和控制相关的指令在单发射处理机中 的时空图如图
度为1
部件 写结果 执行 译码 取指 0 1 1 1 2 2 1 2 3 3 1 2 3 4 4 2 3 4 5 5 3 4 5 6 6 4 5 6 7 7 5 6 7 8 8 6 7 8 9 9 7 8 9 10 10 8 9 10 11 11 9 10 11 12 12 13 14 15 10 11 12 11 12 12
S (m, n) T (1,1) m n(k N 1) T (m, n) m nk N m
当N→∞时,超标量超流水线 处理机的加速比最大值为mn。
超标量、超流水、超标量超流水处理机的主要性能 机器类型 机器流水 线周期 同时发射 指令条数 指令发射 等待时间 指令级并 行度ILP
来自指令 Cache
IF
ID
乘除部件 AL
WR
来自指令 Cache
定点算术逻辑部件 IF ID LS 取数存数部件 WR
计算机科学与技术
yangruioot@yahoo.com.cn
在前图中执行指令的时空图如下图所示
部件 3 写结果 2 1 3 执行 2 1 3 译码 2 1 3 取指 2 1 0 3 2 1 1 3 2 1 6 5 4 2 3 2 1 6 5 4 9 8 7 3 3 2 1 6 5 4 9 8 7 12 11 10 4 5 6 7 时间(∆t) 6 5 4 9 8 7 12 11 10 9 8 7 12 11 10 12 11 10
计算机科学与技术
yangruioot@yahoo.com.cn
具有先行指令窗口的超标量处理机
FA1 FA2 FA3 IF ID 浮点加法部件 MD1 MD2 MD3 WR WR
IF
IF
ID
ID
乘除法部件 AL
定点ALU部件 LS 取数存数部件
先行指 令窗口
计算机科学与技术
yangruioot@yahoo.com.cn
计算机科学与技术
k段流水 m度 n度超 (m,n)度 线基准标 超标量 流水线 超标量 量处理机 处理机 处理机 超流水 1个时 1 1/ n 1/ n 钟周期 1条 1个时 钟周期 1 m 1 m
1
m
1/n
n
1/n
m×n
yangruioot@yahoo.com.cn
三种指令级并行处理机的性对性能
计算机科学与技术
yangruioot@yahoo.com.cn
由4个操作部件组成的单发射处理机
来自指 令Cache IF ID
FA1 FA2 FA3 浮点加法部件
MD1 MD2 MD3 乘除法部件
WR 通用寄存器 后行写数栈
AL 定点ALU部件 LS 取数存数部件
计算机科学与技术
yangruioot@yahoo.com.cn
计算机科学与技术
yangruioot@yahoo.com.cn
空间 n-1 n n
S4 S3 S2 S1 1 1 2 1 2 3
1 2 3 …
2 3 … …
3 … … n-1
… … n-1 n
… n-1 n
k·△t Tk
(n-1)·△t
时间 (单位:△t)
空间 3 2 1 3 2 1 3 2 1 3 2 1 0 1 1 1 3 2 4 2 5 7 3 6 8 10 4 5 6 7 8 时间∆t 1 3 2 4 9 11 5 7 12 6 8 10 1 3 2 4 9 11 5 7 12 6 8 10 3 2 4 9 11 5 7 12 6 8 10 9 11 12
T (1,1) n(k N 1) S (1, n) T (1, n) nk N 1
当N→∞时,超流水线处理机的加速比最大值为n,即 超流水线处理机在一个时钟周期中分时发射指令的总条数。
计算机科学与技术 yangruioot@yahoo.com.cn
5.5.3 超标量超流水处理机

超标量技术和超处理机技术的结合。 即在一个时钟周期中分时发射n次,每次同时发 射m条指令。超标量超流水线处理机在一个时钟 周期发射nm条指令。

计算机科学与技术
yangruioot@yahoo.com.cn
空间 33 32 31 23 22 21 13 12 11 33 32 31 23 22 21 13 12 11 33 32 31 23 22 21 13 12 11 33 32 31 23 22 21 13 12 11 0 9 8 7 6 5 4 3 2 1 9 8 7 6 5 4 3 2 1 9 8 7 6 5 4 3 2 1 9 8 7 6 5 4 3 2 1 1 12 11 10 2 3 4 5 时间∆t 12 11 10 12 11 10 12 11 10
写结果
图 5 44 超 标 量 超 流 水 线 时 空 图
在一台指令并行度为(m, n)的超标量超流水线处理机 上,连续执行没有相关的N条 指令的所需要的时间为:
T ( m, n ) ( k N m ) t nm
执行 译码 取指
超标量超流水线处理机相对 于单流水线普通标量处理机的 加速比为:
yangruioot@yahoo.com.cn
计算机科学与技术
多发射指令流水线
取指令 指令译码 FA1 来自指令 Cache IF ID 执行指令 FA2 FA3 WR 写回结果 通用寄存器 或 后行写数栈 通用寄存器 或 后行写数栈 通用寄存器 或 后行写数栈
浮点加法部件 MD1 MD2 MD3
相对性能
2.5
2.0 1.5 1.0 0.5 0.0
超标量
超标量 超流水线 1 2 3 4 5 6 7
超流水线
指令级 并行度
8
计算机科学与技术
yangruioot@yahoo.com.cn
相对性能的比较

超标量处理机的相对性能最高,其次是超标量超 流水线处理机,超流水线处理机的相对性能最低



超标量处理机在每个时钟周期的一开始就同时发射 多条指令,而超流水线处理机则要把一个时钟周期 平均分成多个流水线周期,每个流水线周期发射一 条指令;因此,超流水线处理机的启动延迟比超标 量处理机大。 条件转移造成的损失,超流水线处理机要比超标量 处理机大。 在指令执行过程中的每一个功能段,超标量处理机 都重复设置有多个相同的指令执行部件,而超流水 线处理机只是把同一个指令执行部件分解为多个流 水级;因此,超标量处理机指令执行部件的冲突要 比超流水线处理机小。
写结果
执行
译码
取指
计算机科学与技术
yangruioot@yahoo.com.cn
2 超流水处理机的指令执行时序


每隔1/n个时钟周期发射一条指令,流水线周期为 1/n个时钟周期 在超标量处理机中,流水线的有些功能段还可以 进一步细分 例如:ID功能段可以再细分为译码、读第一操 作数和读第二操作数三个流水段。也有些功能 段不能再细分,如WR功能段一般不再细分。 因此有超流水线的另外一种定义:有8个或8个 以上流水段的处理机称为超流水线处理机
写结果
执行
译码
取指
计算机科学与技术
返回公式页 yangruioot@yahoo.com.cn
超流水处理机与超标量处理机


提高处理机性能的不同方法: 超标量处理机是通过增加硬件资源为代价来换 取处理机性能的。 超流水线处理机则通过各硬件部件充分重叠工 作来提高处理机性能。 两种不同并行性: 超标量处理机采用的是空间并行性 超流水处理机采用的是时间并行性
计算机科学与技术
yangruioot@yahoo.com.cn
Baidu Nhomakorabea
3 超流水处理机的性能
在指令的并行度为(1,n)的超流水线处理机上,执行 N条没有资源相关、数据相关和控制相关的指令所需要的时 间为: N 1 T (1, n) (k )t n 超流水线处理机相对于单流水线普通标量处理机的加速比为:
5.7 多指令流水线技术
5.5.1 超标量处理机 5.5.2 超流水处理机 5.5.3 超标量超流水处理机
1 单发射指令流水线




每个周期只取一条指令、只译码一条指令,只执 行一条指令,只写回一个运算结果。 取指令部件和指令译码部件各设置一套; 只设置一个多功能操作部件或设置多个独立的操 作部件; 操作部件中可以采用流水线结构,也可以不采用 流水线结构。 目标是每个时钟周期平均执行一条指令,ILP的期 望值为1。


在超标量处理机中,有多条指令流水线在同时工 作,设置有多个能独立工作的操作部件,为了达 到最大并行度m,必须解决: 多流水线的调度问题(教材:5.4.3) 顺序发射顺序完成 顺序发射乱序完成 乱序发射乱序完成 资源冲突问题(教材:5.4.4 ) 操作部件尽量使用流水线结构 系统中设置多个相同种类的操作部件
指令并行 度为m
多发射指令流水线的时空图
计算机科学与技术
返回公式页
yangruioot@yahoo.com.cn
5.5.1 超标量处理机


一个时钟周期内能够同时发射多条指令的处理机 称为超标量处理机 目前的超标量处理机每个时钟周期发射2-4条指令 Intel公司的i860、i960、Pentium处理机, Motolora公司的MC88110处理机,IBM公司的 Power 6000处理机等每个周期都发射两条指令 TI公司生产的SuperSPARC处理机以及Intel的 Pentium III处理机等每个周期发射三条指令 操作部件的个数多于每个周期发射的指令条数。 4个至16个操作部件 超标量处理机的指令级并行度:1<ILP<m; m为每个周期发射的指令条数。
yangruioot@yahoo.com.cn
计算机科学与技术
4. 超标量处理机性能
单流水线普通标量处理机的指令级并行度记为(1,1); 超标量处理机的指令并行度记做(m,1); 超流水线处理机的指令并行度记为(1,n); 超标量超流水线处理机的指令并行度记为(m,n)。
假设:一个时钟周期为∆t,可以得出在没有资源相关、数据相 关和控制相关的N条指令在单发射k个功能段的流水线处理机上 执行的时间为:
T (1,1)= (k+N-1) ∆t
计算机科学与技术
yangruioot@yahoo.com.cn
在一台指令并行度为(m,1)的超标量处理机上执行N条没 有资源相关、数据相关和控制相关的指令时,所需要的时间 为:
T (m,1)=(
N m k m )∆t
超标量处理机相对于单流水线普通标量处理机的加速比为:
图: 单发射指令流水线的时空图
计算机科学与技术
yangruioot@yahoo.com.cn
2 多发射指令流水线





每个周期同时取多条指令、同时译码多条指令, 同时执行多条指令,同时写回多个运算结果。 需要设置多个取指令部件,多个指令译码部件和 多个写结果部件。 设置多个指令执行部件,有些指令执行部件采用 流水线结构。 当多个结果同时产生时,在不发生数据相关的前 提下,可以同时写多个结果。 目标是每个时钟周期平均执行多条指令,ILP的期 望值大于1。
yangruioot@yahoo.com.cn
计算机科学与技术
超标量处理机的结构


超标量处理机至少具有两套或者两条以上完整的 指令执行部件。 高性能的超标量处理机通常还设置一个先行指令 窗口: 能够从指令Cache中预取多条指令 能够对窗口内的指令进行数据相关性分析和功 能部件冲突的检测 窗口的大小:一般为2至8条指令
相关文档
最新文档