[发明专利]用于执行向量扫描运算的数据处理设备和方法有效
申请号: | 201510089213.0 | 申请日: | 2015-02-27 |
公开(公告)号: | CN104899180B | 公开(公告)日: | 2019-05-17 |
发明(设计)人: | 马蒂亚斯·伯特歇尔;贾科莫·加布雷利;姆布·埃约勒-莫诺诺 | 申请(专利权)人: | ARM有限公司 |
主分类号: | G06F17/16 | 分类号: | G06F17/16 |
代理公司: | 北京东方亿思知识产权代理有限责任公司 11258 | 代理人: | 李晓冬 |
地址: | 英国*** | 国省代码: | 英国;GB |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 执行 向量 扫描 运算 数据处理 设备 方法 | ||
公开了用于执行向量扫描运算的数据处理设备和方法。向量扫描运算被执行以产生结果向量的M个数据元素,其中每个结果数据元素对应于额外数据元素S与源向量操作数V的至少一些数据元素的组合。向量扫描运算被使用多个步骤执行,每个步骤包括用于组合数据元素的一个或多个组合运算。这些步骤中的至少一个步骤包括两个或多个并行执行的组合运算。这些步骤中的至少两个步骤包括用于组合数据元素与额外数据元素S的组合运算。该方法使得向量扫描运算在少于M个数据元素有效的情况下能够以更少的步骤被执行,从而使得向量扫描运算可以被更快地执行。
技术领域
本技术涉及数据处理领域。更具体地,本技术涉及用于执行向量扫描运算的数据处理设备和方法。
背景技术
一种改进数据处理设备的性能的已知技术是提供电路来支持向量运算的执行。在至少一个向量操作数上执行向量运算,其中每个向量操作数包括多个向量元素。执行向量运算涉及在一个或多个向量操作数内的各种向量元素上重复地应用运算。在支持执行向量运算的典型数据处理系统中,提供向量寄存器文件用于存储向量操作数。与执行等价的系列标量运算相比,通过使用向量运算可以实现显著的性能优势。
一种已知类型的向量运算是向量扫描运算,其中预定的组合运算被重复应用到增加数目的数据元素。组合运算可以采用多种形式,诸如加法运算、乘法运算、最小值选择运算、最大值选择运算等。作为执行向量扫描运算的结果,结果序列被生成,其中每个结果与应用组合运算到不同数目的数据元素有关。作为具体示例,扫描运算可以指定加法运算作为组合运算,并且这种扫描加法运算有时被称为前缀求和运算。考虑输入数字序列x0,x1,x2,...,应用扫描加法运算产生了结果序列y0,y1,y2,...,其中:
y0=x0,y1=x0+x1,y2=x0+x1+x2,依次类推。
在向量扫描运算的一些示例中,额外数据元素S可以与源向量的向量数据元素V组合以产生一系列结果(在扫描加法运算的情况下):
y0=S+x0,y1=S+x0+x1,y2=S+x0+x1+x2,依次类推。
本技术寻求提供用于执行这样的向量扫描运算的改进设备和方法。
发明内容
根据一个方面,本技术提供了一种数据处理设备,包括:
向量寄存器存储器,该向量寄存器存储器被配置为存储包括多个数据元素的向量操作数;
处理电路,该处理电路被配置为处理来自向量寄存器存储器的向量操作数;以及
控制电路,该控制电路被配置为控制处理电路对源向量操作数的M个数据元素V[0]至V[M-1]和至少一个额外数据元素S执行向量扫描运算,以产生结果向量操作数的M个数据元素R[0]至R[M-1],其中对于N≤M且0≤i<N,结果向量操作数的数据元素R[i]具有对应于至少一个额外数据元素S和源向量操作数的至少一些数据元素V[0]至V[i]的组合的值;
其中,控制电路被配置为控制处理电路在多个步骤中执行向量扫描运算,每个步骤用于从第一向量产生第二向量,其中用于第一步骤的第一向量包括源向量操作数的数据元素,并且用于其他步骤的第一向量包括在前步骤的第二向量,每个步骤包括用于组合第一向量的数据元素与至少一个额外数据元素S或第一向量的另一个数据元素以产生第二向量的数据元素的至少一个组合运算;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于ARM有限公司,未经ARM有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510089213.0/2.html,转载请声明来源钻瓜专利网。