当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于控制执行流程的设备和方法技术

技术编号:19139376 阅读:33 留言:0更新日期:2018-10-13 08:33
本发明专利技术的名称是用于控制执行流程的设备和方法。各种实施例一般涉及用于在更高功能核与更低功率核之间的协作以最小化在指令的当前执行流程中中断的影响的技术。设备可包括:包括第一指令流水线的更低功率核,更低功率核停止在第一指令流水线中的第一执行流程,并且在第一指令流水线中执行处理程序例程的指令,以执行处理中断的第一任务;以及包括第二指令流水线的更高功能核,更高功能核在第一任务的执行后,在第二指令流水线中调度处理中断的第二任务的指令的执行在第二指令流水线中的第二执行流程后进行,第一任务比第二任务更加时间敏感。本文也描述和主张了其它实施例。

Device and method for controlling execution process

The name of the invention is an apparatus and method for controlling execution processes. Various embodiments generally relate to techniques for collaboration between higher-function and lower-power cores to minimize the impact of interruptions in the current execution flow of instructions. The device may include a lower power core including a first instruction pipeline, a lower power core stopping a first execution flow in a first instruction pipeline, and executing instructions of a processing program routine in a first instruction pipeline to perform a first task of processing interrupts; and a higher function core including a second instruction pipeline. After the execution of the first task, the execution of the instructions of the second task scheduling the interrupt in the second instruction pipeline is performed after the second execution flow in the second instruction pipeline. The first task is more time-sensitive than the second task. Other embodiments are also described and advocated.

