用于SIMD处理器的寄存器文件数据读写装置和方法制造方法及图纸

技术编号:10962393 阅读:90 留言:0更新日期:2015-01-28 14:51
本发明专利技术提供了一种用于SIMD处理器的寄存器文件数据读写装置和方法,设计了一种按照矩阵形式排列的寄存器文件阵列,根据译码单元译码结果,利用寄存器索引地址和当前并行度确定待访问寄存器具体物理地址,在寄存器读写使能有效信号控制下,通过对寄存器中数据写回时的复制排序和读出时整合,大大减少了SIMD处理器的数据通路的复杂性,简化了DSP处理器的数据通路的设计,提高了DSP处理器的执行效率,获得更好的实时性能和资源利用率。

【技术实现步骤摘要】
用于SIMD处理器的寄存器文件数据读写装置和方法
本专利技术属于处理器体系结构设计领域,更具体地,涉及SIMD结构处理器的寄存器文件数据读写方法。
技术介绍
数字信号处理领域中,经常涉及对大量数据的处理。由于信号处理中数据量大、处理过程复杂,数字信号处理器不能很好地满足对数据处理实时性要求。随着计算机技术的快速发展,越来越多的数字信号处理器采用基于单指令多数据(SIMD)指令集的数据并行处理技术,即在同一个周期内多个功能单元并行执行数据运算,从而为提高数据处理的实时性提供了一种全新的方式。因此,需要设计出一种支持并行数据处理、高效且简单的寄存器文件读写,使SIMD处理器在进行大量数据处理时,能够实现多组数据并行处理。现有的SIMD处理器一般采用多发射方式提高数据处理的并行度,这就要求寄存器具有多个读和写端口,来满足执行单元的访问需要。SIMD处理器由于并行数据处理的需要,拥有更多的数据路径,寄存器的读写端口数也变得更多,随着端口数的增多,读写延迟也逐渐增大,限制了处理器的频率,影响了处理器的性能提升。
技术实现思路
为了克服现有技术的不足,本专利技术提供一种用于SIMD处理器的寄存器文件读写方法,通过在数据写入寄存器前进行复制和在数据读出寄存器后整合,降低了SIMD处理器的数据通路路径的复杂度,减少了寄存器路径的组合情况,简化了寄存器路径,从而大大降低了SIMD处理器的数据通路的设计难度。此外,本专利技术用于SIMD处理器寄存器文件读写方式在执行构令指令时具有更好的执行效率。本专利技术解决其技术问题所采用的技术方案是:包含数据存储器DRAM、寄存器数据写回单元、寄存器文件RegFIle和寄存器数据读出单元。所述数据存储器DRAM存储SIMD处理器执行时需要处理的数据;所述寄存器写回单元对需要写回到寄存器文件中数据进行预处理;根据所述处理器访问执行并行度Para,完成对待写回寄存器文件数据进行复制或者重新排序;SIMD处理器访问并行度为Para,Para=2p,0≤p≤n;所述SIMD处理器每次访问2p组寄存器,一个执行周期并行执行2p组数据处理,SIMD处理器总线最大支持2n组数据处理;所述寄存器文件包含w个寄存器,其中w=2n+m,n、m为正整数;所述寄存器在物理实现方式上按照N×M矩阵排列,其中N=2n表示列数,代表每组寄存器内具体寄存器个数,N等于所述SIMD处理器支持最大并行度,M=2m表示行数,代表寄存器文件包含组寄存器数;所述寄存器文件索引地址宽度为(n+m-1,0)位,每个寄存器的索引地址按照矩阵形式,先行后列自右向左依次编码,索引名称依次为R0~Rw-1;所述寄存器索引地址(n+m-1,n)位段代表的数值确定矩阵当前行号所在的行寄存器组的使能有效信号;所述寄存器数据读出单元对寄存器文件中待读出数据进行读取。本专利技术中提供了一种用于SIMD处理器的寄存器文件数据读写方法,包括以下步骤:1.初始化,将需要进行数据处理的数据存储在数据存储单元DRAM指定地址范围中,根据指令译码单元产生并行度Para、寄存器写使能信号、寄存器读使能信号、数据操作类型和待访问寄存器索引;2.根据译码控制信号,从DRAM指定地址范围中,按照当前执行并行度读出Para=2p组数据,通过总线送至寄存器数据写回单元;3.寄存器写回单元操作分为两类情况:一类为所述SIMD处理器在执行运算操作过程中不改变并行度Para,对待写回寄存器数据复制2n-p-1份,所有2n-p组数据依次填充总线并输出至寄存器文件;另一类为所述SIMD处理在执行运算操作过程中改变并行度Para,当所述处理器访问并行度为Para=2p时,将当前数据进行一次复制,若当前运算操作要求复制后的数据重新排序,按照操作要求完成该组数据重新排序,将当前两组数据按照输入顺序合并为包含2p+1个数据的组,改变当前执行并行度为Para=2p+1,对合并后的数据组再次进行复制2n-p-1-1份,所有2n-p-1组数据依次填充总线并输出至寄存器文件;4.寄存器文件根据待访问寄存器的索引地址(n+m-1,0)和当前并行度Para确定具体待访问寄存器具体位置;待访问寄存器索引高(n+m-1,n)位与寄存器文件中行号数值一致,确定该行寄存器写使能有效;根据待访问寄存器索引地址低(n-1,p)位确定具体列寄存器组写使能有效,当p≤n-1时,所述寄存器矩阵中列寄存器地址(n-1,p)与待访问寄存器地址(n-1,p)位段一致时,确定该列寄存器使能有效;当p>n-1时,所述寄存器矩阵中列寄存器使能均有效,当所述寄存器矩阵中寄存器所在行和列均为写使能信号有效时,该寄存器确定为写使能有效,将总线中与索引寄存器对应区间的数据写入目的寄存器中;5.寄存器读出单元读出寄存器文件待访问寄存器中的数据,根据待访问寄存器的索引地址(n+m-1,0)和当前并行度Para确定待访问寄存器具体位置;当寄存器读使能信号有效时,所述寄存器数据读出单元在寄存器读使能信号的控制下,读出待访问寄存器中的数据,按照寄存器索引地址由低向高依次依次输出至总线低2p个字段,寄存器数据读取完毕,寄存器文件中读出的数据进入到下一个执行单元中进行数据处理。本专利技术的有益效果是:设计了一种按照矩阵形式排列的寄存器文件阵列,根据译码单元译码结果,利用寄存器索引地址和当前并行度确定待访问寄存器具体物理地址,在寄存器读写使能有效信号控制下,通过对寄存器中数据写回时的复制排序和读出时整合,大大减少了SIMD处理器的数据通路的复杂性,简化了DSP处理器的数据通路的设计,提高了DSP处理器的执行效率,获得更好的实时性能和资源利用率。附图说明图1为寄存器文件阵列结构示意图。图2为SIMD处理器在执行不同操作指令时的数据读写通路示意图,其中,图2a是并行度Para=1时寄存器文件数据通路,图2b是并行度Para=2时寄存器文件数据通路,图2c是并行度Para=4时寄存器文件数据通路,图2d是执行复数乘时寄存器文件数据通路。具体实施方式下面结合附图和实施例对本专利技术进一步说明,本专利技术包括但不仅限于下述实施例。本专利技术用于SIMD处理器的寄存器文件数据读写结构包含数据存储器DRAM、寄存器数据写回单元、寄存器文件RegFIle、寄存器数据读出单元和相应的控制电路模块。所述数据存储器DRAM存储SIMD处理器执行时需要处理的数据。所述寄存器写回单元对需要写回到寄存器文件中数据进行预处理。根据所述处理器访问执行并行度Para,完成对待写回寄存器文件数据进行复制或者重新排序。SIMD处理器支持多种并行度Para,其中Para=2p,0≤p≤n。SIMD处理器访问并行度为Para,所述SIMD处理器每次访问2p组寄存器,一个执行周期并行执行2p组数据处理,SIMD处理器总线最大支持2n组数据处理。所述寄存器写回方法分为两类:一类为对于SIMD处理器在执行过程中不需要进行并行度改变的运算操作,SIMD处理器访问并行度为Para=2p,将待写回寄存器数据进行复制2n-p-1份,所有2n-p组数据依次填充总线并输出至寄存器文件;另一类为所述SIMD处理在执行过程中并行度改变的运算操作,SIMD处理器访问并行度为Para=2p,对于运算操作需要对数据进行复制或者改变数据顺序时本文档来自技高网...
用于SIMD处理器的寄存器文件数据读写装置和方法

