一种基于FPGA的卷积神经网络加速器及其优化方法技术

技术编号:32675730 阅读:27 留言:0更新日期:2022-03-17 11:31
本申请涉及神经网络计算技术领域,具体提供了一种基于FPGA的卷积神经网络加速器及其优化方法。一种基于FPGA的卷积神经网络加速器,该加速器包括程序指令存储单元、程序指令译码单元、数据控制单元、数据缓冲单元、参数缓冲单元、片外存储单元、并行处理单元、图像缓存单元、图像拼接单元、片外存储单元。一种基于FPGA的卷积神经网络加速器的优化方法,包括如下步骤:步骤一,获取不同操作类型的前向推理指令CN

【技术实现步骤摘要】
一种基于FPGA的卷积神经网络加速器及其优化方法


[0001]本申请涉及神经网络计算
,具体而言,涉及一种基于FPGA的卷积神经网络加速器及其优化方法。

技术介绍

[0002]随着神经网络的不断发展,网络复杂度越来越高,对硬件计算能力的要求也不断增加,CPU作为通用处理器已经不能满足实际应用需求。为此,神经网络在硬件平台部署的研究成为热点。现有的深度学习框架,如PyTorch、Caffe、TensorFlow等,均是基于GPU进行网络加速的。虽然GPU具有强大的算力,但是存在价格昂贵、功耗大、噪音高、体积大等缺点。FPGA具有功耗低、可定制化、可重构、体积小、并行度高等优点,成为神经网络硬件部署的研究热点。
[0003]FPGA的可定制化、可重构的特点使得研发人员能够根据应用需求灵活地在 FPGA上部署SSD、YOLOV3、VGG16等经典卷积神经网络模型。卷积神经网络模型在FPGA上的加速主要依靠并行计算单元数量,并行计算单元数量越高,算法并行度就越高,计算速度越快。实际中,并行计算单元通常包括3
×
3卷积单元本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于FPGA的卷积神经网络加速器,其特征在于,所述加速器包括通过FPGA实现的程序指令存储单元、程序指令译码单元、数据控制单元、数据缓冲单元、参数缓冲单元、片外存储单元、并行处理单元、图像缓存单元、图像拼接单元,和在动态随机存取内存上实现的片外存储单元。2.根据权利要求1所述的基于FPGA的卷积神经网络加速器,其特征在于,所述程序指令存储单元包含一片ROM,ROM中存储由卷积神经网络层L
n
的前向推理指令CN
n
。3.根据权利要求2所述的基于FPGA的卷积神经网络加速器,其特征在于,所述前向推理指令CN
n
由所述卷积神经网络层L
n
的操作类型、卷积步长、卷积核数量、输入特征图通道数、输入特征图宽度、输入特征图起始地址、输出特征图宽度、神经网络参数起始地址、输出图像块起始地址、卷积偏置起始地址、填充标志对应的二进制数据顺次拼接而成。4.根据权利要求3所述的基于FPGA的卷积神经网络加速器,其特征在于,所述程序指令译码单元,顺次级联于所述指令存储单元与所述数据控制单元之间。5.根据权利要求4所述的基于FPGA的卷积神经网络加速器,其特征在于,所述数据控制单元连接所述并行处理单元、所述图像缓存单元、所述数据缓冲单元、所述参数缓冲单元、所述图像拼接单元...

【专利技术属性】
技术研发人员:李甫李旭超付博勋
申请(专利权)人:西安电子科技大学重庆集成电路创新研究院
类型:发明
国别省市:

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

1