CN111931926A - 一种用于卷积神经网络cnn的硬件加速系统及控制方法 - Google Patents

一种用于卷积神经网络cnn的硬件加速系统及控制方法 Download PDF

Info

Publication number
CN111931926A
CN111931926A CN202011081151.6A CN202011081151A CN111931926A CN 111931926 A CN111931926 A CN 111931926A CN 202011081151 A CN202011081151 A CN 202011081151A CN 111931926 A CN111931926 A CN 111931926A
Authority
CN
China
Prior art keywords
cnn
network
calculation
network model
control instruction
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.)
Pending
Application number
CN202011081151.6A
Other languages
English (en)
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.)
Nanjing Fengxing Technology Co ltd
Original Assignee
Nanjing Fengxing Technology 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 Nanjing Fengxing Technology Co ltd filed Critical Nanjing Fengxing Technology Co ltd
Priority to CN202011081151.6A priority Critical patent/CN111931926A/zh
Publication of CN111931926A publication Critical patent/CN111931926A/zh
Pending legal-status Critical Current

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)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Image Analysis (AREA)

Abstract

本发明示出一种用于卷积神经网络CNN的硬件加速系统及控制方法。硬件加速系统包括:CNN网络模型服务器和CNN硬件加速器。硬件加速系统的控制方法为:设计人员根据应用需求选择合适的网络模型,CNN网络模型服务器接收网络模型,预先生成控制指令和网络参数的文件,CNN硬件加速器预先存储控制指令和网络参数的文件。在实际应用场景中,CNN硬件加速器被部署在应用系统里,用以当应用系统运行时,接收特征数据,并基于上述控制指令对网络参数和特征数据进行CNN计算,最终将计算结果输出给应用系统的控制单元。本发明示出的硬件加速系统可以预先生成控制指令,解决了因软硬件实时交互消耗一定时间造成的加速器性能下降的问题。

Description

