The invention discloses a recovery method of register alias table included in the instruction reorder buffer to cancel, update the station; from the station sort buffer queue head pointer refers to start the queue into multiple groups, and among them for a set of register alias table recovery information into the mapping relationship corresponding with the logical register recovery module in each cycle; search from a set of information into reverse, and judge for register alias table to restore the information whether meet the requirements; if meet the requirements, produces the register alias table update signal corresponding items, and in the corresponding station in the destination register rename buffer physical address to send to register alias table; recovery mapping between different groups using the rename buffer station module of time division multiplexing. The invention has the following advantages: the area is reduced and the timing performance is optimized when the depth of the reordering buffer is larger.
【技术实现步骤摘要】
一种对寄存器别名表恢复方法
本专利技术涉及寄存器处理
,具体涉及一种对寄存器别名表恢复方法。
技术介绍
现代的超标量处理器广泛地使用分支预测、寄存器重命名和猜测执行技术来提升运行效率。其中分支预测技术使得处理器可以在分支指令被执行前根据程序运行的历史信息,提前预测分支目标并进行取指;寄存器重命名技术可以通过冗余的物理寄存器,消除由于逻辑寄存器数量不足引起的数据先读后写相关和写写相关,从而允许更多的指令并行执行;猜测执行可以提前执行根据分支预测而预取的指令。这三种技术的联合使用可以使处理器减小由于程序分支带来的性能损失,但是也对处理器的设计提出了挑战。处理器的运行频率是衡量处理器性能的重要指标,如果某些用于提升处理器运行效率的技术的加入,导致处理器结构复杂化,进一步使处理器可运行的频率降低,那么这些技术对处理器实际运行速度的帮助就要打折扣,在某些场合下可能还会损害处理器的实际性能。比如上述技术,如果处理器运行的程序中分支指令很少,那它们能够给处理器带来的运行效率提高是有限的,如果它们的加入降低了处理器的运行频率,那么此时处理器性能反而会降低。处理器要应付各式各样的应用,要求在各个应用场景下都能有较好的性能表现,而全面提升处理器性能的最佳方式就是提升处理器的运行频率。因此,在加入提高处理器运行效率的技术时,如何尽量降低其对处理器运行频率的影响是一个特别重要的问题。上述三种提升处理器运行效率的技术之间有连锁作用:当分支预测发生错误时,从错误的目标取得的指令可能已经被猜测执行,而在执行前的寄存器重命名操作已经改写了寄存器别名表,因此不能仅仅取消掉这写被错误执 ...
【技术保护点】
一种对寄存器别名表恢复方法,其特征在于,包括以下步骤:S1:在指令取消发生时,对重排序缓冲站进行更新;S2:从所述重排序缓冲站队列的头指针所指项开始分成多个组,并在每个周期把一组的每一项的指令有效位、目标寄存器有效位和目标寄存器的逻辑地址送入与逻辑寄存器对应的映射关系恢复模块中;S3:所述映射关系恢复模块从送入的一组信息中的最后信息开始倒序搜索,并判断所述信息的指令有效位是否有效、目标寄存器有效位是否有效以及目标寄存器逻辑地址是否与所述映射关系恢复模块所对应的逻辑寄存器地址相同;S4:如果所述信息的指令有效位有效、目标寄存器有效位有效且目标寄存器逻辑地址与所述映射关系恢复模块所对应的逻辑寄存器地址相同,则产生寄存器别名表对应项的更新信号,并在所述重命名缓冲站中对应项的目标寄存器的物理地址发送到所述寄存器别名表中;S5:重复步骤S3‑S4,直至所述重排序缓冲站中队列的所有项均处理完毕。
【技术特征摘要】
1.一种对寄存器别名表恢复方法,其特征在于,包括以下步骤:S1:在指令取消发生时,对重排序缓冲站进行更新;S2:从所述重排序缓冲站队列的头指针所指项开始分成多个组,并在每个周期把一组的每一项的指令有效位、目标寄存器有效位和目标寄存器的逻辑地址送入与逻辑寄存器对应的映射关系恢复模块中;S3:所述映射关系恢复模块从送入的一组信息中的最后信息开始倒序搜索,并判断所述信息的指令有效位是否有效、目标寄存器有效位是否有效以及目标寄存器逻辑地址是否与所述映射关系恢复模块所对应的逻辑寄存器地址相同;S4:如果所述信息的指令有效位有效、目标寄存器有效位有效且目标寄存器逻辑地址与所述映射关系恢复模块所对应的逻辑寄存器地址相同,则产生寄存器别名表对应项的更新信号,并在所述重命名缓冲站中对应项的目标寄存器的物理地址发送到所述寄存器别名表中;S5:重复步骤S3-S4,直至所述重排序缓冲站中队列的所有项均处理完毕。2.根据权利要求1所...
【专利技术属性】
技术研发人员:杨思博,李明,
申请(专利权)人:北京国睿中数科技股份有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。