[发明专利]一种基于FPGA的YOLO网络前向推理加速器设计方法有效
申请号: | 201810970836.2 | 申请日: | 2018-08-24 |
公开(公告)号: | CN109214504B | 公开(公告)日: | 2020-09-04 |
发明(设计)人: | 张轶凡;陈昊;应山川;李玮 | 申请(专利权)人: | 北京邮电大学深圳研究院 |
主分类号: | G06N3/04 | 分类号: | G06N3/04 |
代理公司: | 北京精金石知识产权代理有限公司 11470 | 代理人: | 张黎 |
地址: | 518057 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 fpga yolo 网络 推理 加速器 设计 方法 | ||
本发明提出了一种基于FPGA的YOLO网络前向推理加速器设计方法,所述加速器包括FPGA芯片和DRAM,所述FPGA芯片中的存储器BRAM作为数据缓冲器,所述DRAM作为主要存储设备;所述加速器设计方法包括以下步骤:(1)对原网络数据进行8bit定点数量化,得到对检测精度影响最小的小数点位置,形成量化方案,该量化过程是逐层进行的;(2)FPGA芯片对YOLO的九层卷积网络作并行计算;(3)位置映射。解决了现有技术中FPGA芯片上的存储资源的增长速度不及神经网络规模增长迅速,一般的目标检测网络很难按照传统的设计思路移植到FPGA芯片上的技术问题,实现使用更少片上资源达到更快速度的目的。
技术领域
本发明涉及深度学习和硬件结构设计的技术领域,尤其是涉及一种目标检测网络在FPGA上进行前向推理加速的设计方法。
背景技术
近年来,基于卷积神经网络(Convolutional Neutral Network)的机器学习算法已经被广泛的应用到计算机视觉的任务中。但是对于大规模的CNN网络来说,计算密集,存储密集,资源消耗大的特点给上述任务带来了巨大的挑战。传统的通用处理器在面对这类高计算压力和大的数据吞吐时,性能很难达到实用的要求,因此基于GPU、FPGA、ASIC的硬件加速器被提出并广泛的投入使用。
FPGA(Field Programmable Gate Array)现场可编程门阵列,是在PAL、GAL、EPLD等可编程器件的基础上进一步发展的产物。它是作为ASIC领域中的一种半定制电路而出现的,即解决了定制电路的不足,又克服了原有可编程器件门电路数量有限的缺点。FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个新概念,内部包括可配置逻辑模块CLB、输出输入模块IOB、和内部连线三个部分,可以支持一篇PROM编程多片FPGA。由于灵活的可重配置能力,和出色的性能功耗比,使FPGA成为当今一种重要的深度学习处理器。
目前适合硬件实现的主流目标检测网络为YOLO(You Only Look Once),这种网络速度较快且结构简单,这种算法把物体检测问题处理成回归问题,用一个卷积神经网络结构就可以从输入图像直接预测目标框的位置和类别概率,实现端到端的物体检测,这种结构比较适合于FPGA上的硬件实现。现有发明CN107392309A中公开了一种基于FPGA的通用定点数神经网络卷积加速器硬件结构,包括:通用AXI4高速总线接口,高并行卷积核与特征图数据缓存区、分段式卷积结果缓存区、卷积计算器、缓存区控制器、状态控制器和直接存取控制器。该发明使用片上存储作为缓冲,片外的存储器作为数据的主要存储设备,通过一个片外的通用处理器进行内存管理的从而完成整个卷积网络的计算,这种结构的设计只用一片FPGA无法完成目标检测网络的前向推理。现有发明CN107463990A中提出了一种卷积神经网络的FPGA并行加速方法,包括如下步骤:(1)建立CNN模型;(2)配置硬件架构;(3)配置卷积运算单元。该发明使用片上存储装载整个网络的临时计算结果,因此所能部署的网络规模有限。
现有的基于FPGA的神经网络加速器,往往把网络层的中间计算结果全部存到片上的静态存储器中,网络所需要的权重存到片外的动态存储器中,这样的设计会导致片上的存储器空间限制了所能加速的网络规模。在现阶段,随着任务复杂度和精度的需求变高,卷积神经网络规模越来越大,参数总量也越来越大,但是FPGA芯片的工艺和片上可容纳的存储资源的增长却没有这么迅速,如果仍按照之前的设计方法,则FPGA完全不能容纳这种规模的网络。
如果把片上的静态存储器BRAM作为数据的缓冲区域,而把片外的动态存储器DRAM作为网络的主要数据存储,由于动态存储器的存储空间巨大,因此可容纳参数数量很大的网络,通过合理的分配存储器的带宽来实现各个卷积模块的并行计算。这种设计方法的性能依赖于存储器的带宽,但是相比于在片上堆叠存储资源,提升通信的带宽是更容易实现的。本发明所参考的网络为YOLO-tiny的版本,这个网络的输入大小为416*416*3,网络共9层卷积,最终的输出为带有类别、位置和置信度信息的候选框,并通过区域映射(region操作)算法把计算结果映射到原始图像中去。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学深圳研究院,未经北京邮电大学深圳研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810970836.2/2.html,转载请声明来源钻瓜专利网。