CN109685209B - 一种加快神经网络运算速度的装置和方法 - Google Patents

一种加快神经网络运算速度的装置和方法 Download PDF

Info

Publication number
CN109685209B
CN109685209B CN201811630134.6A CN201811630134A CN109685209B CN 109685209 B CN109685209 B CN 109685209B CN 201811630134 A CN201811630134 A CN 201811630134A CN 109685209 B CN109685209 B CN 109685209B
Authority
CN
China
Prior art keywords
module
configuration
neural network
layer
memory
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
CN201811630134.6A
Other languages
English (en)
Other versions
CN109685209A (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.)
Rockchip Electronics Co Ltd
Original Assignee
Rockchip Electronics Co Ltd
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 Rockchip Electronics Co Ltd filed Critical Rockchip Electronics Co Ltd
Priority to CN201811630134.6A priority Critical patent/CN109685209B/zh
Publication of CN109685209A publication Critical patent/CN109685209A/zh
Application granted granted Critical
Publication of CN109685209B publication Critical patent/CN109685209B/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Multi Processors (AREA)
  • Advance Control (AREA)

Abstract

本发明公开一种加快神经网络运算速度的装置和方法,所述装置包括存储器、取数控制模块、卷积乘加运算模块、激活运算模块、池化运算模块和写数控制模块,还包括两个通路选择模块,一个通路选择模块与第一模块连接,另一个通路选择模块与第二模块连接,第一模块和第二模块为取数控制模块、卷积乘加运算模块、激活运算模块、池化运算模块和写数控制模块中任意的两个模块,每个通路选择模块都连接有两个配置寄存器。区别于现有技术,上述技术方案通过在神经网络模块内设置独立双寄存器配置结构,当神经网络单个子模块完成自身的运算后,自动切换为下一层的网络配置进行工作,从而实现了网络层运算的完全流水工作,提升了神经网络的工作效率。

Description