【技术保护点】
一种用于SIMD处理器的寄存器文件数据读写装置,包括数据存储器DRAM、寄存器数据写回单元、寄存器文件RegFIle和寄存器数据读出单元,其特征在于:所述数据存储器DRAM存储SIMD处理器执行时需要处理的数据;所述寄存器写回单元对需要写回到寄存器文件中数据进行预处理;根据所述处理器访问执行并行度Para,完成对待写回寄存器文件数据进行复制或者重新排序;SIMD处理器访问并行度为Para,Para=2p,0≤p≤n;所述SIMD处理器每次访问2p组寄存器,一个执行周期并行执行2p组数据处理,SIMD处理器总线最大支持2n组数据处理;所述寄存器文件包含w个寄存器,其中w=2n+m,n、m为正整数;所述寄存器在物理实现方式上按照N×M矩阵排列,其中N=2n表示列数,代表每组寄存器内具体寄存器个数,N等于所述SIMD处理器支持最大并行度,M=2m表示行数,代表寄存器文件包含组寄存器数;所述寄存器文件索引地址宽度为(n+m‑1,0)位,每个寄存器的索引地址按照矩阵形式,先行后列自右向左依次编码,索引名称依次为R0~Rw‑1;所述寄存器索引地址(n+m‑1,n)位段代表的数值确定矩阵当前行号所在的行寄存器组的使能有效信号;所述寄存器数据读出单元对寄存器文件中待读出数据进行读取。...

