首页> 中国专利> 一种船用气象雷达照相装置多通道并行CNN加速器

一种船用气象雷达照相装置多通道并行CNN加速器

摘要

一种船用气象雷达照相装置多通道并行CNN加速器,其包括运算单元和缓存,PE进行卷积运算,缓存存储运算单元输入和输出的数据,缓存包括输入特征缓存、权重参数缓存及输出特征缓存,运算单元采用全流水设计结构,N(通道数)个乘法器进行并行运算,并将N个输出同时输入到加法树中相加,得到N通道输入特征乘加的结果,再将该结果与上一次的中间结果进行累加。本发明通过将非1x1卷积运算分解成多个1x1卷积运算,可适配不同尺寸及不同滑动步长的卷积核,提高的PE的通用性;使用N个数据拼接的大位宽数据结构的缓存形式,适应了PE的数据带宽的需求,简化了复杂的数据流控制;采用乒乓缓存结构,提升了系统的吞吐量。

著录项

  • 公开/公告号CN112215342A

    专利类型发明专利

  • 公开/公告日2021-01-12

    原文格式PDF

  • 申请/专利权人 南京俊禄科技有限公司;

    申请/专利号CN202011036801.5

  • 发明设计人 徐俊杰;朱瑞华;娄方;

    申请日2020-09-28

  • 分类号G06N3/063(20060101);G06N3/04(20060101);G06F9/302(20060101);G06F9/38(20060101);G06F12/0893(20160101);G01S13/95(20060101);

  • 代理机构12248 天津垠坤知识产权代理有限公司;

  • 代理人于德江

  • 地址 211113 江苏省南京市江宁区禄口街道神舟路37号创智产业园C栋东侧3楼

  • 入库时间 2023-06-19 09:32:16

说明书

【技术领域】

本发明涉及船用气象雷达深度学习领域,具体为一种船用气象雷达照相装置多通道并行CNN加速器。

【背景技术】

气象雷达是专门用于大气探测的雷达。属于主动式微波大气遥感设备。与无线电探空仪配套使用的高空风测风雷达,只是一种对位移气球定位的专门设备,一般不算作此类雷达。气象雷达是用于警戒和预报中、小尺度天气系统(如台风和暴雨云系)的主要探测工具之一。常规雷达装置大体上由定向天线、发射机、接收机、天线控制器、显示器和照相装置、电子计算机和图象传输等部分组成。

卷积神经网络CNN以其强大的表征能力,在目标图像识别及人工智能等领域得到了广泛的应用,成为了深度学习领域重要的算法之一。随着算法地不断演进,CNN的网络结构变得越来越深,给部署CNN的设备带来极大挑战。CNN中的卷积运算占据了整个网络90%以上的运算量,CNN加速器的关键组件是处理卷积运算的功能单元。

目前,CNN加速器通常采用脉动阵列结构。该结构由功能相同的运算单元(PE)组成矩阵形式,每个运算单元实现乘加运算,并设计相应的缓存和控制逻辑。该架构运算过程如下:1.权值广播:将阵列中的每一行PE分成一组,权值参数按行广播到各组中,各组中的PE共用同一个权值参数;2.输入特征:将阵列中对角线上PE划分成一组,输入特征按行输入到各组中,各组内的PE共用同一个输入特征值;3.输出结果:将整列中的每一列PE划分成一组,将各组内每个PE的计算结果相加,即可得到卷积计算的中间结果。该方案主要侧重点在于能效,主要体现在数据复用方面,首先权值参数广播到网络中,存储到每个PE的缓存中,直到对应该权值参数的所有输入特征数据都输入完之后才更换,体现了权值参数的复用;其次,输入特征按行输入后,每个卷积的输入特征有重叠,体现了输入特征的复用。

脉动阵列结构具有设计简单且规则、容易实现高并行性、运算单元间通信比较简单等优势,但这种结构也存在明显的缺点,采用脉动阵列结构时,运算单元(PE)易出现闲置率较高的情况,进而导致降低加速器的效率;采用脉动阵列结构时,由于需要带宽的成比例增加来维持所需要的加速倍数,因而脉动阵列的可扩展性差。

