欢迎来到天天文库
浏览记录
ID:50166996
大小:4.14 MB
页数:64页
时间:2020-03-09
《计算机系统结构 第5章 向量流水与向量处理机.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第5章向量流水与向量处理机内容提要:本章首先简要介绍向量流水的基本概念与工作原理,然后介绍向量流水处理机的组成原理、向量操作长度控制与向量访问步长、向量处理方法、向量处理机多功能部件的并行操作以及向量处理性能的评估参数与评估方法。重点是向量流水机的组成原理、向量操作长度控制与向量访问步长、向量处理方法和向量处理机多功能部件的并行操作。难点是向量操作长度控制、向量处理方法、向量处理机多功能部件的并行操作过程。第5章向量流水与向量处理机5.1向量流水的概念与工作原理5.2向量处理与增强向量处理性能的方法5.3向量处理性能的评价参数与评价
2、方法5.4向量化编译技术5.5向量处理机举例5.1向量流水的概念与工作原理5.1.1向量流水的概念与特点5.1.2向量处理机的基本组成5.1.3向量启动时间与结果流出时间5.1.4向量操作长度控制与向量访问步长5.1.1向量流水的概念与特点1.向量流水的概念向量中各元素之间有固定的位置或者联系,在运算时各元素相互独立或关系很少。向量运算时各元素一般进行相同的操作。这样,只要能从存储器中不断地取出这些元素,就能进行流水处理,发挥流水线的效能。这样,把向量数据表示与流水线技术结合起来,就构成向量流水处理机,简称为向量流水机或向量处理机(
3、VectorProcessor)。2.向量流水处理的主要特点①一条向量指令相当于一个标量循环。这样,可降低对指令访问速度(带宽)的要求,还可消除标量机中由于循环而引起的控制(资源)相关。②每一个结果元素仅与参加运算的元素有关,与上一次运算的值无关,因此向量流水线可以有较大的深度。③若要访问的向量元素相邻,可存储到多体交叉存储器中,以提高访存速度。④在一般向量流水机中,允许访问存储器与有效地址的计算流水化,在高档向量流水机中还允许多个向量操作同时进行,即多向量并行操作。5.1.2向量处理机的基本组成1.向量处理机的类型向量元素及其处理
4、的结果元素可存放在存储器中,也可存放在寄存器堆中,故可分为两种类型:存储器—-存储器型和寄存器—-寄存器型。早期的向量处理机多属于存储器—-存储器型,比如TI公司的ASC机,CDC公司的STAR—100以及CYBER-205和ETA-10等。2.向量处理机的基本组成1976年美国CRAY公司推出寄存器—-寄存器结构的向量机,易操作,速度快,指令系统简洁,因而很快成为向量处理机的主流机型。比如CRAY公司的Y-MP和C-90,日本Fujitsu公司的VP2000、VPP300/500,以及我国的YH等。向量机的基本结构如图5.1所示,
5、由一个标量流水部件和一个向量流水部件组成。其中标量流水部件是为实现向量中的标量运算而设置的,包括标量功能部件和若干个标量寄存器。向量流水部件主要用于向量运算,包括向量功能部件、向量存取部件、向量寄存器以及向量控制器等。图5.1向量处理机基本系统结构3.向量运算【例5.1】设有长度同为64的两个向量X和Y,其地址分别由寄存器Rx和Ry表示,通过分析Y=a×X+Y,来说明向量运算过程,其中a为标量。解:根据题意a为标量,每一个向量元素占8个字节单元,在标量计算机中通过循环程序实现向量运算,程序如下:LDF0,a,;标量a送入寄存器F0A
6、DDIR4,Rx,#512;向量元素的末地址送入RLOOP:LDF2,0(Rx);取向量元素X(i)MULDF2,F0,F2;F2←a×X(i)LDF4,0(Ry);取向量元素Y(i)ADDDF4,F2,F4;F4←a×X(i)+Y(i)SD0(Ry),F4;存结果元素ADDIRx,Rx,#8;修改向量X元素的下标ADDIRy,Ry,#8;修改向量Y元素的下标SUBR10,R4,Rx;R10←(R4)-(Rx)BNZR10,LOOP;若没有结束转移到LOOP在向量机上使用向量机指令编程如下,其中Rx和Ry表示向量寄存器:LDF0,a
7、;标量a送入寄存器F0LVV1,Rx;取向量XMULTVV2,F0,V1;V2←a×XLVV3,Ry;取向量YADDVV4,V2,V3;V4←a×X+YSVRy,V4;存结果通过对上述程序进行分析可以看出,在标量机上进行运算共执行9×64+2=578条指令,其中还包含大量的延迟等待。而在向量机上进行运算,仅需要6条向量指令。5.1.3向量启动时间与结果流出时间在向量流水过程中也存在启动时间Tst,相当于标量流水线中填入时间,以设置向量操作所涉及到的参数,比如设置向量长度等。启动后结果连续输出,每输出一个结果的时间称为结果流出时间,可
8、用Ir表示。若设向量长度为n,则一条向量指令执行时间可表示如下:Tvp=Tst+n×Ir(5.1)【例5.2】在一个向量乘法流水线中,向量启动时间为10个时钟周期,启动后1个时钟周期流出一个结果,若向量长度为64,试求产生每一个结果向
此文档下载收益归作者所有