CN112288082B - 一种基于hls的可重构通用标准卷积加速器设计方法 - Google Patents
一种基于hls的可重构通用标准卷积加速器设计方法 Download PDFInfo
- Publication number
- CN112288082B CN112288082B CN202011319367.1A CN202011319367A CN112288082B CN 112288082 B CN112288082 B CN 112288082B CN 202011319367 A CN202011319367 A CN 202011319367A CN 112288082 B CN112288082 B CN 112288082B
- Authority
- CN
- China
- Prior art keywords
- convolution
- calculation
- buffer
- output
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Neurology (AREA)
- Complex Calculations (AREA)
Abstract
本发明公开一种基于HLS的可重构通用标准卷积加速器设计方法,通过对标准卷积计算特性的分析,得到了卷积核间、特征图间、卷积核内以及特征图内四个尺度的并行性,使用循环分块和循环展开技术对卷积计算进行并行化设计,并引入循环分块因子控制并行化尺度;针对加速器的片上存储分别设计了权重偏置存储结构、特征图行缓存结构、多级输出缓存结构,并使用AXI4总线设计多通道并行读写结构;针对3*3与1*1的卷积计算,设计了一种可复用的卷积计算的方法,有效的节约了硬件资源;针对卷积层的计算流程,设计了一种5层流水化结构,提高了卷积计算的效率。
Description
技术领域
本发明涉及卷积神经网络中卷积计算的硬件加速器设计领域,特别是涉及一种基于HLS的可重构通用标准卷积加速器设计方法。
背景技术
卷积神经网络越来越多的应用到实际的生活当中,其所带来的实际应用价值在不断的凸显,在图像分类、目标检测、语义分割、语音识别等各个领域都有着十分重要的应用。随着人工智能浪潮的不断迭起,各种先进算法层出不穷,在图像分类领域有:AlexNet、VGG、ResNet、GoogleNet等,在目标检测领域有:R-CNN、Faster R-CNN、SSD、YOLO等,网络的精度越来越高,但随之而来的是网络的结构越来越复杂,网络的规模越来越大,因此网络训练以及训练完成之后的网络前馈过程也变得十分缓慢。大型网络依托于GPU服务器来进行网络的运算,但对于移动与边缘端的设备来说,网络结构显得十分庞大,从而难以实现嵌入式设备的实际应用。此外,依托于芯片制造工艺的不断提升,CPU、GPU的性能不断地提升,也有各种面向嵌入式领域的芯片,如英伟达的TX1、TX2,其性能与功耗均有比较出色的表现,但其功耗与体积相对依然较大,无法满足当前业界的迫切需求。
针对使用FPGA进行网络相关模型的加速,最早在1996年,Cloutier等人开始研究使用FPGA进行卷积神经网络的加速,其在FPGA上实现了手写字母识别的相关设计,受制于当时芯片的制造工艺,FPGA片上资源密度很低,其对卷积神经网络的并行性没有充分展开设计,因此最终没取得较好的实验结果,网络执行速度较慢(文章题目:Vip:An fpga-basedprocessor for image processing and neural networks;会议:In FifthInternational Conference on Micro electronics for Neural Networks and FuzzySystems(MicroNeuro'96),Lausanne,Switzerland;著者:Cloutier J,Cosatto E,PigeonS,et al.;出版年月:1996;页码:330-336)。M.Peemen等人考虑到卷积神经网络设计在FPGA上的片上存储带宽与不同的计算单元之间的关系,从而研究如何进行网络的加速(文章题目:Memory-centric accelerator design forconvolutional neural networks;会议:IEEE International Conference on Computer Design;著者:M.Peemen,A.Setio,B.Mesman,et al;出版年月:2013;页码:13-19)。Zhang等针对CNN在FPGA上的部署,提出了基于Roofline的模型分析方法,通过对数据吞吐率以及***存储带宽的量化分析,得到了模型部署的最小资源消耗与最佳性能方案。其在Xilinx Virtex7 FPGA上实现了AlexNet网络的卷积层设计,在时钟频率为100MHz时,该模型方案实现了61.62GFLOPS的峰值计算性能(文章题目:Optimizing fpga-based accelerator design for deep convolutionalneural networks;会议:In Proceedings of the 2015ACM/SIGDA In ternationalSymposium on Field-Programmable Gate Arrays;著者:Zhang C,Li P,Sun G,et al;出版年月:2015;页码:161-170)。Qiu等人基于VGG网络,研究大规模神经网络在FPGA平台的实施方案,通过对卷积神经网络各层的计算资源消耗、内存需求的分析,得出卷积算子的运算是整个网络主要的计算消耗,全连接层是主要的内存需求,即卷积是计算密集型、全连接层是访存密集型。论文同时还对数据精度与网络性能的关系进行了分析,最终采用动态数据量化方法,使用8为定点数表示权重参数,实现了与浮点型数据十分接近的网络分类精度。其在Xilinx ZC706开发平台上,实现了完整的VGG16-SVD网络结构,在时钟频率为150MHz时,获得了137.0GOP/S的整体计算性能,达到了同时期基于FPGA的CNN网络模型部署最高性能(文章题目:Going deeper with embedded fpga platform for con-volutionalneural network;会议:In Proceedings of the 2016ACM/SIGDA Interna tionalSymposium on Field-Programmable Gate Arrays;著者:Qiu J,Wang J,Yao S,et al;出版年月:2016;页码:26-35)。Lu等使用快速Winograd算法进行卷积运算的加速,提出了一个能够在FPGA上运行Winograd快速运算的算法架构,采用线缓冲区结构以及多个Winograd运算单元并行来增加***的吞吐量,其在Xilinx ZCU102 FPGA上对AlexNet与VGG16进行加速,分别取得了854.6GOP/s和2840.7GOP/s的性能指标(文章题目:Evaluating fastalgorithms for convolutional neural networks on fpgas;会议:Field-ProgrammableCustom Computing Machines(FCCM),2017IEEE 25th Annual International Symposiumon.IEEE;著者:Lu L,Liang Y,Xiao Q,et al;出版年月:2017;页码:101-108)。
发明内容
本发明的目的是为了克服现有技术中的不足,提供一种基于HLS的可重构通用标准卷积加速器设计方法,降低卷积计算所需的时间复杂度以及资源复杂度,加速算法运行速度,使用HLS工具进行加速器设计提高整体设计效率,降低开发周期。
本发明的目的是通过以下技术方案实现的:一种基于HLS的可重构通用标准卷积加速器设计方法,包括以下步骤:
(1)通过对标准卷积计算特性的分析,得到卷积核间、特征图间、卷积核内以及特征图内四个尺度的并行性;对卷积核间、特征图间使用循环分块技术,对卷积核内使用循环展开技术,对特征图内使用流水化技术,引入循环分块因子控制并行化设计尺度以此适应不同硬件资源的加速平台,其中卷积核间循环分块因子为p,特征图间循环分块因子为q;
(2)对加速器的片上存储分别设置权重偏置存储结构、特征图行缓存结构、多级输出缓存结构,并使用AXI4总线设计多通道并行读写结构;
(3)针对3*3与1*1的卷积计算,通过可复用的卷积计算方法,对1*1的卷积核进行扩充,使1*1的卷积转换为3*3的卷积计算,然后将1*1卷积送入3*3的卷积计算单元,即可完成卷积计算;扩充的方法是,将原始1*1卷积的权重放置3*3卷积核权重的第5位,3*3卷积核剩余8位权重均置0;
(4)设置一种5层流水化结构,分别为:行缓存、卷积滑窗、卷积计算、数据累加以及计算输出,即完成了卷积加速器的设计。
进一步的,步骤(2)中,使用片上BRAM进行数据存储,将权重存储空间大小设置为:p*q*k*k,其中k为卷积核尺寸;偏置存储空间大小设置为:p;行缓存存储空间大小设置为:q*n*k,其中n为特征图最大输入尺寸;数据累加缓存空间大小设置为:p;输出缓存空间大小设置为:p*d,其中d为输出FIFO深度;AXI4总线并行读写通道数设置b;分别使用Weight[p][q][k2]、Bias[p]、Line_Buffer[q][n][k]、Accumulation_Buffer[p]、Output_Buffer[p][d]表示;
权重数组Weight[p][q][k2]是一个三维数组,使用数组展开对第一维参数p与第三维参数k2进行complete优化,使用数组分割将第二维参数q分割为qb个block;行缓存数组Line_Buffer[q][n][k]一个时钟周期只需进行b个输入通道数据的写入与读出,因此将行缓存数组的第一维参数分割为qb个block即可,第二维与第三维参数无需进行优化;对于Bias[p]、Accumulation_Buffer[p]和Output_Buffer[p][d],由于输出通道并行度p为固定值,因此需使用complete对Bias[p]、Accumulation_Buffer[p]和Output_Buffer[p][d]进行优化。
进一步的,步骤(4)中具体步骤如下:
首先使用行缓存对输入数据进行读取,然后卷积滑窗从行缓存提取需要进行卷积运算的特征数据,接着卷积计算单元将提取出的特征数据与不同卷积核的进行卷积运算,再将计算结果传输至数据累加单元进行不同卷积核计算结果的累加,从而得到本次计算的输出结果,最后将输出结果送入计算输出单元的FIFO进行临时存储,同时将上一次计算的结果输出至片外存储单元。
上述步骤中,第(1)步为加速器并行性分析,完成并行性分析后才能进行第(2)步的片上存储结构与数据传输设计。第(3)步是一种卷积计算的复用结构,只有完成第(2)步片上存储结构的设计才能确定复用结构的复用形式。第(4)步是整个加速器的流水化结构设计,目的是优化加速器的计算流程,流水化设计需要对卷积计算过程进行任务划分,任务划分的依据是第(1)步的并行化分析,流水化的对象是第(2)步与第(3)步的相关设计。
与现有技术相比,本发明的技术方案所带来的有益效果是:
1.加速器***结构的兼容性强。采用可重构的设计思路能够使加速器灵活的满足不同卷积层、不同硬件平台的需求,通过设置循环分块因子改变加速器对硬件资源的需求,是一种通用的结构设计。
2.计算效率高。3*3与1*1卷积单元的复用,使得加速器能够节省大量的硬件资源,流水化的设计能够提高整体运算速度,降低时间复杂度,以相对较低的硬件资源取得了较大的计算效率。
3.工程化开发效率高。使用HLS工具进行加速器设计,能够节约大量的设计时间,高层次的设计工具带来了高效率的开发,能够快速的对加速器设计结构进行仿真、验证与分析。
4.计算速度快,功耗低。FPGA具有性能高、功耗低的特点,使用FPGA进行卷积计算的并行化既能够提高计算速度,也能节省***功耗。
附图说明
图1是加速器整体设计框图。
图2是卷积核间循环分块示意图。
图3是特征图间循环分块示意图。
图4是输入行缓存设计示意图。
图5是特征图多级缓存输出结构图。
图6是片上BRAM分割示意图。
图7是卷积复用设计结构图。
图8是卷积任务流水化结构图。
图9是不同循环分块因子资源消耗图。
图10是Vivado综合设计资源消耗及功率大小图。
具体实施方式
以下结合附图和具体实施例对本发明作进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1为本发明的加速器整体设计框图,循环分块因子分别为:q、p,通过改变q、p的大小即可实现对并行度的控制。对于权重数据,本实施例仅将本次计算所需的权重传输至片上BRAM,因此片上BRAM的大小为:p*q*k*k,其中k为卷积核尺寸;对于特征图的输入,使用库函数中的“Line Buffer”设计q个k行的缓存结构,通过移动与***即可实现输入数据的缓存;以3*3的卷积计算为例,使用库函数中的“Window”设计3*3的窗口,将“Line Buffer”内的数据不断移动到“Window”内即可实现卷积滑窗计算的功能;对于卷积计算的特征图输出,使用PL内部的AXI4-Stream协议设计FIFO结构,FIFO深度设置为b。由于循环分块因子的引入,本次卷积计算的结果需要和上次循环的计算结果累加,然后再作为本次计算的最终结果传输至片外存储,当完成一个输出通道的卷积计算时,需要将偏置与当前计算结果相加,然后再进行激活输出,偏置的片上缓存大小也同卷积核间的循环分块因子p相等。
如图2、图3所示,针对卷积计算中的循环,使用循环分块对循环进行并行化,以输出通道为M,输入通道为N的卷积计算为例,对于输出通道来说,可将M个卷积核分割为Mp份,通过Mp次循环完成整个卷积核的并行计算,则此时卷积核的并行度为p,即一次进行p个卷积核的计算。对于输入通道来说,可以将N个输入通道分为Nq份,通过Nq次循环完成整个输出通道数据的遍历,则此时特征图间的并行性为q,即一次进行q个输入特征图的计算。
特征图的行缓存结构如图4所示,根据卷积核的尺寸设计片上行缓存结构,进行输入特征图数据的读入,使用Vivado HLS的“LineBuffer”进行数据的更新;当进行卷积计算时,q个不同的卷积核共享对应的p个输入特征图行缓存,将p个输入特征图的卷积计算结果叠加即可得到一个卷积核的计算输出。
特征图多级输出缓存结构如图5所示,设计输出缓存FIFO结构,引入二级输出缓存提高加速器数据吞吐量;将FIFO的深度设置为b=2,每进行一次输入数据的读取则进行两次输出数据的写入。
对于片上BRAM的分割方法如图6所示,分割前BRAM的最大读取端口数量为2,数据访存速度较慢,为了提升吞吐量,通常将一个大的数组分割为几个小的数组,这样就能对数组进行并行访存,提高数据吞吐量。HLS提供block、cyclic、complete三种数组分割方法,对于block和cyclic指令,可使用factor指定将原始数组分割为多少个小数组,图中factor等于2;对于complete指令,其直接对数组中的每个存储单元进行完全分割,使被分割的数组成为寄存器级接口,访存速度最快。权重数组Weight[p][q][k2]是一个三维数组,使用数组展开对第一维参数p与第三维参数k2进行complete优化,使用数组分割将第二维参数q分割为qb个block。行缓存数组Line_Buffer[q][n][k]一个时钟周期只需进行b个输入通道数据的写入与读出,因此将行缓存数组的第一维参数分割为qb个block即可,第二维与第三维参数无需进行优化。对于Bias[p]、Accumulation_Buffer[p]和Output_Buffer[p][d],由于输出通道并行度p为固定值,因此需使用complete对Bias[p]、Accumulation_Buffer[p]和Output_Buffer[p][d]进行优化。
卷积复用的设计如图7所示,首先对1*1的卷积核进行扩充,使1*1的卷积计算转换为3*3的卷积计算,然后将1*1的卷积送入3*3的卷积计算单元,即可完成卷积计算。扩充的方法是,将原始1*1卷积的权重放置3*3卷积核权重的第5位,3*3卷积核剩余8位权重均置0。
流水化设计结构如图8所示,针对卷积层的计算流程,设计了一种流水化方法,将卷积层的计算分为5个子任务,分别为:行缓存、卷积滑窗、卷积计算、数据累加以及计算输出,因此整个流水线为5级流水设计,使用Vivado HLS的“HLS PIPELINE”进行任务流水化设计。
下面通具体实验对本发明的基于HLS的可重构通用标准卷积加速器设计方法进行验证。实验中使用的硬件平台为ZYNQ7020,HLS工具为Vivado HLS、硬件综合工具为Vivado,特征图的输入尺寸为416*416*3,特征图的输出尺寸为208*208*16,Vivado HLS仿真时钟周期为125MHz,Vivado综合时钟周期为100HMz。
图9是不同循环分块因子下的Vivado HLS仿真结果图,从图中可知,随着循环分块因子的增加,硬件资源的消耗几乎也成倍增加,考虑到实验平台ZYNQ7020的资源配置,最终将加速器的循环分块因子设置为32即p=q=32。图10是循环分块因子设置为32时,Vivado的综合结果图,***最终使用了53%的BRAM资源、68%的DSP资源、41%的FF资源以及46%的LUT资源,整功耗为2.58W,且能够正常生成比特流文件。因此本发明设计的基于HLS的可重构通用标准卷积加速器设计方法能够完成对卷积运算的加速,应用到实际的工程化加速中。
本发明并不限于上文描述的实施方式。以上对具体实施方式的描述旨在描述和说明本发明的技术方案,上述的具体实施方式仅仅是示意性的,并不是限制性的。在不脱离本发明宗旨和权利要求所保护的范围情况下,本领域的普通技术人员在本发明的启示下还可做出很多形式的具体变换,这些均属于本发明的保护范围之内。
Claims (1)
1.一种基于HLS的可重构通用标准卷积加速器设计方法,其特征在于,包括以下步骤:
(1)通过对标准卷积计算特性的分析,得到卷积核间、特征图间、卷积核内以及特征图内四个尺度的并行性;对卷积核间、特征图间使用循环分块技术,对卷积核内使用循环展开技术,对特征图内使用流水化技术,引入循环分块因子控制并行化设计尺度以此适应不同硬件资源的加速平台,其中卷积核间循环分块因子为p,特征图间循环分块因子为q;
(2)对加速器的片上存储分别设置权重偏置存储结构、特征图行缓存结构、多级输出缓存结构,并使用AXI4总线设计多通道并行读写结构;使用片上BRAM进行数据存储,将权重存储空间大小设置为:p*q*k*k,其中k为卷积核尺寸;偏置存储空间大小设置为:p;行缓存存储空间大小设置为:q*n*k,其中n为特征图最大输入尺寸;数据累加缓存空间大小设置为:p;输出缓存空间大小设置为:p*d,其中d为输出FIFO深度;AXI4总线并行读写通道数设置b;分别使用Weight[p][q][k2]、Bias[p]、Line_Buffer[q][n][k]、Accumulation_Buffer[p]、Output_Buffer[p][d]表示;
权重数组Weight[p][q][k2]是一个三维数组,使用数组展开对第一维参数p与第三维参数k2进行complete优化,使用数组分割将第二维参数q分割为qb个block;行缓存数组Line_Buffer[q][n][k]一个时钟周期只需进行b个输入通道数据的写入与读出,因此将行缓存数组的第一维参数分割为qb个block即可,第二维与第三维参数无需进行优化;对于Bias[p]、Accumulation_Buffer[p]和Output_Buffer[p][d],由于输出通道并行度p为固定值,因此需使用complete对Bias[p]、Accumulation_Buffer[p]和Output_Buffer[p][d]进行优化;
(3)针对3*3与1*1的卷积计算,通过可复用的卷积计算方法,对1*1的卷积核进行扩充,使1*1的卷积转换为3*3的卷积计算,然后将1*1卷积送入3*3的卷积计算单元,即可完成卷积计算;扩充的方法是,将原始1*1卷积的权重放置3*3卷积核权重的第5位,3*3卷积核剩余8位权重均置0;
(4)设置一种5层流水化结构,分别为:行缓存、卷积滑窗、卷积计算、数据累加以及计算输出,即完成了卷积加速器的设计;具体如下:
首先使用行缓存对输入数据进行读取,然后卷积滑窗从行缓存提取需要进行卷积运算的特征数据,接着卷积计算单元将提取出的特征数据与不同卷积核的进行卷积运算,再将计算结果传输至数据累加单元进行不同卷积核计算结果的累加,从而得到本次计算的输出结果,最后将输出结果送入计算输出单元的FIFO进行临时存储,同时将上一次计算的结果输出至片外存储单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011319367.1A CN112288082B (zh) | 2020-11-23 | 2020-11-23 | 一种基于hls的可重构通用标准卷积加速器设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011319367.1A CN112288082B (zh) | 2020-11-23 | 2020-11-23 | 一种基于hls的可重构通用标准卷积加速器设计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112288082A CN112288082A (zh) | 2021-01-29 |
CN112288082B true CN112288082B (zh) | 2023-06-13 |
Family
ID=74425112
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011319367.1A Active CN112288082B (zh) | 2020-11-23 | 2020-11-23 | 一种基于hls的可重构通用标准卷积加速器设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112288082B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113298243A (zh) * | 2021-02-01 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 数据存储管理方法和装置以及卷积计算硬件加速器 |
CN112950656A (zh) * | 2021-03-09 | 2021-06-11 | 北京工业大学 | 一种基于fpga平台的按通道进行预读取数据的分块卷积方法 |
CN115470176B (zh) * | 2021-06-10 | 2024-04-09 | 中科寒武纪科技股份有限公司 | 计算装置、利用计算装置实施卷积运算的方法及相关产品 |
CN113361695B (zh) * | 2021-06-30 | 2023-03-24 | 南方电网数字电网研究院有限公司 | 卷积神经网络加速器 |
CN116303108B (zh) * | 2022-09-07 | 2024-05-14 | 芯砺智能科技(上海)有限公司 | 一种适用于并行计算架构的权重地址排布方法 |
CN115982530A (zh) * | 2023-03-13 | 2023-04-18 | 苏州浪潮智能科技有限公司 | 加速器运算控制方法、***、存储介质、装置及设备 |
CN118154457B (zh) * | 2024-05-09 | 2024-07-09 | 四川赛狄信息技术股份公司 | 一种流水线卷积滤波*** |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111416743A (zh) * | 2020-03-19 | 2020-07-14 | 华中科技大学 | 一种卷积网络加速器、配置方法及计算机可读存储介质 |
CN111488983A (zh) * | 2020-03-24 | 2020-08-04 | 哈尔滨工业大学 | 一种基于fpga的轻量级cnn模型计算加速器 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017106603A1 (en) * | 2015-12-16 | 2017-06-22 | Stc.Unm | System and methods for computing 2-d convolutions and cross-correlations |
CN106875012B (zh) * | 2017-02-09 | 2019-09-20 | 武汉魅瞳科技有限公司 | 一种基于fpga的深度卷积神经网络的流水化加速*** |
CN107862650B (zh) * | 2017-11-29 | 2021-07-06 | 中科亿海微电子科技(苏州)有限公司 | 加速计算二维图像cnn卷积的方法 |
CN111914867A (zh) * | 2019-05-08 | 2020-11-10 | 四川大学 | 一种基于fpga的卷积神经网络ip核设计 |
CN111178519B (zh) * | 2019-12-27 | 2022-08-02 | 华中科技大学 | 卷积神经网络加速引擎、卷积神经网络加速***及方法 |
-
2020
- 2020-11-23 CN CN202011319367.1A patent/CN112288082B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111416743A (zh) * | 2020-03-19 | 2020-07-14 | 华中科技大学 | 一种卷积网络加速器、配置方法及计算机可读存储介质 |
CN111488983A (zh) * | 2020-03-24 | 2020-08-04 | 哈尔滨工业大学 | 一种基于fpga的轻量级cnn模型计算加速器 |
Also Published As
Publication number | Publication date |
---|---|
CN112288082A (zh) | 2021-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112288082B (zh) | 一种基于hls的可重构通用标准卷积加速器设计方法 | |
Guo et al. | A survey of FPGA-based neural network accelerator | |
CN111967468B (zh) | 一种基于fpga的轻量级目标检测神经网络的实现方法 | |
CN113051216B (zh) | 一种基于FPGA加速的MobileNet-SSD目标检测装置及方法 | |
Liang et al. | OMNI: A framework for integrating hardware and software optimizations for sparse CNNs | |
CN111563582A (zh) | 一种在fpga上实现及优化加速卷积神经网络的方法 | |
Xiao et al. | FPGA implementation of CNN for handwritten digit recognition | |
Morcel et al. | FeatherNet: An accelerated convolutional neural network design for resource-constrained FPGAs | |
Ye et al. | Accelerating attention mechanism on fpgas based on efficient reconfigurable systolic array | |
CN116384312A (zh) | 一种基于并行异构计算的电路良率分析方法 | |
Li et al. | Design and implementation of neural network computing framework on Zynq SoC embedded platform | |
Wu | Review on FPGA-based accelerators in deep learning | |
CN112200310B (zh) | 智能处理器、数据处理方法及存储介质 | |
Zhang et al. | A locally distributed mobile computing framework for DNN based android applications | |
Li et al. | A power-efficient optimizing framework FPGA accelerator for YOLO | |
Nie et al. | Laius: an energy-efficient FPGA CNN accelerator with the support of a fixed-point training framework | |
Zhang et al. | Apply yolov4-tiny on an fpga-based accelerator of convolutional neural network for object detection | |
Liu et al. | FPGA-based acceleration of deep neural networks using high level method | |
Wen | FPGA-Based Deep Convolutional Neural Network Optimization Method | |
Liu et al. | Design an efficient DNN inference framework with PS-PL synergies in FPGA for edge computing | |
Park et al. | Toward optimal FPGA implementation of deep convolutional neural networks for handwritten Hangul character recognition | |
Wang et al. | A convolutional neural network accelerator based on FPGA for buffer optimization | |
Adiono et al. | FPGA Based Hardware Accelerator Design for Convolution Process in Convolutional Neural Network | |
Zhang et al. | Design of a Convolutional Neural Network Accelerator based on PYNQ | |
Zhang et al. | A High Performance FPGA-based Accelerator for MobileNet |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |