[发明专利]加载数据到向量寄存器的方法、处理器、设备、介质在审
申请号: | 202211664244.0 | 申请日: | 2022-12-23 |
公开(公告)号: | CN116302099A | 公开(公告)日: | 2023-06-23 |
发明(设计)人: | 林志翔;崔泽汉 | 申请(专利权)人: | 海光信息技术股份有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F9/38 |
代理公司: | 北京市柳沈律师事务所 11105 | 代理人: | 万里晴 |
地址: | 300392 天津市华苑产业区*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 加载 数据 向量 寄存器 方法 处理器 设备 介质 | ||
提供一种利用Gather指令加载数据到向量寄存器的方法、处理器、电子设备、非暂时存储介质,该方法包括:通过Gather指令的多个加载操作中的第一组加载操作来将内存中的数据加载到第一向量寄存器;通过Gather指令的多个加载操作中的第二组加载操作来将内存中的数据加载到第二向量寄存器,其中,所述第二向量寄存器与所述第一向量寄存器不同,其中第一组加载操作的最后一个加载操作和第二组加载操作的第一个加载操作在Gather指令的多个加载操作中是相邻的;将所述第一向量寄存器中的数据和所述第二向量寄存器中的数据合并到一个向量寄存器中。
技术领域
本申请涉及集成电路领域,且更具体地涉及利用Gather指令加载数据到向量寄存器的方法、处理器、电子设备、非暂时存储介质。
背景技术
指令集是CPU中用来计算和控制计算机系统的一套指令的集合。指令集一般分为精简指令集(Reduced Instruction Set Computer,RISC)和复杂指令集(ComplexInstruction Set Computer,CISC)。
现代处理器中包含向量处理单元,能够进行数据并行计算,是处理器的重要部件。而单指令多数据SIMD(Single Instruction Multiple Data)指令集指单指令多数据流技术,可用一组指令对多组数据通进行并行操作。处理器向量单元的核心是其支持的SIMD指令集(也称为浮点指令集、向量指令集)和向量寄存器。SIMD指令可以在一个控制器上控制同时多个平行的处理微元,一次指令运算执行多个数据流,这样可以提高程序的运算速度。SIMD指令可对控制器上的一组数据(又称“数据向量”)同时分别执行相同的操作从而实现空间上的并行。SIMD有助于中央处理单元(Central Processor Unit,CPU)实现数据级并行(Data Level Parallelism,DLP)。
向量寄存器,又称浮点寄存器,相比普通的通用寄存器可以存储多个元素,是运行SIMD指令集的核心存储部件。向量寄存器不同于标量寄存器只能存储一组数据,向量寄存器能够存储多组数据(整数或者浮点数),根据具体实现的不同可能是128/256/512位宽。而SIMD指令集的一条SIMD指令可以同时对存储于向量寄存器的多个元素进行操作。例如AVX2指令集被用于现代处理器中。该指令集中提供有加载(加载)指令用于一次性加载内存中连续存放的多个值至向量寄存器中,以及置换(permute)指令对向量寄存器内的元素进行动态重构。
在数字信号处理(Digital Signal Processing,DSP)设计领域,Gather/Scatter(聚集/分散)指令可以由程序来使用,Gather指令可以从内存中的不同位置加载一组数据到寄存器,而Scatter指令可以将寄存器中的数据写到内存中的不同位置。
在跨距访存支持即访存时,每个SIMD数据的向量数据元素可以来自不相邻的内存地址。AVX2中Gather指令的操作数是一个基地址加一个向量寄存器,向量寄存器中存放着SIMD数据中各个元素相对基地址的偏移量(Displacement)是多少,CPU可以实现若干不连续数据“聚集”到一个SIMD寄存器中。Scatter指令可以将寄存器中的数据“分散”写到内存中的不同位置。Gather指令和Scatter指令是复杂的指令,会被拆分成很多个微操作来分别执行各个加载操作和写回操作。
需要提升Gather指令的微操作间的并行度来缩短指令的执行时间。
发明内容
根据本申请的一个方面,提供一种利用Gather指令加载数据到向量寄存器的方法,包括:通过Gather指令的多个加载操作中的第一组加载操作来将内存中的数据加载到第一向量寄存器;通过Gather指令的多个加载操作中的第二组加载操作来将内存中的数据加载到第二向量寄存器,其中,所述第二向量寄存器与所述第一向量寄存器不同,其中第一组加载操作的最后一个加载操作和第二组加载操作的第一个加载操作在Gather指令的多个加载操作中是相邻的;将所述第一向量寄存器中的数据和所述第二向量寄存器中的数据合并到一个向量寄存器中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于海光信息技术股份有限公司,未经海光信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211664244.0/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置