一种实现并行卷积计算的数据映射系统及方法技术方案

技术编号:19142154 阅读:43 留言:0更新日期:2018-10-13 08:58
本发明专利技术公开了一种实现并行卷积计算的数据映射系统及方法,属于神经网络技术领域。本发明专利技术的实现并行卷积计算的数据映射系统包括输入特征缓存模块、映射逻辑模块、输出特征图缓存模块、权重缓存模块、卷积计算阵列和控制逻辑模块,所述输入特征图缓存模块与控制逻辑模块、映射逻辑模块分别连接,权重缓存模块与控制逻辑模块、映射逻辑模块分别连接,计算阵列与控制逻辑模块、映射逻辑模块、输出特征图缓存模块相连,输出特征图缓存模块与控制逻辑模块相连。该发明专利技术的实现并行卷积计算的数据映射系统及能够消除无效或不参与的计算资源,提高计算资源利用率,具有很好的推广应用价值。

A data mapping system and method for parallel convolution computation

The invention discloses a data mapping system and a method for realizing parallel convolution computation, belonging to the technical field of neural networks. The data mapping system for realizing parallel convolution computation of the invention comprises an input feature buffer module, a mapping logic module, an output feature graph buffer module, a weight buffer module, a convolution computing array and a control logic module. The input feature graph buffer module is connected with the control logic module and the mapping logic module respectively, and the weight buffer module is connected with the control logic module. Re-caching module is connected with control logic module and mapping logic module respectively. The computing array is connected with control logic module, mapping logic module and output characteristic graph cache module. The output characteristic graph cache module is connected with control logic module. The invention realizes the data mapping system of parallel convolution computing and can eliminate the invalid or non-participating computing resources, improve the utilization ratio of computing resources, and has good popularization and application value.

