【技术实现步骤摘要】
【国外来华专利技术】用于加载/存储推测的基于地址的筛选
[0001]关于联邦政府赞助的研究或开发的声明
[0002]本公开是在政府支持下在DOE授予的与劳伦斯
·
利弗莫尔国家安全局的PathForward项目(基本合同编号DE
‑
AC52
‑
07NA27344,分包合同编号B620717)下进行的。政府享有本公开中的某些权利。
技术介绍
[0003]采用数据推测的计算机处理器通常允许加载和存储指令于加载存储单元内以不以程序顺序来完成。该数据推测需要针对违反排序来检查存储器依赖关系,以防止违反排序错误。这些检查可能需要在加载或存储与进行中的存储或加载的子集之间进行完整的物理地址比较。对于某些存储器一致性模型,检查还需要将外部探测的完整物理地址与进行中加载的物理地址进行比较。防止违反排序通常涉及使用内容可寻址存储器(CAM)结构。
附图说明
[0004]图1阐述了根据本公开的实施方案的用于针对加载/存储推测进行基于地址的筛选的示例性系统的框图。
[0005]图2阐述了根据本公开的实施方案的用于针对加载/存储推测进行基于地址的筛选的示例性系统的框图。
[0006]图3阐述了根据本公开的实施方案的示出用于针对加载/存储推测进行基于地址的筛选的示例性方法的流程图。
[0007]图4阐述了根据本公开的实施方案的示出用于针对加载/存储推测进行基于地址的筛选的示例性方法的流程图。
[0008]图5阐述了根据本公开的实施方案的示出用于针对加载/存储推测进行基于地址 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种针对加载/存储推测进行基于地址的筛选的方法,所述方法包括:维护包括与地址范围相关联的表条目的筛选表;响应于接收到排序检查触发事务,使用所述排序检查触发事务的目标地址查询所述筛选表以确定依赖于所述排序检查触发事务的指令先前是否已经生成物理地址;以及响应于确定所述筛选表缺少指示,即依赖于所述排序检查触发事务的所述指令先前已经生成物理地址的指示,绕过违反排序存储器结构中的用于确定依赖于所述排序检查触发事务的所述指令当前是否在进行中的查找操作。2.如权利要求1所述的方法,其还包括:响应于确定所述筛选表包括指示,即依赖于所述排序检查触发事务的所述指令先前已经生成物理地址的指示,执行违反排序存储器结构中的用于确定依赖于所述排序检查触发事务的所述指令当前是否在进行中的查找操作。3.如权利要求1所述的方法,其中维护包括用于地址范围的表条目的所述筛选表包括:检测依赖指令已经生成物理地址;以及在与所述依赖指令的目标地址相关联的筛选表的条目中指示所述依赖指令生成了所述物理地址。4.如权利要求1所述的方法,其中维护包括与地址范围相关联的表条目的所述筛选表包括:响应于检测到特定时隙已经在以程序顺序解除分配的队列中被再使用,将所述筛选表中的所述表条目移位。5.如权利要求4所述的方法,其中以程序顺序解除分配的所述队列是从由存储队列和加载跟踪队列组成的组中选择的一个队列。6.如权利要求1所述的方法,其中维护包括与地址范围相关联的表条目的所述筛选表包括:响应于检测到预选择的重排序缓冲区ID的再使用,将所述筛选表中的所述表条目移位。7.如权利要求1所述的方法,其中所述筛选表包括多个单独的表。8.如权利要求1所述的方法,其中:所述排序检查触发事务是加载指令,接收所述排序检查触发事务包括检测到所述加载指令已经生成物理地址,使用所述排序检查触发事务的目标地址查询所述筛选表以确定依赖于所述排序检查触发事务的指令先前是否已经生成物理地址包括使用所述加载指令的目标地址查询所述筛选表以确定存储指令先前是否已经生成物理地址,确定所述筛选表缺少指示,即依赖于所述排序检查触发事务的所述指令先前已经生成物理地址的指示,包括确定所述筛选表缺少所述存储指令先前已经生成物理地址的指示,以及绕过违反排序存储器结构中的用于确定依赖于所述排序检查触发事务的所述指令当前是否在进行中的查找操作包括绕过存储到加载转发存储器结构中的用于确定所述存储当前是否在进行中的所述查找操作。9.如权利要求1所述的方法,其中:所述排序检查触发事务是存储指令,接收所述排序检查触发事务包括检测到所述存储指令已经生成物理地址,
使用所述排序检查触发事务的目标地址查询所述筛选表以确定依赖于所述排序检查触发事务的指令先前是否已经生成物理地址包括使用所述存储指令的目标地址查询所述筛选表以确定加载指令先前是否已经生成物理地址,确定所述筛选表缺少指示,即依赖于所述排序检查触发事务的所述指令先前已经生成物理地址的指示,包括确定所述筛选表缺少所述加载指令先前已经生成物理地址的指示,以及绕过违反排序存储器结构中的用于确定依赖于所述排序检查触发事务的所述指令当前是否在进行中的查找操作包括绕过无序缓冲区存储器结构中的用于确定所述加载当前是否在进行中的所述查找操作。10.如权利要求1所述的方法,其中:所述排序检查触发事务是高速缓存事件,接收所述排序检查触发事务包括检测到所述高速缓存事件已经生成物理地址,使用所述排序检查触发事务的目标地址查询所述筛选表以确定依赖于所述排序检查触发事务的指令先前是否已经生成物理地址包括使用所述高速缓存事件的所述目标地址查询所述筛选表以确定加载指令先前是否已经生成物理地址,确定所述筛选表缺少指示,即依赖于所述排序检查触发事务的所述指令先前已经生成物理地址的指示,包括确定所述筛选表缺少所述加载指令先前已经生成物理地址的指示,以及绕过违反排序存储器结构中的用于确定依赖于所述排序检查触发事务的所述指令当前是否在进行中的查找操作包括绕过加载顺序队列存储器结构中的用于确定所述加载当前是否在进行中的所述查找操作。11.一种具有针对加载/存储推测进行基于地址的筛选的处理器的加载存储单元,所述加载存储...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。