一种基于全互连网络的粗粒度可重构阵列及处理器制造技术

技术编号:34130523 阅读:56 留言:0更新日期:2022-07-14 15:18
本发明专利技术提供一种基于全互连网络的粗粒度可重构阵列及处理器。所述阵列包括由全互连网络连接的多种类型的异构算子。本发明专利技术由于采用异构算子构成CGRA,每个算子内部没有太多重复的复杂功能,可避免造成大量的内部逻辑浪费,解决了同构算子因端口共享引入算子内逻辑浪费的问题;本发明专利技术由于采用点到点的全互连网络连接各个算子,实现了任意两个算子之间的互连,解决了传统MESH结构因互连资源不足引入的资源映射浪费问题。资源映射浪费问题。资源映射浪费问题。

【技术实现步骤摘要】
一种基于全互连网络的粗粒度可重构阵列及处理器


[0001]本专利技术属于处理器
,具体涉及一种基于全互连网络的粗粒度可重构阵列及处理器。

技术介绍

[0002]可重构计算是加州大学伯克利分校可重构技术研究中心的Dehon和Wawrzynel于1999年提出来的,可重构计算是具有如下特征的计算组织结构:一是在其制造之后,芯片的功能仍可定制以解决任何问题;二是很大程度地实现从任务到芯片的空间映射以完成计算。任何满足上述特征的计算方式都可称之为可重构计算。
[0003]粗粒度可重构阵列CGRA(Coarse

Grained Reconfigurable Array)处理器内部都会有一个数量庞大的处理单元阵列。例如Google在2017年发布的PIXEL2手机中搭载的Pixel Vision Core采用了CGRA技术,其内部包含了12*12个处理单元(Processing Element,PE)的计算阵列,中心的8*8阵列支持数学运算,外围PE仅支持数据传输,所有的处理单元通过花环网络连接到一起,其整体结构如图2所示。图3展示了一种典型的基于MESH(网格)互连的CGRA结构,RC(Reconfigurable Cell)为同构的可重构计算单元,可以执行加、减、乘、除、移位、与或非等算数运算,所有的RC通过MESH互连结构连接到一起,可以执行一些典型的数据流运算。
[0004]CGRA与传统的计算设备DSP、GPU相比,具有空间映射、数据流计算等优势。但是CGRA与FPGA一样存在资源浪费问题,主要是由两个方面引入的:一是同构算子(PE)的端口共享引入的算子内逻辑浪费。举一个例子,一个PE具备ALU、EALU、LOOP、MAC、SPU等所有的能力,当PE执行ALU运算时就无法执行其他的运算,造成PE内部资源的浪费;二是传统MESH结构的资源映射的浪费,一个算法的数据流图映射到CGRA上,不仅需要将数据流图的操作与PE建立一个对应关系,同时需要将数据流图中的数据传递关系在MESH图上建立路由通道,经常因为MESH资源的约束导致很多PE无法用于映射数据流图的操作。

技术实现思路

[0005]为了解决现有技术中存在的上述问题,本专利技术提供一种基于全互连网络的粗粒度可重构阵列及处理器。
[0006]为了实现上述目的,本专利技术采用以下技术方案。
[0007]第一方面,本专利技术提供一种基于全互连网络的粗粒度可重构阵列,包括由全互连网络连接的多种类型的异构算子。
[0008]进一步地,所述阵列包括6种异构算子,分别为分支算子SEL、数值运算算子ALU、增强数值运算算子EALU、乘加算子MAC、特殊算子SPU、缓存算子BUFFER和循环控制算子LOOP。
[0009]进一步地,所述全互连网络包括Benes网络或Clos网络或Crossbar网络。
[0010]更进一步地,所述全互连网络为增强型Benes网络,包括输入输出端数均为N/2的第一子Benes网络和第二子Benes网络以及N个交换单元;所述交换单元设有第一输入端和
第二输入端以及第一输出端和第二输出端,具有直通、交换、上广播和下广播4种工作方式;其中,
[0011]N/2个交换单元的第一输出端口与第一子Benes网络的输入端口相连,N/2个交换单元的第二个输出端口与第二子Benes网络的输入端口相连;
[0012]N/2个交换单元的第一输出端口与第一子Benes网络的输入端口相连,N/2个交换单元的第二个输出端口与第二子Benes网络的输入端口相连。
[0013]更进一步地,所述阵列还包括计算单元集合Cluster,所述计算单元集合Cluster包括由增强型Benes网络连接的一种或多种类型的异构算子。
[0014]更进一步地,所述计算单元集合Cluster包括由增强型Benes网络连接的24个增强数值运算算子EALU、48个数值运算算子ALU、12个分支算子SEL、2个循环控制算子LOOP、48个缓存算子BUFFER。
[0015]优选地,所述增强型Benes网络的输入输出端数均为N=256。
[0016]更进一步地,所述阵列包括由增强型Benes网络连接的4个计算单元集合Cluster、50个乘加算子MAC、10个特殊算子SPU、64个缓存算子BUFFER、6个循环控制算子LOOP。
[0017]优选地,所述增强型Benes网络的输入输出端数均为N=512。
[0018]第二方面,本专利技术提供一种处理器,所述处理器包括前面所述的粗粒度可重构阵列。
[0019]与现有技术相比,本专利技术具有以下有益效果。
[0020]本专利技术提出的粗粒度可重构阵列CGRA由多种类型的异构算子组成,且所述多种类型的异构算子由全互连网络连接。由于本专利技术采用异构算子构成CGRA,每个算子内部没有太多重复的复杂功能,可避免造成大量的内部逻辑浪费,解决了同构算子因端口共享引入算子内逻辑浪费的问题。由于本专利技术采用点到点的全互连网络连接各个算子,实现了任意两个算子之间的互连,解决了传统MESH结构因互连资源不足引入的资源映射浪费问题。
附图说明
[0021]图1为本专利技术实施例一种基于全互连网络的粗粒度可重构阵列的结构示意图。
[0022]图中:1