一种加快神经网络运算速度的装置和方法
技术领域
本发明涉及神经网络模块架构设计技术领域,尤其涉及一种加快神经网络运算速度的装置和方法。
背景技术
当前的神经网络运算电路都是按照网络层进行运算,基本的流程就是先进行网络层参数配置,然后开始取数和运算直到该层运算结束后,发出中断给处理器,然后处理器再配置下一层的参数,再开始工作。这样有一个问题就是神经网络运算电路的各个子模块都是串行工作,在每一层网络的运算过程中总会出现不同程度的空闲,这样大幅降低了神经网络运算电路的运行效率。
发明内容
为此,需要提供一种加快神经网络运算速度的装置和方法,解决现有神经网络运算电路的运行效率低下的问题。
为实现上述目的,发明人提供了一种加快神经网络运算速度的装置,包括存储器、取数控制模块、卷积乘加运算模块、激活运算模块、池化运算模块和写数控制模块,还包括两个通路选择模块,一个通路选择模块与第一模块连接,另一个通路选择模块与第二模块连接,第一模块和第二模块为取数控制模块、卷积乘加运算模块、激活运算模块、池化运算模块和写数控制模块中任意的两个模块,每个通路选择模块都连接有两个配置寄存器;
配置寄存器用于存储神经网络配置信息;
通路选择模块用于获取与之连接的模块工作完成的信号后,从当前选择的配置寄存器切换到另一个配置寄存器;
存储器用于存储神经网络每层所需的特征数据和卷积核数据;
取数控制模块用于根据配置寄存器信息对存储器进行数据读取操作,并把读取数据送往卷积乘加模块;
卷积乘加运算模块用于进行神经网络的卷积运算,并将运算结果送往激活运算模块;
激活运算模块用于进行神经网络的激活函数运算,并将运算结果送往池化运算模块;
池化运算模块用于进行神经网络的池化运算,并将池化运算结果送往写数控制模块;
写数控制模块用于将池化运算结果回写到存储器。
进一步地,还包括处理器,所述处理器用于获取第一模块或者第二模块的完成信号,将下一层的神经网络配置信息写入通路选择模块当前选择的配置寄存器。
进一步地,还包括配置存储器和配置读取模块,配置存储器用于存储神经网络每一层的神经网络配置信息,配置读取模块用于获取第一模块或者第二模块的完成信号,从配置寄存器上获取下一层的神经网络配置信息并写入通路选择模块当前选择的配置寄存器。
进一步地,所述配置存储器还存储有神经网络各层配置信息地址索引表格。
进一步地,还包括网络解析分层处理模块、配置产生模块和配置写入模块;
网络解析分层处理模块用于将工程文件解析分解为一层层独立的网络结构;
配置产生模块用于将单层的神经网络按照神经网络的结构产生对应的配置信息;
配置写入模块用于将每一层网络的配置信息写入配置存储器中。
本发明提供一种加快神经网络运算速度的方法,用于加快神经网络运算速度的装置中,包括存储器、取数控制模块、卷积乘加运算模块、激活运算模块、池化运算模块和写数控制模块,还包括两个通路选择模块,一个通路选择模块与第一模块连接,另一个通路选择模块与第二模块连接,第一模块和第二模块为取数控制模块、卷积乘加运算模块、激活运算模块、池化运算模块和写数控制模块中任意的两个模块,每个通路选择模块都连接有两个配置寄存器,配置寄存器用于存储神经网络配置信息,存储器存储神经网络每层所需的特征数据和卷积核数据;
本方法包括如下步骤:
取数控制模块根据配置寄存器信息对存储器进行数据读取操作,并把读取数据送往卷积乘加模块;
卷积乘加运算模块进行神经网络的卷积运算,并将运算结果送往激活运算模块;
激活运算模块进行神经网络的激活函数运算,并将运算结果送往池化运算模块;
池化运算模块进行神经网络的池化运算,并将池化运算结果送往写数控制模块;
写数控制模块将池化运算结果回写到存储器;
通路选择模块获取与之连接的模块工作完成的信号后,从当前选择的配置寄存器切换到另一个配置寄存器。
进一步地,所述装置还包括处理器,本方法还包括步骤:
所述处理器获取第一模块或者第二模块的完成信号,将下一层的神经网络配置信息写入通路选择模块当前选择的配置寄存器。
进一步地,所述装置还包括配置存储器和配置读取模块,配置存储器用于存储神经网络每一层的神经网络配置信息;所述方法还包括步骤:
配置读取模块获取第一模块或者第二模块的完成信号,从配置寄存器上获取下一层的神经网络配置信息并写入通路选择模块当前选择的配置寄存器。
进一步地,所述配置存储器还存储有神经网络各层配置信息地址索引表格,所述配置读取模块从配置寄存器获取下一层的神经网络配置信息包括步骤:
所述配置读取模块从配置寄存器根据索引表格获取下一层的神经网络配置信息。
进一步地,所述装置还包括网络解析分层处理模块、配置产生模块和配置写入模块;所述方法包括步骤:
网络解析分层处理模块将工程文件解析分解为一层层独立的网络结构;
配置产生模块将单层的神经网络按照神经网络的结构产生对应的配置信息;
配置写入模块将每一层网络的配置信息写入配置存储器中。
区别于现有技术,上述技术方案通过在神经网络模块内设置独立双寄存器配置结构,该结构中各个模块的配置都是独立进行,在当前层运行的过程中就可以配置下一层网络的参数,当神经网络单个子模块完成自身的运算后,自动切换为下一层的网络配置进行工作,从而实现了网络层运算的完全流水工作,提升了神经网络的工作效率。
附图说明
图1为一具体实施方式所述的装置结构示意图;
图2为另一具体实施方式所述的装置结构示意图;
图3为本发明改进前后的时间消耗对比图;
图4为本发明一实施例的方法流程图。
附图标记说明:
101、存储器;
102、取数控制模块;
103、卷积乘加运算模块;
104、激活运算模块;
105、池化运算模块;
106、写数控制模块;
107、通路选择模块;
200、配置存储器;
201、配置读取模块;
202、网络解析分层处理模块;
203、配置产生模块;
204、配置写入模块。
具体实施方式
为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。
请参阅图1到图4,本实施例提供一种加快神经网络运算速度的装置,在某些实施例中,本发明的装置可以是以芯片的形式实现。本发明装置包括存储器101、取数控制模块102、卷积乘加运算模块103、激活运算模块104、池化运算模块105和写数控制模块106,还包括两个通路选择模块107,一个通路选择模块与第一模块连接,另一个通路选择模块与第二模块连接,第一模块和第二模块为取数控制模块、卷积乘加运算模块、激活运算模块、池化运算模块和写数控制模块中任意的两个模块,每个通路选择模块都连接有两个配置寄存器,如图1中的配置寄存器A和B。其中:配置寄存器用于存储神经网络配置信息;存储器用于存储神经网络每层所需的特征数据和卷积核数据;取数控制模块用于根据配置寄存器信息对存储器进行数据读取操作,并把读取数据送往卷积乘加模块;卷积乘加运算模块用于进行神经网络的卷积运算,并将运算结果送往激活运算模块;激活运算模块用于进行神经网络的激活函数运算,并将运算结果送往池化运算模块;池化运算模块用于进行神经网络的池化运算,并将池化运算结果送往写数控制模块;写数控制模块用于将池化运算结果回写到存储器。通路选择模块用于获取与之连接的模块工作完成的信号后,从当前选择的配置寄存器切换到另一个配置寄存器。
本发明中,通路选择模块的数量应当至少为两个,每个通路选择模块都单独与神经网络模块中的一个模块连接,神经网络模块包含有取数控制模块、卷积乘加运算模块、激活运算模块、池化运算模块和写数控制模块。在某一个实施例中,第一模块可以为取数控制模块,第二模块可以为卷积乘加运算模块。或者第一模块可以为池化运算模块,第二模块可以为写数控制模块,当然这样只能实现部分的提速,在优选的实施例中,神经网络模块中的每一个模块都连接有一个通路选择模块,而每一个通路选择模块都单独连接有两个配置寄存器,如图1所示,这样可以实现最优的加速效果。
在本发明的装置开始工作前,存储器用于存储神经网络每层所需的特征数据和卷积核数据,处理器先将两层神经网络的配置分别配置到每个模块的配置寄存器A和配置寄存器B,然后装置可以开始工作,工作时首先使用配置寄存器A中的配置进行第一层网络的工作。当与通路选择模块连接的每一个模块(称为本模块)完成当前层的工作后,将本层的工作完成的信号送往与本模块连接的通路选择模块,然后本模块的通路选择模块立刻将该模块的配置寄存器改为配置寄存器B,即为切换到另一个配置寄存器,也就是下一个网络层的配置,而后该模块可以立刻进入下一层的工作处理,每个模块都遵照上面所述的顺序进行工作,不依赖于前后模块的工作状态,可以实现流水作业。这样就完成了配置寄存器的自动切换,神经网络也可以马上实现下一层的工作处理,提高了运算的速度。
为了实现更多层神经网络的运算,从而实现流水化作业。本装置还可以通过处理器更新配置寄存器的数据。则所述处理器用于获取第一模块或者第二模块的完成信号,将下一层的神经网络配置信息写入通路选择模块当前选择的配置寄存器。
具体地,本发明的装置具有处理器后,在开始工作前,存储器用于存储神经网络每层所需的特征数据和卷积核数据,处理器先将两层神经网络的配置分别配置到每个模块的配置寄存器A和配置寄存器B,然后装置可以开始工作,工作时首先使用配置寄存器A中的配置进行第一层网络的工作。当与通路选择模块连接的每一个模块完成当前层的工作后,将本层的工作完成的信号送往与本模块连接的通路选择模块和处理器,然后本模块的寄存器通路选择模块立刻将该模块当前连接的配置寄存器(配置寄存器A)改为另一个寄存器(配置寄存器B),另一个寄存器存储的是下一个网络层的配置。而后该模块可以立刻进入下一层的工作处理。以及,处理器在收到该模块的本层工作完成信号后,对当前连接(这里的“当前连接”是为了与上述表述一致,从而表明都是配置寄存器A)的配置寄存器A中的配置进行配置更新,即对切换连接前连接的配置寄存器进行配置更新。更新为下一层(第三层)神经网络的配置。
这样当模块完成第二层网络的运算工作后,同样的将本层工作完成信号送往本模块的寄存器通路选择模块和处理器,然后本模块的寄存器通路选择模块立刻将该模块的当前连接的配置寄存器(配置寄存器B)改为另一个配置寄存器(配置寄存器A),配置寄存器A存储的是第三层网络的配置,该模块可以立刻进入第三层的工作处理。同时,处理器在收到该模块的本层工作完成信号后,对配置寄存器B中的配置进行配置更新,更新为第四层网络的配置。这样在每个模块运算完成后,处理器都对运算完成的配置寄存器进行更新,从而每个模块可以实现下一次的自动运算。本装置的每个模块都遵照上面所述的顺序进行工作,不依赖于前后模块的工作状态,可以实现完全流水作业,提高了运算速度和效率。具体的时间对比如图3所示,图3是当前技术中的各个模块工作时间分布和本发明装置的对比示意图。可以看出,改进前每层神经网络都是计算完成后再进行下一层,而本发明可以实现对模块的流水线作业,在相同的时间内,可以完成神经网络更多层数的运算,从而提高神经网络运算速度。
上述实施例通过处理器可以实现全自动话的流水线作业,这样会占用处理器的处理资源。则在某些实施例中,可以通过单独的配置模块实现对配置寄存器的配置。则如图2所示,本装置还包括配置存储器200和配置读取模块201,配置存储器用于存储神经网络每一层的神经网络的每个模块的配置信息,配置读取模块用于获取第一模块或者第二模块的完成信号,从配置寄存器上获取下一层的神经网络配置信息并写入通路选择模块当前选择的配置寄存器。配置读取模块可以单独完成配置寄存器配置信息的更新,从而避免对处理器资源的占用,这样只要将配置信息存储到配置存储器,本发明的装置就可以实现自动化的流水线作业,而无需处理器的干预。
为了提高配置读取模块从配置存储器读取配置信息的效率,所述配置存储器还存储有神经网络各层配置信息地址索引表格。这样配置读取模块在需要某个模块的某一层神经网络数据,就可以到索引表格查找出对应的地址,而后根据地址找到对应的配置信息,并写入到对应的配置寄存器中。
为了实现自动的配置信息的生成,本发明还包括网络解析分层处理模块202、配置产生模块203和配置写入模块204;其中网络解析分层处理模块用于将工程文件解析分解为一层层独立的网络结构;配置产生模块用于将单层的神经网络按照神经网络的结构产生对应的配置信息,如特征数据的宽高和通道数,卷积核个数,激活算法类型,池化运算的尺寸信息配置等。配置写入模块用于将每一层网络的配置信息写入配置存储器中,写入后应当同时记录配置信息与每一层网络的对应关系,方便配置读取模块的读取。其中,深度学习的工程文件就是指tensorflow或者caffe等高级抽象模块设计的深度学习网络结构工程文件。其中,tensorflow是一个基于数据流编程的符号数学系统,被广泛应用于各类机器学习算法的编程实现;caffe全称Convolutional Architecture for Fast FeatureEmbedding,是一种常用的深度学习框架,主要应用在视频、图像处理方面的应用上。这样通过网络解析分层处理模块202、配置产生模块203和配置写入模块204,可以实现配置信息的生成和写入到配置存储器,而后在进行神经网络的运算时,配置读取模块就可以自动从配置存储器获取配置信息并更新,神经网络的各个模块就可以实现自动化的流水线作业,无需处理器干预,避免对处理器资源的消耗。
上述配置自动生成的实施例还可以是生成上述另一实施例中的神经网络各层配置信息地址索引表格。配置写入模块在将每一层网络的配置信息写入配置存储器时,每一层的网络配置按照每个模块的配置信息进行存放。每存放完一层的配置后,需要在各层网络配置信息地址索引表格中写入该层网络中每个模块配置信息的地址,以方便后续配置读取模块进行自动读取。在该实施例中,本装置开始工作后,配置读取模块首先到索引表格中读取第一层网络中每个模块的配置信息,比如配置读取模块会去查询卷积乘加模块第一层的配置信息存放地址,然后到该地址去读取卷积乘加模块第一层的配置信息,写入卷积乘加模块的第一个配置寄存器A中。
在第一层神经网络运算的过程中,配置读取模块又会到索引表格中读取第二层网络中每个模块的配置信息,而后将配置信息写入到对应每个模块的另一个配置寄存器B中。这样当每个模块的第一层运算任务完成后,直接切换连接到配置寄存器B,加载配置寄存器B中的第二层配置信息开始工作,然后配置读取模块又开始查询和读取第三层神经网络的配置信息写入寄存器A,如此循环完成整个神经网络的加速运算。
本发明提供一种加快神经网络运算速度的方法,如图4所示,用于加快神经网络运算速度的装置中,包括存储器、取数控制模块、卷积乘加运算模块、激活运算模块、池化运算模块和写数控制模块,还包括两个通路选择模块,一个通路选择模块与第一模块连接,另一个通路选择模块与第二模块连接,第一模块和第二模块为取数控制模块、卷积乘加运算模块、激活运算模块、池化运算模块和写数控制模块中任意的两个模块,每个通路选择模块都连接有两个配置寄存器,配置寄存器用于存储神经网络配置信息,存储器存储神经网络每层所需的特征数据和卷积核数据;本方法包括如下步骤:
步骤S401读取数控制模块根据配置寄存器信息对存储器进行数据读取操作,并把读取数据送往卷积乘加模块;步骤S402卷积乘加运算模块进行神经网络的卷积运算,并将运算结果送往激活运算模块;步骤S403激活运算模块进行神经网络的激活函数运算,并将运算结果送往池化运算模块;步骤S404池化运算模块进行神经网络的池化运算,并将池化运算结果送往写数控制模块;步骤S405写数控制模块将池化运算结果回写到存储器;步骤S406通路选择模块获取与之连接的模块工作完成的信号后,从当前选择的配置寄存器切换到另一个配置寄存器。本方法可以实现神经网络模块的配置寄存器的自动切换,神经网络也可以马上实现下一层的工作处理,提高了运算的速度。
为了实现更多层神经网络的运算,从而实现流水化作业。进一步地,所述装置还包括处理器,本方法还包括步骤:所述处理器获取第一模块或者第二模块的完成信号,将下一层的神经网络配置信息写入通路选择模块当前选择的配置寄存器。
在某些实施例中,上述的处理器还可以通过一个单独的模块实现,这样避免对处理器资源的占用,则所述装置还包括配置存储器和配置读取模块,配置存储器用于存储神经网络每一层的神经网络配置信息;所述方法还包括步骤:步骤S407配置读取模块获取第一模块或者第二模块的完成信号,从配置寄存器上获取下一层的神经网络配置信息并写入通路选择模块当前选择的配置寄存器。
进一步地,所述配置存储器还存储有神经网络各层配置信息地址索引表格,所述配置读取模块从配置寄存器获取下一层的神经网络配置信息包括步骤:所述配置读取模块从配置寄存器根据索引表格获取下一层的神经网络配置信息。这样可以方便地实现配置信息的读取和写入,提高效率。
为了实现自动的配置信息的生成和全自动化的流水线作业,进一步地,所述装置还包括网络解析分层处理模块、配置产生模块和配置写入模块;所述方法包括步骤:网络解析分层处理模块将工程文件解析分解为一层层独立的网络结构;配置产生模块将单层的神经网络按照神经网络的结构产生对应的配置信息;配置写入模块将每一层网络的配置信息写入配置存储器中。这样无需处理器参与,避免对处理器资源的占用。
需要说明的是,尽管在本文中已经对上述各实施例进行了描述,但并非因此限制本发明的专利保护范围。因此,基于本发明的创新理念,对本文所述实施例进行的变更和修改,或利用本发明说明书及附图内容所作的等效结构或等效流程变换,直接或间接地将以上技术方案运用在其他相关的技术领域,均包括在本发明的专利保护范围之内。

