CN112101537A - Cnn加速器和电子设备 - Google Patents

Cnn加速器和电子设备 Download PDF

Info

Publication number
CN112101537A
CN112101537A CN202010980637.7A CN202010980637A CN112101537A CN 112101537 A CN112101537 A CN 112101537A CN 202010980637 A CN202010980637 A CN 202010980637A CN 112101537 A CN112101537 A CN 112101537A
Authority
CN
China
Prior art keywords
cnn
execution unit
data
engine
training
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.)
Granted
Application number
CN202010980637.7A
Other languages
English (en)
Other versions
CN112101537B (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.)
Gowin Semiconductor Corp
Original Assignee
Gowin Semiconductor Corp
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 Gowin Semiconductor Corp filed Critical Gowin Semiconductor Corp
Priority to CN202010980637.7A priority Critical patent/CN112101537B/zh
Publication of CN112101537A publication Critical patent/CN112101537A/zh
Application granted granted Critical
Publication of CN112101537B publication Critical patent/CN112101537B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/08Learning methods

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)
  • Advance Control (AREA)

Abstract

本发明提供了一种CNN加速器和电子设备,所述CNN加速器包括设置在MCU内核中的CNN训练器、设置在FPGA内核中的CNN引擎器和CNN存储器,可以将MCU内核的数据处理能力和FPGA内核的并行处理能力及可编程能力相结合,由此提高了CNN加速器的数据处理速度和并行处理能力,能够兼容卷积神经网络的训练阶段和推断阶段。且CNN训练器获得的训练权重值直接传输到CNN引擎器,可以随时优化CNN引擎器中各层级间的权重分布,降低推断错误率。此外,使用FPGA内核的存储资源作为CNN存储器,节省了CNN引擎器内各执行单元与CNN存储器之间的读写时间,在一定的存储容量下保证了数据的读写速率,从而加快了CNN加速器整体的运算效率。

Description

