基于反卷积映射的Depthwise卷积计算装置及卷积计算方法制造方法及图纸

技术编号:39183473 阅读:14 留言:0更新日期:2023-10-27 08:31
本发明专利技术公开了一种基于反卷积映射的Depthwise卷积计算装置,包括数据获取单元、数据路由器、控制单元以及并行且同构的多个Depthwise卷积计算单元,其中,数据获取单元用于获取输入特征图数据、卷积核权值数据及通道偏置数据;数据路由器用于将数据获取单元缓存的输入特征图数据发送至Depthwise卷积计算单元中;控制单元用于在计算开始前对每个Depthwise卷积计算单元进行参数配置,在计算过程中控制整个装置的Depthwise卷积计算流程;每个Depthwise卷积计算单元用于进行基于反卷积映射的Depthwise卷积计算,获得对应的目标特征图数据。本发明专利技术在计算过程中能够减少对输入特征图数据的重复读取,避免由于存储器存取与数据加载造成的额外计算延迟与功耗。存取与数据加载造成的额外计算延迟与功耗。存取与数据加载造成的额外计算延迟与功耗。

【技术实现步骤摘要】
基于反卷积映射的Depthwise卷积计算装置及卷积计算方法


[0001]本专利技术属于神经网络加速
,具体涉及一种基于反卷积映射的Depthwise卷积计算装置及卷积计算方法。

技术介绍

[0002]目前以卷积神经网络为代表的深度学习技术已经广泛应用于图像分类、图像分割、目标检测等方面,并取得了显著的成果。然而,卷积神经网络在推理过程中会发生大量的矩阵运算,耗费大量的计算资源与能量。为实现神经网络在物联网与可穿戴设备上的部署与应用,研究人员除了对现有网络模型提出量化、剪枝、知识蒸馏等模型压缩技术之外,还在轻量化神经网络结构方面进行探索,旨在保持模型精度基础上进一步减少模型参数量和复杂度。Depthwise卷积作为一种轻量化神经网络算子,其通过分离各通道卷积过程,避免卷积过程中通道间信息交互以降低计算量与参数量,从而实现了网络轻量化。
[0003]为实现神经网络的模型部署,专用的神经网络计算装置通过定制化的硬件设计与算法优化大幅提升神经网络的计算速度与能耗效率。因此,利用FPGA、GPU、ASIC等高并行度异构计算平台进行神经网络加速器设计成为新的研究热点。在这其中,FPGA和ASIC以其高定制性、高能效比和低延时等优势而拥有良好的市场前景。然而,Depthwise卷积在计算时通常被作为通道数为1的普通卷积,缺乏针对性的算法优化与计算单元设计,导致计算过程中产生大量数据访存开销与计算延迟。

技术实现思路

