流水线设备厂家【免费设计图纸】

专注流水线定制7年源头厂家生产,2000多客户共同选择,支持上门安装

全国咨询热线

17322111266
当前位置:主页 > 流水线设备 > 工业流水线 >

管道技术

文章出处:未知 人气:发表时间:2021-04-27 09:38

声明:详细资料

流水线技术是指一种准并行处理技术,在这种技术中,当一个程序被执行时,多个指令重叠操作。用于流水线芯片。在CPU中,5-6个不同功能的电路单元组成一个指令处理流水线步骤,然后由这些电路单元分别执行,这样一个CPU时钟周期就可以完成一条指令,从而提高CPU运算速度。经典奔腾的每个整数流水线分为取指令、解码、执行、回写结果四个阶段,浮点流水线分为八个阶段。

管道技术_

借鉴工业流水线制造的思想,现代CPU也采用流水线设计。在工业制造中使用装配线可以提高单位时间的产量;CPU采用流水线设计也有助于提高CPU的频率。

首先,以汽车装配为例,说明装配线的工作模式。假设组装汽车需要四个步骤:

同时相应需要冲压、焊接、喷漆、总装四个工人。采用流水线,四辆车同时组装。不采用流水线的话,依次经过以上四个步骤组装第一辆车,组装下一辆车。这种原始的方式在最早的工业制造中被采用。没有流水线原有的制造方法,一次只组装一辆车。

不久后发现,一辆车在一定时间内组装完毕,其他三个工人都闲置着,显然是对资源的极大浪费。于是,我们开始思考有效利用资源的方法:第一辆车冲压后进入焊接工序时,要立即开始冲压第二辆车,而不是等到第一辆车全部经过四道工序。之后,每辆车在前一次冲压完成后立即进入冲压过程,这样就可以保证后续生产中四个工人始终处于运行状态,不会造成人员闲置。这种生产方式就像流水一样,所以叫流水线。

CPU的工作也可以大致分为四个步骤:指令获取、解码、运算、结果写入。采用管道设计后,指令(如待组装的汽车)可以连续处理。在同样长的时间内,显然流水线设计的CPU可以处理更多的指令。

装配线功能复杂,种类繁多。如果按处理级别分类,流水线可以有操作组件级、指令级和处理器级;如果按照管道可以完成的动作数量来分类,可以分为单功能管道和多功能管道;如果按照管道内部功能部件的连接方式分类,有线性管道和非线性管道;按照可处理对象分类,也可以有标量管道和矢量管道。

单功能流水线:只完成一个运算,如乘法或浮点运算,多用于数字信号处理器(DSPs)。每个处理器都可以并行执行自己的功能,从而加快了整机的处理速度。

衡量流水线处理模式性能的写入数据主要由三个参数决定:吞吐量、效率和加速比。

指计算机中的流水线在特定时间内可以处理的任务数或输出数据结果数。流水线的吞吐率可以进一步分为最大吞吐率和实际吞吐率。它们主要与流水线段的处理时间和缓存寄存器的延迟时间有关。流水线段的处理时间越长,缓存寄存器的延迟时间越大,这个流水线的吞吐量就会越小。因为,在线性流水线中,最大吞吐率t

/1,其中m为流水线的段数,I为特定进程段的执行时间。如果为,管道中的段数

越多,流程的执行时间越长,这个流水线的理论吞吐量越小。

因此,管道瓶颈部分的处理主要在于减少管道段的处理时间。通常有两种方法可以实现这一点:

1、拆分流水线的瓶颈部分,让任务可以完全流水线化。流水线段的处理时间过长,通常是任务阻塞造成的,会导致流水线在同一个时钟周期内无法启动另一个操作。可以对流水线段进行划分,在每个小流水线段的中间设置一个缓冲寄存器,对前一个流水线段的任务进行缓冲,使流水线能够充分流动。如果X流水线段的处理时间是3T,那么X流水线段可以细分为三段,这样每段都有相同的功能,但是处理时间变成了3t/3=t。

在流水线中,瓶颈部分设置多个相同的流水线段进行并行处理。还有一种处理流段处理时间长的方法,就是用多个相同的并行流段代替瓶颈流段,在前面设置一个调度单元来调度每个流段的任务。仍然假设瓶颈流段的处理时间为3T,所以三个平行流段同时处理后,实际需要的时间只有 t,这样就缩短了管段的处理时间,但很少采用这种方法,因为三个相同的管段并联时成本较高,调度单元处理起来比较麻烦。

指采用串行模式后,一条流水线所花费的时间T0与流水线所花费的时间t之比。值越大,管道的工作安排越好。

使用效率:指生产线上各部件的利用率。因为管道开始工作是有设置时间的;最后有一个清空时间,所以每个组件不可能一直工作,总有某个组件在某个时间处于空闲状态。这条生产线的工作效率可以用工作零件与总零件的比率来说明。

