一种基于Winograd的深度学习处理系统技术方案

技术编号:36795242 阅读:18 留言:0更新日期:2023-03-08 23:01
本公开属于人工智能处理器技术领域,具体而言涉及一种基于Winograd的深度学习处理系统,包括:输入通道,与外部设备通信;输入特征加载器,与所述输入通道相连;路由模块,与所述输入层加载器相连;卷积加速器核心模块,与路由模块相连,所述卷积核加速器核心模块包括至少两个并行设置的卷积核加速器子核心模块;通道累加器,与卷积加速器核心模块相连,用于累加并行的卷积核加速器子核心模块的输出数据;特征卸载器,与通道累加器相连,将所述通道累加器的输出数据传输至处理系统外。通过多尺寸Wino

【技术实现步骤摘要】
一种基于Winograd的深度学习处理系统


[0001]本公开属于人工智能处理器
,具体而言涉及一种基于Winograd的深度学习处理系统。

技术介绍

[0002]随着以卷积神经网络(Convolutional Neural Network,CNN)为代表的深度学习技术在图像分类、目标检测等领域的性能不断提高。基于FPGA设计一种高效的深度学习处理器,一直都是业界的研究热点。但是FPGA上DSP资源往往有限,限制了处理器的性能。而Winograd算法则是解决上述问题最有效的途径之一。它可大幅降低卷积计算的复杂度,具体地,可通过增加少量加法数而大幅降低乘法数。但是,基于Winograd算法设计的深度学习处理器只能高效处理固定尺寸卷积核的卷积,对于其他尺寸的卷积效率低下。导致Winograd算法降低计算复杂度的特性往往在深度学习处理器中难以充分发挥作用。此外,通过卷积层嵌套循环展开与局部并行化设计的1
×
1加速器具有很高的灵活性,但是没有等效加速比,算力有限。

技术实现思路

[0003]本公开正是基于现有技术的上述需求而提出的,本公开要解决的技术问题是提供一种基于Winograd的深度学习处理系统提高灵活性和高效性。
[0004]为了解决上述问题,本公开提供的技术方案包括:
[0005]提供了一种基于Winograd的深度学习处理系统,包括:输入通道,与外部设备通信;输入层加载器,与所述输入通道相连;路由模块,与所述输入层加载器相连;卷积加速器核心模块,与路由模块相连,所述卷积核加速器核心模块包括至少两个并行设置的卷积核加速器子核心模块;通道累加器,与卷积加速器核心模块相连,用于累加并行的卷积核加速器子核心模块的输出数据;和特征卸载器,与通道累加器相连,将所述通道累加器的输出数据传输至处理系统外。
[0006]优选的,所述输入层加载器包括特征加载器、数据加载器和权重加载器,所述输入层加载器与外部设备通过AXI数据总线相连,以获取数据或指令。
[0007]优选的,所述特征加载器、数据加载器和权重加载器均与所述路由模块通过FIFO

A数据线相连。
[0008]优选的,所述卷积核加速器核心模块所包括的多个卷积核加速器子核心模块具有不同的卷积核尺寸和输出尺寸。
[0009]优选的,所述通道累加器的通道数与所述卷积核加速器子核心模块的数量相对应;所述通道累加器的每个通道上都设置有开关,当开关取值为0时,对应通道内的数据参与累加运算;当开关取值为1时,对应通道内的数据不参加累加运算。
[0010]优选的,所述路由模块与所述卷积核加速器子核心模块通过FIFO

B数据线相连。
[0011]优选的,所述卷积核加速器子核心模块与所述通道累加器通过FIFO

B数据线相
连。
[0012]优选的,所述通道累加器与特征卸载器通过FIFO

A数据线相连。
[0013]优选的,所述特征卸载器通过AXI数据总线向处理系统外传输输出数据。
[0014]优选的,所述基于Winograd的深度学习处理系统还包括控制单元,所述控制单元与外部设备通过AXILite数据线相连,接收外部设备的控制指令,并根据计算任务控制深度学习处理系统中的其他模块进行计算。
[0015]与现有技术相比,本专利技术公开一种多尺寸Wino

DPU混合架构,通过核间算力的最优分配,实现Wino

DPU灵活性和高效性的全面提升,进而有效提升深度学习算法的计算效率。利用不同卷积核尺寸和输出尺寸的Winograd加速核(Wino

Core)在灵活性和高效性方面的差异性,在高度可扩展的深度学习处理器架构中组合多个不同尺寸的Wino

Core,形成多核混合异构的深度学习处理器,并通过核间算力的最优分配,实现Wino

DPU灵活性和高效性的全面提升。该架构由3种不同尺寸的Wino

Core及与之配套的控制单元、路由模块、通道累加器和多种数据传输单元组成。
附图说明
[0016]为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
[0017]图1为本公开的一种基于Winograd的深度学习处理系统的结构图;
[0018]图2为本公开实施例中F(2,3)、F(2,2)的结构原理图;
[0019]图3为本公开实施例中F(1,1)的结构原理图;
[0020]图4为本公开实施例中轨道累加器的内部结构图。
具体实施方式
[0021]为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0022]在本公开实施例的描述中,需要说明的是,除非另有明确的规定和限定,术语“相连”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接可以是机械连接,也可以是电连接可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本公开中的具体含义。
[0023]全文中描述使用的术语“顶部”、“底部”、“在
……
上方”、“下”和“在
……
上”是相对于装置的部件的相对位置,例如装置内部的顶部和底部衬底的相对位置。可以理解的是装置是多功能的,与它们在空间中的方位无关。
[0024]为便于对本申请实施例的理解,下面将结合附图以具体实施例做进一步的解释说明,实施例并不构成对本申请实施例的限定。
[0025]卷积神经网络(Convolutional Neural Network,CNN)是目前认为具有强大功能
的神经网络算法之一,其在图形分类、语义识别等领域广泛应用,但是传统的卷积神经网络由于其计算量的巨大因此限制了其在多个场合的使用。
[0026]随着技术的发展,本领域普通技术人员认识到了在FPGA上实现卷积神经网络计算的巨大前景,FPGA(Field-Programmable Gate Array)即现场可编程门阵列,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
[0027]FPGA由存放在片内RAM中的程序来设置其工作状态,因此,在FPGA工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。
[0028]加电时,FPGA芯片本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Winograd的深度学习处理系统,其特征在于,包括:输入通道,与外部设备通信;输入特征加载器,与所述输入通道相连;路由模块,与所述输入层加载器相连;卷积加速器核心模块,与路由模块相连,所述卷积核加速器核心模块包括至少两个并行设置的卷积核加速器子核心模块;通道累加器,与卷积加速器核心模块相连,用于累加并行的卷积核加速器子核心模块的输出数据;和特征卸载器,与通道累加器相连,将所述通道累加器的输出数据传输至处理系统外。2.根据权利要求1所述的一种基于Winograd的深度学习处理系统,其特征在于,所述输入层加载器包括特征加载器、数据加载器和权重加载器,所述输入层加载器与外部设备通过AXI数据总线相连,以获取数据或指令。3.根据权利要求2所述的一种基于Winograd的深度学习处理系统,其特征在于,所述特征加载器、数据加载器和权重加载器均与所述路由模块通过FIFO

A数据线相连。4.根据权利要求1所述的一种基于Winograd的深度学习处理系统,其特征在于,所述卷积核加速器核心模块所包括的多个卷积核加速器子核心模块具有不同的卷积核尺寸和输出尺寸。5.根据权利要求1所述的一种基于Winograd的深度学习处理系统,其特征在于,所述通道累加器的通道数与所述卷积核...

【专利技术属性】
技术研发人员:王晓峰周辉赵雄波盖一帆蒋彭龙路坤锋李晓敏李超然谢宇嘉林平董文杰吴松龄弥寒光黄鹂吴敏赵冠杰李杨珺王森李杰徐天运靳蕊溪林玉野
申请(专利权)人:北京航天自动控制研究所
类型:发明
国别省市:

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

1