一种用于卷积神经网络CNN的硬件加速系统及控制方法
技术领域
本发明涉及硬件加速领域,具体涉及一种用于卷积神经网络CNN的硬件加速系统及控制方法。
背景技术
卷积神经网络(convolutional neural network,CNN)是人工智能的主流解决方案,通过CNN诸如图像分类、语音识别、知识问答、人机对弈、无人驾驶等人工智能技术实现了从“不能用或不好用”到“可以用”的技术突破。但是,目前的CNN网络模型都比较大,需要海量的计算来完成任务。因此我们在实际应用中通过部署CNN硬件加速器来提高数据处理能力。
现有技术中,CNN硬件加速器通常采用在中央处理器(central processing unit,CPU)或数字信号处理器(Advanced RISC Machine,ARM)等处理器上运行软件,和CNN硬件加速器实时交互实现控制的方法,协同完成CNN硬件加速处理。软件和CNN硬件加速器配合一起实现CNN硬件加速,这种方案虽然便于灵活部署,但是部署时要求必须有CPU或者ARM等处理器来运行软件,对基础硬件的需求较高。
然而,现有技术存在如下问题:由于软件介入,软硬件交互需要消耗一定时间,导致加速系统性能的下降。
发明内容
针对现有技术存在的上述技术问题,本发明目的在于提供一种用于卷积神经网络的硬件加速系统及控制方法,解决CNN硬件加速器在使用时因软硬件交互导致系统性能下降的问题。
本发明第一方面示出一种用于卷积神经网络CNN的硬件加速系统,包括CNN网络模型服务器和CNN硬件加速器,
CNN网络模型服务器被配置为:接收网络模型;以及,根据网络模型预先生成控制指令和网络参数文件,控制指令用于当应用系统运行时控制CNN硬件加速器完成CNN计算;
CNN硬件加速器被配置为:预先接收和存储CNN网络模型服务器输出的控制指令和网络参数文件;以及,当应用系统运行时,接收采集到的特征数据;以及,基于控制指令对网络参数文件和特征数据进行CNN计算,直到完成CNN计算,得到CNN计算结果。
设计人员根据应用需求选择合适的网络模型,CNN网络模型服务器接收网络模型,预先生成控制指令和网络参数的文件,CNN硬件加速器预先存储控制指令和网络参数的文件。在实际应用场景中,CNN硬件加速器被部署在应用系统里,用以当应用系统运行时,接收特征数据,并基于上述控制指令对网络参数和特征数据进行CNN计算,将CNN计算结果输出至应用系统。
进一步,CNN网络模型服务器包括:网络模型训练模块和CNN加速工具链模块,
网络模型训练模块被配置为:接收网络模型,基于网络模型得到训练后的网络参数;
CNN加速工具链模块被配置为:读取网络模型和网络参数,生成控制指令和网络参数文件。
设计人员根据应用需求选择合适的网络模型,上CNN网络模型服务器进行训练,当选定的网络模型符合需求,包括选定的网络模型满足精度要求和能够达到预想的效果,就得到对应的网络参数,将网络模型和网络参数输入CNN加速工具链模块,生成控制指令和网络参数文件。网络参数和网络参数文件的关系:网络参数是网络参数文件的内容,网络参数是由网络模型训练决定的,网络参数的组织格式与CNN加速器实现有关,网络参数文件相较网络参数只是格式上发生了改变。
进一步,CNN硬件加速器包括:控制单元、CNN加速单元及存储单元。
控制单元被配置为:
预处理步骤:将控制指令和网络参数加载到存储单元;
参数提供步骤:响应于应用系统运行的信号,将特征数据加载到存储单元;以及,输出控制指令、网络参数及特征数据;
CNN加速单元被配置为:
参数接收步骤:读取控制指令、网络参数及特征数据;
CNN计算步骤:基于控制指令对网络参数和特征数据进行卷积神经网络计算,得到所有数据计算完成的计算结果;以及,输出计算结果到存储单元,生成完成计算的计算终结信号;
控制单元还被配置为:
调取计算结果步骤:响应于计算终结信号,从存储单元内调取计算结果。
控制单元可以预先将控制指令和网络参数文件加载到存储单元,响应于应用系统运行的信号,将应用系统采集到的特征数据加载到存储单元,输出控制指令、网络参数及特征数据。CNN加速单元读取控制指令、网络参数及特征数据,基于控制指令对网络参数和特征数据进行CNN计算,得到所有数据计算完成的计算结果,输出计算结果到存储单元,生成完成计算的计算终结信号,控制单元响应于读取到计算终结信号,从存储单元内调取计算结果。当然,CNN硬件加速器可以预先将多套适用于不同应用系统的控制指令和网络参数文件加载到存储单元,响应于应用系统运行的信号,将应用系统采集到的特征数据加载到存储单元,输出适用于当前应用系统的控制指令、网络参数及特征数据。CNN加速单元读取控制指令、网络参数及特征数据,基于控制指令对网络参数和特征数据进行CNN计算,得到所有数据计算完成的计算结果,输出计算结果到存储单元,生成完成计算的计算终结信号,控制单元响应于读取到计算终结信号,从存储单元内调取计算结果。
进一步,控制单元被进一步配置为:在调取计算结果步骤,周期性读取计算终结信号;如果读取到计算终结信号,则控制单元从存储单元调取计算结果;否则,控制单元继续周期性读取计算终结信号。
当数据量较小时,控制单元实时读取计算终结信号,如果读取到计算终结信号,则控制单元从存储单元读取计算结果,否则,控制单元继续实时读取计算终结信号;但是,当数据量较大时,控制单元周期性读取计算终结信号,如果读取到计算终结信号,则控制单元从存储单元读取计算结果,否则,控制单元继续周期性读取计算终结信号。
本发明第二方面示出一种用于卷积神经网络CNN硬件加速系统的控制方法,
CNN网络模型服务器接收网络模型;
CNN网络模型服务器训练网络模型,得到网络参数;
CNN网络模型服务器根据网络模型和网络参数,生成控制指令和网络参数文件;
CNN网络模型服务器输出控制指令和网络参数文件到CNN硬件加速器;
CNN硬件加速器存储控制指令和网络参数文件。
进一步,
CNN硬件加速器接收特征数据;
CNN硬件加速器基于控制指令对网络参数和所述特征数据进行CNN计算;
判断CNN计算是否完成,
若是,得到CNN计算结果;
若否,继续执行进行CNN计算的步骤。
本发明第二方面示出一种用于CNN硬件加速器的控制方法,
CNN硬件加速系统,还包括:
控制单元加载控制指令和网络参数文件到存储单元;
判断应用系统是否运行,
若是,所述控制单元加载所述特征数据到所述存储单元,
CNN加速单元读取所述控制指令、所述网络参数及所述特征数据;
所述CNN加速单元根据所述控制指令对所述网络参数及所述特征数据进行CNN计算;
判断CNN计算是否结束,
若是,输出计算结果到所述存储单元,输出结束信号给所述控制单元,若否,继续进行CNN计算的步骤;
所述控制单元响应于结束信号调取所述计算结果。
由以上技术方案可见,设计人员根据应用需求选择合适的网络模型,CNN网络模型服务器接收网络模型,预先生成控制指令和网络参数的文件,CNN硬件加速器预先存储控制指令和网络参数的文件。在实际应用场景中,CNN硬件加速器被部署在应用系统里,用以当应用系统运行时,接收特征数据,并基于上述控制指令对网络参数和特征数据进行CNN计算,控制单元可以预先将控制指令和网络参数文件加载到存储单元,响应于应用系统运行的信号,将应用系统采集到的特征数据加载到存储单元,输出控制指令、网络参数及特征数据。CNN加速单元读取控制指令、网络参数及特征数据,基于控制指令对网络参数和特征数据进行CNN计算,得到所有数据计算完成的计算结果,输出计算结果到存储单元,生成完成计算的计算终结信号,控制单元响应于读取到计算终结信号,从存储单元内调取计算结果。最终将计算结果输出给应用系统的控制单元。本发明示出的硬件加速系统可以预先生成控制指令,解决CNN硬件加速器在使用时因软硬件交互导致系统性能下降的问题;在实际部署时不依赖应用系统的CPU等,便于灵活部署在各种应用场景。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一种用于卷积神经网络CNN的硬件加速系统及CNN硬件加速器部署在应用系统的示意图;
图2为一种用于卷积神经网络CNN的硬件加速系统的交互示意图;
图3为一种人脸识别门禁系统的结构示意图;
图4为一种CNN网络模型服务器的结构示意图;
图5为一种CNN硬件加速器的功能单元划分示意图;
图6为一种CNN硬件加速器的控制方法示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中的技术方案作进一步详细的说明。
图1为一种用于卷积神经网络CNN的硬件加速系统及CNN硬件加速器部署在应用系统的示意图,如图1所示,一种卷积神经网络的硬件加速系统,包括CNN网络模型服务器1和CNN硬件加速器2,设计人员根据应用需求选择合适的网络模型,CNN网络模型服务器1接收网络模型,预先生成控制指令和网络参数的文件,CNN硬件加速器2预先存储控制指令和网络参数的文件。在应用系统中,CNN硬件加速器2被部署在应用系统里,用以当应用系统运行时,接收特征数据,并基于上述控制指令对网络参数和特征数据进行CNN计算,最终将CNN计算结果输出给应用系统的控制单元。
用于CNN的网络模型,常用的有几十种,比如:Yolo v3、MobileNet v3及ResNet20。这些网络模型有的擅长筛选,有的擅长分类,设计人员根据应用需求选择合适的网络模型,上CNN网络模型服务器1进行训练,通过训练,确认选择的模型是否满足精度等要求,若满足则根据选择的网络模型生成控制指令和网络参数,网络参数会转换成适用于CNN加速器的文件格式,即网络参数文件。
我们对控制指令加以说明:根据网络模型逐层网络读取对应的算子控制规则,算子控制规则由硬件的具体实现决定的,常用算子有卷积Convolution、池化Pooling、全连接Full Connected及上采样Upsample,每个算子都有控制其运行的控制规则。按照网络模型的层次关系,每个算子都有控制其运行的控制规则。把所有层对应的算子控制指令生成并整合,生成最终的控制指令。
以Yolo v3网络模型为例,读取Yolov3网络模型参数;解析Yolov3网络模型参数,提取Yolov3网络模型相关信息;根据Yolov3网络模型第一层卷积的需要读取对应的算子控制规则;使用Yolov3模型第一层卷积的参数,包括卷积核大小、步进及padding,和算子控制规则,产生Yolov3模型第一层控制指令;反复多次执行以上步骤,直至把整个Yolov3模型网络的所有层对应的算子控制指令的生成;按照Yolov3网络模型的层次关系,把算子控制指令整合组织成一个控制指令文件,需要说明的是,该控制指令文件是每层算子控制指令的集合。
本发明的重点在于预先生成控制指令和网络参数,然后将控制指令和网络参数存储在CNN硬件加速器中。“预先”的含义在于“在应用系统运行以前”,显然,本发明在应用系统运行的时候不需要在CPU或ARM等处理器上运行软件,不需要CNN硬件加速器和软件实时交互实现控制,解决了CNN硬件加速器在使用时因软硬件交互导致系统性能下降的问题。
需要进一步说明的是,本发明所示的卷积神经网络CNN的硬件加速系统通过预先生成控制指令和网络参数,实现了CNN硬件加速器脱机使用,脱机的含义是:脱离硬件加速系统。这种设计的优势显而易见,只要输入了与应用需求对应的网络模型,就可以得到对应的控制指令及网络参数,直接部署存储了控制指令及网络参数的CNN硬件加速器在对应的应用场景中,方便灵活的优势显而易见。本发明所示的卷积神经网络CNN的硬件加速系统可以使用的应用场景非常广泛,比如:智能化的目标检测系统、智能化的管理控制系统及智能化的筛选系统,再具体一点,一种人脸识别门禁系统。
当应用系统运行时,接收特征数据,比如:各种智能化的目标检测系统需要采集特征图像数据和特征音频数据,智能化的管理控制系统需要采特征文件数据,再具体一点,一种人脸识别门禁系统,需要采集特征图像数据,这些特征数据经过CNN硬件加速器2基于控制指令完成网络参数的卷积运算,计算结果被应用系统使用。
图2为一种用于卷积神经网络CNN的硬件加速系统的交互示意图。如图2所示,
S1 CNN网络模型服务器1接收网络模型;
网络模型有的擅长筛选,有的擅长分类,设计人员根据应用需求选择合适的网络模型,CNN网络模型服务器1接收网络模型,这一步骤在硬件加速系统中预先完成,不需要应用系统的参与。
S2 CNN网络模型服务器1生成控制指令和网络参数文件;
经过CNN网络模型服务器1的训练,生成相应的控制指令和网络参数。根据实际应用场景的不同,选择的网络模型也不同,得到控制指令也不同。这一步骤在硬件加速系统中预先完成,不需要应用系统的参与。需要说明网络参数和网络参数文件的关系:网络参数是网络参数文件的内容,网络参数是由网络模型训练决定的,网络参数的组织格式与CNN加速器实现有关,网络参数文件相较网络参数只是格式上发生了改变。
S3 CNN网络模型服务器1输出控制指令和网络参数文件;
S4 CNN硬件加速器2接收并存储控制指令和特征数据网络参数;
以上两个步骤在硬件加速系统中预先完成,不需要应用系统的参与。
S5 CNN硬件加速器2接收特征数据,进行CNN计算;
将存储控制指令和网络参数文件的CNN硬件加速器2安装在应用系统中,当系统开始运行,CNN硬件加速器2接收应用系统采集到的特征数据,基于控制指令对网络参数和特征数据进行CNN计算,最终得到CNN计算结果。CNN计算例如卷积计算、Pooling-MAX下采样计算、全连接计算等等。
为了更详细的介绍本发明,示出一种具体应用系统:一种人脸识别门禁系统,如图3所示,可以看到只有CNN硬件加速器部署在人脸识别门禁系统中,在此之前,CNN硬件加速器已经预先存储控制指令和网络参数文件。存储的控制指令和网络参数文件,是基于人脸识别门禁系统选择合适的网络模型,由CNN网络模型服务器1训练生成的。选择的网络模型应针对筛选和局部捕捉有明显的处理优势,训练后若选择的网络模型满足精度的要求,具体来说能够满足人像识别和匹配的需求,则生成控制指令和网络参数文件。CNN网络模型服务器1训练生成的控制指令和网络参数文件输出到CNN硬件加速器2中,CNN硬件加速器2存储控制指令和网络参数文件后,被部署到人脸识别门禁系统。当然人脸识别门禁系统开始工作时,图像采集单元会采集到特征图像数据。具体来说,可以是摄像头采集到的站在门前的人的面部照片。该特征图像数据被上传到CNN硬件加速器2,CNN硬件加速器2基于控制指令对特征图像信息和网络参数文件中的网络参数进行CNN计算。最终完成计算,并得到计算结果。门禁控制单元读取准入数据库单元和计算结果,并进行比对,若采集到的人脸在准入数据库单元中则开门;否则不开门。
由此,我们会想到该CNN硬件加速器2还可以再次应用到其他应用系统中。只需要再次连接CNN网络模型服务器1,选择对应应用场景下合适的网络模型,生成对应网络模型下的控制指令和网络参数文件,存储在CNN硬件加速器2中,再安装在应用系统中。
在这种情况下,当CNN硬件加速器2适当的存储几种控制指令和网络参数文件后,在实际使用场景中,一台CNN硬件加速器2可以适用更多的应用需求。
图4为一种CNN网络模型服务器的结构及控制示意图,如图4所示:
CNN网络模型服务器1还包括网络模型训练模块和CNN加速工具链模块,网络模型训练模块对网络模型训练,得到网络参数;CNN加速工具链模块读取网络模型和网络参数,生成控制指令和网络参数文件。
图5为一种CNN硬件加速器的结构示意图。如图5所示,CNN硬件加速器2包括:控制单元、CNN加速单元及存储单元,CNN硬件加速器2的功能细化,并增加独立的控制单元。
当CNN硬件加速器拥有独立的控制单元,可以实现“一机多用”。CNN硬件加速器可以预先将多套适用于不同应用系统的控制指令和网络参数文件加载到存储单元,响应于应用系统运行的信号,将应用系统采集到的特征数据加载到存储单元,输出适用于当前应用系统的控制指令、网络参数及特征数据。CNN加速单元读取控制指令、网络参数及特征数据,基于控制指令对网络参数和特征数据进行CNN计算,得到所有数据计算完成的计算结果,输出计算结果到存储单元,生成完成计算的计算终结信号,控制单元响应于读取到计算终结信号,从存储单元内调取计算结果。当然,当CNN硬件加速器存储一种控制指令和网络参数文件时,就不需要选择,直接进行后续操作即可。
CNN硬件加速器拥有独立的控制单元是本发明的另一种实施例,控制单元还可以是应用系统的控制单元,也就是说由应用系统的控制单元完成以上操作。
图6为一种CNN硬件加速器的运行步骤示意图,如图6所示,
S501控制单元加载控制指令和网络参数文件加载到存储单元;
该控制单元可以是系统的控制单元,也可以是CNN硬件加速器独立控制单元,将预先生成的控制指令和网络参数文件加载到存储单元进行存储。
S502判断应用系统是否运行;
当应用系统上电,触发自动加载;或当系统运行,给出运行信号到CNN硬件加速器独立控制单元。若是,进行S503,若否,退回S502。
S503控制单元加载采集到的特征数据到存储单元;
当系统运行时,会采集到需要的特征数据,比如:各种智能化的目标检测系统需要采集特征图像数据和特征音频数据,智能化的管理控制系统需要采特征文件数据,再具体一点,一种人脸识别门禁系统,需要采集特征图像数据,这些特征数据被存储到存储单元。
S504 CNN加速单元读取控制指令、网络参数及特征数据;
控制单元控制CNN加速单元读取控制指令、网络参数文件中的网络参数及特征数据,准备进行CNN计算。
S505 CNN加速单元根据控制指令对网络参数及特征数据进行CNN计算;
CNN加速单元基于读取到的控制指令对网络参数及特征数据进行CNN计算。
S506判断CNN计算是否结束;
若是,进行S507,若否,退回S504。
S507输出计算结果到存储单元,同时输出计算终结信号到控制单元;
S508响应于读取到的计算终结信号,控制单元从存储单元调取计算结果。
当数据量较小时,控制单元实时读取计算终结信号,如果读取到计算终结信号,则控制单元从存储单元读取计算结果,否则,控制单元继续实时读取计算终结信号;当数据量较大时,控制单元周期性读取计算终结信号,如果读取到计算终结信号,则控制单元从存储单元读取计算结果,否则,控制单元继续周期性读取计算终结信号。
以上两步,完成计算结果的处理和调取,控制单元将结果输出后,进行适用应用系统需求的比对,最终完成CNN硬件加速器与实际的结合。
由以上具体实施例可见,设计人员根据应用需求选择合适的网络模型,CNN网络模型服务器接收网络模型,预先生成控制指令和网络参数的文件,CNN硬件加速器预先存储控制指令和网络参数的文件。在实际应用场景中,CNN硬件加速器被部署在应用系统里,用以当应用系统运行时,接收特征数据,并基于上述控制指令对网络参数和特征数据进行CNN计算,最终将计算结果输出给应用系统的控制单元。本发明示出的硬件加速系统可以预先生成控制指令。以上显示和描述了本发明的基本原理和主要特征和以及本发明的优点,对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
本发明提供的实施例之间的相似部分相互参见即可,以上提供的具体实施方式只是本发明总的构思下的几个示例,并不构成本发明保护范围的限定。对于本领域的技术人员而言,在不付出创造性劳动的前提下依据本发明方案所扩展出的任何其他实施方式都属于本发明的保护范围。

