在计算机体系结构中,线性流水线处理器和非线性流水线处理器有什么区别?


线性流水线处理器

线性流水线是一种将任何顺序过程分解成有限的子过程的方法,这些子过程彼此独立,以便每个子过程都可以在一个独特的专用段中实现,并且所有这些段并发工作。因此,整个函数被分成单独的任务,这些子任务由一个段实现。

计算机体系结构中流水线的概念对应于技术装配线。就像市场上有制造、包装和配送部门一样,一个产品由制造部门制造,而包装部门正在包装产品时,制造部门又制造了一个新产品。

对于具有以下特征的系统,流水线可以有效地执行:

  • 系统连续执行基本功能。

  • 基本功能应该可以分成独立的阶段,每个阶段都有基本的重叠。

  • 各个阶段的难度应该大致相同。

非线性流水线处理器

控制转移是非线性的。动态流水线除了简化连接外,还可以实现前馈和反馈连接。动态流水线可以同时从多个预约表启动任务,从而在同一流水线中实现多个功能的多次启动。

线性流水线非线性流水线
线性流水线是静态流水线,因为它们可以用于实现固定功能。
非线性流水线是动态流水线,因为它们可以重新构造以多次实现可变函数。
线性流水线只允许串行连接。
非线性流水线除了串行连接外,还可以实现前馈和反馈连接。
将给定函数细分为一系列线性排序的子函数在关联上很容易。
函数划分在关联上很复杂,因为流水线阶段除了串行连接外,还通过循环相互连接。
流水线的输出由前一阶段产生。
流水线的输出不一定是前一阶段产生的。
预约表很简单,因为数据流是线性的。
预约表是非平凡的,因为数据流没有线性流。
静态流水线由单个预约表确定。
动态流水线由多个预约表定义。
所有对静态流水线的启动都使用相同的预约表。
动态流水线可以允许多个启动遵循多个预约表的组合。

更新于:2021年7月27日

4K+ 次浏览

启动您的职业生涯

完成课程获得认证

开始
广告
© . All rights reserved.