Claims (4)

1.一种加快神经网络运算速度的装置,其特征在于,包括存储器、取数控制模块、卷积乘加运算模块、激活运算模块、池化运算模块和写数控制模块,还包括两个通路选择模块,一个通路选择模块与第一模块连接,另一个通路选择模块与第二模块连接,第一模块和第二模块为取数控制模块、卷积乘加运算模块、激活运算模块、池化运算模块和写数控制模块中任意的两个模块,每个通路选择模块都连接有两个配置寄存器;
配置寄存器用于存储神经网络配置信息;
通路选择模块用于获取与之连接的模块工作完成的信号后,从当前选择的配置寄存器切换到另一个配置寄存器;
存储器用于存储神经网络每层所需的特征数据和卷积核数据;
取数控制模块用于根据配置寄存器信息对存储器进行数据读取操作,并把读取数据送往卷积乘加模块;
卷积乘加运算模块用于进行神经网络的卷积运算,并将运算结果送往激活运算模块;
激活运算模块用于进行神经网络的激活函数运算,并将运算结果送往池化运算模块;
池化运算模块用于进行神经网络的池化运算,并将池化运算结果送往写数控制模块;
写数控制模块用于将池化运算结果回写到存储器;还包括处理器,所述处理器用于获取第一模块或者第二模块的完成信号,将下一层的神经网络配置信息写入通路选择模块当前选择的配置寄存器;还包括配置存储器和配置读取模块,配置存储器用于存储神经网络每一层的神经网络配置信息,配置读取模块用于获取第一模块或者第二模块的完成信号,从配置寄存器上获取下一层的神经网络配置信息并写入通路选择模块当前选择的配置寄存器;
还包括网络解析分层处理模块、配置产生模块和配置写入模块;
网络解析分层处理模块用于将工程文件解析分解为一层层独立的网络结构;
配置产生模块用于将单层的神经网络按照神经网络的结构产生对应的配置信息;
配置写入模块用于将每一层网络的配置信息写入配置存储器中。
2.根据权利要求1所述的一种加快神经网络运算速度的装置,其特征在于:所述配置存储器还存储有神经网络各层配置信息地址索引表格。
3.一种加快神经网络运算速度的方法,其特征在于,用于加快神经网络运算速度的装置中,包括存储器、取数控制模块、卷积乘加运算模块、激活运算模块、池化运算模块和写数控制模块,还包括两个通路选择模块,一个通路选择模块与第一模块连接,另一个通路选择模块与第二模块连接,第一模块和第二模块为取数控制模块、卷积乘加运算模块、激活运算模块、池化运算模块和写数控制模块中任意的两个模块,每个通路选择模块都连接有两个配置寄存器,配置寄存器用于存储神经网络配置信息,存储器存储神经网络每层所需的特征数据和卷积核数据;
本方法包括如下步骤:
取数控制模块根据配置寄存器信息对存储器进行数据读取操作,并把读取数据送往卷积乘加模块;
卷积乘加运算模块进行神经网络的卷积运算,并将运算结果送往激活运算模块;
激活运算模块进行神经网络的激活函数运算,并将运算结果送往池化运算模块;
池化运算模块进行神经网络的池化运算,并将池化运算结果送往写数控制模块;
写数控制模块将池化运算结果回写到存储器;
通路选择模块获取与之连接的模块工作完成的信号后,从当前选择的配置寄存器切换到另一个配置寄存器;所述装置还包括处理器,本方法还包括步骤:
所述处理器获取第一模块或者第二模块的完成信号,将下一层的神经网络配置信息写入通路选择模块当前选择的配置寄存器;所述装置还包括配置存储器和配置读取模块,配置存储器用于存储神经网络每一层的神经网络配置信息;所述方法还包括步骤:
配置读取模块获取第一模块或者第二模块的完成信号,从配置寄存器上获取下一层的神经网络配置信息并写入通路选择模块当前选择的配置寄存器;
所述装置还包括网络解析分层处理模块、配置产生模块和配置写入模块;所述方法包括步骤:
网络解析分层处理模块将工程文件解析分解为一层层独立的网络结构;
配置产生模块将单层的神经网络按照神经网络的结构产生对应的配置信息;
配置写入模块将每一层网络的配置信息写入配置存储器中。
4.根据权利要求3所述的一种加快神经网络运算速度的方法,其特征在于:所述配置存储器还存储有神经网络各层配置信息地址索引表格,所述配置读取模块从配置寄存器获取下一层的神经网络配置信息包括步骤:
所述配置读取模块从配置寄存器根据索引表格获取下一层的神经网络配置信息。
CN201811630134.6A 2018-12-29 2018-12-29 一种加快神经网络运算速度的装置和方法 Active CN109685209B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811630134.6A CN109685209B (zh) 2018-12-29 2018-12-29 一种加快神经网络运算速度的装置和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811630134.6A CN109685209B (zh) 2018-12-29 2018-12-29 一种加快神经网络运算速度的装置和方法

