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

与不同种类的资源通信的基于指令系统结构的内定序器技术方案

技术编号:2840954 阅读:147 留言:0更新日期:2012-04-11 18:40
一种方法,包括:    通过第一指令定序器将请求直接从用户级别应用程序传送到与第一指令定序器耦合的加速器,其中加速器包括相对于第一指令定序器的不同种类的资源;    通过与所述加速器有关的外骨骼向加速器提供请求;以及    响应请求,并行于第一指令定序器中的第二功能执行加速器中的第一功能。

【技术实现步骤摘要】

本专利技术的实施例涉及改善基于处理器的系统中的通信,尤其涉及一种包括多个定序器的系统。
技术介绍
计算机系统包括各种组件以便处理和传送数据。一般的系统包括一个或多个处理器,每个处理器可以包括多个核,以及相关的存储器,输入/输出(I/O)设备和其它这样的组件。为了提高计算效率,计算加速器,专用的I/O设备及其他这样的专用单元可以通过一个或多个专用的组件提供,在这里一般被称为辅助单元。然而,在使用这种辅助单元的过程中可能出现低效率,因为在执行通用处理器的一般的计算环境和行业标准操作系统(OS)环境中,软件栈可能阻止高效的使用。也就是说,在一般的操作系统环境中,通过不同的特权级别将系统软件与应用软件隔离,并且在这些不同的特权级别的每一个中的操作受限于OS环境的保存和恢复操作,以及其它限制。 因此每当包括诸如专用加速器之类的辅助单元时,该单元通常被展示为一个设备而用户级应用程序只能通过OS的设备驱动程序软件栈间接地使用辅助单元,而该应用程序可以直接访问原始物理辅助单元资源。因此,通过相关的设备驱动程序的辅助单元资源是全系统范围的资源而不是诸如通过上下文转换而虚拟化的通用寄存器、虚拟存储器或定序器之类的应用程序级资源。 不得不使用设备驱动程序来访问辅助单元的问题是效率低(根据从驱动器应用程序到辅助单元的路径长度),以及由于强加的OS限制相关的″标准化″驱动程序接口而不灵活。 计算加速器的范例是诸如数学协处理器(像所谓的用于早期的英特尔体系结构(IA)-32处理器的x87浮点协处理器)之类的协处理器。一般地,这种协处理器通过协处理器接口与主处理器(例如,中央处理单元(CPU))耦合,其就像主处理器一样具有普通的指令系统结构(ISA)。此外,通过传统的退出/等待信号协议在这些资源之间进行交互,其中主处理器处于等待状态同时协处理器执行它的请求功能,在交互结束时控制返回主处理器。然而,在协处理器操作期间,主处理器不能执行有用功而是等待来自于协处理器的结果。也就是说,协处理器被集成以致它结构上用主处理器的控制流的程序指令顺序地操作。这导致处理器利用的低效率,特别是,当协处理器能够和主处理器上的计算同时操作时。因此存在对改进与这种辅助单元通信以及使用这种辅助单元的方式的需要。附图说明图1是根据本专利技术的一个实施例的处理器的方框图。 图2是根据本专利技术的一个实施例的系统的一部分的方框图。 图3是根据本专利技术的另一个实施例的系统的一部分的方框图。 图4是根据本专利技术的一个实施例的系统的方框图。 图5是根据本专利技术的一个实施例,与处理器中执行的操作相应的方法的流程图。 图6是根据本专利技术的实施例,与加速器中执行的操作相应的方法的流程图。 图7是根据本专利技术的另一个实施例的系统的方框图。具体实施方式在各种实施例中,提供多种结构以使基于指令系统结构(ISA)的内定序器能够通信。正如这里所使用的,″定序器″是独特的线程执行资源并且可能是任何能够执行线程的物理或逻辑单元。定序器可能是逻辑线程单元或物理线程单元,并且可能包括下一指令指针逻辑以便确定将对给定的线程执行的下一指令。 更具体来讲,可以在第一ISA的第一定序器和不同种类的第二资源之间实现基于ISA的内定序器通信,第二资源可以是定序器或非定序器。也就是说,第二资源可以是不同ISA的定序器或者可以是非定序器资源,诸如固定功能单元(FFU)、专用集成电路(ASIC)或其他预编程逻辑。在各种实施例中,中间物或接口,在此称为″外骨骼″,可以提供在这些不同种类的资源之间的通信。在不同的实施例中外骨骼可以采用各种形式,包括软件、硬件和/或固件。在一些实施例中,可以在紧紧地耦合到不同种类资源的有限状态机(FSM)中实现该外骨骼。当然,其它实现方式是可能的。 现在参考图1,示出了根据本专利技术的一个实施例的处理器的方框图。如图1中所示,处理器10包括各种不同的资源。在不同的实现方式中,处理器10可以是单核处理器或多核处理器。可以在不同类型的系统中实现这样的处理器,包括芯片多处理器(CMP)系统或同步的多线程(SMT)系统或接通事件多线程(SoeMT)系统,以及其它这样的系统。 如图1中所示,处理器10包括多个定序器20a,20b,20c,和20d(即,定序器1-4,和一般的定序器20)。虽然在图1的实施例中用示出了四个这样的定序器,应当理解本专利技术的范围不因此受限。如图1中所示,处理器10中的定序器20实现ISA30,在一个实施例中其可以是英特尔体系结构(IA-32)指令系统结构和/或它的64位扩展名(也叫英特尔扩展内存64位技术(EM64T))。处理器10进一步包括其它资源,包括第一资源(即,资源1)50a,第二资源(即,资源2)50b,和第三资源50c(即,资源3)(以及一般的资源50)。这些资源可以是不同种类的资源,它们没有实现处理器10的ISA30。虽然图1的实施例中显示为包括三个这样的资源,但是在不同的实施例中可能包括更多的或更少的这样的资源。 每个资源50包括定序器(其可以实现为不同于ISA30的ISA)、非定序器处理引擎、或其它特殊功能逻辑,在这里一般称为加速器。在不同的实施例中,不同类型的资源可以实现为加速器,包括图形处理单元(GPU)(典型的定序器)、加密单元(典型的非定序器)、物理处理单元(PPU)(典型的非定序器)、固定功能单元(FFU)(典型的非定序器)等等。如图1中所示,每个资源50可以包括加速器52(统称),更具体地,每个加速器52a,52b,和52c与资源50a-50c之一有关。在这里加速器52也被称为辅助单元。因为资源50a-50c可以是另一个ISA或者甚至可以是非定序器并且因而可能相对于定序器20是不同种类的,一个接口可用于提供与这种资源通信的能力。特别地如图1中所示,外骨骼54a,54b,和54c(统称外骨骼54)可以与资源50中的每一个有关。每个资源50因此可以被称为表示外骨骼54和它的相关加速器52之间紧密耦合的″外定序器″。用这样的方式,这些不同种类的资源可以和支持内定序器通信(和/或如果可用的话基于共享存储器的寻址)的统一的ISA结构中的同类定序器资源集成在一起。此外,各种资源可以以并行方式,例如,以多指令多数据(MIMD)方式执行,以便可以同时使用每个资源以提高性能。 然而在其它实施例中,资源50可以是相对于定序器20同类的定序器资源并且可以是对称的核以致它们包括与定序器20相同或类似的体系结构。以这种方式,可以实现并行光纤并且可以增强传统OS的可量测性。更进一步,在其它实现方式中资源50可以是不对称的核。换句话说,这些资源可以是与定序器20相同的ISA,但是是不同的微体系结构。这种实施例可以帮助管理不对称并且提供与传统OS的兼容性。 对于实现不同种类的资源的实施例,根据一个实施例,外骨骼可能提供这些不同种类的资源具有通用的ISA以便对于内定序器通信实现最小限度符合的错觉。因此在各种实施例中,不同种类的资源可以起用户级功能单元资源(而不是系统级设备)的作用。换句话说,各种用户级应用程序可以直接与加速器通信并且访问加速器以致它变成用户级功能单元。以这种方式,各种加速器资源可以变成管理的ISA的不同种类的组件。 例如,每本文档来自技高网...

