持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第4天,点击查看活动详情
1. 分类
1.1 从向下扩展和向上扩展的思路,可分类出在计算机系统不同等级上使用的流水线。
- 向下扩展:子过程进一步细分,每个子过程经过的时间都同等程度的减少,吞吐率进一步提高。
- 向上扩展:多个处理机之间进行流水。
1.2 按流水处理的级别可分为
- 部件级(操作流水线),如浮点加法器流水线
- 处理机级(指令流水线),例如:在采用先行控制器的处理机中,各功能部 件之间的流水线
- 系统级(宏流水线),每个处理机对同一个数据流的不同部 分分别进行处理
1.3 按功能的多少可分为
-
单功能流水线:只能完成一种固定功能的流水线
-
多功能流水线:流水线的各段通过不同连接实现不同功能
1.4 按多功能的连接方式
-
静态流水线:同一段时间内,多功能流水线中的各个功能段只能按照一种固定的方式连接,实现一种固定的功能。 只有连续出现同一种运算时,流水线的效率才能得到充分的发挥。
-
动态流水线:在同一段时间内,多功能流水线中的各段可以按照不同的方式连接,同时执行多种功能。
1.5 按数据表示:
-
标量流水机:没有向量数据,只能用标量循环方式来对向量、数组进行处理。
-
向量流水机:设置有向量指令和向量运算硬件,能对向量、数组中的各个元素流水地处理。
2. 特点
-
只有连续提供同类任务才能充分发挥流水线的效率
-
在流水线的每一个流水线段中都要设置一个流水锁存器,是流水线中需要增加的主要硬件之一
-
各流水段的时间应尽量相等,流水线处理机的基本时钟周期等于时间最 长的流水段的时间长度
-
流水线需要有装入时间、充满时间和排空时间
-
在理想情况下,当流水线充满后,每隔Δt 时间将会有一个结果流出流水线
3. 解决影响流水线瓶颈的方法
将一个3△t时长的S2拆成3个△t时长的任务