【技术实现步骤摘要】
带有旁路多个实例化表的移动消除的系统和方法
本专利技术一般涉及计算机系统,具体而言,涉及提高由计算机系统执行数据复制指令的效率。背景物理寄存器之间的数据复制操作代表由处理器执行的大部分操作。因此,优化它们的执行可以提高处理器的总体性能。附图简述本专利技术是通过示例而不是作为限制来说明的,当与附图一起考虑时并参考下列详细描述时,可以更完全地理解本专利技术,在附图中:图1描绘了根据本公开的一个或多个方面的示例计算机系统的高级组件图示;图2描绘了根据本公开的一个或多个方面的处理器的框图;图3a-3b示意地示出了根据本公开的一个或多个方面的处理器微体系结构的要素;图4示意地示出了根据本公开的一个或多个方面的图1的示例计算机系统100的示例处理器及其他组件的多个方面;图5示意地示出了根据本公开的一个或多个方面的通过寄存器别名使用(aliasing)来执行移动操作的示例;图6a-6c示意地示出了根据本公开的一个或多个方面的使用多个实例化表(MIT)来进行物理寄存器文件(PRF)条目跟踪;图7a-7c示意地示出了根据本公开的一个或多个方面的MIT分配和预留逻辑;图8a-8c示意地示出了根据本公开的一个或多个方面的MIT孤立回收逻辑;图9a-9c、10a-10c以及11a-11c示意地示出了根据本公开的一个或多个方面的通过旁路MIT逻辑来实现的数据操纵操作的多个示例;图12示意地示出了根据本公开的一个或多个方面实现移动消除逻辑的示例电路;图13描绘了根据本公开的一个或多个方面的示例方法的流程图;以及图14描绘了根据本公开的一个或多个方面的示例计算机系统的框图。具体实施 ...
【技术保护点】
一种处理系统,包括:第一数据结构,被配置成存储多个物理寄存器值;第二数据结构,被配置成存储多个指针,每一指针引用第一数据结构的元素;第三数据结构,包括多个移动消除集,每一移动消除集都包括表示多个逻辑寄存器的多个比特;以及逻辑,被配置成通过使所述第二数据结构的元素引用所述第一数据结构的元素来执行数据操纵操作,所述逻辑进一步被配置成通过执行所述第三数据结构的单次更新来反映两个或更多数据操纵操作的结果。
【技术特征摘要】
2013.03.15 US 13/840,4621.一种处理系统,包括:第一数据结构单元,用于存储多个物理寄存器值;第二数据结构单元,用于存储多个指针,每一指针引用第一数据结构单元的元素;第三数据结构单元,包括多个移动消除集,每一移动消除集都包括表示多个逻辑寄存器的多个比特;以及逻辑单元,用于通过使所述第二数据结构单元的元素引用所述第一数据结构单元的元素来执行数据操纵操作,所述逻辑单元进一步用于通过执行所述第三数据结构单元的单次更新来反映两个或更多数据操纵操作的结果。2.如权利要求1所述的处理系统,其特征在于,对所述第三数据结构单元的所述更新包括下列各项中的至少一项:创建移动消除集、修改移动消除集、或回收移动消除集。3.如权利要求1所述的处理系统,其特征在于,所述逻辑单元用于基于预先计算两个或更多数据操纵操作的依赖关系来更新所述第三数据结构单元。4.如权利要求1所述的处理系统,其特征在于,所述逻辑单元进一步用于预留下列各项中的至少一项:整数通用逻辑寄存器域中的第一移动消除集或流式单指令多数据(SIMD)扩展(SSE)逻辑寄存器域中的第二移动消除集。5.如权利要求1所述的处理系统,其特征在于,所述逻辑单元用于通过处理下列各项中的至少一项来输出更新所述第三数据结构单元的信号:反映所述第三数据结构单元的前一状态的第一信号、标识用于数据操纵操作的源逻辑寄存器的第二信号、标识用于数据操纵操作的目的地逻辑寄存器的第三信号、标识现有的移动消除集是否包含至少一项引用的第四信号、标识所述第三数据结构单元内的新移动消除集的第五信号、以及标识是否选择了所述数据操纵操作以用于移动消除的第六信号。6.如权利要求1所述的处理系统,其特征在于,所述逻辑单元用于检测下列各项中的至少一项:第一数据操纵操作所具有的目的地寄存器匹配第二数据操纵操作的源;两个数据操纵操作使用公用寄存器作为源,并带有向源寄存器的中间写入;两个数据操纵操作使用公用寄存器作为源;第一数据操纵操作所具有的目的地寄存器匹配第二数据操纵操作的源,并带有向所述目的地寄存器的中间写入;或第一数据操纵操作改写由现有的移动消除集引用的并是第二数据操纵操作的源的寄存器。7.一种执行数据操纵操作的方法,包括:通过计算机系统,将多个物理寄存器值存储在第一数据结构单元中;在第二数据结构单元中存储多个指针,每一指针引用所述第一数据结构单元的元素;在第三数据结构单元中存储多个移动消除集,每一移动消除集包括表示多个逻辑寄存器的多个比特;通过使所述第二数据结构单元的元素引用所述第一数据结构单元的元素来执行数据操纵操作;以及通过执行所述第三数据结构单元的单次更新来反映两个或更多数据操纵操作的结果。8.如权利要求7所述的方法,其特征在于,对所述第三数据结构单元的所述更新包括下列各项中的至少一项:创建移动消除集、修改移动消除集或回收移动消除集。9.如权利要求7所述的方法,还包括预留下列各项中的至少一项:整数通用逻辑寄存器域中的第一移动消除集或流式单指令多数据(SIMD)扩展(SSE)逻辑寄存器域中的第二移动消除集。10.如权利要求7所述的方法,还包括通过处理下列各项中的至少一项来输出更新所述第三数据结构单元的信号:反映所述第三数据结构单元的前一状态的第一信号、标识用于数据操纵操作的源逻辑寄存器的第二信号、标识用于数据操纵操作的目的地逻辑寄存器的第三信号、标识现有的移动消除集是否包含至少一项引用的第四信号、标识所述第三数据结构单元内的新移动消除集的第五信号、以及标识是否选择了所述数据操纵操作以用于移动消除的第六信号。11.如权利要求7所述的方法,还包括检测下列各项中的至少一项:第一数据操纵操作所具有的目的地寄存器匹配第二数据操纵操作的源;两个数据操纵操作使用公用寄存器作为源,且带有向源寄存器的中间写入;两个数据操纵操作使用公用寄存器作为源;第一数据操纵操作所具有的目的地寄存器匹配第二数据操纵操作的源,且带有向所述目的地寄存器的中间写入;或第一数据操纵操作改写由现有的移动消除集引用的并是第二数据操纵操作的源的寄存器。12.如权利要求7所述的方法,其特征在于,基于预先计算两个或更多数据操纵操作的依赖关系来执行对所述第三数据结构单元的所述更新。13....
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。