CN111047008B - 一种卷积神经网络加速器及加速方法 - Google Patents

一种卷积神经网络加速器及加速方法 Download PDF

Info

Publication number
CN111047008B
CN111047008B CN201911102633.2A CN201911102633A CN111047008B CN 111047008 B CN111047008 B CN 111047008B CN 201911102633 A CN201911102633 A CN 201911102633A CN 111047008 B CN111047008 B CN 111047008B
Authority
CN
China
Prior art keywords
module
data
input
convolution
output
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
Application number
CN201911102633.2A
Other languages
English (en)
Other versions
CN111047008A (zh
Inventor
刘强
曾成龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tianjin University
Original Assignee
Tianjin University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tianjin University filed Critical Tianjin University
Priority to CN201911102633.2A priority Critical patent/CN111047008B/zh
Publication of CN111047008A publication Critical patent/CN111047008A/zh
Application granted granted Critical
Publication of CN111047008B publication Critical patent/CN111047008B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明公开了一种卷积神经网络加速器,包括数据输入控制模块、输入缓存器、行缓存模块、矩阵模块、卷积处理单元、权值输入模块、输出缓存器模块、偏置模块及池化模块。本发明采用复用并行度的结构,提高加速器中乘法器和加法器的利用率,在有限的资源下,满足高性能、低功耗、高灵活性的要求。此外,本发明还公开了一种卷积神经网络加速方法。

Description

一种卷积神经网络加速器及加速方法
技术领域
本发明属于网络加速器的技术领域,具体涉及一种卷积神经网络加速器及加速方法。
背景技术
卷积神经网络是一种前馈神经网络,是深度学习的代表算法之一。卷积神经网络主要依靠卷积层、池化层和全连接层来完成对输出数据的处理,并进行高效率的特征提取。近年来,随着卷积神经网算法的不断优化,卷积神经网络发展迅速,并被广泛应用于计算机视觉、自然语言处理等领域。然而,卷积神经网络的实现依赖于大量的计算资源和存储资源,这对卷积神经网络实现带来了诸多挑战。中央处理器不能提供足够的计算能力,图形处理器虽可保证算力,但其功耗大,只能应用于服务器端。为了将卷积神经网络应用于嵌入式端,基于FPGA的卷积神经网络加速器成为研究热点。
然而,FPGA平台的计算资源和存储资源有限,在有限的资源下,实现高性能、低功耗的神经网络加速器是当下需解决的技术问题。
发明内容
本发明的目的之一在于:针对现有技术的不足,提供一种卷积神经网络加速器,采用复用并行度的结构,提高加速器中乘法器和加法器的利用率,在有限的资源下,满足高性能、低功耗、高灵活性的要求。
为了实现上述目的,本发明采用如下技术方案:
一种卷积神经网络加速器,包括数据输入控制模块、输入缓存器、行缓存模块、矩阵模块、卷积处理单元、权值输入模块、输出缓存器模块、偏置模块及池化模块,其中,所述数据输入控制模块,用于接收来自存储器或所述池化模块的数据,并将接收到的输入数据按预设顺序存入所述输入缓存器中;所述行缓存模块,用于拼接所述输入数据,输出多行数据,然后传输给所述卷积处理单元;所述矩阵模块,用于将所述输入数据拼接成输入矩阵,然后传输给所述卷积处理单元;所述权值输入模块,用于缓存权值,并将所述权值按预设顺序传递给所述卷积处理单元;所述卷积处理单元,用于对所述输入数据和所述权值做卷积运算,然后传输给所述输出缓存器模块;所述输出缓存器模块,用于缓存所述卷积处理单元的输出,然后传输给所述偏置模块;所述偏置模块,用于对所述输出缓存器模块的输出进行偏置,然后传输给所述池化模块;所述池化模块,用于对偏置结果进行池化处理,然后将输出数据传输到存储器或所述数据输入控制模块。
作为本发明所述的一种卷积神经网络加速器的一种改进,所述卷积处理单元包括多个卷积核,所述卷积核包括乘法器和加法器。
作为本发明所述的一种卷积神经网络加速器的一种改进,述乘法器的数量为9个,所述加法器的数量为8个。
作为本发明所述的一种卷积神经网络加速器的一种改进,所述卷积处理单元将1×1的卷积转换成3×3的卷积。
作为本发明所述的一种卷积神经网络加速器的一种改进,所述输入矩阵为3×3矩阵。
作为本发明所述的一种卷积神经网络加速器的一种改进,所述储存器为片外存储器。
作为本发明所述的一种卷积神经网络加速器的一种改进,所述偏置模块通过计数器控制偏置的更新。
作为本发明所述的一种卷积神经网络加速器的一种改进,所述池化模块设置有使能端。
本发明的目的之二在于提供一种卷积神经网络加速方法,包括如下步骤:
步骤一、预设网络加速参数,接收来自存储器或池化模块的数据,并将接收到的输入数据按预设顺序存入输入缓存器中,
步骤二、当权值输入模块准备对应权值后,判断是否为1×1的卷积运算,若是,数据输入控制模块一次性输出多个通道的数据,否则,所述数据输入控制模块按预设顺序输出各通道数据,然后通过行缓存模块,将按单行输入的数据变成按三行同时输出;
步骤三、通过矩阵模块将数据拼接成3×3的输入矩阵,然后对所述输入矩阵中的数据与对应的所述权值做卷积运算,接着对卷积处理单元的输出数据做通道方向的累加,并加上偏置;
步骤四、根据所述预设网络加速参数,判断是否需要做池化操作,若是,则进行池化操作后输出,否则直接输出,然后根据所述预设网络加速参数,判断池化模块的输出是否传到片外存储器,若是,则将数据传到片外存储器,否则,通过所述数据输入控制模块将输出数据传回到所述输入缓存器中。
作为本发明所述的一种卷积神经网络加速方法的一种改进,所述预设网络加速参数包括输入特征图的大小、卷积核的大小及数目、池化操作的条件。
本发明的有益效果在于,本发明包括数据输入控制模块、输入缓存器、行缓存模块、矩阵模块、卷积处理单元、权值输入模块、输出缓存器模块、偏置模块及池化模块,其中,所述数据输入控制模块,用于接收来自存储器或所述池化模块的数据,并将接收到的输入数据按预设顺序存入所述输入缓存器中;所述行缓存模块,用于拼接所述输入数据,输出多行数据,然后传输给所述卷积处理单元;所述矩阵模块,用于将所述输入数据拼接成输入矩阵,然后传输给所述卷积处理单元;所述权值输入模块,用于缓存权值,并将所述权值按预设顺序传递给所述卷积处理单元;所述卷积处理单元,用于对所述输入数据和所述权值做卷积运算,然后传输给所述输出缓存器模块;所述输出缓存器模块,用于缓存所述卷积处理单元的输出,然后传输给所述偏置模块;所述偏置模块,用于对所述输出缓存器模块的输出进行偏置,然后传输给所述池化模块;所述池化模块,用于对偏置结果进行池化处理,然后将输出数据传输到存储器或所述数据输入控制模块。本发明采用复用并行度的结构,提高加速器中乘法器和加法器的利用率,在有限的资源下,满足高性能、低功耗、高灵活性的要求。
附图说明
图1为本发明的结构示意图。
图2为本发明的流程示意图。
图3为本发明的卷积运算示意图。
其中:1-数据输入控制模块;2-输入缓存器;3-行缓存模块;4-矩阵模块;5-卷积处理单元;6-权值输入模块;7-输出缓存器模块;8-偏置模块;9-池化模块。
具体实施方式
如在说明书及权利要求当中使用了某些词汇来指称特定组件。本领域技术人员应可理解,硬件制造商可能会用不同名词来称呼同一个组件。本说明书及权利要求并不以名称的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的准则。如在通篇说明书及权利要求当中所提及的“包含”为一开放式用语,故应解释成“包含但不限定于”。“大致”是指在可接受的误差范围内,本领域技术人员能够在一定误差范围内解决技术问题,基本达到技术效果。
在本发明的描述中,需要理解的是,术语“上”、“下”、“前”、“后”、“左”、“右”、水平”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
在发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
以下结合附图对本发明作进一步详细说明,但不作为对本发明的限定。
实施例1
如图1~3所示,一种卷积神经网络加速器,包括数据输入控制模块1、输入缓存器2、行缓存模块3、矩阵模块4、卷积处理单元5、权值输入模块6、输出缓存器模块7、偏置模块8及池化模块9,其中,数据输入控制模块1,用于接收来自存储器或池化模块9的数据,并将接收到的输入数据按预设顺序存入输入缓存器2中;行缓存模块3,用于拼接输入数据,输出多行数据,然后传输给卷积处理单元5;矩阵模块4,用于将输入数据拼接成输入矩阵,然后传输给卷积处理单元5;权值输入模块6,用于缓存权值,并将权值按预设顺序传递给卷积处理单元5;卷积处理单元5,用于对输入数据和权值做卷积运算,然后传输给输出缓存器模块7;输出缓存器模块7,用于缓存卷积处理单元5的输出,然后传输给偏置模块8;偏置模块8,用于对输出缓存器模块7的输出进行偏置,然后传输给池化模块9;池化模块9,用于对偏置结果进行池化处理,然后将输出数据传输到存储器或数据输入控制模块1。由于FPGA平台的计算资源和存储资源有限,在有限的资源下,其性能较低,功耗较高,因此,采用神经网络加速器,数据输入控制模块1能够接收来自片下存储器或者池化模块9的数据,并将接收到的数据按预设的顺序存入输入缓存器2中,当卷积处理单元5需要用到输入数据时,数据输入控制模块1将从输入缓存器2中按规定顺序取出输入数据,传给卷积处理单元5;行缓存模块3拼接输入数据,采用两个缓存器分别缓存第一行和第二行数据,然后同时输出第一行、第二行和第三行数据;矩阵模块4能够将输入数据拼接成3×3的输入矩阵,然后传输给卷积处理单元5做卷积运算;卷积处理单元5对输入数据和权值做卷积运算,由于并行处理,卷积处理单元5由多个卷积核组成,卷积核则由9个乘法器和8个加法器组成,卷积处理单元5是本加速器的主要计算单元,大部分计算资源开销来自于卷积处理单元5;权值输入模块6能够缓存来自片外存储器的权值,并将权值按一定顺序传递给卷积处理单元5;输出缓存器模块7用于缓存卷积处理单元5的输出,先缓存输入特征图第一个通道做完卷积运算后的结果,当第二个通道的数据做完卷积运算后,和第一个通道的运算结果相加,再将其缓存,直到将所有通道的卷积运算结果相加,得到最终的输出;偏置模块8能够对输出缓存器模块7的输出加上一个偏置,其中,每个输出特征图对应一个偏置,这里用一个计数器来控制偏置的更新;池化模块9能够对加完偏置的结果做最大池化处理,根据具体需要,将输出数据传输到片下存储器或者传回数据输入控制模块1。
本发明采用复用并行度的结构,硬件上将3×3的卷积核循环展开,实例化成9个乘法器,这里称为卷积核并行,但对于1×1的卷积,通常只会用到这9个乘法器中的1个,为了提高乘法器的利用率,在计算1×1的卷积时,同时计算9个通道的数据,也就是说这里将卷积核并行转换成了通道并行,将9个通道的数据填充成3×3的卷积核,资源利用率与计算效率提升为9倍。
优选的,卷积处理单元5包括多个卷积核,卷积核包括乘法器和加法器,乘法器的数量为9个,加法器的数量为8个。对于3×3的卷积运算,需要9次乘法和8次加法来得到一个通道的一个卷积运算结果,对于1×1的卷积运算,只需要1次乘法运算即可得到一个通道的一个卷积运算结果,为了得到最终的输出,需要将所有通道的卷积运算结果相加,在卷积处理单元5中,每个卷积核由9个乘法器和8个加法器组成,本发明针对1×1的卷积,对输入数据进行重排,同时对9个通道数据进行卷积运算,提高加速器中乘法器和加法器的利用率。
优选的,卷积处理单元5将1×1的卷积转换成3×3的卷积。如图2所示,输入特征图大小为4×5,通道数为9,对于3×3的卷积运算,要获得输出特征图的一个像素点,需要用3×3的卷积核对输入特征图9个通道分别做卷积运算,然后通过输出缓存器模块7将9个值累加;对于1×1的卷积运算,则可以通过3×3的卷积核直接对9个通道的数据做卷积运算,本发明针对1×1的卷积,对输入数据进行重排,同时对9个通道数据进行卷积运算,即将1×1的卷积转换成3×3的卷积,提高加速器中乘法器和加法器的利用率。
优选的,输入矩阵为3×3矩阵。不管是1×1的卷积还是3×3的卷积,都通过矩阵模块4将数据拼接成3×3的输入矩阵。
优选的,储存器为片外存储器。
优选的,偏置模块8通过计数器控制偏置的更新。其中,每个输出特征图对应一个偏置,这里用一个计数器来控制偏置的更新。
优选的,池化模块9设置有使能端。池化模块9中有一个使能端,使能端连接使能信号,根据使能信号来判断是否需要池化操作。
本发明具有的有益效果:
1)本发明基于FPGA实现了一种高资源利用率的卷积神经网络加速器,此加速器采用单计算引擎架构,通过顶层寄存器配置,可灵活实现卷积神经网络中各层的功能,在有限的资源下,满足高性能、低功耗、高灵活性的要求
2)本发明提供一种复用并行度的结构,高效实现1×1和3×3的卷积运算,大大提高加速器中乘法器和加法器的利用率。
实施例2
如图1~3所示,一种卷积神经网络加速方法,包括如下步骤:
步骤一、预设网络加速参数,接收来自存储器或池化模块9的数据,并将接收到的输入数据按预设顺序存入输入缓存器2中,
步骤二、当权值输入模块6准备对应权值后,判断是否为1×1的卷积运算,若是,数据输入控制模块1一次性输出多个通道的数据,否则,数据输入控制模块1按预设顺序输出各通道数据,然后通过行缓存模块3,将按单行输入的数据变成按三行同时输出;
步骤三、通过矩阵模块4将数据拼接成3×3的输入矩阵,然后对输入矩阵中的数据与对应的权值做卷积运算,接着对卷积处理单元5的输出数据做通道方向的累加,并加上偏置;
步骤四、根据预设网络加速参数,判断是否需要做池化操作,若是,则进行池化操作后输出,否则直接输出,然后根据预设网络加速参数,判断池化模块9的输出是否传到片外存储器,若是,则将数据传到片外存储器,否则,通过数据输入控制模块1将输出数据传回到输入缓存器2中。
需要说明的是:本发明的加速方法中,步骤一,对整个加速器的参数进行配置,包括输入特征图的大小、卷积核的大小及数目、输入特征图是否来自片外存储器、是否有池化操作等,判断是否需要从片下存储器读取输入数据,如果需要,则通过直接内存存取将片外存储器中的输入数据读取到片上,然后通过数据控制模块1将输入数据按照规定的顺序写入输入缓存器2中;步骤二中,当权值输入模块6准备好对应权值后,判断是否是1×1的卷积运算,如果是数据输入控制模块1则一次性输出9个通道的数据,否则数据输入控制模块1按顺序输出各通道数据,通过行缓存结构,将按单行输入的数据变成按三行同时输出;步骤三中,通过矩阵模块4将数据拼接成3×3的输入矩阵,对输入矩阵中的数据与对应的权值做卷积运算,对卷积处理单元5的输出数据做通道方向的累加,并加上偏置;步骤四中,根据配置,判断是否需要做池化操作,如果需要池化,则池化操作结束后输出,否则直接输出,根据参数配置,判断池化模块9的输出去向,如果需要传到片外存储器,则通过直接内存存取将数据传到片下,否则通过数据输入控制模块1将输出数据传回到输入缓存器2中。
优选的,预设网络加速参数包括输入特征图的大小、卷积核的大小及数目、池化操作的条件。这样设计便于对整个加速器的参数进行配置,提高加速器的处理效率。
根据上述说明书的揭示和教导,本发明所属领域的技术人员还能够对上述实施方式进行变更和修改。因此,本发明并不局限于上述的具体实施方式,凡是本领域技术人员在本发明的基础上所作出的任何显而易见的改进、替换或变型均属于本发明的保护范围。此外,尽管本说明书中使用了一些特定的术语,但这些术语只是为了方便说明,并不对本发明构成任何限制。

