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

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

乘除法部件
WR
AL
IF ID
定点ALU部件
先行指 令窗口
LS 取数存数部件
计算机科学与技术
yangruioot@yahoo.com.cn
在超标量处理机中,有多条指令流水线在同时工 作,设置有多个能独立工作的操作部件,为了达 到最大并行度m,必须解决: 多流水线的调度问题(教材:5.4.3)
顺序发射顺序完成 顺序发射乱序完成 乱序发射乱序完成 资源冲突问题(教材:5.4.4 ) 操作部件尽量使用流水线结构 系统中设置多个相同种类的操作部件
T (1,1)= (k+N-1) ∆t
计算机科学与技术
yangruioot@yahoo.com.cn
在一台指令并行度为(m,1)的超标量处理机上执行N条没
有资源相关、数据相关和控制相关的指令时,所需要的时间
为:
T (m,1)=(
k
N
m
m
)∆t
超标量处理机相对于单流水线普通标量处理机的加速比为:
S (m,1)= T (1,1) m(k N 1) T(m,1) N m(k 1)
一个时钟周期内能够同时发射多条指令的处理机 称为超标量处理机
目前的超标量处理机每个时钟周期发射2-4条指令
Intel公司的i860、i960、Pentium处理机, Motolora公司的MC88110处理机,IBM公司的 Power 6000处理机等每个周期都发射两条指令
TI公司生产的SuperSPARC处理机以及Intel的 Pentium III处理机等每个周期发射三条指令
能够从指令Cache中预取多条指令 能够对窗口内的指令进行数据相关性分析和功 能部件冲突的检测 窗口的大小:一般为2至8条指令
计算机科学与技术
yangruioot@yahoo.com.cn
具有先行指令窗口的超标量处理机
FA1 FA2 FA3
IF ID
浮点加法部件
MD1 MD2 MD3
WR
IF ID
WR

后行写数栈
通用寄存器
WR

后行写数栈
通用寄存器
WR

后行写数栈
计算机科学与技术
yangruioot@yahoo.com.cn
在前图中执行指令的时空图如下图所示
部件
3 写结果 2
3 6 9 12 2 5 8 11
1
1 4 7 10
3 执行 2
3 6 9 12 2 5 8 11
1
1 4 7 10
操作部件的个数多于每个周期发射的指令条数。 4个至16个操作部件
超标量处理机的指令级并行度:1<ILP<m; m为每个周期发射的指令条数。
计算机科学与技术
yangruioot@yahoo.com.cn
超标量处理机的结构
超标量处理机至少具有两套或者两条以上完整的 指令执行部件。 高性能的超标量处理机通常还设置一个先行指令 窗口:
计算机科学与技术
yangruioot@yahoo.com.cn
4. 超标量处理机性能
单流水线普通标量处理机的指令级并行度记为(1,1); 超标量处理机的指令并行度记做(m,1); 超流水线处理机的指令并行度记为(1,n); 超标量超流水线处理机的指令并行度记为(m,n)。
假设:一个时钟周期为∆t,可以得出在没有资源相关、数据相 关和控制相关的N条指令在单发射k个功能段的流水线处理机上 执行的时间为:
计算机科学与技术
yangruioot@yahoo.com.cn
多发射指令流水线
取指令 指令译码
来自指令
Cache
IF
ID
来自指令
Cache
IF
ID
来自指令
Cache
IF
ID
执行指令 FA1 FA2 FA3
浮点加法部件
MD1 MD2 MD3 乘除部件
AL 定点算术逻辑部件
LS 取数存数部件
写回结果
通用寄存器
5.7 多指令流水线技术
5.5.1 超标量处理机 5.5.2 超流水处理机 5.5.3 超标量超流水处理机
1 单发射指令流水线
每个周期只取一条指令、只译码一条指令,只执 行一条指令,只写回一个运算结果。 取指令部件和指令译码部件各设置一套; 只设置一个多功能操作部件或设置多个独立的操 作部件; 操作部件中可以采用流水线结构,也可以不采用 流水线结构。 目标是每个时钟周期平均执行一条指令,ILP的期 望值为1。
当N→∞时,超标量处理机的加速比最大值为m,即超标量 处理机同时发射指令的条数。
计算机科学与技术
yangruioot@yahoo.com.cn
5.5.2 超流水处理机
定义 一个周期内能够分时发射多条指令的处理机称 为 超流水线处理机。 指令流水线有8个或更多功能段的流水线处理 机称为超流水线处理机。
3 译码 2
3 6 9 12 2 5 8 11
1
1 4 7 10
取指
3 3 6 9 12 2 2 5 8 11
1 1 4 7 10 0 1 2 3 4 5 6 7 时间(∆t)
多发射指令流水线的时空图
计算机科学与技术
指令并行 度为m
返回公式页
yangruioot@yahoo.com.cn
5.5.1 超标量处理机
多条无数据相关和控制相关的指令在单发射处理机中 的时空图如图
度为1
部件
写结果
1 2 3 4 5 6 7 8 9 10 11 12
执行
1 2 3 4 5 6 7 8 9 10 11 12
译码
来自百度文库
1 2 3 4 5 6 7 8 9 10 11 12
取指 1 2 3 4 5 6 7 8 9 10 11 12 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
计算机科学与技术
yangruioot@yahoo.com.cn
由4个操作部件组成的单发射处理机
来自指 令Cache
IF ID
FA1 FA2 FA3 浮点加法部件
MD1 MD2 MD3 乘除法部件
AL 定点ALU部件
LS 取数存数部件
WR 通用寄存器 后行写数栈
计算机科学与技术
yangruioot@yahoo.com.cn
图: 单发射指令流水线的时空图
计算机科学与技术
yangruioot@yahoo.com.cn
2 多发射指令流水线
每个周期同时取多条指令、同时译码多条指令, 同时执行多条指令,同时写回多个运算结果。 需要设置多个取指令部件,多个指令译码部件和 多个写结果部件。 设置多个指令执行部件,有些指令执行部件采用 流水线结构。 当多个结果同时产生时,在不发生数据相关的前 提下,可以同时写多个结果。 目标是每个时钟周期平均执行多条指令,ILP的期 望值大于1。
相关文档
最新文档