由此可见,提供一种架构布线简单、可灵活适配不同卷积核尺寸,同时可以很容易地根据硬件资源情况和实际需求进行扩展多通道的并行CNN加速器是本领域亟需解决的问题。

【发明内容】

针对上述问题,本发明通过将非1x1卷积运算分解成多个1x1卷积运算,可适配不同尺寸及不同滑动步长的卷积核,提高的PE的通用性;使用N个数据拼接的大位宽数据结构的缓存形式,适应了PE的数据带宽的需求,简化了复杂的数据流控制;采用乒乓缓存结构,提升了系统的吞吐量。

为解决上述问题,本发明船用气象雷达照相装置多通道并行CNN加速器包括运算单元和缓存,PE进行卷积运算,缓存存储运算单元输入和输出的数据,缓存包括输入特征缓存、权重参数缓存及输出特征缓存,运算单元采用全流水设计结构,N(通道数)个乘法器进行并行运算,并将N个输出同时输入到加法树中相加,得到N通道输入特征乘加的结果,再将该结果与上一次的中间结果进行累加。

进一步的,所述输入特征缓存、权重参数缓存及输出特征缓存均采用A/B双缓存的乒乓结构。

进一步的,所述设计方法包括卷积运算的分解运算和通道间并行运算,具体是将非1x1卷积运算分解成多个1x1卷积运算,并使用多通道的并行运算。

进一步的,所述分解运算是将的X*X的卷积核在5*5的输入特征谱从左往右、从上到下进行滑动,最终得到一张X*X的输出特征谱,卷积核每滑动一步,将卷积核的权重参数(k1~kX)与输入特征谱上相应位置的值进行乘法运算,并将X个位置的乘积相加得到输出特征谱上对应的一个值(p1~pX)。

进一步的,所述分解运算包括以下步骤:

步骤1:在时段1提取卷积核中的第一个权重参数k1;

步骤2:把权重k1在输入特征谱上所滑过的区域提取出来;

步骤3:权重参数k1在k1滑过的区域上进行1x1的卷积运算;

步骤4:在时段2~时段X依次取下一个权重参数以其所滑过的区域,重复步骤1到3的操作;

步骤5:将X个时段得到的输出结果相应位置的X个结果累加得到最终的输出特征谱。

进一步的,所述通道间并行运算过程是将单通道运算过程扩展到N通道上,将每个通道上的输出加起来作为该位置的中间特征值输出,实现通道之间的并行。

进一步的,所述通道间并行运算包括以下步骤:

步骤1:在时段1提取N通道卷积核中的k1位置N个通道权重参数;

步骤2:把k1位置N通道权重参数在各自通道的输入特征谱上所滑过的区域提取出来;

步骤3:k1位置N通道权重参数在各自通道提取出的区域上进行1x1的卷积运算,并把各通道的卷积结果相加;

步骤4:在时段2至时段X依次取下一位置(k2,k3,k4……)N通道的权重参数及其在各自通道输入特征谱上所滑过的区域,重复步骤1~3的操作;

步骤5:将X个时段得到的输出结果相应位置的X个结果累加得到最终的输出特征谱。

再者,本发明通过将非1x1卷积运算分解成多个1x1卷积运算,可适配不同尺寸及不同滑动步长的卷积核,提高的PE的通用性;使用N个数据拼接的大位宽数据结构的缓存形式,适应了PE的数据带宽的需求,简化了复杂的数据流控制;采用乒乓缓存结构,提升了系统的吞吐量。

【附图说明】

图1是本发明的整体架构图。

【具体实施方式】

本发明所提到的方向用语,例如「上」、「下」、「前」、「后」、「左」、「右」、「内」、「外」、「侧面」等,仅是附图中的方向,只是用来解释和说明本发明,而不是用来限定本发明的保护范围。

