计算机系统结构 流水线技术-向量

本文介绍了向量处理方式,包括横向、纵向和纵横处理方式,并详细阐述了向量处理机的结构,如功能部件、向量寄存器组、标量寄存器和向量屏蔽寄存器。同时,提出了提高向量处理机性能的策略,如设置多个功能部件、采用链接技术和循环开采技术。最后,讨论了向量处理性能的评估参数和方法,如向量指令的处理时间、最大性能R∞和半性能长度n½,强调了向量长度对性能的影响。

一、向量处理方式

1)横向处理方式
2)纵向处理方式
3)纵横处理方式

下面以计算表达式 D = A * ( B + C )

(1)横向处理方式

逐个求出结果向量的各个元素

d1=a1×(b1+c1)
d2=a2×(b2+c2)

dN=aN×(bN+cN)

逐个求D中的N个分量,先进行相加k←b1+c1,其中k为暂存单元,然后相乘d1←k×a1 。
在每个向量元素的加乘运算中,都会发生数据相关的情况,而且当采用静态流水线时,还要进行2次
乘和加功能的转换。这样共会出现N次相关和2N次功能转换。因此,这种横向加工方式只适合于标量
循环算法,不适合于向量流水处理。

(2)纵向处理方式

纵向(垂直)加工方式:先对所有元素执行一种相同的运算,再对所有元素执行另一种相同的运算。

先算:
k1=b1+c1
k2=b2+c2

kN=bN+cN
再算:
d1=a1×k1
d2=a2×k2

dN=aN×kN

在两条向量指令间仅有一次数据相关,流水线功能的切换只需一次。

(3)纵横处理方式

对向量元素分组,每个组内采用纵向加工方式,组之间采用横向加工方式。

因为向量寄存器的长度有限。当向量长度超过向量寄存器可表示的最大限度n时,就必须分组加以处理。
设向量长度为N,则:N=s×n+r
其中n≤N,r<n,n、s、r均为正整数,s为组数,r为余数(余下的部分也作为一组处理)。

第一组计算:
k1~n=b1~n+c1~n
d1~n=a1~n×k1~n
第二组计算:
kn+1~2n=bn+1~2n+cn+1~2n
dn+1~2n=an+1~2n×kn+1~2n

每组内各有两条向量指令,各组内有一次数据相

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值