[0004]为了解决现有技术中存在的上述问题,本专利技术提供了一种基于反卷积映射的Depthwise卷积计算装置及卷积计算方法。本专利技术要解决的技术问题通过以下技术方案实现:
[0005]本专利技术提供了一种基于反卷积映射的Depthwise卷积计算装置,包括数据获取单元、数据路由器、控制单元以及并行且同构的多个Depthwise卷积计算单元,其中,
[0006]所述数据获取单元用于获取参与Depthwise卷积计算的输入特征图数据、卷积核权值数据及通道偏置数据,并进行本地缓存;
[0007]所述数据路由器连接所述数据获取单元、所述控制单元和所述多个Depthwise卷积计算单元,用于将所述数据获取单元缓存的输入特征图数据发送至所述Depthwise卷积计算单元中,将所述卷积核权值数据和所述通道偏置数据传输至所述控制单元;
[0008]所述控制单元连接所述多个Depthwise卷积计算单元,用于在计算开始前利用所述卷积核权值数据和所述通道偏置数据对每个Depthwise卷积计算单元进行参数配置;在计算过程中控制整个装置的Depthwise卷积计算流程;
[0009]每个Depthwise卷积计算单元用于利用所述输入特征图数据和所述卷积核权值数据进行基于反卷积映射的Depthwise卷积计算,获得对应的目标特征图数据并将所述目标特征图数据输出至所述数据路由器,并且所述多个Depthwise卷积计算单元在所述数据路
由器和所述控制单元的作用下实现对Depthwise卷积的多通道并行计算。
[0010]在本专利技术的一个实施例中,所述数据获取单元中包括本地存储器,所述本地存储器用于对所述输入特征图数据、所述卷积核权值数据及所述通道偏置数据进行本地缓存。
[0011]在本专利技术的一个实施例中,每个Depthwise卷积计算单元包括偏置寄存器、多个权值寄存器、乘法器阵列以及带有FIFO级联的加法器链,其中,
[0012]每个权值寄存器用于在卷积计算开始前接收并存储对应通道的卷积核权值数据并在当前通道的整个卷积计算过程中保持不变;
[0013]所述偏置寄存器位于所述加法器链的起始位置,用于存储所述通道偏置数据;
[0014]所述乘法器阵列包括并列的多个乘法器,每个乘法器的一个输入端连接至对应位置的权值寄存器的输出端,用于实现输入特征值数据与当前通道的卷积核权值数据的相乘,并将相乘的结果作为加法器链中对应各级加法器的输入;
[0015]所述带有FIFO级联的加法器链,用于实现基于反卷积映射的Deptwise卷积计算,加法器链中的各级加法器用于实现对乘法器乘积结果的逐级累加求和;加法器链中级联的FIFO用于对加法器进行累加生成的目标输出特征图的中间计算结果进行缓存;加法器链的最后一级加法器完成所有中间计算结果的累加,输出数据为Depthwise卷积运算的目标输出特征图结果。
[0016]在本专利技术的一个实施例中,为实现卷积核尺寸为K*K的Depthwise脉冲反卷积映射计算,所述权值寄存器的数量为K*K,每个Depthwise卷积计算单元的乘法器阵列中并行乘法器的数量为K*K。
[0017]在本专利技术的一个实施例中,所述加法器链中包括K*K个加法器,各加法器之间是并行的且根据来自所述控制单元的时钟信号进行加法操作,其中,每个加法器有两个输入端,一个输入端用于输入对应位置处乘法器的输出结果,另一个输入端用于输入上一个计算周期中上一级加法器的加法求和结果。
[0018]在本专利技术的一个实施例中,所述加法器链中还包括K

