计算机系统结构流水线的分类、特点以及解决瓶颈的方法

221 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第4天,点击查看活动详情

1. 分类

1.1 从向下扩展和向上扩展的思路,可分类出在计算机系统不同等级上使用的流水线。

  • 向下扩展:子过程进一步细分,每个子过程经过的时间都同等程度的减少,吞吐率进一步提高。
  • 向上扩展:多个处理机之间进行流水。

1.2 按流水处理的级别可分为

  • 部件级(操作流水线),如浮点加法器流水线
  • 处理机级(指令流水线),例如:在采用先行控制器的处理机中,各功能部 件之间的流水线
  • 系统级(宏流水线),每个处理机对同一个数据流的不同部 分分别进行处理

1.3 按功能的多少可分为

  • 单功能流水线:只能完成一种固定功能的流水线

  • 多功能流水线:流水线的各段通过不同连接实现不同功能

1.4 按多功能的连接方式

  • 静态流水线:同一段时间内,多功能流水线中的各个功能段只能按照一种固定的方式连接,实现一种固定的功能。 只有连续出现同一种运算时,流水线的效率才能得到充分的发挥。

  • 动态流水线:在同一段时间内,多功能流水线中的各段可以按照不同的方式连接,同时执行多种功能。

1.5 按数据表示:

  • 标量流水机:没有向量数据,只能用标量循环方式来对向量、数组进行处理。

  • 向量流水机:设置有向量指令和向量运算硬件,能对向量、数组中的各个元素流水地处理。

2. 特点

  1. 只有连续提供同类任务才能充分发挥流水线的效率

  2. 在流水线的每一个流水线段中都要设置一个流水锁存器,是流水线中需要增加的主要硬件之一

  3. 各流水段的时间应尽量相等,流水线处理机的基本时钟周期等于时间最 长的流水段的时间长度

  4. 流水线需要有装入时间、充满时间和排空时间

  5. 在理想情况下,当流水线充满后,每隔Δt 时间将会有一个结果流出流水线

3. 解决影响流水线瓶颈的方法

将一个3△t时长的S2拆成3个△t时长的任务

image.png

image.png