流水线处理是一种时间重叠并行处理的处理技术,具体来说就是流水线化一个或多个操作以提高性能。为了实现这一点,管道必须始终保持畅通,这样任务才能顺利进行。但是,实际上,有两种情况会导致管道停止或无法启动:

1.多个任务在同一时间段争夺同一个流段。例如,如果数据和指令放在同一个存储器中,指令流水线中只有一个访问接口,那么两个指令将争夺存储器;在一些算术流水线中,一些运算将同时访问一个算术单元。

2.数据依赖。比如操作A必须得到操作B的结果,但是在操作B还没有开始之前,操作A必须等到操作B完成,两个操作不能同时执行。

SuperPipeline,也称为深度流水线,是一种提高cpu速度的常用技术。CPU处理指令由Clock驱动,每个时钟完成一级流水线操作。每个周期做的操作越少,需要的时间越短,时间越短,可以提高的频率越高。超级流水线是将cpu处理指令的操作进行细分,增加流水线级数来增加频率。频率高的时候,流水线满马力运行的时候,平均每个周期会完成一条指令(单个发出的情况下),所以cpu的处理速度会提高。当然,这是一种理想的情况。一般流水线阶段越多,执行重叠越多,竞争冲突的可能性越大,会对流水线性能产生一定的影响。现在很多CPU一起使用超标量和超级流水线技术,比如pentiumIV和流水线GHZ。

教科书中用于教学的经典MIPS只有五级流水。

将一条指令分成几个周期来实现多条指令的重叠处理,从而提高cpu组件利用率的技术称为标量流水线技术。超标量意味着cpu中通常有很多流水线,这些流水线可以并行处理。在单流水线结构中,虽然指令可以重叠执行,但它们仍然是顺序的,在每个周期中只能发出或退出一条指令。超级标量cpu支持指令级并行,每个周期可以发出多条指令(大多是2-4条)。可以制作cpu的IPC(InstructionPerClock),从而提高cpu的处理速度。超标量体系可以同时解码多条指令,并将可以并行执行的指令发送到不同的执行单元。在程序运行过程中,硬件(通常是状态记录单元和调度单元)完成指令调度。超标量主要使用硬件资源重复(比如有两套解码器和alu等。)来实现空间并行操作。众所周知的奔腾系列(大概从p-II开始),SUNSPARC系列的更高级模型,以及几款MIPS模型都采用了超标量技术。

VLIW:verlongstructionword(VLIW)是由美国耶鲁大学教授费希尔提出的。有点类似超标量,是实现多操作并行执行的指令,之所以放入一条指令是为了减少内存访问。通常一条指令有几百位,几个操作数,每条指令可以做几个不同的运算。编译器可以选择哪些指令可以并行执行。一般VLIW机只有一个控制器,每个周期启动一条长指令。长指令分为几个字段,每个字段控制相应的组件。因为编译器需要考虑数据相关性,避免冲突,尽可能使用并行来完成指令调度,所以硬件结构简单。

VLIW机很少,可能不容易实现。Transmeta是业内知名的VLIW公司之一,位于加州硅谷的SantaClara。它制作的机器是用X86指令集和VLIW实现的,具体信息可以访问公司网站。

通常计算机是标量机,而向量机是大型计算机,一般用于军工、天气预报等大型科学计算领域,这也说明向量机非常昂贵。国产的Galaxy计算机是由向量机的普通计算机进行的计算,如加减乘除,只能对一组数据进行运算,称为标量运算。向量运算通常是相同类型的标量运算的循环。向量运算通常是批量对多组数据进行相同的运算,结果也是一组数据。很多做科学计算的大型(巨型)机器都是向量机。

单指令多数据(简称SIMD)。SIMD结构的CPU有多个执行单元,但都在同一个指令单元的控制下。SIMD的表演优势:以加法指令为例。SISD的CPU解码加法指令后,执行组件首先访问内存,获取第一个操作数;然后再次访问内存,得到第二个操作数;只有这样才能进行求和。另一方面,在SIMD CPU中,指令解码后,几个执行单元同时访问内存,一次获取所有操作数进行运算。这一特点使SIMD特别适合数据密集型业务,如多媒体应用。AMD的3DNOW!技术的本质是SIMD,这使得

K6-2处理器在音频解码、视频回放、3D游戏等应用中表现出色。

金正毅,白。引用该论文王志平,王志平,王志平.微型计算机系统,1992,(10): 11 -22。

马丽,主编。高校计算机专业计算机组成原理及教材体系结构:人民邮电出版社,2004年7月

推荐产品

同类文章排行

其他产品新闻

最新资讯文章

供应信息