Claims (7)

1.一种用于卷积神经网络CNN的硬件加速系统,其特征在于,包括:CNN网络模型服务器和CNN硬件加速器,
所述CNN网络模型服务器被配置为:接收网络模型;以及,根据网络模型预先生成控制指令和网络参数文件,所述控制指令用于当应用系统运行时控制所述CNN硬件加速器完成CNN计算;
所述CNN硬件加速器被配置为:预先接收和存储所述CNN网络模型服务器输出的所述控制指令和所述网络参数文件;以及,当应用系统运行时,接收特征数据;以及,基于所述控制指令对所述网络参数和所述特征数据进行CNN计算,直到完成CNN计算,得到CNN计算结果。
2.根据权利要求1所述的硬件加速系统,其特征在于,所述CNN网络模型服务器包括:网络模型训练模块和CNN加速工具链模块,
所述网络模型训练模块被配置为:接收网络模型,根据所述网络模型得到训练后的网络参数;
所述CNN加速工具链模块被配置为:读取所述网络模型和所述网络参数,生成所述控制指令和所述网络参数文件。
3.根据权利要求1所述的硬件加速系统,其特征在于,所述CNN硬件加速器包括:控制单元、CNN加速单元及存储单元,
所述控制单元被配置为:
预处理步骤:将所述控制指令和所述网络参数加载到所述存储单元;
参数提供步骤:响应于应用系统运行的信号,将特征数据加载到所述存储单元;以及,输出所述控制指令、所述网络参数及所述特征数据;
所述CNN加速单元被配置为:
参数接收步骤:读取所述控制指令、所述网络参数及所述特征数据;
CNN计算步骤:基于所述控制指令对所述网络参数和所述特征数据进行卷积神经网络计算,得到所有数据计算完成的计算结果;以及,输出计算结果到所述存储单元,生成完成计算的计算终结信号;
所述控制单元还被配置为:
调取计算结果步骤:响应于所述计算终结信号,从所述存储单元内调取所述计算结果。
4.根据权利要求3所述的硬件加速系统,其特征在于,在所述调取计算结果步骤,周期性读取所述计算终结信号;
如果读取到所述计算终结信号,响应于所述计算终结信号,则控制单元从存储单元调取计算结果;
否则,所述控制单元继续周期性读取所述计算终结信号。
5.一种用于卷积神经网络CNN硬件加速系统的控制方法,所述方法应用于权利要求1-4所述的CNN硬件加速系统,其特征在于,包括:
CNN网络模型服务器接收网络模型;
所述CNN网络模型服务器训练所述网络模型,得到网络参数;
所述CNN网络模型服务器根据所述网络模型和所述网络参数,生成控制指令和网络参数文件;
所述CNN网络模型服务器输出所述控制指令和所述网络参数文件到所述CNN硬件加速器;
所述CNN硬件加速器存储所述控制指令和所述网络参数文件。
6.根据权利要求5所述的控制方法,其特征在于,还包括:
所述CNN硬件加速器接收所述特征数据;
所述CNN硬件加速器基于所述控制指令对所述网络参数文件中的网络参数和所述特征数据进行CNN计算;
判断CNN计算是否完成,
若是,得到CNN计算结果;
若否,继续执行进行CNN计算的步骤。
7.一种用于CNN硬件加速器的控制方法,所述方法应用于权利要求4所述的CNN硬件加速系统,其特征在于,还包括:
控制单元加载控制指令和网络参数文件到存储单元;
判断应用系统是否运行,
若是,所述控制单元加载所述特征数据到所述存储单元,
CNN加速单元读取所述控制指令、所述网络参数及所述特征数据;
所述CNN加速单元根据所述控制指令对所述网络参数及所述特征数据进行CNN计算;
判断CNN计算是否结束,
若是,输出计算结果到所述存储单元,输出结束信号给所述控制单元,若否,继续进行CNN计算的步骤;
所述控制单元响应于结束信号调取所述计算结果。
CN202011081151.6A 2020-10-12 2020-10-12 一种用于卷积神经网络cnn的硬件加速系统及控制方法 Pending CN111931926A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011081151.6A CN111931926A (zh) 2020-10-12 2020-10-12 一种用于卷积神经网络cnn的硬件加速系统及控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011081151.6A CN111931926A (zh) 2020-10-12 2020-10-12 一种用于卷积神经网络cnn的硬件加速系统及控制方法

