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

用于紧密耦合的异构计算的硬件处理器和方法技术

技术编号:14411915 阅读:71 留言:0更新日期:2017-01-11 23:52
描述了涉及紧密耦合的异构计算的方法和装置。在一个实施例中,一种硬件处理器包括并行的多个执行单元,用于将所述多个执行单元的输入连接至第一缓冲器和多个存储体的输出并且将所述多个存储体和并行的多个第二缓冲器的输入连接至第一缓冲器、所述多个存储体、和所述多个执行单元的输出的切换器,以及具有连接至所述多个第二缓冲器的输出的输入的卸载引擎。

【技术实现步骤摘要】

本公开通常涉及电子设备,并且更具体地,本公开的实施例涉及用于紧密耦合的异构计算的硬件处理器。
技术介绍
处理器或者处理器的集合执行来自例如指令集架构(ISA)的指令集的指令。指令集是与编程相关的计算机架构的一部分,并且通常包括原生数据类型、指令、寄存器架构、寻址模式、存储器架构、中断和异常处理、以及外部输入和输出(I/O)。附图说明在附图的各图中通过示例并且非限制的方式图示本公开,其中相同的附图标记指示相似的元素,并且在附图中:图1图示了根据本公开的实施例的硬件处理器。图2A图示了根据本公开的实施例的通过硬件处理器的数据路径。图2B图示了根据本公开的实施例的通过图2A中的硬件处理器的活动数据路径。图3图示了根据本公开的实施例的通过数据路径转移的多个矢量。图4图示了根据本公开的实施例的流程图。图5A是图示了根据本公开的实施例的通用矢量友好的指令格式及其A类指令模板的框图。图5B是图示了根据本公开的实施例的通用矢量友好的指令格式及其B类指令模板的框图。图6A是图示了根据本公开的实施例的用于图5A和5B中的通用矢量友好的指令格式的字段的框图。图6B是图示了根据本公开的一个实施例的构成完全操作码字段的图6A中的特定矢量友好的指令格式的字段的框图。图6C是图示了根据本公开的一个实施例的构成寄存器索引字段的图6A中的特定矢量友好的指令格式的字段的框图。图6D是图示了根据本公开的一个实施例的构成扩增操作字段550的图6A中的特定矢量友好的指令格式的字段的框图。图7是根据本公开的一个实施例的寄存器架构的框图。图8A是图示了根据本公开的实施例的示例性有序流水线和示例性寄存器重命名、无序发出/执行流水线两者的框图。图8B是图示了根据本公开的实施例的将被包括在处理器中的有序架构核的示例性实施例和示例性寄存器重命名、无序发出/执行架构核两者的框图。图9A是根据本公开的实施例的单个处理器核连同其至裸片上互连网络的连接以及连同其二级(L2)高速缓存的本地子集的框图。图9B是根据本公开的实施例的图9A中的处理器核的部分的展开图。图10是根据本公开的实施例的可能具有多于一个核、可能具有集成存储器控制器并且可能具有集成图形的处理器的框图。图11是依据本公开的一个实施例的系统的框图。图12是依据本公开的实施例的更具体的示例性系统的框图。图13,示出了依据本公开的实施例的第二更具体的示例性系统的框图。图14,示出了依据本公开的实施例的片上系统(SoC)的框图。图15是根据本公开的实施例的对比使用软件指令转换器以将源指令集中的二进制指令转换至目标指令集中的二进制指令的框图。具体实施方式在下面的描述中,阐述了许多具体的细节。然而,应当理解可能在没有这些具体细节的情况下实践本公开的实施例。在其他情况下,没有详细示出公知的电路、结构和技术以免使本描述的理解模糊。本说明书中对于“一个实施例”、“实施例”、“示例实施例”等的引用指示描述的实施例可以包括特定特征、结构或特性,但是每一个实施例可以不一定包括所述特定特征、结构或特性。此外,这样的短语不一定指相同实施例。进一步的,当与实施例相关地描述特定特征、结构或特性时,认为无论是否明确描述,影响与其他实施例相关的这样的特征、结构或特性在本领域技术人员的知识范围内。(例如,硬件)处理器或处理器的集合执行来自例如指令集架构(ISA)的指令集的指令。该指令集是与编程相关的计算机架构的一部分,并且通常包括原生数据类型、指令、寄存器架构、寻址模式、存储器架构、中断和异常处理以及外部输入和输出(I/O)。应当注意,术语指令在本文可以是指宏指令(例如,提供给处理器以供执行的指令),或者微指令(例如,从解码宏指令的处理器的解码单元(解码器)产生的指令)。处理器(例如,具有一个或多个核以解码和/或执行指令)可能例如在执行算术、逻辑或其他功能中在数据上进行操作。某些功能可以包括矢量(例如,具有对应的索引以标识每个元素的数据元素(条目)的阵列或其他有序列表)上的操作,例如,在其他矢量上操作的矢量。矢量的元素通常可以指表示单个值的数据的离散部分,例如,通过它自己的索引值标识。矢量的各元素可以是数(例如,整数、浮点等)。在一个实施例中,矢量包括多个元素以表示单个数,例如,单个浮点数。处理器可以访问(例如,加载和/或存储)(例如,与处理器裸片分离的)存储器(例如,数据存储设备)中的数据。存储器可以是系统存储器,例如,随机存取存储器(RAM)。数据存储设备可以不包括处理器高速缓存和/或不包括外部储存器,诸如,但不限于,硬盘驱动(HDD)储存器。处理器可以将某个(某些)操作(或者(一个或多个)操作的部分)卸载至卸载引擎。硬件卸载引擎可以与处理器分离(例如,裸片外)或者是处理器的部分,例如,核的部分或与核分离。利用卸载引擎的处理器(例如,处理器核)可以包括例如当指令被执行时使数据被发送至硬件卸载引擎的在其指令集中的指令(例如,具有特定操作码)。在一个实施例中,卸载引擎包括控制其操作的有限状态机(FSM),例如,如本文所讨论的。在一个实施例中,处理器核(例如,多个(例如,矢量)执行单元)可以以第一时钟速度执行并且卸载引擎可以(例如,同时地)以第二、更快(或更慢)的时钟速度执行。在一个实施例中,卸载引擎以大于二倍的处理器时钟速度操作。在一个实施例中,卸载引擎以处理器时钟速度的2、3、4、5、6、7、8、9、10、11、12、13、14、15、16、17、18、19、20或25等倍(或者以处理器时钟速度的2、3、4、5、6、7、8、9、10、11、12、13、14、15、16、17、18、19、20或25等分之一)操作。卸载引擎可以是与利用该卸载引擎的处理器不同类型的处理器。在一个实施例中,处理器和卸载引擎使用相同的指令集,例如,ISA。在一个实施例中,处理器包括专用卸载引擎以解决域特定的问题。与仅硬件和仅软件的方式相比,混合处理器架构的某些实施例可以提供软件的灵活性(例如,运行在处理器上的固件)和优化的硬件的效率(例如,专用卸载引擎)二者。例如,在公共密钥加密(PKE)的一个实施例中,电路(例如,内容处理模块(CPM))可以包括(例如,可编程的)矢量处理器(例如,模块化数学处理器(MMP))和(例如,大的)整数乘法器(521bx521b)卸载引擎。该实施例可以包括卸载引擎的异步使用模型,例如,以使得获得(sourcing)操作数和排出(draining)结果包括两个(例如,固件)矢量指令的执行。指令的这样的顺序执行模型可以减少卸载引擎的利用以及因此减少系统的整体吞吐量。具有(例如,高度)并行数据路径的这样的矢量处理器和卸载引擎还可以包括数据冒险(hazard)解决逻辑的利用。在本公开的一个实施例中,用于甚长指令字(VLIW)类型的指令的矢量处理器(例如,矢量处理器架构)允许处理器自身内部以及至和/或来自卸载引擎的(例如,高度地)并行的数据移动,例如,由处理器(例如,核)发送至卸载引擎的数据和/或由卸载引擎发送至处理器的数据。VLIW指令(例如,当被执行时)可以引起多个(例如,有区别的或不同的)操作。例如,一个VLIW指令可以(例如,当被执行时)使一个(例如,不同的)操作在处理器的多个执行单元中的每一个上本文档来自技高网...
<a href="http://www.xjishu.com/zhuanli/55/201610601331.html" title="用于紧密耦合的异构计算的硬件处理器和方法原文来自X技术">用于紧密耦合的异构计算的硬件处理器和方法</a>