全互连网络,2

异构算子。
[0023]图2为一种通过花环网络连接的CGRA结构示意图。
[0024]图3为一种基于MESH互连的CGRA结构示意图。
[0025]图4为一种增强型Benes网络结构示意图。
[0026]图5为本专利技术另一实施例的CGRA结构示意图。
具体实施方式
[0027]为使本专利技术的目的、技术方案及优点更加清楚、明白,以下结合附图及具体实施方式对本专利技术作进一步说明。显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0028]图1为本专利技术实施例一种基于全互连网络的粗粒度可重构阵列的组成框图,所述粗粒度可重构阵列包括由全互连网络1连接的多种类型的异构算子2。
[0029]本实施例提出了一种粗粒度可重构阵列CGRA,所述CGRA主要由多种类型的异构算子2组成,其特征是所述多种类型的异构算子2由全互连网络1连接。异构算子2一般是指数值运算算子ALU(arithmetic logic unit)、乘加算子MAC(Multiply Accumulate unit)等。全互连网络1能够使其任意一个输入端与任意一个输出端连通,从而实现任意两个异构算子2之间的互连。现有CGRA一般由同构算子构成,而同构算子之间多采用网格MESH结构连接。同构算子(PE)的端口共享可引入算子内逻辑浪费。比如,一个PE具备ALU、EALU(Enhanced Arithmetic logic 本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于全互连网络的粗粒度可重构阵列,其特征在于,所述阵列包括由全互连网络连接的多种类型的异构算子。2.根据权利要求1所述的基于全互连网络的粗粒度可重构阵列,其特征在于,所述多种类型的异构算子包括,分支算子SEL、数值运算算子ALU、增强数值运算算子EALU、乘加算子MAC、特殊算子SPU、缓存算子BUFFER和循环控制算子LOOP。3.根据权利要求1所述的基于全互连网络的粗粒度可重构阵列,其特征在于,所述全互连网络包括Benes网络、Clos网络或Crossbar网络。4.根据权利要求3所述的基于全互连网络的粗粒度可重构阵列,其特征在于,所述全互连网络为增强型Benes网络,包括输入输出端数均为N/2的第一子Benes网络和第二子Benes网络以及N个交换单元;所述交换单元设有第一输入端和第二输入端以及第一输出端和第二输出端,具有直通、交换、上广播和下广播4种工作方式;其中,N/2个交换单元连接在增强型Benes网络的输入端In0~In(N

1)与第一子Benes网络、第二子Benes网络的输入端之间,N/2个交换单元的第一输出端口与第一子Benes网络的输入端口相连,N/2个交换单元的第二个输出端口与第二子Benes网络的输入端口相连;另外N/2个交换单元连接在第一子Benes网络、第二子Benes网络的输出端与增强型Benes网络的输出端Out0~Out(N

【专利技术属性】
技术研发人员:唐士斌欧阳鹏
申请(专利权)人:北京清微智能信息技术有限公司
类型:发明
国别省市:

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

1