【技术特征摘要】
1.一种用于SIMD处理器的寄存器文件数据读写装置,包括数据存储器DRAM、寄存器数据写回单元、寄存器文件RegFIle和寄存器数据读出单元,其特征在于:所述数据存储器DRAM存储SIMD处理器执行时需要处理的数据;所述寄存器写回单元对需要写回到寄存器文件中数据进行预处理;根据所述处理器访问执行并行度Para,完成对待写回寄存器文件数据进行复制或者重新排序;SIMD处理器访问并行度为Para,Para=2p,0≤p≤n;所述SIMD处理器每次访问2p组寄存器,一个执行周期并行执行2p组数据处理,SIMD处理器总线最大支持2n组数据处理;所述寄存器文件包含w个寄存器,其中w=2n+m,n、m为正整数;所述寄存器在物理实现方式上按照N×M矩阵排列,其中N=2n表示列数,代表每组寄存器内具体寄存器个数,N等于所述SIMD处理器支持最大并行度,M=2m表示行数,代表寄存器文件包含组寄存器数;所述寄存器文件索引地址宽度为(n+m-1,0)位,每个寄存器的索引地址按照矩阵形式,先行后列自右向左依次编码,索引名称依次为R0~Rw-1;所述寄存器索引地址(n+m-1,n)位段代表的数值确定矩阵当前行号所在的行寄存器组的使能有效信号;所述寄存器数据读出单元对寄存器文件中待读出数据进行读取。2.一种利用权利要求1所述装置用于SIMD处理器的寄存器文件数据读写的方法,其特征在于包括下述步骤:1)初始化,将需要进行数据处理的数据存储在数据存储单元DRAM指定地址范围中,根据指令译码单元产生并行度Para、寄存器写使能信号、寄存器读使能信号、数据操作类型和待访问寄存器索引;2)根据译码控制信号,从DRAM指定地址范围中,按照当前执行并行度读出Para=2p组数据,通过总线送至寄存器数据写回单元;3)寄存器写回单元操作分为两类情况:...

【专利技术属性】
技术研发人员:杨靓曹辉何卫强高向强金玉琳
申请(专利权)人:中国航天科技集团公司第九研究院第七七一研究所
类型:发明
国别省市:陕西;61

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

1