1个FIFO单元,其中,每K个加法器之后设置有一个FIFO单元;若在前后两个加法器之间未设置FIFO单元,则在当前两个加法器之间设置一个结果寄存器,所述结果寄存器用于存储前一个加法器的加法求和结果。
[0019]在本专利技术的一个实施例中,每个Depthwise卷积计算单元包括权值数据接口、偏置数据接口、控制信号接口、特征图输入接口和特征图输出接口,其中,
[0020]所述权值数据接口与所述控制单元连接,用于在计算开始前将对应通道的卷积核权值数据按照顺序输入;所述偏置数据接口与所述数据路由器连接,用于输入Depthwise通道的通道偏置数据;所述控制信号接口与所述控制单元相连,用于输入来自所述控制单元的控制信号,所述控制信号通过控制加法器链中级联FIFO的存储与读取,以及乘法器阵列中各个乘法器的运算行为,实现基于反卷积映射的Depthwise卷积计算;所述特征图输入接口与所述数据获取单元相连,用于在Depthwise计算过程中获取输入特征图数据以参与计算;所述特征图输出接口与所述数据路由器相连,用于将Depthwise卷积计算结果输出至所述数据路由器。
[0021]本专利技术的另一方面提供了一种基于反卷积映射的Depthwise卷积计算方法,利用上述实施例中任一项所述的基于反卷积映射的Depthwise卷积计算装置执行,所述方法包
括:
[0022]S1:从外部存储器获取参与Depthwise卷积计算的输入特征图数据、卷积核权值数据及通道偏置数据,并进行本地缓存;
[0023]S2:在卷积计算开始前利用所述卷积核权值数据和所述通道偏置数据对并行且同构的多个Depthwise卷积计算单元分别进行参数配置;
[0024]S3:读取所述输入特征图数据中的单像素位置数据,送入对应的Depthwise卷积计算单元中参与Depthwise卷积计算;
[0025]S4:所本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于反卷积映射的Depthwise卷积计算装置,其特征在于,包括数据获取单元(101)、数据路由器(102)、控制单元(103)以及并行且同构的多个Depthwise卷积计算单元(104),其中,所述数据获取单元(101)用于获取参与Depthwise卷积计算的输入特征图数据、卷积核权值数据及通道偏置数据,并进行本地缓存;所述数据路由器(102)连接所述数据获取单元(101)、所述控制单元(103)和所述多个Depthwise卷积计算单元(104),用于将所述数据获取单元(101)缓存的输入特征图数据发送至所述Depthwise卷积计算单元(104)中,将所述卷积核权值数据和所述通道偏置数据传输至所述控制单元(103);所述控制单元(103)连接所述多个Depthwise卷积计算单元(104),用于在计算开始前利用所述卷积核权值数据和所述通道偏置数据对每个Depthwise卷积计算单元(104)进行参数配置;在计算过程中控制整个装置的Depthwise卷积计算流程;每个Depthwise卷积计算单元(104)用于利用所述输入特征图数据和所述卷积核权值数据进行基于反卷积映射的Depthwise卷积计算,获得对应的目标特征图数据并将所述目标特征图数据输出至所述数据路由器(102),并且所述多个Depthwise卷积计算单元(104)在所述数据路由器(102)和所述控制单元(103)的作用下实现对Depthwise卷积的多通道并行计算。2.根据权利要求1所述的基于反卷积映射的Depthwise卷积计算装置,其特征在于,所述数据获取单元(101)中包括本地存储器,所述本地存储器用于对所述输入特征图数据、所述卷积核权值数据及所述通道偏置数据进行本地缓存。3.根据权利要求1所述的基于反卷积映射的Depthwise卷积计算装置,其特征在于,每个Depthwise卷积计算单元(104)包括偏置寄存器、多个权值寄存器、乘法器阵列以及带有FIFO级联的加法器链,其中,每个权值寄存器用于在卷积计算开始前接收并存储对应通道的卷积核权值数据并在当前通道的整个卷积计算过程中保持不变;所述偏置寄存器位于所述加法器链的起始位置,用于存储所述通道偏置数据;所述乘法器阵列包括并列的多个乘法器,每个乘法器的一个输入端连接至对应位置的权值寄存器的输出端,用于实现输入特征值数据与当前通道的卷积核权值数据的相乘,并将相乘的结果作为加法器链中对应各级加法器的输入;所述带有FIFO级联的加法器链,用于实现基于反卷积映射的Deptwise卷积计算,加法器链中的各级加法器用于实现对乘法器乘积结果的逐级累加求和;加法器链中级联的FIFO用于对加法器进行累加生成的目标输出特征图的中间计算结果进行缓存;加法器链的最后一级加法器完成所有中间计算结果的累加,输出数据为Depthwise卷积运算的目标输出特征图结果。4.根据权利要求1所述的基于反卷积映射的Depthwise卷积计算装置,其特征在于,为实现卷积核尺寸为K*K的Depthwise脉冲反卷积映射计算,所述权值寄存器的数量为K*K,每个Depthwise卷积计算单元(104)的乘法器阵列中并行乘法器的数量为K*K。5.根据权利要求4所述的基于反卷积映射的Depthwise卷积计算装置,其特征在于,所述加法器链中包括K*K个加法器,各加法器之间是并行的且根据来自所述控...

【专利技术属性】
技术研发人员:朱樟明张岳琦冯立琛李栋赖睿
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:

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

1