CNN加速器和电子设备
技术领域
本发明涉及卷积神经网络技术领域,特别涉及一种CNN加速器和电子设备。
背景技术
人工智能系统(AI)是研究人类智能活动的规律,构造具有一定智能的人工系统,研究如何让计算机去完成以往需要人的智力才能胜任的工作,也就是研究如何应用计算机的软硬件来模拟人类某些智能行为的基本理论、方法和技术。
卷积神经网络(CNN)与普通神经网络非常相似,都是由具有可学习的权重和偏置常量的神经元组成。每个神经元都接收一些输入,并做一些卷积运算,输出是每个分类的分数。不同的是卷积神经网络默认输入是图像,可以让我们把特定的性质编码传入网络结构,使得我们的前馈函数更加有效率,并减少了大量参数。卷积神经网络具有权值共享、多卷积核和池化的特性,所以选择运用卷积神经网络进行深度学习的优势在于计算效率高、对特征提取的效果好。
现有CNN加速器大多仅用现场可编程门阵列(FPGA内核)单核实现,受限于FPGA内核芯片本身的处理能力(计算和存储)、功耗、成本、体积等,CNN加速器必须降低算法的运算和存储复杂度来满足FPGA内核芯片本身的能力,且通常只实现了卷积神经网络的推断阶段,其CNN加速器内部的引擎器的层级结构以及层级间的权重分布均是确定的,需要提前完成网络的训练过程,不灵活,引擎器的每层结构均须与存储单元进行数据读写,不仅浪费存储器资源而且每次数据读写还需要时间成本。
发明内容
本发明的目的在于提供一种CNN加速器及电子设备,能够兼容卷积神经网络的训练阶段和推断阶段,提高CNN加速器的性能。
为解决上述技术问题,本发明提供一种CNN加速器,包括:
CNN训练器,设置于MCU内核中,用于接收训练数据,并对所述训练数据进行卷积神经网络训练,以获得训练权重值;
CNN引擎器,设置于FPGA内核中并连接所述CNN训练器,用于接收输入数据,根据所述训练权重值,对自身网络的权重分布进行设置,以对所述输入数据进行推断运算;
CNN存储器,设置于FPGA内核中并连接所述CNN引擎器,用于存储所述CNN引擎器推断运算过程中的数据。
可选地,所述MCU内核和所述FPGA内核集成在同一片上系统中,所述CNN训练器训练过程获得的训练权重值,通过所述MCU内核和FPGA内核之间的系统总线直接传输到所述CNN引擎器。
可选地,所述CNN训练器主要由所述MCU内核的数据处理电路组成,所述CNN引擎器主要由所述FPGA内核的并行数据处理电路组成。
可选地,所述CNN训练器所接收的训练数据包括数据集和单个加标签的数据。
可选地,所述CNN加速器还包括设置在所述MCU内核中的标签添加器,所述标签添加器用于为所述CNN引擎器的输入数据和/或输出数据添加标签,并将添加标签后的数据作为所述训练数据,再次传送到所述CNN训练器中进行卷积神经网络训练,以更新所述CNN训练器输出的训练权重值。
可选地,所述CNN引擎器包括卷积层执行单元、池化层执行单元和全连接层执行单元,所述卷积层执行单元用于对相应的数据进行卷积处理,池化层执行单元用于对相应的数据进行最大池化处理,全连接层执行单元用于将相应的数据进行全连接处理。
可选地,所述CNN引擎器还包括批标准化执行单元和线性整流激化层执行单元,所述批标准化执行单元用于对相应的数据进行批标准化处理,所述线性整流激化层执行单元用于对所述批标准化执行单元输出的数据做非线性映射。
可选地,所述CNN存储器主要由所述FPGA内核的BSRAM块状存储单元组成;所述CNN引擎器中,每种执行单元及与之相连的BSRAM块状存储单元的数量均是根据CNN引擎器中的网络结构配置的。
可选地,所述CNN引擎器中,每种执行单元的数量只配置一个,所述CNN存储器中,每种执行单元连接的BSRAM块状存储单元的数量只配置一个;
或者,所述卷积层执行单元、所述批标准化执行单元、所述线性整流激化层执行单元和所述池化层执行单元的数量配置为多个,以形成多级执行结构,每级执行结构中,所述卷积层执行单元、所述批标准化执行单元、所述线性整流激化层执行单元和池化层执行单元依次连接;
或者,所述卷积层执行单元和所述池化层执行单元的数量配置为多个,以形成多级执行结构,每级执行结构中,卷积层执行单元的输出端连接池化层执行单元的输入。
基于同一种发明构思,本发明还提供一种电子设备,具有本发明所述的CNN加速器。
与现有技术相比,本发明的技术方案至少具有以下有益效果之一:
1、通过利用MCU内核资源构建CNN训练器,利用FPGA内核资源构建CNN引擎器以及CNN存储器,可以将MCU内核的数据处理能力和FPGA内核的并行处理能力及可编程能力相结合,由此提高了CNN加速器的数据处理速度和并行处理能力,能够兼容卷积神经网络的训练阶段和推断阶段,提高了CNN加速器的性能。
2、CNN训练器能够实现卷积神经网络的训练过程,且得到的训练权重值能通过MCU内核与FPGA内核之间的系统总线直接传输到CNN引擎器中,随时优化CNN引擎器各层级间的权重分布,降低了CNN加速器的推断错误率。
3、使用FPGA内核的存储资源作为CNN存储器,CNN引擎器推断过程中的数据存储到FPGA内核的存储资源中,在一定的存储容量下可以保证数据的读写速率,节省CNN引擎器内各执行单元与CNN存储器之间的读写时间,提高了CNN加速器整体的运算效率。
4、MCU内核和FPGA内核可以集成在同一片上系统SoC中,FPGA内核将MCU内核、存储器、外部设备等与FPGA内核连接起来,CNN加速器分布在该片上系统SoC上,由此基于FPGA内核可编程的特点,CNN加速器具有良好的扩展性、易用性和并行运算能力,有助于用户快速应用CNN加速器。
附图说明
图1是本发明具体实施例的CNN加速器的系统架构示意图。
图2是本发明具体实施例的CNN加速器的各模块的一种具体架构示例示意图。
图3是本发明具体实施例的CNN加速器的各模块的另一种具体架构示例示意图。
图4是本发明具体实施例的CNN加速器的多级执行结构的一种示例示意图。
图5是本发明具体实施例的CNN加速器的多级执行结构的另一种示例示意图。
具体实施方式
以下结合附图和具体实施例对本发明提出的技术方案作进一步详细说明。根据下面说明,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。本文中“和/或”是二选一或者二者兼具。
请参考图1和图2,本发明一实施例提出了一种基于MCU内核11与FPGA内核12片上系统(SoC)1的CNN加速器,该SoC1以MCU内核11为核心,基于FPGA内核12可编程的特点,实现CNN加速器的卷积神经网络的训练阶段和推断阶段。具体地,该CNN加速器包括CNN训练加速器21、CNN引擎器22、CNN存储器23。
请参考图1和图2,CNN训练加速器21设置在MCU内核11中,并主要基于MCU内核11的数据处理电路11(例如DSP处理电路等)实现,用于接收包括数据集或者单个加标签的数据在内的训练数据,并利用MCU内核11的数据处理运算能力,对所述训练数据进行卷积神经网络训练,以获得训练权重值。CNN训练器21可以接收单个加标签的数据输入,进行卷积神经网络的训练,通过不断的增加数据集的方式不断优化所输出的训练权重值,来降低CNN加速器的推断错误率。其中,训练权重值可以通过MCU内核11与FPGA内核12之间的系统总线输出到FPGA内核12中的CNN引擎器22。
CNN引擎器22设置在FPGA内核12中,并主要基于FPGA内核12的并行数据处理电路120实现。CNN引擎器22通过MCU内核11与FPGA内核12之间的系统总线与所述CNN训练器21连接。CNN引擎器22用于接收输入数据,并根据所述CNN训练器21所输出的训练权重值,对自身网络的权重分布进行设置,以对所述输入数据进行推断运算。
作为一种示例,CNN引擎器22包含卷积层执行单元(CONV EU)221、池化层执行单元(Pooling EU)223和全连接层执行单元(FC EU)222,所述卷积层执行单元221用于对相应的数据进行卷积处理,池化层执行单元223用于对相应的数据进行最大池化处理,全连接层执行单元222用于将相应的数据进行全连接处理。即此时CNN引擎器22的自身网络中加入了卷积层、池化层和全连接层。
作为另一种示例,请参考图3,CNN引擎器22除了包含卷积层执行单元(CONV EU)221、池化层执行单元(Pooling EU)223和全连接层执行单元(FC EU)222以外,还可以进一步地包括批标准化执行单元(NORM EU)224和线性整流激化层执行单元(ReLU EU)225,所述批标准化执行单元224用于对相应的数据进行批标准化处理,所述线性整流激化层执行单元225用于对所述批标准化执行单元输出的数据做非线性映射。即该CNN引擎器22的自身网络中加入了ReLU激化层和批标准化层,可以在ReLU激化层之前加入批标准化层进行批标准化处理操作,以此来解决运算过程中数据间梯度逐渐消失的问题,这样的设计可以在较少的迭代次数内实现训练的收敛。
CNN引擎器22中的每个执行单元之间可以均是相互独立的,能够独立地与CNN存储器23中的存储单元进行数据的读写。由于CNN训练器21的训练权重值可以直接传输到FPGA内核12中的CNN引擎器22,所以可以随时优化CNN引擎器22中各层级间的权重分布,降低推断错误率。
进一步地,CNN引擎器22内部的执行单元之间的连接关系是根据其内部的卷积神经网络的结构构建的,其中,卷积层执行单元(CONV EU)221、批标准化执行单元(NORM EU)、线性整流激化层执行单元(ReLU EU)、池化层执行单元(Pooling EU)223中的任意相邻两个执行单元之间及卷积层执行单元(CONV EU)221与池化层执行单元(Pooling EU)223之间的连接关系,可以在CNN引擎器22所接收的控制信号的控制下,进行相应地连接和断开。
请参考图4,作为一种示例,当卷积层执行单元(CONV EU)221、批标准化执行单元(NORM EU)、线性整流激化层执行单元(ReLU EU)、池化层执行单元(Pooling EU)223的数量配置为多个时,可以通过CNN引擎器22所接收的控制信号,控制相邻执行单元之间的连接和断开,来构建多级执行结构CONV→NORM→ReLU→Pooling,以形成多级执行结构。每级执行结构CONV→NORM→ReLU→Pooling中,卷积层执行单元(CONV EU)221、批标准化执行单元(NORM EU)、线性整流激化层执行单元(ReLU EU)、池化层执行单元(Pooling EU)223依次连接,所述卷积层执行单元(CONV EU)221用于对输入数据进行卷积处理,批标准化执行单元(NORM EU)用于对卷积层执行单元(CONV EU)221输出的数据批标准化处理,线性整流激化层执行单元(ReLU EU)用于对批标准化执行单元(NORM EU)输出的数据做非线性映射,池化层执行单元(Pooling EU)223用于对所述线性整流激化层执行单元(ReLU EU)输出的数据进行最大池化处理,全连接层执行单元(FC EU)222用于将最后一级所述池化层执行单元(Pooling EU)223输出的数据进行全连接处理。这种情况下,该CNN加速器主要的特征包括:支持卷积层、非线性整流激化层、批标准化层、最大池化层和全连接层;可配置的训练权重位宽(16-bit,1-bit);动态支持16-bit和8-bit激活位宽;可配置存储单元数量,用于资源和性能之间的权衡;可配置的卷积层执行单元(CONV EU)221的数量,用于资源和性能之间的权衡;优化3×3二维(2D)卷积运算;动态支持1~72taps(轻点)的各种一维(1D)卷积;支持重叠最大池化。
请参考图5,作为另一种示例,当卷积层执行单元(CONV EU)221和池化层执行单元(Pooling EU)223的数量配置为多个时,可以通过CNN引擎器22所接收的控制信号,控制相邻执行单元之间的连接和断开,来构建多级执行结构CONV→Pooling,每级执行结构CONV→Pooling中,卷积层执行单元(CONV EU)221和池化层执行单元(Pooling EU)223相互连接,所述卷积层执行单元(CONV EU)221用于对输入数据进行卷积处理,池化层执行单元(Pooling EU)223用于对卷积层执行单元(CONV EU)221输出的数据进行最大池化处理或者均值池化处理,全连接层执行单元222用于将最后一级所述池化层执行单元(Pooling EU)223输出的数据进行全连接处理。
当CNN引擎器22的网络结构中包含多级执行结构CONV→NORM→ReLU→Pooling或CONV→Pooling时,利用控制信号控制卷积层执行单元(CONV EU)221、批标准化执行单元(NORM EU)、线性整流激化层执行单元(ReLU EU)、池化层执行单元(Pooling EU)223之间的连接关系,CNN引擎器22对输入数据处理完后,输出的数据写入到CNN存储器23中相应的存储单元,这样节省了单独一个执行单元每次向CNN存储器23读写的时间,也节省了FPGA内核中存储资源。
此外,需要说明的是,该CNN引擎器22可以使用户自定义网络或使用其他人发布的常用网络。CNN引擎器22提供了调整执行单元的数量(即加速引擎数量)的灵活性,通过调整执行单元数量及其连接的存储单元,用户可以使用FPGA内核12的容量来交换操作速度,从而获得更适合其应用的匹配。例如CNN引擎器22的网络结构由1~1000个层构成。
CNN存储器23设置于FPGA内核12中并连接所述CNN引擎器22,用于存储所述CNN引擎器22推断运算过程中的数据。可选地,CNN存储器23使用FPGA内核12的多个BSRAM块状存储单元实现,实现对CNN引擎器22所接收的输入数据、控制信号、命令信号、CNN引擎器22的各个执行单元的缓存数据以及CNN引擎器22的各种输出数据的存储与传输。
其中,CNN存储器23包含的BSRAM块状存储单元数量根据与之连接的CNN引擎器22中的执行单元的数量来配置。此时,CNN引擎器22内部的每个执行单元及其与之相连的BSRAM块状存储单元数量都是可配置的,可以对CNN引擎器22的每个执行单元只配置一个且其连接的BSRAM块状存储单元也只配置一个,以串行地完成CNN加速器的运算,节省了FPGA内核12的存储资源。在了FPGA内核12的存储资源以及并行数据处理电路资源充足的情况下,也可以配置多个执行单元(尤其是卷积层执行单元CONV EU 21),以充分利用FPGA内核12的并行运算能力来提高CNN加速器的运算效率。
可选地,请参考图2,所述CNN加速器还包括设置在所述MCU内核11中的标签添加器24,所述标签添加器24用于为所述CNN引擎器22的输入数据和/或输出数据添加标签,并将添加标签后的数据作为所述训练数据,再次传送到所述CNN训练器21中进行卷积神经网络训练,以更新所述CNN训练器21输出的训练权重值,进而优化卷积神经网络,进一步降低推断错误率。
基于同一发明构思,本发明一实施例还提供一种电子设备,具有上述任意实施例所述的CNN加速器。该电子设备可以是图像识别设备、物体识别设备、行为认知设备、姿态估计设备等,还可以是机器人等人工智能设备。
综上所述,本发明的CNN加速器及电子设备,基于MCU与FPGA SoC架构设计,以MCU内核为核心,并基于FPGA可编程的特点,实现CNN卷积神经网络的训练阶段和推断阶段,具体地,基于MCU内核的数据运算处理能力实现CNN加速器的CNN训练器,实现卷积神经网络的训练过程,基于FPGA内核的并行处理能力,实现CNN加速器的CNN引擎器,实现卷积神经网络的推断运算。CNN训练器获得的训练权重值通过MCU内核与FPGA内核之间的系统总线直接传输到CNN引擎器,可以随时优化CNN引擎器中各层级间的权重分布,降低推断错误率。使用FPGA内核的存储资源作为CNN存储器,节省了CNN引擎器内各执行单元与CNN存储器之间的读写时间,在一定的存储容量下保证了数据的读写速率,从而加快了CNN加速器整体的运算效率。
此外,需要说明的是,除非特别说明或者指出,否则说明书中的术语“第一”、“第二”等描述仅仅用于区分说明书中的各个组件、元素、步骤等,而不是用于表示各个组件、元素、步骤之间的逻辑关系或者顺序关系等。
可以理解的是,虽然本发明已以较佳实施例披露如上,然而上述实施例并非用以限定本发明。对于任何熟悉本领域的技术人员而言,在不脱离本发明技术方案范围情况下,都可利用上述揭示的技术内容对本发明技术方案作出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。
而且还应该理解的是,本发明并不限于此处描述的特定的方法、材料、制造技术、用法和应用,它们可以变化。还应该理解的是,此处描述的术语仅仅用来描述特定实施例,而不是用来限制本发明的范围。必须注意的是,此处的以及所附权利要求中使用的单数形式“一个”、“一种”以及“该”包括复数基准,除非上下文明确表示相反意思。因此,例如,对“一个步骤”或“一个装置”的引述意味着对一个或多个步骤或装置的引述,并且可能包括次级步骤以及次级装置。应该以最广义的含义来理解使用的所有连词。因此,词语“或”应该被理解为具有逻辑“或”的定义,而不是逻辑“异或”的定义,除非上下文明确表示相反意思。此处描述的结构将被理解为还引述该结构的功能等效物。可被解释为近似的语言应该被那样理解,除非上下文明确表示相反意思。