Claims (10)

1.一种卷积神经网络加速器,其特征在于:包括数据输入控制模块(1)、输入缓存器(2)、行缓存模块(3)、矩阵模块(4)、卷积处理单元(5)、权值输入模块(6)、输出缓存器模块(7)、偏置模块(8)及池化模块(9),其中,
所述数据输入控制模块(1),用于接收来自存储器或所述池化模块(9)的数据,并将接收到的输入数据按预设顺序存入所述输入缓存器(2)中;
所述行缓存模块(3),用于拼接所述输入数据,输出多行数据,然后传输给所述卷积处理单元(5);
所述矩阵模块(4),用于将所述输入数据拼接成输入矩阵,然后传输给所述卷积处理单元(5);
所述权值输入模块(6),用于缓存权值,并将所述权值按预设顺序传递给所述卷积处理单元(5);
所述卷积处理单元(5),用于对所述输入数据和所述权值做卷积运算,然后传输给所述输出缓存器模块(7);
所述输出缓存器模块(7),用于缓存所述卷积处理单元(5)的输出,然后传输给所述偏置模块(8);
所述偏置模块(8),用于对所述输出缓存器模块(7)的输出进行偏置,然后传输给所述池化模块(9);
所述池化模块(9),用于对偏置结果进行池化处理,然后将输出数据传输到存储器或所述数据输入控制模块(1)。
2.如权利要求1所述的一种卷积神经网络加速器,其特征在于:所述卷积处理单元(5)包括多个卷积核,所述卷积核包括乘法器和加法器。
3.如权利要求2所述的一种卷积神经网络加速器,其特征在于:所述乘法器的数量为9个,所述加法器的数量为8个。
4.如权利要求1所述的一种卷积神经网络加速器,其特征在于:所述卷积处理单元(5)将1×1的卷积转换成3×3的卷积。
5.如权利要求1所述的一种卷积神经网络加速器,其特征在于:所述输入矩阵为3×3矩阵。
6.如权利要求1所述的一种卷积神经网络加速器,其特征在于:所述存储器为片外存储器。
7.如权利要求1所述的一种卷积神经网络加速器,其特征在于:所述偏置模块(8)通过计数器控制偏置的更新。
8.如权利要求1所述的一种卷积神经网络加速器,其特征在于:所述池化模块(9)设置有使能端。
9.一种卷积神经网络加速方法,其特征在于,包括如下步骤:
步骤一、预设网络加速参数,接收来自存储器或池化模块(9)的数据,并将接收到的输入数据按预设顺序存入输入缓存器(2)中,
步骤二、当权值输入模块(6)准备对应权值后,判断是否为1×1的卷积运算,若是,数据输入控制模块(1)一次性输出多个通道的数据,否则,所述数据输入控制模块(1)按预设顺序输出各通道数据,然后通过行缓存模块(3),将按单行输入的数据变成按三行同时输出;
步骤三、通过矩阵模块(4)将数据拼接成3×3的输入矩阵,然后对所述输入矩阵中的数据与对应的所述权值做卷积运算,接着对卷积处理单元(5)的输出数据做通道方向的累加,并加上偏置;
步骤四、根据所述预设网络加速参数,判断是否需要做池化操作,若是,则进行池化操作后输出,否则直接输出,然后根据所述预设网络加速参数,判断池化模块(9)的输出是否传到片外存储器,若是,则将数据传到片外存储器,否则,通过所述数据输入控制模块(1)将输出数据传回到所述输入缓存器(2)中。
10.如权利要求9所述的一种卷积神经网络加速方法,其特征在于:所述预设网络加速参数包括输入特征图的大小、卷积核的大小及数目、池化操作的条件。
CN201911102633.2A 2019-11-12 2019-11-12 一种卷积神经网络加速器及加速方法 Active CN111047008B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911102633.2A CN111047008B (zh) 2019-11-12 2019-11-12 一种卷积神经网络加速器及加速方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911102633.2A CN111047008B (zh) 2019-11-12 2019-11-12 一种卷积神经网络加速器及加速方法

