一种基于Winograd的相关算法加速器存储系统技术方案

技术编号:36759763 阅读:14 留言:0更新日期:2023-03-04 10:53
本公开属于算法硬件电路设计技术领域,具体而言涉及一种基于Winograd的相关算法加速器存储系统,包括:片外存储;片上张量缓存,与片外存储相连,所述片上张量缓存包括基准张量缓存、实时张量缓存以及过程张量缓存,其中基准张量缓存基于所述加速器的数据重用缓存计算所需的基准图张量块,实时张量缓存基于所述加速器的数据重用缓存计算所需的实时图张量块,过程张量缓存基于所述加速器的数据重用缓存当前计算产生的中间结果数据;和多个寄存器,与片上张量缓存相连,接收和/或输送基准图和/或实时图的处理数据。本公开满足计算单元高吞吐量的数据需求,还能利用尽可能少的片上资源,实现高数据复用率,降低加速器对片外存储带宽的需求。储带宽的需求。储带宽的需求。

【技术实现步骤摘要】
一种基于Winograd的相关算法加速器存储系统


[0001]本公开属于算法硬件电路设计
,具体而言涉及一种基于Winograd的相关算法加速器存储系统。

技术介绍

[0002]随着深度学习技术的快速发展,卷积神经网络(Convolutional Neural Network,CNN)开始用于图像匹配定位算法。该算法由CNN和相关(Correlation)算法组成,其中CNN用于基准图与实时图的特征提取,相关算法用于对CNN提取的特征数据进行相关运算,提取相关极大值。由于CNN的海量计算与存储,一般由深度学习处理器(Deep

Learning Processing Unit,DPU)完成计算。但是由于相关算法的计算特征与深度学习算法差异较大,导致DPU通常对其计算效率极低,从而催生了基于FPGA的相关算法加速器。

技术实现思路

