用于支持矢量排序算法和其他算法的具有树状结构的功能单元的制作方法_3

文档序号:9332646阅读:来源:国知局
况下,根据图6中观察到的连接,将有63个不同的比较和交换电路连接到树中的a0_al5通道。这些各种交换连接也可以被看作是网络(尽管硬接线,而不是配置/可配置的)。该方法可设想地消耗更少的时钟周期,这是因为用于排序功能的整个功能单元的传播延迟变得与通过十个比较和交换电路的传播延迟(通过树的每个阶段一个传播延迟)相差无几。在这种情况下,ROM不需要包含网络交换设置。如果功能单元被增强以包括前缀操作,则可用于支持图7的前缀树的在图6中所观察到的这些连接将被“使能”为不能简单地从图6的树重新使用的特殊额外连接。
[0046]其他设计方法可着眼于这两个极端(完全可配置的网络电路与完全硬接线的网络电路)之间的某处,以在硅表面面积消耗与速度之间取得平衡。
[0047]本领域普通技术人员将能够将上述提供的树模式延伸以建立接受大于或小于16的矢量尺寸的替代实施例。换句话说,本领域普通技术人员将能够利用上述教导来构建具有多于或少于16个通道的其他树实施例。
[0048]图10示出示例性多核处理器1000的架构。如在图1000中观察到的,该处理器包括:1)多个处理核心1001_1至1001_N ;2)互连网络1002 ;3)最后一级高速缓存系统1003 ;4)存储器控制器1004和I/O集线器1005。每个处理核心包含一个或多个指令执行管线,以用于执行程序代码指令。这样的指令执行管线中的任意或全部可以支持与图1的描述一致的矢量指令的执行,并包括可执行上文关于图4至9讨论的操作的功能单元。互连网络1002用于将每个核心1001_1至1001_N彼此互连以及与其他组件1003、1004、1005互连。在指令和/或数据被驱逐到系统存储器1008之前,最后一级高速缓存系统1003作为处理器中的高速缓存的最后一层。
[0049]存储器控制器1004从/向系统存储器1008读取/写入数据和指令。I/O集线器1005管理处理器与“I/O”设备(例如,非易失性存储设备和/或网络接口)之间的通信。端口 1006源自互联网络1002以链接多个处理器,使得可以实现具有N个核心以上的系统。图形处理器1007执行图形计算。功率管理电路(未示出)整体地管理处理器的性能和功率状态(“封装级别”)以及处理器内个体单元的性能和功率状态的方面,例如个体核心1001_1至1001_N,图形处理器1007等。为了方便,重要的其它功能块(例如,锁相环(PLL)的电路)未在图10中描绘。
[0050]在前述的说明书中,本发明已经参照其特定示例性实施例进行描述。然而,将显而易见的是可以对其做出各种修改和变化,而不背离如在所附权利要求中阐述的本发明的更广泛的精神和范围。由此,说明书和附图被认为是示例性的而不是限制性的意义。
【主权项】
1.一种装置,包括: 指令执行管线的功能单元,所述功能单元具有耦合到网络电路的多个比较和交换电路,以实现矢量排序树以用于矢量排序指令,所述比较和交换电路中的每一个具有比较一对输入的相应比较电路,所述比较和交换电路中的每一个具有相同侧的第一输出以用于呈现两个输入中的较高者,并且具有相同侧的第二输出以用于呈现两个输入中的较低者,所述比较电路还支持所述功能单元执行前缀最小和/或前缀相加指令。2.根据权利要求1所述的装置,其中,所述功能单元支持不同尺寸的矢量的排序。3.根据权利要求2所述的装置,其中,所述尺寸中的特定一个是利用所述矢量排序指令的立即操作数指定的。4.根据权利要求2所述的装置,其中,所述不同尺寸的矢量包括2个元素、4个元素、8个元素和16个元素。5.根据权利要求2所述的装置,其中,所述功能单元能够同时排序两个矢量,所述两个矢量的尺寸小于能够通过所述矢量排序树进行排序的最大矢量尺寸。6.根据权利要求1所述的装置,其中,所述网络电路包括可配置的交换网络。7.根据权利要求6所述的装置,其中,所述功能单元包括含有微代码的存储器电路,所述微代码将控制信号呈现给所述可配置的交换网络,以用于所述矢量排序指令。8.一种装置,包括: 指令执行管线的功能单元,所述功能单元具有耦合到网络电路的多个比较和交换电路,以实现矢量排序树以用于矢量排序指令,所述比较和交换电路中的每一个具有比较一对输入的相应比较电路,所述比较和交换电路中的每一个具有相同侧的第一输出以用于呈现两个输入中的较高者,并且具有相同侧的第二输出以用于呈现两个输入中的较低者,所述电路中的每一个还具有以下中的任意一个: 加法器,其利用所述功能单元而实现前缀相加指令; 乘法器,其利用所述功能单元而实现前缀相乘指令。9.根据权利要求8所述的装置,其中,所述功能单元支持不同尺寸的矢量的排序。10.根据权利要求9所述的装置,其中,所述尺寸中的特定一个是利用所述矢量排序指令的立即操作数指定的。11.根据权利要求9所述的装置,其中,所述不同尺寸的矢量包括2个元素、4个元素、8个元素和16个元素。12.根据权利要求9所述的装置,其中,所述功能单元能够同时排序两个矢量,所述两个矢量的尺寸小于能够通过所述矢量排序树进行排序的最大矢量尺寸。13.根据权利要求8所述的装置,其中,所述网络电路包括可配置的交换网络。14.根据权利要求13所述的装置,其中,所述功能单元包括含有微代码的存储器电路,所述微代码将控制信号呈现给所述可配置的交换网络,以用于所述矢量排序指令。15.根据权利要求8所述的装置,其中,所述电路中的每一个的比较器还用于利用所述功能单元而实现以下中的任何一个: 如缀最小指令; 如缀最大指令。16.—种方法,包括: 利用指令执行管线的功能单元电路来执行以下步骤,以执行矢量排序指令: 同时接收第一矢量和第二矢量; 将所述第一矢量和所述第二矢量的元素传递通过多个比较和交换电路,所述比较和交换电路实现排序树以排序所述第一矢量和所述第二矢量,其中,所述比较和交换电路中的每一个执行以下步骤: 比较所述元素中的一对; 在相同侧的第一输出上呈现所述一对中的较高者; 在相同侧的第二输出上呈现所述一对中的较低者。17.根据权利要求16所述的方法,其中,所述指令指定所述第一矢量和所述第二矢量的尺寸。18.根据权利要求17所述的方法,其中,所述功能单元使用所述尺寸以确定所述元素要通过所述排序树的多少阶段。19.根据权利要求16所述的方法,进一步包括利用所述功能单元而执行前缀求和指令或前缀相加指令中的任意一个。20.根据权利要求16所述的方法,进一步包括利用所述功能单元而执行前缀最小指令或前缀最大指令中的任意一个。21.一种装置,包括: 指令执行管线的功能单元,所述功能单元具有耦合到网络电路的多个比较和交换电路,以实现矢量排序树以用于同时排序多于一个输入矢量,所述比较和交换电路中的每一个具有比较一对输入的相应比较电路,所述比较和交换电路中的每一个具有相同侧的第一输出以用于呈现两个输入中的较高者,并且具有相同侧的第二输出以用于呈现两个输入中的较低者。
【专利摘要】描述了一种具有指令执行管线的功能单元的装置。所述功能单元具有耦合到网络电路的多个比较和交换电路,以实现矢量排序树以用于矢量排序指令。所述比较和交换电路中的每一个具有用于比较一对输入的相应比较电路。所述比较和交换电路中的每一个具有相同侧的第一输出以用于呈现两个输入中的较高者,并且具有相同侧的第二输出以用于呈现两个输入中的较低者,所述比较电路还支持所述功能单元执行前缀最小和/或前缀相加指令。
【IPC分类】G06F9/30, G06F9/06
【公开号】CN105051679
【申请号】CN201380062359
【发明人】R·M·约费, N·C·加洛坡冯伯里斯
【申请人】英特尔公司
【公开日】2015年11月11日
【申请日】2013年6月20日
【公告号】DE112013006309T5, US20140189292, WO2015094145A2, WO2015094145A3
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1