Publications (2)

Publication Number Publication Date
CN111047008A CN111047008A (zh) 2020-04-21
CN111047008B true CN111047008B (zh) 2023-08-01

Family

ID=70232923

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911102633.2A Active CN111047008B (zh) 2019-11-12 2019-11-12 一种卷积神经网络加速器及加速方法

Country Status (1)

Country Link
CN (1) CN111047008B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111753974A (zh) * 2020-06-22 2020-10-09 深圳鲲云信息科技有限公司 一种神经网络加速器
CN111832717B (zh) * 2020-06-24 2021-09-28 上海西井信息科技有限公司 芯片及用于卷积计算的处理装置
CN112580787B (zh) * 2020-12-25 2023-11-17 北京百度网讯科技有限公司 神经网络加速器的数据处理方法、装置、设备及存储介质
CN115185482A (zh) * 2021-04-02 2022-10-14 嘉楠明芯(北京)科技有限公司 一种基于神经网络的运算方法以及装置
CN113361695B (zh) * 2021-06-30 2023-03-24 南方电网数字电网研究院有限公司 卷积神经网络加速器
CN113591025A (zh) * 2021-08-03 2021-11-02 深圳思谋信息科技有限公司 特征图的处理方法、装置、卷积神经网络加速器和介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109102065A (zh) * 2018-06-28 2018-12-28 广东工业大学 一种基于PSoC的卷积神经网络加速器
CN109993297A (zh) * 2019-04-02 2019-07-09 南京吉相传感成像技术研究院有限公司 一种负载均衡的稀疏卷积神经网络加速器及其加速方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107239824A (zh) * 2016-12-05 2017-10-10 北京深鉴智能科技有限公司 用于实现稀疏卷积神经网络加速器的装置和方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109102065A (zh) * 2018-06-28 2018-12-28 广东工业大学 一种基于PSoC的卷积神经网络加速器
CN109993297A (zh) * 2019-04-02 2019-07-09 南京吉相传感成像技术研究院有限公司 一种负载均衡的稀疏卷积神经网络加速器及其加速方法

