[发明专利]数据处理装置和方法有效
申请号: | 201680043035.0 | 申请日: | 2016-05-25 |
公开(公告)号: | CN107851013B | 公开(公告)日: | 2022-04-29 |
发明(设计)人: | 雅各布·伊彭;姆布·埃约勒;西蒙·霍西 | 申请(专利权)人: | ARM有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30 |
代理公司: | 北京东方亿思知识产权代理有限责任公司 11258 | 代理人: | 林强 |
地址: | 英国*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据处理 装置 方法 | ||
一种装置包括处理电路,该处理电路用于响应于标识包括M位数据元素的第一输入矢量的元素大小增加指令来生成包括至少一个N位数据元素的结果矢量,其中NM。第一和第二形式的元素大小增加指令被提供来用于分别使用第一输入矢量的第一子集和第二子集的数据元素来生成结果矢量。第一子集和第二子集的数据元素在第一输入矢量中的位置是交错的。
技术领域
本技术涉及数据处理领域。更具体地,涉及对具有多个数据元素的矢量的处理。
背景技术
一些数据处理装置可以支持如下矢量处理:其中可以对矢量的每个数据元素执行给定的处理运算,以产生结果矢量的相应数据元素。这允许利用单个指令来处理多个不同的数据值,以减小处理给定数量的数据值所需的程序指令的数量。矢量处理也可以被称为SIMD(单指令多数据)处理。
发明内容
至少一些示例提供了一种装置,该装置包括:处理电路,用于响应于标识包括多个M位数据元素的至少第一输入矢量的元素大小增加指令,生成包括多个结果数据元素的结果矢量,其中结果数据元素包括至少一个N位数据元素,其中NM;其中响应于第一形式的元素大小增加指令,处理电路被配置为使用第一输入矢量的第一子集的数据元素来生成结果矢量;响应于第二形式的元素大小增加指令,处理电路被配置为使用第一输入矢量的第二子集的数据元素来生成结果矢量;并且第一子集的数据元素在第一输入矢量中的位置与第二子集的数据元素在第一输入矢量中的位置是交错的。
至少一些实施例提供了一种装置,该装置包括:用于生成的装置,用于响应于标识包括多个M位数据元素的至少第一输入矢量的元素大小增加指令而生成包括多个结果数据元素的结果矢量,其中结果数据元素包括至少一个N位数据元素,其中NM;其中响应于第一形式的所述元素大小增加指令,用于生成的装置被配置为使用第一输入矢量的第一子集的数据元素来生成结果矢量;响应于第二形式的元素大小增加指令,用于生成的装置被配置为使用第一输入矢量的第二子集的数据元素来生成结果矢量;并且第一子集的数据元素在第一输入矢量中的位置与第二子集的数据元素在第一输入矢量中的位置是交错的。
至少一些实施例提供了一种数据处理方法,该方法包括:用于响应于标识包括多个M位数据元素的至少第一输入矢量的元素大小增加指令,生成包括多个结果数据元素的结果矢量,其中结果数据元素包括至少一个N位数据元素,其中NM;其中响应于第一形式的元素大小增加指令,使用第一输入矢量的第一子集的数据元素来生成结果矢量;响应于第二形式的元素大小增加指令,使用第一输入矢量的第二子集的数据元素来生成结果矢量;并且第一子集的数据元素在第一输入矢量中的位置与第二子集的数据元素在第一输入矢量中的位置是交错的。
至少一些示例提供了一种存储在计算机可读存储介质上的计算机程序,所述计算机程序在由数据处理装置执行时提供虚拟机,该虚拟机提供与上述装置相对应的指令执行环境。
附图说明
现在将通过仅作为示例的方式参考附图描述本发明的实施例,在附图中:
图1示意性示出支持矢量处理的数据处理装置的示例;
图2和图3A示出了第一和第二形式的元素大小增加指令;
图3B示出了第二形式的元素大小增加指令的替代实现方式;
图4示出在硬件中提供的用于处理矢量的各元素的并行处理通道的示例;
图5示出了第一和第二形式的元素大小增加指令被提供时可以避免的解封装(unpacking)操作的示例;
图6和7示出第一和第二形式的元素大小增加指令的另一示例;
图8和9示出第一和第二形式的元素大小增加指令的第三示例;
图10至13示出用于分别在各交错的数据元素子集上操作的第一、第二、第三和第四形式的元素大小增加指令的示例;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于ARM有限公司,未经ARM有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201680043035.0/2.html,转载请声明来源钻瓜专利网。