[发明专利]事务存储器的主分支指令有效
申请号: | 201380007502.0 | 申请日: | 2013-01-23 |
公开(公告)号: | CN104081343A | 公开(公告)日: | 2014-10-01 |
发明(设计)人: | B.R.普拉斯基;C.A.克莱格夫斯基;岑中龙;F.Y.布萨巴;S.卡洛 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F9/38 |
代理公司: | 北京市柳沈律师事务所 11105 | 代理人: | 匡霖 |
地址: | 美国纽*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 事务 存储器 分支 指令 | ||
技术领域
本发明的一方面总的来说涉及计算机程序,并且特别地涉及计算机程序中使用的分支指令。
背景技术
计算机程序(亦成为:程序或者应用程序)是为了在计算机环境中执行特定任务编写的指令的序列。每个指令执行特定操作,诸如加、减、移动、位移、比较、存储和装载,仅列举几个例子。处理器以序列顺序取出指令,除非特定指令引导在不同位置连续的处理。例如,代替取出下一个序列指令,分支指令可以引导处理器取出该程序中位于不同位置的指令。平均地,程序每4到5个指令就有分支。
在某些计算机微体系结构中,执行指令以在下一个指令开始之前完成。然而,在其他微体系结构中,利用管道化来增加能够同时执行的指令的数量。在管道化中,将指令的处理分割为在管道内执行的多个独立步骤,诸如取出、解码、调度、发布、执行和完成以及可能的其他步骤。当在管道中完成指令的第一步骤(例如,取出)时,然后可以开始另一个指令,等等。
管道化还促进不按程序中位置顺序地执行指令。例如,发布步骤与发布队列相关联,该发布队列按照程序顺序地接收指令。发布队列负责保持每个指令,直到该指令所需的数据(例如,操作数)可用为止,然后,其发布用于执行的指令。如果一个指令的数据在另一个指令的数据之前可用,则即使在程序中另一个指令在第一个,仍能够在另一个指令之前发出该一个指令来执行(非顺序处理)。例如,如果要执行指令A、B和C,其中A最早,而C最新,如果B取决于A,而C不取决于A或者B,则能够以A、C、B的顺序发布指令,从而以较高的速率使用管道,并且允许指令被快速地处理。
然而,非顺序处理受到可以非顺序处理指令的有限大小的非顺序窗口/队列的制约。发布窗口通常是100个指令或者不到100个指令,并且将指令重新排回其原始顺序的重排序窗口通常是200个指令或者不到200个指令,其中100个是200个的子集。
发明内容
通过提供执行机器指令的计算机程序产品,克服现有技术的缺陷并且提供优点。该计算机程序产品包括计算机可读存储介质,处理电路可读该计算机可读存储介质,并且该计算机可读存储介质存储用于执行方法的处理电路的执行的指令。该方法包括例如:由处理器获得用于执行的机器指令,根据计算机体系结构,定义用于计算机执行的机器指令,该机器指令包括:至少一个操作码字段,用于规定操作码,该操作码定义分支操作;以及用于确定要分支的目标位置的至少一个字段;并且在第一处理流中执行机器指令,该执行包括:开始第二处理流,该第二处理流与第一处理流有关系;以及开始第二处理流的事务,该事务包括执行在利用机器指令的至少一个字段定义的目标位置开始的一个或者多个指令,一个或者多个指令不按第一处理流处理的一个或者多个指令的序列执行顺序,第一处理流继续到处理该机器指令后面的一个或者多个指令,并且其中推测执行第二处理流在于,即使通过处理第一处理流到达第二处理流的至少一个指令是暂定的,仍执行第二处理流的一个或者多个指令中的至少一个指令,并且其中,根据在处理中到达预定点的第一处理流,执行利用第二处理流的一个或者多个指令更新体系结构化状态。
在此还描述并且要求保护根据本发明的一个或者多个方面的方法和系统。此外,还描述并且可以要求保护根据本发明的一个或者多个方面的服务。
利用本发明的技术实现其他特征和优点。在此详细描述了本发明的其他实施例和方面,并且本发明的其他实施例和方面被认为是要求保护的发明的一部分。
附图说明
在概括说明中,作为权利要求书中的例子,特别指出并且明确要求保护本发明的一个或者多个方面。根据下面结合附图所做的详细描述,本发明的上述以及一个或者多个方面的目的、特征和优点显而易见,其中:
图1A示出并入并且采用本发明的一个或者多个方面的计算环境的一个实施例;
图1B示出并入并且采用本发明的一个或者多个方面的计算环境的另一个实施例;
图1C示出根据本发明的方面的图1B的存储器的进一步细节;
图2A示出指令管道的现有设计的一个例子;
图2B示出根据本发明另一方面的指令管道的另一种设计的一个例子;
图3示出根据本发明一个方面,包括一个或者多个分支的程序的一部分的例子;
图4A示出根据本发明的一个方面,一般分支指令的格式的一个例子;
图4B示出根据本发明的一个方面,一般分支指令的格式的另一个例子;
图5示出根据本发明的一个方面,与处理主分支相关联的逻辑的一个例子;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201380007502.0/2.html,转载请声明来源钻瓜专利网。