Also Published As

Publication number Publication date
CN111047008A (zh) 2020-04-21

Similar Documents

Publication Publication Date Title
CN111047008B (zh) 一种卷积神经网络加速器及加速方法
CN108108809B (zh) 一种针对卷积神经元网络进行推理加速的硬件架构及其工作方法
CN109102065B (zh) 一种基于PSoC的卷积神经网络加速器
CN111488983B (zh) 一种基于fpga的轻量级cnn模型计算加速器
CN108229645B (zh) 卷积加速和计算处理方法、装置、电子设备及存储介质
CN109447241B (zh) 一种面向物联网领域的动态可重构卷积神经网络加速器架构
WO2020073211A1 (zh) 运算加速器、处理方法及相关设备
CN104915322A (zh) 一种卷积神经网络硬件加速方法及其axi总线ip核
CN111898733B (zh) 一种深度可分离卷积神经网络加速器架构
CN108764466A (zh) 基于现场可编程门阵列的卷积神经网络硬件及其加速方法
CN113313243B (zh) 神经网络加速器的确定方法、装置、设备以及存储介质
CN110705702A (zh) 一种动态可扩展的卷积神经网络加速器
WO2021249192A1 (zh) 图像处理方法及装置、机器视觉设备、电子设备和计算机可读存储介质
CN110598844A (zh) 一种基于fpga的并行卷积神经网络加速器及加速方法
CN109086879B (zh) 一种基于fpga的稠密连接神经网络的实现方法
CN111860773A (zh) 处理装置和用于信息处理的方法
Shahshahani et al. Memory optimization techniques for fpga based cnn implementations
CN110222835A (zh) 一种基于零值检测的卷积神经网络硬件系统及运算方法
CN113705803A (zh) 基于卷积神经网络的图像硬件识别系统及部署方法
CN114003201A (zh) 矩阵变换方法、装置及卷积神经网络加速器
US11467973B1 (en) Fine-grained access memory controller
CN116090530A (zh) 可配置卷积核大小和并行计算数目的脉动阵列结构及方法
CN113128673B (zh) 数据处理方法、存储介质、神经网络处理器及电子设备
CN115081603A (zh) 执行Winograd卷积的计算装置、集成电路装置及板卡
CN114730331A (zh) 数据处理装置和数据处理方法

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