【技术实现步骤摘要】
一种实现并行卷积计算的数据映射系统及方法
本专利技术涉及神经网络
,具体提供一种实现并行卷积计算的数据映射系统及方法。
技术介绍
随着人工智能(AI)领域的发展,CNN(ConvolutionalNeuralNetwork即卷积神经网络)得到了充分利用。目前主流卷积神经网络模型不但结构复杂,计算数据量大,而且各层架构差异也很大,硬件电路实现高性能同时实现高通用性并不轻松,既要考虑资源利用率,又要考虑能效比。用硬件电路同时实现整个网络模型各层并不现实,功耗、面积、资源利用率等难以得到满意的结果,通常解决该问题的做法是用时间换取面积,也即将整个模型进行分层分块处理,把电路设计成通用的基本单元,通过控制电路分时构造整个模型,同时通过高效的数据映射手段提高资源利用率,以此提高电路工作性能。现有技术中在硬件电路实现某些卷积神经网络模型计算中存在卷积核滑动步长大于1的情况下,存在无效计算,降低了资源利用率;另一方面,计算阵列电路设计固定的情况下,若存在输出特征图与计算阵列尺寸不匹配的情况,存在不参与计算的资源,资源利用率也存在浪费,计算资源浪费会使整体性能得不到理想的结果。
技术实现思路
本专利技术的技术任务是针对上述存在的问题,提供一种能够消除无效或不参与的计算资源,提高计算资源利用率的实现并行卷积计算的数据映射系统。本专利技术进一步的技术任务是提供一种实现并行卷积计算的数据映射方法。为实现上述目的,本专利技术提供了如下技术方案:一种实现并行卷积计算的数据映射系统,该系统包括输入特征缓存模块、映射逻辑模块、输出特征图缓存模块、权重缓存模块、卷积计算阵列和控制逻辑模块,所述输入特征图缓存模块与控制逻辑模块、映射逻辑模块分别连接,权重缓存模块与控制逻辑模块、映射逻辑模块分别连接,卷积计算阵列与控制逻辑模块、映射逻辑模块、输出特征图缓存模块相连,输出特征图缓存模块与控制逻辑模块相连。所述实现并行卷积计算的数据映射系统通过重新组合输入特征图,增加卷积计算的并行度,消除无效或不参与的计算资源。具体的是将输入特征图进行有规则的分块,通过有效的映射手段,重新组合输入特征图,将无效或不参与计算部分替换成有效计算部分,增加整体卷积计算的并行度,提高了计算资源的利用率,提高系统性能。作为优选,所述输入特征图缓存模块作为外部输入数据的缓存,映射逻辑模块按照控制逻辑模块下发的命令从输入特征图缓存模块和权重缓存模块获取数据,映射逻辑模块将获取的数据送至卷积计算阵列,卷积计算阵列将计算完成的数据送至输出特征图缓存模块。作为优选,所述卷积计算阵列采用N行乘N列个卷积计算单元,相邻卷积计算单元互联。所述每个卷积计算单元包括2x2个PE(ProcessingElement即处理单元),卷积计算时,每个PE对应一个输出特征图的一个像素点的计算。一种实现并行卷积计算的数据映射的方法,所述方法将输入特征图进行有规则的分块,通过映射手段,重新组合输入特征图,增加卷积计算的并行度,映射逻辑将从重新组合的输入特征图获取的数据送至卷积计算阵列,卷积计算阵列将计算完成的数据送至输出特征图缓存模块。作为优选,卷积核滑动步长大于1时,将输入特征图中卷积核滑动无效计算的部分用有效计算的部分填充,得到重新组合的输入特征图作为卷积单元输入。作为优选,所述将输入特征图中卷积核滑动无效计算的部分用有效计算的部分填充,采用矩阵右上角有效计算位置的数据填充无效计算部分阵列,将输入特征图中参与有效计算的数据向右向下平移,复制到相邻的卷积计算单元中。作为优选,所述复制到相邻的卷积计算单元中的数据与从权重缓存模块读入的卷积核权重值进行卷积计算,使新组合的特征图遍历完权重值,将计算结果送至输出特征图缓存模块。作为优选,输出特征图与计算阵列尺寸不匹配时,将多通道输入特征图划分为较小的特征图单元,将相邻通道同一位置的特征图单元重新组合为新的输入特征图,作为卷积计算阵列输入。作为优选,所述多通道输入特征图划分比例取决于输出特征图尺寸,通道数取决于卷积计算阵列尺寸和输出特征图尺寸。与现有技术相比,本专利技术的实现并行卷积计算的数据映射方法具有以下突出的有益效果:所述实现并行卷积计算的数据映射方法通过有效的映射手段,重新组合输入特征图,增加卷积计算的并行度,具体的是将输入特征图进行有规则的分块,将无效或不参与计算部分替换成有效计算部分,消除无效或不参与的计算资源,增加整体卷积计算的并行度,提高了计算资源的利用率,提高系统性能,具有良好的推广应用价值。附图说明图1是本专利技术所述实现并行卷积计算的数据映射系统的拓扑图;图2是本专利技术所述实现并行卷积计算的数据映射系统中卷积计算单元进行卷积计算拓扑图;图3是本专利技术所述实现并行卷积计算的数据映射方法卷积核滑动步长大于1时的示意图;图4是本专利技术所述实现并行卷积计算的数据映射方法输出特征图与计算阵列尺寸不匹配时的示意图。具体实施方式下面将结合附图和实施例,对本专利技术的实现并行卷积计算的数据映射系统及方法作进一步详细说明。实施例如图1所示,本专利技术的实现并行卷积计算的数据映射系统,包括输入特征缓存模块、映射逻辑模块、输出特征图缓存模块、权重缓存模块、卷积计算阵列和控制逻辑模块。输入特征图缓存模块作为外部输入数据的缓存,与控制逻辑模块、映射逻辑模块分别连接。卷积计算阵列采用N行乘N列个卷积计算单元,相邻卷积计算单元互联。如图2所示,每个卷积计算单元包括2x2个PE,卷积计算时,每个PE对应一个输出特征图的一个像素点的计算。映射逻辑模块按照控制逻辑模块下发的命令从输入特征图缓存模块和权重缓存模块获取数据,映射逻辑模块将获取的数据送至卷积计算阵列,卷积计算阵列将计算完成的数据送至输出特征图缓存模块。权重缓存模块与控制逻辑模块、映射逻辑模块分别连接。卷积计算阵列与控制逻辑模块、映射逻辑模块、输出特征图缓存模块相连。输出特征图缓存模块与控制逻辑模块相连。本专利技术的实现并行卷积计算的数据映射方法将输入特征图进行有规则的分块,通过映射手段,重新组合输入特征图,增加卷积计算的并行度,映射逻辑将从重新组合的输入特征图获取的数据送至卷积计算阵列,卷积计算阵列将计算完成的数据送至输出特征图缓存模块。卷积核滑动步长大于1时,将输入特征图中卷积核滑动无效计算的部分用有效计算的部分填充,采用矩阵右上角有效计算位置的数据填充无效计算部分阵列,将输入特征图中参与有效计算的数据向右向下平移,复制到相邻的计算单元中。复制到相邻的计算单元中的数据与从权重缓存模块读入的卷积核权重值进行卷积计算,使新组合的特征图遍历完权重值,得到重新组合的输入特征图作为卷积单元输入,将计算结果送至输出特征图缓存模块。具体实施过程如图3所示。以卷积计算阵列尺寸为4x4,输出特征图为2x2,卷积核权重矩阵为1x1,卷积核滑动步长为2的例子为例说明。卷积核每次滑动步长为2,每计算一个有效输出点都会进行一次无效的计算,整个计算阵列有效利用率为(2x2)/(4x4)=1/4,计算资源收到浪费,为了充分利用计算资源,采用将有效计算资源并行复制,然后分别与不同卷积核卷积,并缓存中间结果的方式。1、第一周期T0时刻,控制逻辑指令映射逻辑,从输入特征图缓存获取输入特征图中11点值输入计算阵列,从权重缓存获取对应权重k1输入计算阵列。2、T1时刻,计本文档来自技高网...