[0003]本公开正是基于现有技术的上述需求而提出的,本公开要解决的技术问题是提供一种基于Winograd的相关算法加速器存储系统以提高数据复用率。
[0004]为了解决上述问题,本公开提供的技术方案包括:
[0005]提供了一种基于Winograd的相关算法加速器存储系统,包括:片外存储,用于存储全部的基准图张量数据和实时图张量数据,在计算过程中,缓存部分计算所需的数据;片上张量缓存,与片外存储相连,用于为加速单元提供并行计算所需的数据带宽,所述片上张量缓存包括基准张量缓存、实时张量缓存以及过程张量缓存,其中基准张量缓存基于所述加速器的数据重用缓存计算所需的基准图张量块,实时张量缓存基于所述加速器的数据重用缓存计算所需的实时图张量块,过程张量缓存基于所述加速器的数据重用缓存当前计算产生的中间结果数据;和多个寄存器,与片上张量缓存相连,接收和/或输送基准图和/或实时图的处理数据。
[0006]优选的,所述片外存储和片上张量缓存通过数据加载单元或数据卸载连接,所述片外存储的通信接口通过AXI协议与数据加载单元或数据卸载单元建立连接,所述数据加载单元或数据卸载单元通过FIFO数据线连接片上张量缓存。
[0007]优选的,所述基准图张量缓存沿深度方向设置乒乓的读写区域;当加速单元读取乒区域的数据进行计算时,数据加载器向乓区域缓存新的数据;当加速单元读取乓区域的数据进行计算时,数据加载器向乒区域缓存新的数据,以并行数据的计算与传输。
[0008]优选的,所述基准图张量缓存每次缓存的大小为C
b
×
(m+r

1)
×
P
n
的张量块,表示为:Buf
B
[m][m+r

1][D
B
][P
n
]其中,C
b
为基准图张量宽度,Buf
B
为基准图的缓存,m表示Winograd中相关结果矩阵的宽度,r表示实时图矩阵的宽度,(m+r

1)为基准图矩阵块的高度,D
B
为基准图张量缓存的存储体的深度,P
n
是加速单元在输入通道方向上的并行度。
[0009]优选的,所述基准图张量缓存的每个存储体的宽度为(P
n
×
BIT
B
)比特,BIT
B
为基准图特征数据的位宽;所述基准图张量缓存的每个存储体的深度大于基准图宽度最大值的2
倍,表示为:D
B
≥max(C
b
)
×
2。
[0010]优选的,在加速单元读取乒区域的数据进行计算的同时,数据加载器将最后两行的数据写入乓区域;在加速单元读取乓区域的数据进行计算的同时,数据加载器将最后两行的数据写入乒区域,其中所述最后两行为第(m+r

2)行和第(m+r

3)行。
[0011]优选的,所述多个寄存器包括基准张量寄存器,所述基准张量寄存器与所述基准张量缓存相连,基准张量寄存器组从基准图张量缓存中加载数据,并向基准图变换单元提供数据;基准图变换单元每个时钟周期从基准图张量缓存中读取大小为m
×
(m+r

1)
×
P
n
的张量块,剩余的大小为(r

1)
×
(m+r

1)
×
P
n
的张量块通过寄存器组内部搬移。
[0012]优选的,所述实时图张量缓存每次需缓存大小为C
r
×
r
×
N的张量块,表示为:Buf
R
[r][D
R
][P
n
]其中,C
r
为实时图张量的宽度,Buf
R
为实时图的缓存,N为实时图张量的通道数,Buf
R
为基准图的缓存,D
R
表示实时图张量缓存中的存储体的深度。
[0013]优选的,所述实时图张量缓存中的存储体的宽度为(P
n
×
BIT
R
)比特,BIT
R
为实时图特征数据的位宽,所述实时图张量缓存中的存储体的深度大于实时图宽度与通道分块乘积的最大值,表示为:其中,N为实时图张量的通道数。
[0014]优选的,所述过程张量缓存每次需缓存大小为C
c
×
R
c
的张量块,表示为:Buf
C
[m][m][D
C
]其中,C
c
为相关结果矩阵宽度,Buf
C
为过程的缓存,R
c
为相关结果矩阵高度,D
C
表示过程张量缓存中的存储体的深度,过程张量缓存中的存储体的深度大于相关结果矩阵面积的1/m2,表示为:,表示为:为相关结果矩阵块,过程张量缓存中的存储体的宽度为(1
×
BIT
C
)比特,BIT
C
为中间结果数据的位宽。
[0015]与现有技术相比,本公开满足计算单元高吞吐量的数据需求的同时,能够利用尽可能少的片上BRAM资源,实现尽可能高的数据复用率,从而降低加速器对片外存储带宽的需求。
附图说明
[0016]为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
[0017]图1为本公开基于Winograd的相关算法加速器存储系统的架构图;
[0018]图2为本公开实施例中片外存储基准图数据排布方式的示意图;
[0019]图3为本公开基准图缓存和基准寄本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Winograd的相关算法加速器存储系统,其特征在于,包括:片外存储,用于存储全部的基准图张量数据和实时图张量数据,在计算过程中,缓存部分计算所需的数据;片上张量缓存,与片外存储相连,用于为加速单元提供并行计算所需的数据带宽,所述片上张量缓存包括基准张量缓存、实时张量缓存以及过程张量缓存,其中基准张量缓存基于所述加速器的数据重用缓存计算所需的基准图张量块,实时张量缓存基于所述加速器的数据重用缓存计算所需的实时图张量块,过程张量缓存基于所述加速器的数据重用缓存当前计算产生的中间结果数据;和多个寄存器,与片上张量缓存相连,接收和/或输送基准图和/或实时图的处理数据。2.根据权利要求1所述的一种基于Winograd的相关算法加速器存储系统,其特征在于,所述片外存储和片上张量缓存通过数据加载单元或数据卸载连接,所述片外存储的通信接口通过AXI协议与数据加载单元或数据卸载单元建立连接,所述数据加载单元或数据卸载单元通过FIFO数据线连接片上张量缓存。3.根据权利要求1所述的一种基于Winograd的相关算法加速器存储系统,其特征在于,所述基准图张量缓存沿深度方向设置乒乓的读写区域;当加速单元读取乒区域的数据进行计算时,数据加载器向乓区域缓存新的数据;当加速单元读取乓区域的数据进行计算时,数据加载器向乒区域缓存新的数据,以并行数据的计算与传输。4.根据权利要求1所述的一种基于Winograd的相关算法加速器存储系统,其特征在于,所述基准图张量缓存每次缓存的大小为C
b
×
(m+r

1)
×
P
n
的张量块,表示为:Buf
B
[m][m+r

1][D
B
][P
n
]其中,C
b
为基准图张量宽度,Buf
B
为基准图的缓存,m表示Winograd中相关结果矩阵的宽度,r表示实时图矩阵的宽度,(m+r

1)为基准图矩阵块的高度,D
B
为基准图张量缓存的存储体的深度,P
n
是加速单元在输入通道方向上的并行度。5.根据权利要求4所述的一种基于Winograd的相关算法加速器存储系统,其特征在于,所述基准图张量缓存的每个存储体的宽度为(P
n
×
BIT
B
)比特,BIT
B
为基准图特征数据的位宽;所述基准图张量缓存的每个存储体的深度大于基准图宽度最大值的2倍,表示为:D
B
≥max(C
b
)
×
2。6.根据权利要求5所述的一种基于Winograd的相关算法加速器存储系统,其特征在于,在加速单元读取乒区域的数据进行计算的同时,数据加载器将最后两行的数据写入乓区域;在加速单元读取乓区域的数据...

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

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

1