Publications (1)

Publication Number Publication Date
CN111931926A true CN111931926A (zh) 2020-11-13

Family

ID=73334321

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011081151.6A Pending CN111931926A (zh) 2020-10-12 2020-10-12 一种用于卷积神经网络cnn的硬件加速系统及控制方法

Country Status (1)

Country Link
CN (1) CN111931926A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113191335A (zh) * 2021-05-31 2021-07-30 景德镇陶瓷大学 基于深度学习的日用陶瓷类型识别方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107103113A (zh) * 2017-03-23 2017-08-29 中国科学院计算技术研究所 面向神经网络处理器的自动化设计方法、装置及优化方法
CN109934336A (zh) * 2019-03-08 2019-06-25 江南大学 基于最优结构搜索的神经网络动态加速平台设计方法及神经网络动态加速平台
EP3640856A1 (en) * 2018-10-19 2020-04-22 Fujitsu Limited A method, apparatus and computer program to carry out a training procedure in a convolutional neural network
CN111310684A (zh) * 2020-02-24 2020-06-19 东声(苏州)智能科技有限公司 一种模型训练方法、装置、电子设备及存储介质
CN111507378A (zh) * 2020-03-24 2020-08-07 华为技术有限公司 训练图像处理模型的方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107103113A (zh) * 2017-03-23 2017-08-29 中国科学院计算技术研究所 面向神经网络处理器的自动化设计方法、装置及优化方法
EP3640856A1 (en) * 2018-10-19 2020-04-22 Fujitsu Limited A method, apparatus and computer program to carry out a training procedure in a convolutional neural network
CN109934336A (zh) * 2019-03-08 2019-06-25 江南大学 基于最优结构搜索的神经网络动态加速平台设计方法及神经网络动态加速平台
CN111310684A (zh) * 2020-02-24 2020-06-19 东声(苏州)智能科技有限公司 一种模型训练方法、装置、电子设备及存储介质
CN111507378A (zh) * 2020-03-24 2020-08-07 华为技术有限公司 训练图像处理模型的方法和装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113191335A (zh) * 2021-05-31 2021-07-30 景德镇陶瓷大学 基于深度学习的日用陶瓷类型识别方法

