标量流水技术

1.1控制流及其改变

流水的目的:

从系统结构上引入并行处理能力,提高计算机性能。

控制流:

被处理的指令序列的执行顺序。

顺序执行

例外

控制流发生改变的原因:

转移指令、过程调用和返回、协同程序、中断和自陷

 

1.2标量流水工作原理--重叠操作和先行控制

在计算机中不同部件或同一部件内的各种操作存在重叠部分。

指令解释方式分为:顺序、重叠、流水。

顺序执行指令:解释(处理)完一条指令再开始解释(处理)下一条。

上图为顺序解释执行 T=3*n*t

重叠操作方式 

重叠执行指令:

一种简单的流水方式,相邻指令不同阶段在时间上重叠。

重叠执行:T=(2*n+1)*t

更高重叠程度的解释执行: T=3*t+(n-1)*t=(n+2)t

 一次重叠工作方式:

先行控制方式

先行控制技术:

是预处理技术和缓冲技术的结合,通过对指令流和数据流的先行控制,使指令分析器和执行部件

尽可能的连续工作。

需增设指令缓冲栈、先行操作栈、数据缓冲栈。

缓冲深度:缓冲部件中寄存器个数。

D指缓>=D操作数>D=读栈>=D写栈

标量流水及特点

流水线

A technique designed into some computers to increase speed by starting the execution of one instruction before completing the previous one.

实现了指令在相同时间内重叠执行的技术,使CPU执行得更快的技术;

和程序的对应关系:

取指令取油桶
解码装入卡车
ALU操作拉到加油站
内存访问卸下油桶
写入返回油库

流水线的最高工作频率

流水线的各段处理时间相等

 

流水线的各段处理时间不想等

 

流水线技术特点

一条流水线通常由多个流水段组成;

每个流水段有专门的功能部件对指令进行某种加工;

各个流水段所需要的时间是相同的;

流水线工作阶段可分为建立、满载和排空三个阶段;

理想情况下,当流水线充满后,每隔△t时间就会有一个结果流出流水线。

标量流水的分类

按处理级别按工作方式按功能按处理数据类型按连接方式
操作部件级静态流水线单功能标量流水线线性流水线
指令级动态流水线多功能向量流水线非线性流水线
处理机级

流水线的主要性能及其分析

衡量指标

吞吐率:单位时间内能处理的任务数或输出结果的数量。

最大吞吐率:

 

 

实际吞吐率:小于最大吞吐率,原因是需要流水线的建立时间和排空时间。

eg:各段时间为△t ,深度为m的流水线 , 完成n个任务所需要的时间:

 T=m△t+(n-1)△t

实际吞吐率:

加速比:采用流水方式后,流水线工作方式与等效的串行工作方式的速度之比。

eg:执行n个任务,串行工作方式时间T1,m段流水线时间Tk,加速比:

 当n>>m,Sp=m,为了获得高加速比,流水线段数m应较大,称为加深流水深度。

效率:流水线中的功能段的利用率。

一般用流水线各段处于工作时间的时空区与流水线中各段总的时空区之比表示。

 流水线性能分析举例

多功能流水线的通病:吞吐率、效率、加速比都很低。

原因:
功能切换时,需要额外的排空和建立的时间开销;
总有一些不需要的功能段处于空闲;
数据相关问题。
流水线适用场合:求解的操作相同,并且输入、输出相互独立的运算。

1.3流水操作中的主要障碍

1.4先进的流水技术

1.5多线程处理技术

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值