[发明专利]存储器访问指令顺序编码的生成和使用有效
申请号: | 201680054500.0 | 申请日: | 2016-09-13 |
公开(公告)号: | CN108027773B | 公开(公告)日: | 2022-09-20 |
发明(设计)人: | D·C·伯格;A·L·史密斯 | 申请(专利权)人: | 微软技术许可有限责任公司 |
主分类号: | G06F12/0806 | 分类号: | G06F12/0806;G06F9/38 |
代理公司: | 北京世辉律师事务所 16093 | 代理人: | 王俊 |
地址: | 美国华*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 存储器 访问 指令 顺序 编码 生成 使用 | ||
1.一种包括存储器和至少一个处理器核的装置,所述至少一个处理器核包括:
执行单元,被配置为执行被包含在指令块中的、包括多个存储器加载和/或存储器存储指令的存储器访问指令;以及
控制单元,包括:
硬件结构,其存储指示所述存储器访问指令的执行排序的数据,以及
加载/存储计数器,其在执行所述多个存储器加载和/或存储器存储指令中的一项时被更新,所述控制单元被配置为通过比较针对所述存储器访问指令中的指令的数据加载存储标识符与被存储在所述加载/存储计数器中的值,按照所述执行排序来控制所述存储器访问指令向所述执行单元的发出。
2.根据权利要求1所述的装置,其中所述硬件结构是内容可寻址存储器CAM或者查找表。
3.根据权利要求1所述的装置,其中被存储在所述硬件结构中的所述数据从执行包括所述多个存储器加载和/或存储器存储指令的所述指令块的先前实例被生成。
4.根据权利要求1所述的装置,其中被存储在所述硬件结构中的所述数据从用于所述指令块的指令块头部被生成。
5.根据权利要求1所述的装置,其中被存储在所述硬件结构中的所述数据由对所述存储器访问指令译码的指令译码器生成。
6.根据权利要求1所述的装置,其中所述控制单元硬件结构包括存储向量寄存器,所述存储向量寄存器存储指示所述存储器访问指令中的哪些存储器访问指令已经执行的数据。
7.根据权利要求6所述的装置,其中所述控制单元还被配置为比较存储向量寄存器数据与来自所述硬件结构的存储掩码数据,以确定所述存储器访问指令中的哪些存储器访问指令已经执行,所述存储向量寄存器数据指示所述存储器访问指令中的哪些指令已经执行,所述存储掩码数据指示所述存储器访问指令的执行排序。
8.根据权利要求6所述的装置,其中所述控制单元还被配置为比较存储向量寄存器数据与来自所述硬件结构的存储掩码数据以确定被排序在所述存储器访问指令中的当前存储器访问指令之前的所有存储器访问指令已经执行,并且基于所述确定来向被耦合到所述控制单元的加载/存储队列发出所述当前存储器访问指令,所述存储向量寄存器数据指示所述存储器访问指令中的哪些指令已经执行,所述存储掩码数据指示所述存储器访问指令的执行排序。
9.根据权利要求1所述的装置,其中所述控制单元在所述加载/存储计数器达到用于被编码在所述指令块中的存储器访问指令的数目的预定值时指示所述指令块已经完成。
10.根据权利要求1所述的装置,其中指示执行排序的所述数据至少部分基于针对所述指令块中的所述存储器访问指令中的每个存储器访问指令而被编码的加载/存储标识符。
11.一种操作处理器以执行多个存储器加载和存储器存储指令以及被编码在所述存储器加载和存储器存储指令中的每个指令中的加载存储标识符的方法,所述方法包括:
比较被存储在存储向量寄存器中的数据与针对所述多个存储器加载和存储器存储指令的存储掩码,所述存储掩码指示所述加载存储标识符中的哪个加载存储标识符对应于相应的存储器加载或存储器存储指令;
至少部分基于所述加载存储标识符和比较所述数据,来选择所述多个存储器加载和存储器存储指令中的下一存储器加载指令或者存储器存储指令以执行;以及
执行选择的所述下一存储器加载或存储器存储指令。
12.根据权利要求11所述的方法,其中对所述多个存储器加载和存储器存储指令中的至少一个指令的执行在由指令块的另一指令生成的条件值上被断言,所述指令块包括所述多个存储器加载和存储器存储指令。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软技术许可有限责任公司,未经微软技术许可有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201680054500.0/1.html,转载请声明来源钻瓜专利网。