【技术保护点】

【技术特征摘要】
覆盖了所有的这种修改和变化,正如落在本发明的真实精神和范围内。权利要求1.一种方法,包括通过第一指令定序器将请求直接从用户级别应用程序传送到与第一指令定序器耦合的加速器,其中加速器包括相对于第一指令定序器的不同种类的资源;通过与所述加速器有关的外骨骼向加速器提供请求;以及响应请求,并行于第一指令定序器中的第二功能执行加速器中的第一功能。2.根据权利要求1的方法,其中直接传送请求包括根据外骨骼和加速器之间的专用协议,发送请求到外骨骼并且从外骨骼传递请求到加速器。3.根据权利要求2的方法,进一步包括通过第一指令系统结构发送请求到外骨骼,并且其中加速器包括第二指令系统结构的资源。4.根据权利要求1的方法,进一步包括直接传送请求而不需要操作系统(OS)的支持,其中加速器对OS是透明的。5.根据权利要求1的方法,进一步包括响应请求将加速器的体系结构状态的子集提供到用户级应用程序。6.根据权利要求1的方法,进一步包括响应请求将外骨骼和加速器的集合体系结构状态提供到用户级应用程序。7.如权利要求所述的方法,进一步包括识别系统禁止的资源并且将禁止资源配置为加速器。8.根据权利要求7所述的方法,进一步包括通过禁止资源而不是通过操作系统级介质驱动程序来执行用户级介质应用程序。9.根据权利要求1的方法,进一步包括通过外骨骼虚拟化加速器,以便加速器内的功能性第一子集对用户级应用程序是可见的并且加速器内的功能性第二子集对操作系统(OS)是可见的。10.一种装置,包括用于执行指令的第一指令定序器;以及耦合到第一指令定序器的外定序器,其包括加速器,用于对从第一指令定序器接收的数据执行至少一个操作,其中加速器包括相对于第一指令定序器的不同种类的资源;以及与加速器耦合的外骨骼,用于使内定序器能够在用户级控制下在第一指令定序器和加速器之间通信。11.如权利要求10所述的装置,其中加速器包括固定功能单元,而外骨骼包括与固定功能单元耦合的有限状态机(FSM)。12.如权利要求10所述的装置,其中装置包括具有单个衬底的处理器,该单个衬底包括第一指令定序器和加速器。13.如权利要求10所述的装置,其中第一指令定序器和加速器并行执行操作。14.如权利要求10所述的装置,其中一旦完成至少一个操作,加速器将通知第一指令定序器。15.如权利要求14所述的装置,其中通知之后,在用户级控制下,第一指令定序器将执行事件处理程序,其中事件处理程序将接收和处理来自于至少一个操作的结果数据。16.如权利要求10所述的装置,其中内定序器通信包括直接通信而不需要操作系统(OS)介入。17.如权利要求10所述的装置,其中第一指令定序器包括本地指令系统结构(ISA)的处理引擎,而加速器包括非本地ISA的处理引擎。18.如权利要求10所述的装置,其中加速器包括被禁止的系统资源,其中加速器包括将被配置成在用户级控制下由...

【专利技术属性】
技术研发人员:H·王J·沈H·蒋R·汉金斯P·哈马隆德D·罗杰斯G·蔡亚B·帕特尔S·考施克B·比格比G·希菲尔Y·塔尔加姆Y·尤塞夫J·P·赫尔德
申请(专利权)人:英特尔公司
类型:发明
国别省市:

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

1