[发明专利]针对卷积神经网络最大池化层的池化器及池化加速电路在审
申请号: | 202111632969.7 | 申请日: | 2021-12-28 |
公开(公告)号: | CN114265696A | 公开(公告)日: | 2022-04-01 |
发明(设计)人: | 王晓峰;周辉;盖一帆;赵雄波;蒋彭龙;李悦;吴松龄;费亚男;李超然;吴敏;杨庆军 | 申请(专利权)人: | 北京航天自动控制研究所 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06N3/04;G06N3/063;G06N3/08 |
代理公司: | 北京天达知识产权代理事务所(普通合伙) 11386 | 代理人: | 李明里 |
地址: | 100039*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 针对 卷积 神经网络 最大 池化层 池化器 加速 电路 | ||
本发明涉及一种针对卷积神经网络最大池化层的池化器及池化加速电路,池化器包括第一选择器、第二选择器、比较器、常数寄存器和池化寄存器;比较器的第一输入端输入池化窗口中的特征数据,第二输入端接入第一选择器的输出数据,输出端连接到第二选择器;第一选择器的第一输入端连接常数寄存器,第二输入端连接外部的池化缓存从中读取数据,第三输入端连接池化寄存器输出端;第二选择器的第一输出端作为池化最终结果输出端,第二输出端连接外部的池化缓存向其写入数据,第三输出端连接池化寄存器的输入端。本发明以尽可能小的FPGA资源消耗量,实现常见CNN中最大池化层的高效计算,进而解决将CNN部署到嵌入式设备中遇到的实时性问题和功耗问题。
技术领域
本发明属于深度学习加速电路技术领域,具体涉及一种针对卷积神经网络最大池化层的池化器及池化加速电路。
背景技术
随着以卷积神经网络(Convolutional Neural Network,CNN)为代表的深度学习技术在图像分类、目标检测等领域的性能不断提高。新一代航天型号在朝智能化方向发展的过程中,出现了大量利用CNN进行目标检测、故障识别等方面的应用需求。但是由于以下几方面的原因,以往基于通用处理器的信息处理方式越来越难以满足型号的应用需求:首先,基于CNN的深度学习算法计算量和参数量巨大,需要高算力的设备对其进行实时推理;其次,航天器的内外部散热条件苛刻,不允许大功耗的计算设备长时间工作;最后,航天领域的大多数应用是强实时的应用场景,低算力的设备难以满足实时性要求。针对上述问题的一般解决方案是基于FPGA设计面向CNN的硬件加速单元,而一个完整可用的加速单元设计通常需要包括卷积、池化、非线性激活、预处理、后处理、ShortCut等多种功能。为了在有限的FPGA资源消耗量内,实现尽可能通用和高效的CNN加速单元设计,需以尽可能小的资源代价实现最常用的计算功能。本发明便是公开一种精简的、覆盖常用CNN算法计算需求的、高数据吞吐量的最大池化层硬件加速电路设计方法。
发明内容
鉴于上述的分析,本发明旨在公开了一种针对卷积神经网络最大池化层的池化器及池化加速电路,实现精简的、覆盖常用CNN算法计算需求的、高数据吞吐量的最大池化层的硬件加速电路。
本发明公开了一种针对卷积神经网络最大池化层的池化器,包括第一选择器S1、第二选择器S2,比较器、常数寄存器和池化寄存器;
比较器的第一输入端输入池化窗口中的特征数据,第二输入端接入第一选择器S1的输出数据,通过比较得到的最大值输出到第二选择器S2;
第一选择器S1的第一输入端连接常数寄存器的输出端,第二输入端连接外部的池化缓存从中读取数据,第三输入端连接池化寄存器输出端;在外部指令的控制下,选择其中一个输入端的输入数据输出到比较器的第二输入端;
第二选择器S2的第一输出端作为池化最终结果输出端,第二输出端连接外部的池化缓存向其写入数据,第三输出端连接池化寄存器的输入端;在外部指令的控制下选择一个输出端将比较器的比较结果进行输出。
进一步地,外部的控制单元根据当前池化层的配置信息,结合当前输入特征数据在特征图中的位置,确定输入特征数据在池化窗口中的位置;根据所述位置输出控制指令到第一选择器进行输入的选通控制,到第二选择器进行输出的选通控制,以实现对池化窗口的池化计算。
进一步地,当输入的特征数据为池化窗口中的第一个数据时,控制单元控制第一选择器S1选通第一输入端,第二选择器S2选通第三输出端;
通过选择常数寄存器中的数据输出到比较器与所述数据比较,得到最大值通过第二选择器输出到池化寄存器。
进一步地,当输入特征为池化窗口中每行的最后一个数据、且非整个池化窗口的最后一个数据时,控制单元控制第一选择器S1选通第三输入端,第二选择器S2选通第二输出端;
通过选择池化寄存器中的数据输出到比较器与所述数据比较,得到最大值作为该行的池化结果通过第二选择器S2输出到外部的池化缓存进行存储。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航天自动控制研究所,未经北京航天自动控制研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111632969.7/2.html,转载请声明来源钻瓜专利网。