Claims (10)

1.一种CNN加速器,其特征在于,包括:
CNN训练器,设置于MCU内核中,用于接收训练数据,并对所述训练数据进行卷积神经网络训练,以获得训练权重值;
CNN引擎器,设置于FPGA内核中并连接所述CNN训练器,用于接收输入数据,并根据所述训练权重值,对自身网络的权重分布进行设置,以对所述输入数据进行推断运算;
CNN存储器,设置于FPGA内核中并连接所述CNN引擎器,用于存储所述CNN引擎器推断运算过程中的数据。
2.如权利要求1所述的CNN加速器,其特征在于,所述MCU内核和所述FPGA内核集成在同一片上系统中,所述CNN训练器训练过程获得的训练权重值,通过所述MCU内核和FPGA内核之间的系统总线直接传输到所述CNN引擎器。
3.如权利要求1所述的CNN加速器,其特征在于,所述CNN训练器主要由所述MCU内核的数据处理电路组成,所述CNN引擎器主要由所述FPGA内核的并行数据处理电路组成。
4.如权利要求1所述的CNN加速器,其特征在于,所述CNN训练器所接收的训练数据包括数据集和单个加标签的数据。
5.如权利要求1或4所述的CNN加速器,其特征在于,所述CNN加速器还包括设置在所述MCU内核中的标签添加器,所述标签添加器用于为所述CNN引擎器的输入数据和/或输出数据添加标签,并将添加标签后的数据作为所述训练数据,再次传送到所述CNN训练器中进行卷积神经网络训练,以更新所述CNN训练器输出的训练权重值。
6.如权利要求1所述的CNN加速器,其特征在于,所述CNN引擎器包括卷积层执行单元、池化层执行单元和全连接层执行单元,所述卷积层执行单元用于对相应的数据进行卷积处理,池化层执行单元用于对相应的数据进行最大池化处理,全连接层执行单元用于将相应的数据进行全连接处理。
7.如权利要求6所述的CNN加速器,其特征在于,所述CNN引擎器还包括批标准化执行单元和线性整流激化层执行单元,所述批标准化执行单元用于对相应的数据进行批标准化处理,所述线性整流激化层执行单元用于对所述批标准化执行单元输出的数据做非线性映射。
8.如权利要求7所述的CNN加速器,其特征在于,所述CNN存储器主要由所述FPGA内核的BSRAM块状存储单元组成;所述CNN引擎器中,每种执行单元及与之相连的BSRAM块状存储单元的数量均是根据CNN引擎器中的网络结构配置的。
9.如权利要求8所述的CNN加速器,其特征在于,所述CNN引擎器中,每种执行单元的数量只配置一个,所述CNN存储器中,每种执行单元连接的BSRAM块状存储单元的数量只配置一个;
或者,所述卷积层执行单元、所述批标准化执行单元、所述线性整流激化层执行单元和所述池化层执行单元的数量配置为多个,以形成多级执行结构,每级执行结构中,所述卷积层执行单元、所述批标准化执行单元、所述线性整流激化层执行单元和池化层执行单元依次连接;
或者,所述卷积层执行单元和所述池化层执行单元的数量配置为多个,以形成多级执行结构,每级执行结构中,卷积层执行单元的输出端连接相应的池化层执行单元的输入。
10.一种电子设备,其特征在于,具有权利要求1至9中任一项所述的CNN加速器。
CN202010980637.7A 2020-09-17 2020-09-17 Cnn加速器和电子设备 Active CN112101537B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010980637.7A CN112101537B (zh) 2020-09-17 2020-09-17 Cnn加速器和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010980637.7A CN112101537B (zh) 2020-09-17 2020-09-17 Cnn加速器和电子设备

