计算机系统 流水线技术

Python微信订餐小程序课程视频

https://edu.csdn.net/course/detail/36074

Python实战量化交易理财系统

https://edu.csdn.net/course/detail/35475

计算机系统 流水线技术

Mar 31, 2022 ✧ 字数统计:3.3k(字)    ♨︎ 阅读时长:11(分钟)

本文介绍计算机系统中采用的流水线技术,包括流水线相关的基础知识、工作原理、流水线技术对性能的改进、吞吐率、加速比和效率等相关的计算以及存在的问题等内容。

计算机系统 流水线技术_第1张图片

流水线技术简单介绍

流水线技术通过并行硬件(利用时间并行性,区别于空间并行性)来提高计算机系统的性能。

流水线技术把一项任务分解成若干项顺序执行的子任务,不同的子任务由不同的操作部件来负责执行,而这些部件可以同时并行工作,这项技术的关键在于重叠执行,通过这种方式可以在不增加硬件或者只增加少量硬件的前提下数倍的提升处理机运算速度。

计算机系统 流水线技术_第2张图片

流水线的分级

根据使用情况的不同,流水线可以分成三个级别:

(1)操作部件级流水线(运算符操作流水线)  将复杂的算术运算和逻辑运算组成流水线的工作方式。
(2)指令级流水线 把一条指令的执行过程分解成多个阶段,比如可以把某个指令分解为:取指令、分析指令、执行指令三个阶段。
(3)处理机间级流水线(宏流水线)  由 N(N>=2)个处理机通过存储器串行连接,每个处理机完成某项专门的任务,各个处理机所得到的结果需要存放到跟下一个处理机所共享的存储器里面。

流水线的分类

根据流水线的实际应用,可以从不同角度进行分类。

静态流水线:在同一时间内只能按照一种运算的连接方式进行工作(一定是单功能)。
动态流水线:在同一时间内允许按照多种不同运算的连接方式工作(一定是多功能)。

计算机系统 流水线技术_第3张图片

线性流水线:从输入到输出,每个功能段只允许经过一次,不存在反馈回路。
非线性流水线:从输入到输出,某些功能段将数次通过流水线,存在反馈回路,常用于递归调用。

单功能流水线:只能实现某种固定的功能,比如加法运算。
多功能流水线:各段可以进行不同的连接,通过不同的连接方式来实现不同的功能(资源利用率较高也更灵活,但控制更复杂)。

流水线的特点和工作原理

  • 流水线中处理的必须是连续的任务。
  • 在流水线每个操作部件的后面,都要有一个缓冲寄存器(锁存器),称为流水寄存器,这个缓冲寄存器用于保存本阶段的执行结果,以保证各个部件之间的速度是匹配的,以及各个部件独立、并行运行。换句话说,流水寄存器用于在相邻的两段“操作”之间传送数据,以保证提供后面要用到的数据的供应,并把各段的处理工作相互隔离。

你可能感兴趣的:(it,计算机)