Publications (2)

Publication Number Publication Date
CN109685209A CN109685209A (zh) 2019-04-26
CN109685209B true CN109685209B (zh) 2020-11-06

Family

ID=66191043

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811630134.6A Active CN109685209B (zh) 2018-12-29 2018-12-29 一种加快神经网络运算速度的装置和方法

Country Status (1)

Country Link
CN (1) CN109685209B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111260050B (zh) * 2020-01-19 2023-03-07 中国电子科技集团公司信息科学研究院 一种用于控制卷积神经网络进行数据处理的方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102665049A (zh) * 2012-03-29 2012-09-12 中国科学院半导体研究所 基于可编程视觉芯片的视觉图像处理系统
CN105845001A (zh) * 2015-11-09 2016-08-10 天津大学 基于fpga的多电极阵列仿真实验平台
CN106875012A (zh) * 2017-02-09 2017-06-20 武汉魅瞳科技有限公司 一种基于fpga的深度卷积神经网络的流水化加速系统
CN108229670A (zh) * 2018-01-05 2018-06-29 中国科学技术大学苏州研究院 基于fpga的深度神经网络加速平台
CN109086867A (zh) * 2018-07-02 2018-12-25 武汉魅瞳科技有限公司 一种基于fpga的卷积神经网络加速系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10878314B2 (en) * 2017-03-09 2020-12-29 Alphaics Corporation System and method for training artificial intelligence systems using a SIMA based processor

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102665049A (zh) * 2012-03-29 2012-09-12 中国科学院半导体研究所 基于可编程视觉芯片的视觉图像处理系统
CN105845001A (zh) * 2015-11-09 2016-08-10 天津大学 基于fpga的多电极阵列仿真实验平台
CN106875012A (zh) * 2017-02-09 2017-06-20 武汉魅瞳科技有限公司 一种基于fpga的深度卷积神经网络的流水化加速系统
CN108229670A (zh) * 2018-01-05 2018-06-29 中国科学技术大学苏州研究院 基于fpga的深度神经网络加速平台
CN109086867A (zh) * 2018-07-02 2018-12-25 武汉魅瞳科技有限公司 一种基于fpga的卷积神经网络加速系统

