【技术实现步骤摘要】
本专利技术属于微处理器流水线结构
,涉及一种提高store类指令执行效率的流水线结构及方法。
技术介绍
store指令是指对数据执行写操作的一类指令。基于RISC架构的处理器仅能通过store指令将数据输出到存储器,即通过store指令将指令指定的数据写入到指令指定的存储器单元,其执行主要分为两个阶段:一、计算存储器单元地址;二、取出执行写操作的操作数,并将其写入到第一步计算得出的存储器单元中。ARM、PowerPC, SPARC等典型的RISC架构均支持store指令的寄存器寻址,即计算存储器地址的两个操作数和被写的操作数均保存在寄存器文件内。据文献“UT699Micro-Processor Functional Manual ”、“Rad_Hard32bit SPARCVSPr0cess0r: AT697E”及“龙芯2号处理器设计和性能分析”可知,在标量和超标量处理器中仅为访存操作(load/store)流水线分配两读一写三个寄存器文件端口,这种机制导致store类指令执行所需的三个操作数无法在一个时钟周期内完成,因此,store (写单字)指令都被作为双周期指令处理,即store指令的执行时间开销相当于两条单周期指令。具体如图1所示,流水级的上标表示第几条指令,下标表示该流水级的第几个周期,无下标的则代表单周期指令,图1的时空图给出了 store单字指令在一个七级流水线处理器中的执行情况,一条双周期的store指令被当作两条单周期指令来处理,其中e级的00周期用于计算访存地址,01周期用于取出待存储的字。上述文献中store类指令 ...
【技术保护点】
一种提高store指令执行效率的流水线结构,其特征在于,包括通过流水级间寄存器依次相连接的译码模块、执行模块、访存模块和提交模块,提交模块、译码模块还分别与四端口寄存器文件相连接,提交模块向四端口寄存器文件写入操作数,译码模块向四端口寄存器文件同时请求store指令所需的三个操作数;所述的译码模块与四端口寄存器文件之间设有三套请求/返回操作数的数据线,每套请求/返回操作数的数据线进行一个操作数的传输;译码模块中还设有三套相同的相关判断逻辑,分别对三个操作数进行相关性判断;所述的四端口寄存器文件包括一个与提交模块相连接的写端口和与译码模块相连接的三个读端口,写端口中的写地址、写使能分别与写地址译码模块相连接,写端口中的写数据与寄存器阵列相连接;寄存器阵列与数据选择模块相连接,数据选择模块还通过读地址译码模块分别与三个读端口相连接,数据选择模块根据读端口发出的读控制信号读取寄存器阵列中的操作数。
【技术特征摘要】
1.一种提高Store指令执行效率的流水线结构,其特征在于,包括通过流水级间寄存器依次相连接的译码模块、执行模块、访存模块和提交模块,提交模块、译码模块还分别与四端口寄存器文件相连接,提交模块向四端口寄存器文件写入操作数,译码模块向四端口寄存器文件同时请求store指令所需的三个操作数; 所述的译码模块与四端口寄存器文件之间设有三套请求/返回操作数的数据线,每套请求/返回操作数的数据线进行一个操作数的传输;译码模块中还设有三套相同的相关判断逻辑,分别对三个操作数进行相关性判断; 所述的四端口寄存器文件包括一个与提交模块相连接的写端口和与译码模块相连接的三个读端口,写端口中的写地址、写使能分别与写地址译码模块相连接,写端口中的写数据与寄存器阵列相连接;寄存器阵列与数据选择模块相连接,数据选择模块还通过读地址译码模块分别与三个读端口相连接,数据选择模块根据读端口发出的读控制信号读取寄存器阵列中的操作数。2.如权利要求1所述的提高store指令执行效率的流水线结构,其特征在于,所有的流水级间寄存器设有统一的使能信号,使能信号控制流水线的阻塞和推进;st0re类指令在进入该流水线结构后经过四级执行完毕。3.如权利要求1所述的提高store指令执行效率的流水线结构,其特征在于,所述的译码模块分别接收来自提交模块、访存模块和执行模块的执行信息,执行信息包括各模块中的指令执行状态及执行结果;译码模块收到执行信息后利用相关判断逻辑进行计算地址所需的两个操作数与待写操作数是否相关的判断;若相关则通过旁路进行执行结果的传输,若不相关则同时向四端口寄存器文件请求所需的三个操作数,四端口寄存器文件将所请求的操作数通过寄存器文件读数据总线单向传递给译码模块。4.如权利要求1所述的提高store指令执行效率的流水线结构,其特征在于,所述的四端口寄存器文件中,当提交模块发出的写控制信号中的写使能有效时,写地址译码模块产生与写地址对应的寄存器的写使能,写地址译码模块将产生的写实能连接至寄存器阵列中对应的寄存器,进行写操作,将写控制信号中的32位写数据写入寄存器阵列; 当译码模块发出的读控制信号的读使能有效时,读地址译码模块产生与读地址对应的寄存器的读使能,连接至数据选择模块,数据选择模块选择对应的数据驱动32位读数据总线,将操作数发送给译码模块。5.一种提高store指令执行效率的流水线控...
【专利技术属性】
技术研发人员:陈庆宇,吴龙胜,
申请(专利权)人:中国航天科技集团公司第九研究院第七七一研究所,
类型:发明
国别省市:陕西;61
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。