一种向量读写方法、向量寄存器系统、设备及介质技术方案

技术编号:30706998 阅读:23 留言:0更新日期:2021-11-06 09:54
本申请公开了一种向量读写方法、向量寄存器系统、设备及介质,在获取到向量写指令时,通过向量寄存器控制器将待写入向量地址空间转换为待写入向量寄存器文件位地址,并针对非标准向量通过非标准向量转换单元转换为待写入非标准向量后执行写入,实现存入任意格式的向量数据。在获取到向量读指令时,通过向量寄存器控制器根据待读取宽度和待读取长度,将待读取向量地址空间转换为待读取向量寄存器文件位地址后进行读取,实现读取任意格式的向量数据。由此利用向量寄存器系统同时进行向量读取和向量写入的操作,并且可以输出任意格式的向量数据,同时可以存入任意格式的向量数据,从而能够支持更多非标准向量的向量预算。而能够支持更多非标准向量的向量预算。而能够支持更多非标准向量的向量预算。

【技术实现步骤摘要】
一种向量读写方法、向量寄存器系统、设备及介质


[0001]本申请涉及数据处理
,特别涉及一种向量读写方法、向量寄存器系统、设备及介质。

技术介绍

[0002]在处理器中,为了对向量做处理,需要向量指令、向量寄存器以及向量处理单元共同组成一个向量处理系统。向量是指由多个标量构成的一组数据,如[1,1,2,3,4,5]是一个长度为6的向量,其中的每个数字称为向量的一个元素,该元素所占空间的大小(所需bit数量)为该元素的宽度,也是该向量的宽度,如上面所举例之向量,其最大的数字为5,因在数字系统中,可以使用3个bit来表示数字0~7,故此上述向量的宽度可以设置为3Bit,即上述向量长6个元素,宽3bit。
[0003]现有技术中,由于向量寄存器只能输入、输出固定宽度、固定标准长度的数据,只能处理标准向量,也即,只能处理长度指符合2的次幂的向量,如2、4、8、16、32、64,例如,只能输出16bit*32的向量,对于非标准的向量无法处理,如一个5bit * 10的向量。且向量寄存器的寄存器位的大小是固定的,所以会存在无法有效利用所有寄存器位的情况。假如使用了32bit * 32的标准向量寄存器存储5bit*32的向量,那么每个寄存器位中会有32bit
ꢀ–ꢀ
5bit = 27bit无法被利用,一个向量中相邻两个寄存器位(元素)之间存在较多的空比特,向量寄存器灵活性低,存在资源浪费。

技术实现思路