【技术实现步骤摘要】
用于控制执行流程的设备和方法本申请是申请号为201510838847.1、申请日为2015年11月26日、专利技术名称为“用于在非对称处理器核之间的协作式执行的技术”的专利技术专利申请的分案申请。
本公开涉及用于在非对称处理器核之间的协作式执行的技术。
技术介绍
在计算装置内采用包含一个或更多个相对高功能核的处理器组件,这已变得很常见。此类更高功能核可包含许多处理特征以形成相对深的流水线,其中,多个可执行指令可同时处在执行的各种级。作为确保进入流水线以供执行的随后可执行指令在需要时更容易从此类高速缓存内可用于核的一部分,此类更高功能核也可包含和/或耦合到一个或更多个相对大的高速缓存以加快数据和可执行指令的检索和存储。此类更高功能核可还通过相对成熟形式的分支预测,采用相对成熟的指令预取算法,以增大在高速缓存内可用的可执行指令包括要执行的随后可执行指令的可能性。然而,由于诸如硬件中断和例外等要求指令的当前执行流程更改的事件,对高功能处理器核的体系结构的许多此类添加和改进可能完全消除。
技术实现思路
按照本公开第一方面的一种控制执行流程的设备,包括:处理器组件的更低功率核,更低功率核包括第一指令流水线,并且更低功率核停止在第一指令流水线中的第一执行流程,并且在第一指令流水线中执行处理程序例程的指令,以执行处理中断的第一任务;以及处理器组件的更高功能核,更高功能核包括第二指令流水线,并且更高功能核在第一任务的执行后,调度在第二指令流水线中处理中断的第二任务的指令的执行在第二指令流水线中的第二执行流程后进行,第一任务比第二任务更加时间敏感。按照本公开第二方面的一种用于控制执行流程的计算机实现的方法,包括:响应中断,停止在处理器组件的更低功率核的第一指令流水线中的第一执行流程;响应中断,由更低功率核检索处理程序例程的地址;在第一指令流水线中执行处理程序例程的指令以执行处理中断的第一任务;以及在由更低功率核执行第一任务后,由处理器组件的更高功能核调度在更高功能核的第二指令流水线中处理中断的第二任务的指令的执行在第二指令流水线中的第二执行流程后进行,第一任务比第二任务更加时间敏感。按照本公开第三方面的一种控制执行流程的设备,包括:处理器组件的更低功率核,更低功率核包括第一指令流水线,并且更低功率核停止在第一指令流水线中的第一执行流程,并且在第一指令流水线中执行页面故障处理程序例程的指令,以执行处理页面故障的第一任务;以及处理器组件的更高功能核,更高功能核包括第二指令流水线,并且更高功能核在第二指令流水线中执行来自更高速存储装置的应用程序例程的指令,并且响应要由更高功能核执行的应用程序例程的指令的下一页面在更低速存储装置中而不是在更高速存储装置中的存储,提供页面故障的指示到更低功率核。按照本公开第四方面的一种设备,包括用于执行上述方法的部件。按照本公开第五方面的至少一种存储指令的机器可读存储介质,指令在由计算装置执行时使得计算装置执行上述方法。按照本公开第六方面的一种用于控制执行流程的计算机实现的设备,包括:用于响应中断,停止在处理器组件的更低功率核的第一指令流水线中的第一执行流程的部件;用于响应中断,由更低功率核检索处理程序例程的地址的部件;用于在第一指令流水线中执行处理程序例程的指令以执行处理中断的第一任务的部件;以及用于在由更低功率核执行第一任务后,由处理器组件的更高功能核调度在更高功能核的第二指令流水线中处理中断的第二任务的指令的执行在第二指令流水线中的第二执行流程后进行的部件,第一任务比第二任务更加时间敏感。附图说明图1示出处理系统的一示例实施例。图2示出在处理器组件的核之间中断的处理的示例分布。图3A、3B和3C一起示出处理与经网络接收数据相关联的硬件中断的一示例实施例。图4A、4B、4C、4D和4E一起示出处理页面故障和与从存储装置接收页面相关联的硬件中断的示例实施例。图5和6每个示出根据一实施例的逻辑流程。图7示出根据一实施例的处理体系结构。具体实施方式各种实施例一般涉及用于在处理器组件的更高功能核与更低功率核之间的协作以最小化在指令的当前执行流程中中断的影响的技术。为清晰起见,考虑到在各种不同计算体系结构中属于字词“中断”的不同含意,术语“中断”在本文中使用时表示由耦合到处理器组件的硬件组件生成的硬件中断和由处理器组件本身的内部逻辑生成的例外,包括至少页面故障。至少一些中断涉及可具有比更高功能核更简单体系结构的更低功率核,包括比更高功能核更小的高速缓存和/或复杂性更低的指令流水线。更低功率核可执行与收到中断相关联的处理程序例程的指令,以执行一个或更多个相对时间敏感的任务和/或要求频繁接入非有序地址位置的任务。此类任务可涉及移动相对小量的数据,与硬件组件的状态和/或控制寄存器的交互和/或协议转换。在这种情况下,更低功率核可汇集或不汇集属于更大量的数据的分开的更小量的数据的列表,和/或可确定那些更小量的数据将被引导到的目的地。在一些实施例中,在此类任务执行后,更低功率核可向更高功能核发送信号,信号带有与一个或更多个收到中断相关联的另外任务将由更高功能核执行的指示。在其它实施例中,更低功率核可以某种方式使更高功能核执行另外任务需要的信息可用,该方式允许更高功能核在由更高功能核在其通常调度的任务之间进行的轮询期间定位该信息。要由更高功能核执行的此类另外任务可以不像更低功率核执行的那些任务一样对时间敏感,使得更高功能处理器核可能能够在执行部分的操作系统和/或部分的一个或更多个应用程序例程中在任务的其正常调度中包括另外的任务。更低功率核和更高功能核可作为匹配对均包含到单个处理组件中。在一些实施例中,处理器组件可以允许在各种时间使用更低功率核和更高功能核做任意之一或两者的方式构建架构,而由处理器组件执行的操作系统、装置驱动器和/或应用程序例程在任何给定时间不知道这两个核的哪个(些)核在执行每个的指令。然而,在其它实施例中,引导使用哪个核的可能是操作系统本身,或者可甚至引导使用两个核。在一些实施例中,更高功能核和更低功率核可具有执行实质相同的指令集的能力。然而,在其它实施例中,在更低功率核与更高功能核每个执行的指令集之间可存在一定程度的不同。例如,更高功能核可具有高数指令和/或更低功率核不支持的其它特定指令。操作系统、装置驱动器和/或特定应用程序例程可知道这两个核的存在和/或当前在操作一个或另一个核以及知道在每个核支持的指令集中的不同。在每个这些实施例中,操作系统赋予处理器组件访问可存储用于操作系统、装置驱动器和/或特定应用程序例程的可执行指令的地址的各种范围的许可可同样适用于这两个核。因此,更低功率核和更高功能核任意之一可能能够访问相同的存储指令和/或相同的存储数据。更低功率核和更高功能核可在其之间采用多种类型的通信的任何通信,以确保在执行指令中在其之间的相干性。更低功率核可包含比更高功能核更小的高速缓存和/或比可具乱序执行能力的更高功能核带有更少级的更简单指令流水线。因此,甚至在更低功率核可具有与更高功能核执行实质上相同指令集的能力的实施例中,更低功率核的此类执行可以更低速率消耗电功率,并且处在更低速度。然而,通过更小的高速缓存和/或更简单的指令流水线,在执行当前执行流程的指令时由中断造成的效率损耗不如对更高功本文档来自技高网...