参见图1,给出了本发明的架构图,其包括运算单元(PE)和缓存,PE进行卷积运算,缓存存储PE输入和输出的数据,缓存包括输入特征缓存(IfmA/B buffer)、权重参数缓存(WetA/B buffer)及输出特征缓存(OfmA/B buffer),PE采用全流水设计结构,N(通道数)个乘法器进行并行运算,并将N个输出同时输入到加法树(AdderTree)中相加,得到N通道输入特征乘加的结果,再将该结果与上一次的中间结果进行累加(Acc)。

本发明能够将非1x1卷积运算分解成多个1x1卷积运算,并使用多通道的并行运算。该架构可以适配不同尺寸及不同滑动步长的卷积核,提高了PE的灵活性和可扩展性。以3x3卷积的运算分解成9个1x1卷积运算过程为例,3x3的卷积核在5x5的输入特征谱从左往右、从上到下进行滑动,最终得到一张3x3的输出特征谱。卷积核每滑动一步,将卷积核的权重参数(k1~k9)与输入特征谱上相应位置的值进行乘法运算,并将9个位置的乘积相加得到输出特征谱上对应的一个值(p1~p9),具体包括以下步骤:

步骤1:在时段1提取卷积核中的第一个权重参数k1;

步骤2:把权重k1在输入特征谱上所滑过的区域提取出来;

步骤3:权重参数k1在k1滑过的区域上进行1x1的卷积运算;

步骤4:在时段2~时段9依次取下一个权重参数以其所滑过的区域,重复步骤1~3的操作;

步骤5:将9个时段得到的输出结果相应位置的9个结果累加得到最终的输出特征谱。

使用以上的分解方法可以将任意尺寸卷积核的卷积运算分解成多个1x1的卷积运算,例如5x5的卷积运算可以分解成25个1x1的卷积运算,7x7的卷积运算可以分解成49个1x1的卷积运算等等。

通道间并行的运算过程是将单通道运算过程扩展到N通道上,将每个通道上的输出加起来作为该位置的中间特征值输出,实现通道之间的并行,具体运算过程包括以下步骤:

步骤1:在时段1提取N通道卷积核中的k1位置N个通道权重参数;

步骤2:把k1位置N通道权重参数在各自通道的输入特征谱上所滑过的区域提取出来;

步骤3:k1位置N通道权重参数在各自通道提取出的区域上进行1x1的卷积运算,并把各通道的卷积结果相加;

步骤4:在时段2至时段9依次取下一位置(k2,k3,k4……)N通道的权重参数及其在各自通道输入特征谱上所滑过的区域,重复步骤1~3的操作;

步骤5:将9个时段得到的输出结果相应位置的9个结果累加得到最终的输出特征谱。

所述输入特征缓存(IfmA/B buffer)、权重参数缓存(WetA/B buffer)及输出特征缓存(OfmA/B buffer)均采用A/B双缓存的乒乓结构。运算单元使用一个缓存进行计算的同时,另一个缓存可与片外进行数据交互,导入下一组待运算的数据或者将计算输出的数据导出,以提升运算单元的使用效率。输入特征谱N个连续通道相同位置的数据拼接起来组成一个大位宽数据,存储到输入特征缓存中的一个Cell中。权重参数和输出特征数据也采用同样的方式分别存储到权重参数缓存和输出特征缓存中。这样每个缓存的Cell存储N个数据,每次可以同时读取N个数据送入PE,实现通道并行的目的。输入特征缓存存储整张输入特征谱的部分区域,它的深度与该区域高宽的乘积相等。输入特征缓存中的特征分别与N组权重完成运算后,再导入特征谱下一个区域的特征数据,这样可以最大限度的复用输入特征,降低数据片外传输带来的功耗。

本发明通过将非1x1卷积运算分解成多个1x1卷积运算,可适配不同尺寸及不同滑动步长的卷积核,提高的PE的通用性;使用N个数据拼接的大位宽数据结构的缓存形式,适应PE数据带宽的需求,简化了复杂的数据流控制;采用乒乓缓存结构,提升了系统的吞吐量。

此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号