[0004]有鉴于此,本申请的目的在于提供一种向量读写方法、向量寄存器系统、设备及介质,能够使得向量寄存器文件可以输出非标准向量,且在向量寄存器文件中一个向量的任意两个相邻元素之间没有空比特,实现了向量元素的连续存储,避免寄存器位无法被有效利用,提高向量寄存器文件的灵活性,节约资源,也可以支持更多的向量运算。其具体方案如下:第一方面,本申请公开了一种向量读写方法,应用于预设的向量寄存器系统,包括:通过向量寄存器控制器获取处理器发送的向量操作指令;所述向量操作指令包括向量写指令和/或向量读指令;若所述向量操作指令为所述向量写指令,通过所述向量寄存器控制器将所述向量写指令中的待写入向量地址空间转换为待写入向量寄存器文件位地址;通过非标准向量转换单元获取向量处理单元发送的第一预设长宽的待写入标准向量,并在接收到的所述向量寄存器控制器发送的第一转换指令表明所述待写入向量中的有效向量为非标准向量时,将所述待写入标准向量转换为待写入非标准向量;通过所述向量寄存器文件获取所述待写入向量寄存器文件位地址,并将所述待写入非标准向量存储到所述待写入向量寄存器文件位地址下;
若所述向量操作指令为所述向量读指令,根据所述向量读指令对应的待读取宽度和待读取长度,通过所述向量寄存器控制器将所述向量读取指令中的待读取向量地址空间转换为待读取向量寄存器文件位地址;所述待读取宽度为标准宽度或非标准宽度,所述待读取长度为标准长度或非标准长度;通过向量寄存器文件获取所述待读取向量寄存器文件位地址,并输出所述待读取向量寄存器文件位地址对应的待读取向量。
[0005]可选的,所述根据所述向量读指令对应的待读取宽度和待读取长度,通过所述向量寄存器控制器将所述向量读取指令中的待读取向量地址空间转换为待读取向量寄存器文件位地址,包括:判断向量长宽寄存器是否向所述向量寄存器控制器发送,与所述向量读指令对应的待读取长度和待读取宽度;如果是,则根据所述向量读取指令中的待读取向量地址空间、所述待读取长度和所述待读取宽度确定待读取向量寄存器文件位地址。
[0006]可选的,所述根据所述向量读取指令中的待读取向量地址空间、所述待读取长度和所述待读取宽度确定待读取向量寄存器文件位地址,包括:将所述待读取长度与所述待读取宽度的乘积作为所述待读取向量在所述向量寄存器文件中的数据位地址长度;从所述向量寄存器控制器中的第一寄存器中确定出所述待读取向量地址空间在所述向量寄存器文件中的待读取首地址,并将所述数据位地址长度和所述待读取首地址输入到所述向量寄存器文件的读数据地址线中,以便所述向量寄存器文件获取到所述待读取向量寄存器文件位地址。
[0007]可选的,所述通过向量寄存器文件获取所述待读取向量寄存器文件位地址,包括:通过向量寄存器文件的读数据地址线获取所述数据位地址长度,其中,所述读数据地址线的宽度为所述向量寄存器文件所能存储的数据比特数,以便对所述向量寄存器文件进行精确定到比特的操作;通过向量寄存器文件的读数据地址线获取所述待读取首地址,并将所述数据位地址长度移位所述待读取首地址的长度,得到所述待读取向量寄存器文件位地址,其中,所述读数据地址线由移位控制器控制。
[0008]可选的,所述判断向量长宽寄存器是否向所述向量寄存器控制器发送,与所述向量读指令对应的待读取长度和待读取宽度之后,还包括:如果否,则从所述向量寄存器控制器中的第一寄存器中确定出所述待读取向量地址空间在所述向量寄存器文件中的待读取首地址;将所述向量寄存器控制器中的第二寄存器中与所述待读取向量地址空间对应的向量长度确定为待读取长度,并将所述向量寄存器控制器中的第三寄存器中与所述待读取向量地址空间对应的向量宽度确定为待读取宽度;将所述待读取长度与所述待读取宽度的乘积作为所述待读取向量在所述向量寄存器文件中的数据位地址长度;将所述数据位地址长度和所述待读取首地址输入到所述向量寄存器文件的读数据地址线中,以便所述向量寄存器文件获取到所述待读取向量寄存器文件位地址。
[0009]可选的,所述输出所述待读取向量寄存器文件位地址对应的待读取向量之后,还包括:通过非标准向量转换单元获取所述待读取向量,并在接收到的所述向量寄存器控制器发送的第二转换指令表明所述待读取向量为非标准向量时,将所述待读取向量转换为第二预设长宽的标准向量,将转换得到的待读取标准向量发送给向量处理单元,其中,所述第二预设长宽为预设的所述向量处理单元的输入向量的长宽,标准向量为长度为2的次幂的向量。
[0010]可选的,所述在接收到的所述向量寄存器控制器发送的第二转换指令表明所述待读取向量为非标准向量时,将所述待读取向量转换为第二预设长宽的标准向量,包括:接收所述向量寄存器控制器发送的所述第二转换指令,其中,所述第二转换指令中包括所述待读取向量的第一实际长度和第一实际宽度;在所述第一实际长度不为2的次幂时,表明所述待读取向量为非标准向量,则从所述非标准向量转换单元中读取所述第二预设长宽,并将所述待读取向量的向量长度从所述第一实际长度补齐到所述第二预设长宽中的预设长度,将所述待读取向量的每个元素的向量宽度从所述第一实际宽度补齐到所述第二预设长宽中的预设宽度,以将所述待读取向量转换为所述第二预设长宽的标准向量。
[0011]可选的,所述向量寄存器文件中的向量元素是连续存储的,所述向量寄存器文件中的一个向量中任意两个相邻的向量元素之间没有空比特位。
[0012]第二方面,本申请公开了一种向量寄存器系统,包括:向量寄存器控制器,用于获取处理器发送的向量操作指令;所述向量操作指令包括向量写指令和/或本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种向量读写方法,其特征在于,应用于预设的向量寄存器系统,包括:通过向量寄存器控制器获取处理器发送的向量操作指令;所述向量操作指令包括向量写指令和/或向量读指令;若所述向量操作指令为所述向量写指令,通过所述向量寄存器控制器将所述向量写指令中的待写入向量地址空间转换为待写入向量寄存器文件位地址;通过非标准向量转换单元获取向量处理单元发送的第一预设长宽的待写入标准向量,并在接收到的所述向量寄存器控制器发送的第一转换指令表明所述待写入向量中的有效向量为非标准向量时,将所述待写入标准向量转换为待写入非标准向量;通过所述向量寄存器文件获取所述待写入向量寄存器文件位地址,并将所述待写入非标准向量存储到所述待写入向量寄存器文件位地址下;若所述向量操作指令为所述向量读指令,根据所述向量读指令对应的待读取宽度和待读取长度,通过所述向量寄存器控制器将所述向量读取指令中的待读取向量地址空间转换为待读取向量寄存器文件位地址;所述待读取宽度为标准宽度或非标准宽度,所述待读取长度为标准长度或非标准长度;通过向量寄存器文件获取所述待读取向量寄存器文件位地址,并输出所述待读取向量寄存器文件位地址对应的待读取向量。2.根据权利要求1所述的向量读写方法,其特征在于,所述根据所述向量读指令对应的待读取宽度和待读取长度,通过所述向量寄存器控制器将所述向量读取指令中的待读取向量地址空间转换为待读取向量寄存器文件位地址,包括:判断向量长宽寄存器是否向所述向量寄存器控制器发送,与所述向量读指令对应的待读取长度和待读取宽度;如果是,则根据所述向量读取指令中的待读取向量地址空间、所述待读取长度和所述待读取宽度确定待读取向量寄存器文件位地址。3.根据权利要求2所述的向量读写方法,其特征在于,所述根据所述向量读取指令中的待读取向量地址空间、所述待读取长度和所述待读取宽度确定待读取向量寄存器文件位地址,包括:将所述待读取长度与所述待读取宽度的乘积作为所述待读取向量在所述向量寄存器文件中的数据位地址长度;从所述向量寄存器控制器中的第一寄存器中确定出所述待读取向量地址空间在所述向量寄存器文件中的待读取首地址,并将所述数据位地址长度和所述待读取首地址输入到所述向量寄存器文件的读数据地址线中,以便所述向量寄存器文件获取到所述待读取向量寄存器文件位地址。4.根据权利要求3所述的向量读写方法,其特征在于,所述通过向量寄存器文件获取所述待读取向量寄存器文件位地址,包括:通过向量寄存器文件的读数据地址线获取所述数据位地址长度,其中,所述读数据地址线的宽度为所述向量寄存器文件所能存储的数据比特数,以便对所述向量寄存器文件进行精确定到比特的操作;通过向量寄存器文件的读数据地址线获取所述待读取首地址,并将所述数据位地址长度移位所述待读取首地址的长度,得到所述待读取向量寄存器文件位地址,其中,所述读数
据地址线由移位控制器控制。5.根据权利要求2所述的向量读写方法,其特征在于,所述判断向量长宽寄存器是否向所述向量寄存器控制器发送,与所述向量读指令对应的待读取长度和待读取宽度之后,还包括:如果否,则从所述向量寄存器控制器中的第一寄存器中确定出所述待读取向量地址空间在所述向量寄存器文件中的待读取首地址;将所述向量寄存器控制器中的第二寄存器中与所述待读取向量地址空间对应的向量长度确定为待读取长度,并将所述向量寄存器控制器中的...

【专利技术属性】
技术研发人员:孔令军庞兆春宋琪
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1