【技术保护点】
1.一种设备,包括:第一处理器核,所述第一处理器核用于执行第一指令流水线中的第一指令;以及耦合到所述第一处理器核的第二处理器核,所述第二处理器核用于响应所述第一指令的执行而执行第二指令流水线中的第二指令。

【技术特征摘要】
2014.12.26 US 14/5833081.一种设备,包括:第一处理器核,所述第一处理器核用于执行第一指令流水线中的第一指令;以及耦合到所述第一处理器核的第二处理器核,所述第二处理器核用于响应所述第一指令的执行而执行第二指令流水线中的第二指令。2.如权利要求1所述的设备,所述第二指令要求所述第一指令的执行作为执行的先决条件。3.如权利要求1所述的设备,所述第一指令比所述第二指令更加时间敏感。4.如权利要求1所述的设备,所述第一处理器核用于响应收到中断而执行所述第一指令。5.如权利要求4所述的设备,包括:处理器组件,所述处理器组件包括所述第一处理器核和所述第二处理器核;第一存储装置,包括多个页面;接口控制器,用于耦合所述处理器组件到所述第一存储装置和到第二存储装置,所述第一处理器核用于响应所述第一指令的执行,从所述第一存储装置上的所述多个页面中检索至少一个页面,并且将所述至少一个页面存储在所述第二存储装置上。6.如权利要求5所述的设备,由所述第二处理器核响应页面故障而生成所述中断,所述页面故障响应尝试访问所述第二存储装置上的所述至少一个页面。7.如权利要求1所述的设备,包括处理器组件,所述处理器组件包括所述第一处理器核和所述第二处理器核,所述第一处理器核是比所述第二处理器核更低功率的核。8.如权利要求1所述的设备,所述第一处理器核包括比所述第二处理器核更小的指令集。9.一种系统,包括:计算装置,包括多个处理器核;耦合到所述计算装置的存储装置,包括多个指令,所述指令在由所述多个处理器核中的一个或多个处理器核执行时,使得所述多个处理器核中的所述一个或多个处理器核:经由所述多个处理器核中的第一处理器核执行第一指令流水线中的第一指令;以及响应所述第一指令的执行,经由所述多个处理器核中的第二处理器核执行第二指令流水线中的第二指令。10.如权利要求9所述的系统,所述计算装置包括处理器组件,所述处理器组件至少包括所述第一处理器核和所述第二处理器核。11.如权利要求10所述的系统,所述第一处理器核是比所述第二处理器核更低功率的核。12.如权利要求10所述的系统,所述第一处理器核包括比所述第二处理器核更小的指令集。13.如权利要...

【专利技术属性】
技术研发人员:E塔米尔BZ弗里伊德曼
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1