[发明专利]推测屏障指令在审
申请号: | 201880078157.2 | 申请日: | 2018-12-14 |
公开(公告)号: | CN111433740A | 公开(公告)日: | 2020-07-17 |
发明(设计)人: | 理查德·罗伊·格里森思怀特;贾科莫·加布雷利;马修·詹姆斯·霍斯内尔 | 申请(专利权)人: | ARM有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F12/08;G06F12/14;G06F9/38 |
代理公司: | 北京东方亿思知识产权代理有限责任公司 11258 | 代理人: | 李丽 |
地址: | 英国*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 推测 屏障 指令 | ||
1.一种装置,包括:
处理电路,用于执行数据处理;
指令解码电路,用于对指令进行解码,来控制所述处理电路执行所述数据处理;并且
其中:
所述指令解码电路响应于推测屏障指令,而控制所述处理电路来防止按程序顺序出现在所述推测屏障指令之后的后续操作推测地影响缓存中的条目的分配,所述后续操作具有对按所述程序顺序在所述推测屏障指令之前的较早的指令的地址依赖性。
2.如权利要求1所述的装置,其中,所述后续操作是加载指令和存储指令中的一者。
3.如权利要求1和2中任一项所述的装置,其中,所述较早的指令是加载指令。
4.如前述权利要求中任一项所述的装置,其中,在所述推测屏障指令完成之前:
如果加载、存储、数据或指令预加载RW2按程序顺序出现在所述推测屏障指令之后,并且所述加载、存储、数据或指令预加载RW2具有对条件选择指令的结果的地址依赖性,其中:
对于所述条件选择指令的输入寄存器之一,所述条件选择指令具有对已推测地执行的加载R1的寄存器数据依赖性,并且
对于所述条件选择指令的另一输入寄存器,所述条件选择指令不具有对R1的寄存器依赖性,并且
所述条件选择指令的条件是使得如果未按架构执行R1则选择不依赖于R1的输入,
那么,所述处理电路被配置为防止RW2以如下方式影响所述缓存中的条目的分配,该方式能够用于通过评估所述缓存中的哪些条目已被分配或逐出,来确定来自R1的推测地加载的值的值的任何部分。
5.如前述权利要求中任一项所述的装置,其中,在所述推测屏障指令完成之前:
如果加载、存储、数据或指令预加载RW2按程序顺序出现在所述推测屏障指令之后,并且所述加载、存储、数据或指令预加载RW2具有对条件移动指令的结果的地址依赖性,其中:
对于所述条件移动指令的输入寄存器,所述条件移动指令不具有对已推测地执行的加载R1的寄存器依赖性,并且
所述条件移动指令的条件是使得如果未按架构执行R1则该条件通过,
那么,所述处理电路被配置为防止RW2以如下方式影响所述缓存中的条目的分配,该方式能够用于通过评估所述缓存中哪些条目已被分配或逐出,来确定来自R1的推测地加载的值的值的任何部分。
6.如前述权利要求中任一项所述的装置,其中,所述缓存是以下中的一项:
数据缓存;
指令缓存;以及
分支预测缓存。
7.一种计算机程序,用于控制主机处理装置来提供用于执行目标程序代码的指令的指令执行环境,所述计算机程序包括:
指令解码程序逻辑,用于对所述目标程序代码的指令进行解码,来控制处理程序逻辑执行数据处理;其中:
所述指令解码程序逻辑响应于推测屏障指令,而防止按程序顺序出现在所述推测屏障指令之后的后续操作推测地影响缓存中的条目的分配,所述后续操作具有对按所述程序顺序在所述推测屏障指令之前的较早的指令的地址依赖性。
8.一种数据处理方法,包括:
对推测屏障指令进行解码;并且
响应于对所述推测屏障指令的解码,而控制处理电路来防止按程序顺序出现在所述推测屏障指令之后的后续操作推测地影响缓存中的条目的分配,所述后续操作具有对按所述程序顺序在所述推测屏障指令之前的较早的指令的地址依赖性。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于ARM有限公司,未经ARM有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201880078157.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:医用敷料
- 下一篇:用于监视至少一个水产养殖池塘的方法和水产养殖池塘监视系统