Publications (2)

Publication Number Publication Date
CN112101537A true CN112101537A (zh) 2020-12-18
CN112101537B CN112101537B (zh) 2021-08-03

Family

ID=73759984

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010980637.7A Active CN112101537B (zh) 2020-09-17 2020-09-17 Cnn加速器和电子设备

Country Status (1)

Country Link
CN (1) CN112101537B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116090520A (zh) * 2023-01-18 2023-05-09 广东高云半导体科技股份有限公司 一种数据处理系统及方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102789718A (zh) * 2011-05-20 2012-11-21 柳州桂通科技有限公司 任意车辆桩考过程自动监考评分装置及实现方法
US20170294912A1 (en) * 2015-07-22 2017-10-12 Nuvoton Technology Corporation Communication device, communication system and operation method thereof
CN108090565A (zh) * 2018-01-16 2018-05-29 电子科技大学 一种卷积神经网络并行化训练加速方法
CN108389183A (zh) * 2018-01-24 2018-08-10 上海交通大学 肺部结节检测神经网络加速器及其控制方法
CN109781947A (zh) * 2019-02-27 2019-05-21 华中科技大学 一种基于量子点的电子鼻芯片及其设计方法
CN109917719A (zh) * 2019-04-04 2019-06-21 青岛大学 基于rbf神经网络的预防近视动态坐姿矫正系统
CN110084363A (zh) * 2019-05-15 2019-08-02 电科瑞达(成都)科技有限公司 一种基于fpga平台的深度学习模型加速方法
CN110780923A (zh) * 2019-10-31 2020-02-11 合肥工业大学 应用于二值化卷积神经网络的硬件加速器及其数据处理方法
CN111507336A (zh) * 2020-03-18 2020-08-07 杭州电子科技大学 基于risc-v的卷积神经网络的文字识别方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102789718A (zh) * 2011-05-20 2012-11-21 柳州桂通科技有限公司 任意车辆桩考过程自动监考评分装置及实现方法
US20170294912A1 (en) * 2015-07-22 2017-10-12 Nuvoton Technology Corporation Communication device, communication system and operation method thereof
CN108090565A (zh) * 2018-01-16 2018-05-29 电子科技大学 一种卷积神经网络并行化训练加速方法
CN108389183A (zh) * 2018-01-24 2018-08-10 上海交通大学 肺部结节检测神经网络加速器及其控制方法
CN109781947A (zh) * 2019-02-27 2019-05-21 华中科技大学 一种基于量子点的电子鼻芯片及其设计方法
CN109917719A (zh) * 2019-04-04 2019-06-21 青岛大学 基于rbf神经网络的预防近视动态坐姿矫正系统
CN110084363A (zh) * 2019-05-15 2019-08-02 电科瑞达(成都)科技有限公司 一种基于fpga平台的深度学习模型加速方法
CN110780923A (zh) * 2019-10-31 2020-02-11 合肥工业大学 应用于二值化卷积神经网络的硬件加速器及其数据处理方法
CN111507336A (zh) * 2020-03-18 2020-08-07 杭州电子科技大学 基于risc-v的卷积神经网络的文字识别方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116090520A (zh) * 2023-01-18 2023-05-09 广东高云半导体科技股份有限公司 一种数据处理系统及方法