Also Published As

Publication number Publication date
CN109685209A (zh) 2019-04-26

Similar Documents

Publication Publication Date Title
CN107657581B (zh) 一种卷积神经网络cnn硬件加速器及加速方法
US20200327079A1 (en) Data processing method and device, dma controller, and computer readable storage medium
CN108510064B (zh) 包括多个核心处理模块的人工神经网络的处理系统及方法
CN107329734B (zh) 一种用于执行卷积神经网络正向运算的装置和方法
US20220035544A1 (en) Memory allocation method and device, and electronic apparatus
US20210157594A1 (en) Data temporary storage apparatus, data temporary storage method and operation method
EP0169709A2 (en) Real time processor for video signals
CN111738433A (zh) 一种可重配置的卷积硬件加速器
CN115658146B (zh) 一种ai芯片、张量处理方法及电子设备
CN110780921A (zh) 数据处理方法和装置、存储介质及电子装置
CN107909537A (zh) 一种基于卷积神经网络的图像处理方法及移动终端
CN113592066A (zh) 硬件加速方法、装置、设备、计算机程序产品及存储介质
CN109685209B (zh) 一种加快神经网络运算速度的装置和方法
CN114115507B (zh) 存储器及写数据的方法
CN112396072A (zh) 基于asic与vgg16的图像分类加速方法及装置
US11704535B1 (en) Hardware architecture for a neural network accelerator
CN114239816B (zh) 一种卷积神经网络-图卷积神经网络可重构硬件加速架构
CN110060196A (zh) 图像处理方法及装置
CN105095149A (zh) 一种片上系统参数的批处理方法和装置
CN115374395A (zh) 一种通过算法控制单元进行调度计算的硬件结构
US10997087B2 (en) Direct memory access
CN106651743A (zh) 一种支持聚散功能的统一染色阵列lsu结构
CN102393814B (zh) 一种由软件方式生成动态可重构处理器配置信息的系统
CN112395008A (zh) 运算方法、装置、计算机设备和存储介质
CN113094118B (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 350003 building, No. 89, software Avenue, Gulou District, Fujian, Fuzhou 18, China

Applicant after: Ruixin Microelectronics Co., Ltd

Address before: 350003 building, No. 89, software Avenue, Gulou District, Fujian, Fuzhou 18, China

Applicant before: Fuzhou Rockchips Electronics Co.,Ltd.

GR01 Patent grant
GR01 Patent grant