【技术保护点】
一种硬件处理器,包括:并行的多个执行单元;切换器,用于将所述多个执行单元的输入连接至第一缓冲器和多个存储体的输出并且将所述多个存储体和并行的多个第二缓冲器的输入连接至第一缓冲器、所述多个存储体、和所述多个执行单元的输出;以及卸载引擎,具有连接至所述多个第二缓冲器的输出的输入。

【技术特征摘要】
2015.06.26 US 14/7520471.一种硬件处理器,包括:并行的多个执行单元;切换器,用于将所述多个执行单元的输入连接至第一缓冲器和多个存储体的输出并且将所述多个存储体和并行的多个第二缓冲器的输入连接至第一缓冲器、所述多个存储体、和所述多个执行单元的输出;以及卸载引擎,具有连接至所述多个第二缓冲器的输出的输入。2.根据权利要求1所述的硬件处理器,其中所述卸载引擎的输出连接至第一缓冲器的输入。3.根据权利要求1所述的硬件处理器,进一步包括数据冒险解决逻辑以同时从第一缓冲器的输出读取并且向所述多个第二缓冲器的输入写入。4.根据权利要求3所述的硬件处理器,其中所述数据冒险解决逻辑不插入暂停。5.根据权利要求1所述的硬件处理器,其中所述多个执行单元将以第一时钟速度执行,并且所述卸载引擎将以第二、更慢的时钟速度执行。6.根据权利要求1所述的硬件处理器,其中所述多个执行单元均包括移位寄存器。7.根据权利要求1所述的硬件处理器,其中第一缓冲器和所述多个第二缓冲器是先入先出(FIFO)缓冲器。8.根据权利要求1-7中的一项所述的硬件处理器,其中所述多个存储体是四个或更多存储体,并且每个存储体包括与其他存储体的输入端口和输出端口分离的输入端口和输出端口。9.一种方法,包括:基于控制信号用切换器将硬件处理器的并行的多个执行单元的输入连接至第一缓冲器和多个存储体的输出并且将所述多个存储体和并行的多个第二缓冲器的输入连接至第一缓冲器、所述多个存储体和所述多个执行单元的输出;以及将数据从所述多个第二缓冲器的输出提供至卸载引擎的输入。10.根据权利要求9所述的方法,进一步包括将数据从所述卸载引擎的输出提供至第一缓冲器的输入。11.根据权利要求9所述的方法,进一步包括同时从第一缓冲器的输出读取并且向所述多个第二缓冲器的输入写入。12.根据权利要求11所述的方法,进一步包括不插入暂停。13.根据权利要求9所述的方法,进一步包括所述多个执行单元以第一时钟速度执行,并且所述卸载引擎以第...

【专利技术属性】
技术研发人员:C·Y·康P·劳伦特H·K·塔德帕里P·M·格哈蒂加T·J·奥德怀尔S·兹亚伊夫
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

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

1