Also Published As

Publication number Publication date
CN112101537B (zh) 2021-08-03

Similar Documents

Publication Publication Date Title
KR102434729B1 (ko) 처리방법 및 장치
US20210357736A1 (en) Deep neural network hardware accelerator based on power exponential quantization
US10936941B2 (en) Efficient data access control device for neural network hardware acceleration system
CN107689948B (zh) 应用于神经网络硬件加速系统的高效数据访存管理装置
CN108665063B (zh) 用于bnn硬件加速器的双向并行处理卷积加速系统
CN107169563A (zh) 应用于二值权重卷积网络的处理系统及方法
CN110321997B (zh) 高并行度计算平台、系统及计算实现方法
CN107256424B (zh) 三值权重卷积网络处理系统及方法
CN110991630A (zh) 一种面向边缘计算的卷积神经网络处理器
CN111105023A (zh) 数据流重构方法及可重构数据流处理器
US11789865B2 (en) Semiconductor device
CN110059797B (zh) 一种计算装置及相关产品
CN108520297A (zh) 可编程深度神经网络处理器
CN108491924B (zh) 一种面向人工智能计算的神经网络数据串行流水处理装置
Shahshahani et al. Memory optimization techniques for fpga based cnn implementations
CN112101537B (zh) Cnn加速器和电子设备
CN111831354A (zh) 数据精度配置方法、装置、芯片、芯片阵列、设备及介质
CN112766479B (zh) 一种基于fpga的支持通道分离卷积的神经网络加速器
CN117632844A (zh) 一种可重构ai算法硬件加速器
Zhan et al. Field programmable gate array‐based all‐layer accelerator with quantization neural networks for sustainable cyber‐physical systems
CN113392963B (zh) 基于fpga的cnn硬件加速系统设计方法
CN116339680A (zh) 一种实时的多端口并行读写近存处理器
US20210224632A1 (en) Methods, devices, chips, electronic apparatuses, and storage media for processing data
CN112036554B (zh) 神经网络模型的处理方法、装置、计算机设备和存储介质
Moon et al. Multipurpose Deep-Learning Accelerator for Arbitrary Quantization With Reduction of Storage, Logic, and Latency Waste

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