Similar Documents

Publication Publication Date Title
CN109697434B (zh) 一种行为识别方法、装置和存储介质
CN109871780B (zh) 一种人脸质量判决方法、系统及人脸识别方法、系统
CN110750298B (zh) 一种ai模型编译方法、设备及存储介质
CN112509600A (zh) 模型的训练方法、装置、语音转换方法、设备及存储介质
CN111292262B (zh) 图像处理方法、装置、电子设备以及存储介质
CN112418360B (zh) 卷积神经网络的训练方法、行人属性识别方法及相关设备
CN111160350A (zh) 人像分割方法、模型训练方法、装置、介质及电子设备
CN114781635B (zh) 模型部署方法、装置、设备和介质
CN112561028A (zh) 训练神经网络模型的方法、数据处理的方法及装置
CN109598250A (zh) 特征提取方法、装置、电子设备和计算机可读介质
CN111401557A (zh) 智能体决策制定方法、ai模型训练方法、服务器及介质
CN110070867A (zh) 语音指令识别方法、计算机装置及计算机可读存储介质
CN111080746A (zh) 图像处理方法、装置、电子设备和存储介质
CN111931926A (zh) 一种用于卷积神经网络cnn的硬件加速系统及控制方法
CN117668563B (zh) 文本识别方法、装置、电子设备及可读存储介质
CN116432736A (zh) 神经网络模型优化方法、装置及计算设备
CN112906554B (zh) 基于视觉图像的模型训练优化方法、装置及相关设备
US20230334774A1 (en) Site model updating method and system
CN112966815A (zh) 基于脉冲神经网络的目标检测方法、系统及设备
DE112020006832T5 (de) Asynchrone aufgabenausführung für schaltung eines neuronalen prozessors
CN110866609A (zh) 解释信息获取方法、装置、服务器和存储介质
KR102275763B1 (ko) 딥러닝 모델로부터 딥러닝 어플리케이션을 자동으로 생성하는 방법 및 시스템
CN112000428B (zh) 基于机器学习的jvm调优方法、装置和电子装置
CN114626501A (zh) 数据处理方法、装置、电子设备和存储介质
CN112805723A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20201113

RJ01 Rejection of invention patent application after publication