【技术保护点】
1.一种实现并行卷积计算的数据映射系统,其特征在于:该系统包括输入特征缓存模块、映射逻辑模块、输出特征图缓存模块、权重缓存模块、卷积计算阵列和控制逻辑模块,所述输入特征图缓存模块与控制逻辑模块、映射逻辑模块分别连接,权重缓存模块与控制逻辑模块、映射逻辑模块分别连接,卷积计算阵列与控制逻辑模块、映射逻辑模块、输出特征图缓存模块相连,输出特征图缓存模块与控制逻辑模块相连。

【技术特征摘要】
1.一种实现并行卷积计算的数据映射系统,其特征在于:该系统包括输入特征缓存模块、映射逻辑模块、输出特征图缓存模块、权重缓存模块、卷积计算阵列和控制逻辑模块,所述输入特征图缓存模块与控制逻辑模块、映射逻辑模块分别连接,权重缓存模块与控制逻辑模块、映射逻辑模块分别连接,卷积计算阵列与控制逻辑模块、映射逻辑模块、输出特征图缓存模块相连,输出特征图缓存模块与控制逻辑模块相连。2.根据权利要求1所述的实现并行卷积计算的数据映射系统,其特征在于:所述输入特征图缓存模块作为外部输入数据的缓存,映射逻辑模块按照控制逻辑模块下发的命令从输入特征图缓存模块和权重缓存模块获取数据,映射逻辑模块将获取的数据送至卷积计算阵列,卷积计算阵列将计算完成的数据送至输出特征图缓存模块。3.根据权利要求1或2所述的实现并行卷积计算的数据映射系统,其特征在于:所述卷积计算阵列采用N行乘N列个卷积计算单元,相邻卷积计算单元互联。4.一种实现并行卷积计算的数据映射的方法,其特征在于:所述方法将输入特征图进行有规则的分块,通过映射手段,重新组合输入特征图,增加卷积计算的并行度,映射逻辑将从重新组合的输入特征图获取的数据送至卷积计算阵列,卷积计算阵列将计算完成的数据送至输出特征图缓存模块。...

【专利技术属性】
技术研发人员:聂林川姜凯王子彤
申请(专利权)人:济南浪潮高新科技投资发展有限公司
类型:发明
国别省市:山东,37

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

1