CN110543936B - 一种cnn全连接层运算的多并行加速方法 - Google Patents

一种cnn全连接层运算的多并行加速方法 Download PDF

Info

Publication number
CN110543936B
CN110543936B CN201910818287.1A CN201910818287A CN110543936B CN 110543936 B CN110543936 B CN 110543936B CN 201910818287 A CN201910818287 A CN 201910818287A CN 110543936 B CN110543936 B CN 110543936B
Authority
CN
China
Prior art keywords
data
full
calculation
layer
weight parameter
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
CN201910818287.1A
Other languages
English (en)
Other versions
CN110543936A (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.)
Beijing Institute of Spacecraft System Engineering
Original Assignee
Beijing Institute of Spacecraft System Engineering
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 Beijing Institute of Spacecraft System Engineering filed Critical Beijing Institute of Spacecraft System Engineering
Priority to CN201910818287.1A priority Critical patent/CN110543936B/zh
Publication of CN110543936A publication Critical patent/CN110543936A/zh
Application granted granted Critical
Publication of CN110543936B publication Critical patent/CN110543936B/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/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

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

Abstract

本发明公开了一种CNN全连接层运算的多并行加速方法,利用卷积神经网络运算结果的稀疏性特点,通过提前判读卷积神经网络卷积层处理结果的数值,大大减少了对全连接层参数的读操作,有效节省能耗,提升系统能效比;利用FPGA等可编程逻辑器件硬件资源复用、扩展能力强等特点,通过构建并行流水乘累加架构,有效节省处理时间,提升处理效率;通过全面分析目标类型数据、目标特征差异以及应用过程中的错误容忍度等因素,合理设定处理数据格式,在保证处理精度的同时,有效提升数据及参数的存取效率,实现全连接层多并行加速的目的。

Description

一种CNN全连接层运算的多并行加速方法
技术领域
本发明属于计算机体系结构技术领域,具体涉及一种CNN全连接层运算的多并行加速方法。
背景技术
卷积神经网络(CNN)作为深度学习的重要代表,在目标分类、识别、视频分析以及自然语言处理等方面应用越来越广泛。CNN主要由卷积层、池化层、激活函数以及全连接层组成。CNN全连接层运算由于参数数据量大,精度要求高,对外部存储速度要求高等特点,一直是制约CNN加速的瓶颈。如当前典型的分类网络VGG-16全连接层参数个数就达138M。
目前CNN全连接层运算的方法主要优化方式是参数压缩、并行运算等。其中,并行运算主要以下三种方式,第一种是采用GPU多线程计算实现加速;第二种是采用FPGA等可编程逻辑电路用硬件资源扩展换取速度的方式实现加速;第三种采用深度学习专用处理器或ASIC实现加速。
西安交通大学CN201710331078.5公开了一种参数化可扩展的神经网络全连接层互联结构,包括若干层全连接层,每层全连接层例化了若干个基本单元;一个基本单元连接一个路由器,同一全连接层中的基本单元经过路由器相连,形成全连接环;全连接环的路由器上下相连形成一种参数化可扩展的神经网络全连接层多层互连结构,支持双向的数据传递(前向推理,反向学习)。采用可配置的全连接基本单元作为全连接层硬件实现的基础,用户可以根据实际使用的神经网络的需求通过设置参数控制生成多个基本单元并互连的方式完成其网络中全连接层的设计实现和并行加速;该发明的设计考虑了数据流水线,缩短了系统运行时钟周期,灵活配置全连接层的结构和规模,便于系统的快速部署实现。
美国阿尔特拉公司CN201610878617.2公开了一种用于实施卷积神经网络加速器上的层的方法和装置制造方法。该装置和方法用于在目标上实施卷积神经网络(CNN)加速器,包括利用一个或者多个处理元件实施标准卷积层。修改CNN加速器的配置以改变CNN加速器上的部件之间的数据流。响应数据流的改变,利用一个或者多个处理元件实施完全连接层。
清华大学CN201710524017.0公开了一种基于可分割阵列的可重构加速器及其实现方法,该可重构加速器包括便笺式存储器缓存区,用于实现卷积计算与稀疏化全连接计算的数据重用;可分割计算阵列,包括多个重构计算单元。可分割计算阵列分为卷积计算阵列及稀疏化全连接计算阵列;寄存器缓存区,由多块寄存器构成的存储区域,为卷积计算与稀疏化全连接计算提供输入数据、权重数据及对应的输出结果;卷积计算的输入数据及权重数据分别输入到卷积计算的阵列,输出卷积计算结果;稀疏化全连接计算的输入数据及权重数据分别输入到稀疏化全连接计算阵列,输出稀疏化全连接计算结果。本发明将两种神经网络的特点相融合,提高了芯片的计算资源与内存带宽利用率。
但上述方法主要存在以下问题:
(1)没有对目标类型数目、目标特征差异度以及对错误容忍度等因素进行全面分析,合理选取数据格式,导致处理精度与参数占用存储空间、参数数据吞吐量等因素不能达到良好平衡。
(2)对全连接层参数进行模型压缩,可有效降低参数数量,但也存在降低正确率的风险。没有利用卷积神经网络卷积处理结果稀疏性特点,全连接运算过程中产生大量无效读操作,浪费能耗和消耗处理时间。
(3)采用专用处理器或ASIC或FPGA实现全连接层,只是简单的通过硬件资源的增加、迭代实现逻辑加速,没有充分发挥可编程逻辑电路的全流水性能,硬件资源占有较多,能效比大打折扣;
(4)利用GPU实现全连接层,有编程简单、运行速度快等优点,但存在功耗过高、散热困难等问题。
发明内容
有鉴于此,本发明的目的是提供一种CNN全连接层运算的多并行加速方法,可以提高运算速度,节省能耗。
一种CNN全连接层运算的多并行加速方法,包括如下步骤:
步骤1、根据目标类型种类及特征选取运算数据格式:
步骤2、根据全连接层参数数据数量和数据格式位宽确定所需的存储资源,由存储资源和计算硬件资源确定运算并行度k;
步骤3、将全连接层权重参数数据格式转换为步骤1确定的数据格式;
假设格式转换后的权重参数数据长度为N,卷积层的数据长度为L;
从权重参数数据的第一个数据点开始,共抽取长度为L的数据点,得到第一份数据;开始,再抽取长度为L的数据点,得到第二份数据;
以此类推,直到得到第k份数据;
再将每份数据的同一位置的数据顺序取出拼接成一组数据,最后得到ceil(N/L/k)组数据,并将其存储至存储器中;其中,ceil函数表示向上取整;
步骤4、将运算数据输入到CNN全连接层进行运算,其中,每次得到的卷积层运算结果与存储的一组权重参数数据进行乘累加计算,乘累加一次则计数一次;其中,在乘累加计算之前,先对卷积层运算结果进行判定:如果卷积层运算结果为0,不读取该卷积结果对应的权重参数数据,即不进行乘累加计算,但乘法计算计数累计一次;如果卷积层运算结果不为0,读取计数值指向的权重参数数据的列数,卷积层运算结果与该组权重参数数据同时进行乘累加计算并进行累积一次计数,得到当前的k个乘累加计算结果,当乘累加计算计数次数达到L时,则表示此组k个全连接层计算完成,开始下一组全连接层计算,直到完成所有ceil(N/L/k)组数据的乘累加计算;完成全连接层运算后,将运算结果按制定好的数据帧格式连续输出。
较佳的,所述步骤1中,选取运算数据格式的方法为:
如果目标分类种类超过100以上且类型差异小的情况下,采用32位单精度浮点数据格式;
如果目标分类种类少于20类且类型差异大的情况下,采用18位浮点数据格式;
其它情况采用24位浮点数据格式。
较佳的,所述步骤2中,假设处理数据位宽为n,存储器位宽为m,则运算并行度最高不超过k=floor(m/n);其中,floor函数表示向下取整。
较佳的,N不能整除L和k时,在权重参数数据末尾补零直到刚好满足整除。
较佳的,所述乘累加计算采用浮点乘法器、浮点加法器和存储器完成;其中,所述存储器用来缓存处理数据,存储器的位宽由待处理的数据的数据格式和位宽决定,存储器的深度由浮点加法器的流水延时决定,浮点加法器最大的流水延时为13个时钟周期,存储器深度设计为16。
较佳的,所述步骤4中,将运算结果按制定好的数据帧格式连续输出的方法为:将k个并行计算得到的累加值按拼接的先后顺序串行输出,以用于后续确定目标类型和置信度。
本发明具有如下有益效果:
本发明的一种CNN全连接层运算的多并行加速方法,利用卷积神经网络运算结果的稀疏性特点,通过提前判读卷积神经网络卷积层处理结果的数值,大大减少了对全连接层参数的读操作,有效节省能耗,提升系统能效比;利用FPGA等可编程逻辑器件硬件资源复用、扩展能力强等特点,通过构建并行流水乘累加架构,有效节省处理时间,提升处理效率;通过全面分析目标类型数据、目标特征差异以及应用过程中的错误容忍度等因素,合理设定处理数据格式,在保证处理精度的同时,有效提升数据及参数的存取效率,实现全连接层多并行加速的目的。
附图说明
图1是本发明数据运算流程图。
图2是本发明数据运算流程图。
图3是本发明针对全连接层运算设计的多并行加速数据流程图。
图4是本发明将得到的累加值按拼接的先后顺序串行输出示意图。
具体实施方式
下面结合附图并举实施例,对本发明进行详细描述。
本发明的一种CNN全连接层运算的多并行加速方法,如图2所述,包括如下步骤:
步骤1、根据目标类型种类及特征选取运算数据格式:
涉及分类种类超过100以上、类型差异小的情况下,分类识别处理精度要求高,采用32位单精度浮点数据格式;涉及分类种类少于20类、类型差异大的情况下,便于分类识别,处理精度要求相对低,采用18位浮点数据格式;介于上述之间,采用24位浮点数据格式。
步骤2、根据全连接层参数数据数量和数据格式位宽确定所需的存储资源,由存储和计算等硬件资源确定运算并行度。选定的处理数据位宽为n,存储器位宽为m,则运算并行度最高不超过k=floor(m/n),floor函数表示向下取整,分别需要k个输入位宽为n的浮点乘法器和浮点加法器以及k个位宽为n,存储深度至少为16的存储器,硬件资源需满足运算并行度的要求。上述存储器是为了构建全并行流水处理架构用来缓存处理数据,存储器的位宽由待处理的数据的数据格式和位宽决定,存储器的深度由浮点加法器的流水延时决定,浮点加法器最大的流水延时为13个时钟周期,遵循资源利用最优化原则,存储器深度设计为16。
步骤3、将全连接层权重参数数据格式转换为步骤1确定的数据格式,后续处理过程中,所有数据运算过程均采用该数据格式进行处理。如果选用32位单精度浮点数据,直接应用原始的权重参数即可;如果选用24位浮点数据,保留8位指数位和16位尾数即可;如果选用18位浮点数据,保留8位指数位和10位尾数即可。
步骤4、权重参数数据格式转换完成后,将数据按并行计算架构要求存储至存储器中。其中,并行计算架构是由卷积层和全连接层参数数据量以及存储和计算等硬件资源确定。
具体为:假设格式转换后的权重参数数据长度为N,卷积层的数据长度为L,根据全连接层的算法规则,N和L需满足关系N=L*P,其中,P为正整数。将权重参数数据的第一个数据点作为第一份数据的第一个数据点,抽取长度为L的数据点,分别作为第二个、第三个。。。。第L个数据点,由此得到第一份数据;将权重参数数据的第L+1个数据点作为第一个数据点,抽取长度为L的数据点,分别作为第二个、第三个。。。。第L个数据点,由此得到第二份数据;以此类推,直到得到第k份数据;再将每份数据的同一位置的数据顺序取出拼接成一组数据,最后得到ceil(N/L/k)组数据,并将其顺序存储至存储器中,即完成将全连接层权重参数按并行计算架构要求存储至存储器;其中,ceil函数表示向上取整。
步骤5、按照卷积神经网络模型中全连接层的运算流程、并行计算架构,控制存储控制模块A/B以及运算存储模块,高效完成全连接层的乘累加计算,具体为:
判断输入的卷积层结果序列数值是否为零,若卷积层结果数值为零,通知存储控制模块B无需读取该值在结果序列中对应的全连接层权重参数存储值;若为非零,则将该值对应的序列位置信息送至存储控制模块B,并通知存储控制模块B读取该地址存储的权重参数,完成序列乘和累加运算,并输出计算结果。
步骤6、将k个并行计算得到的累加值按拼接的先后顺序串行输出,便于后续确定目标类型和置信度。
实施例
本发明设计的基于可编程逻辑电路实现的全连接层运算加速方法分为以下模块:处理数据格式确定模块、运算并行度确定模块、全连接层权重参数数据格式转换及存储模块、运算流程控制模块、数据判定模块、数据存储控制模块A/B、数据运算模块、运算结果存储模块以及数据输出模块。
1、处理数据格式确定模块用于处理数据格式的确定:根据CNN的应用场景以及目标特性,确定全连接层运算采用的数据格式。假如CNN用于遥感舰船目标分类和识别,分类种类设计为最多30,主要区分航母、驱逐舰、护卫舰、海岛、碎云、人工建筑等大型目标,目标类型特征对比比较鲜明,分类种类较多,对全连接层的处理精度要求较高,因此可选用24位的浮点数据作为运算数据格式。
2、运算并行度确定模块用于确定运算并行度:假定硬件平台能够提供的存储的数据位宽最大为1080,存储深度满足全连接层参数存储要求,由步骤1可知,选用的处理数据格式为24位浮点格式,因此,运算并行度可以设计为k=1080/24=45,硬件资源最少需要满足有45个位宽为24的浮点乘法器和浮点加法器以及45个位宽为24的深度为16的存储器。
3、全连接层权重参数数据格式转换及存储模块用于全连接层权重参数数据格式转换及存储:将权重参数数据长度为N,初始数据位宽为32位单精度浮点格式的全连接层权重参数的尾数由24截成16,权重参数即变成位宽为24位的浮点数据。如图1所示,将权重参数数据的第一个数据点作为第一份数据的第一个数据点,顺序抽取长度为L(卷积层的数据长度)的数据点,分别作为第二个、第三个。。。。第L个数据点,由此得到第一份数据;将权重参数数据的第L+1个数据点作为第二份数据的第一个数据点,顺序抽取长度为L的数据点,分别作为第二个、第三个。。。。第L个数据点,由此得到第二份数据;以此类推,直到得到第45份数据;再将每份数据的同一位置的数据取出拼接成一组数据,依此类推,最后得到ceil(N/L/k)组数据,每一组数据位宽为1080并将其顺序存储至存储器中,用于全连接层后续计算;其中,ceil函数表示向上取整;数据长度如果不满足被45整除,在序列后面填零直到刚好满足整除。
4、运算流程控制模块用于控制全连层运算:如图2所示,全连接层运算通过卷积层结果数据流进行驱动运算。其中,每次得到的卷积层运算结果与存储的一组权重参数数据进行乘累加计算,乘累加一次则计数一次;其中,在乘累加计算之前,先对卷积层运算结果进行判定:如果卷积层运算结果为0,不读取该卷积结果对应的权重参数数据,即不进行乘累加计算,但乘法计算计数累计一次;如果卷积层运算结果不为0,读取计数值指向的权重参数数据的列数,卷积层运算结果与该组权重参数数据同时进行乘累加计算并进行累积一次计数,得到当前的k个乘累加计算结果,当乘累加计算计数次数达到L时,则表示此组k个全连接层计算完成,可以开始下一组全连接层计算,直到完成所有ceil(N/L/k)组全连接层参数的乘累加计算,运算过程如图3所示;完成全连接层运算后,将运算结果按制定好的数据帧格式连续输出。
运算流程控制模块、运算结果存储模块、数据存储控制模块A/B以及数据运算模块共同配合按CNN全连接层运算流程完成运算。数据存储控制模块分为A和B两部分,其中,模块A用于完成卷积层结果的读取控制,模块B用于全连接层权重参数的读取控制。数据运算模块将当前卷积层运算结果与读取的一列权重参数数据的k个数据点分别相乘后再求和,完成序列乘和累加运算,并输出计算结果。运算结果存储模块主要用于计算过程中间数据存储。
5、运算流程控制模块根据CNN全连接层运算流程,完成全连接层运算后,数据输出模块将运算结果按制定好的数据帧格式连续输出。
如图4所示,将运算结果按制定好的数据帧格式连续输出是指将k个并行计算得到的累加值按拼接的先后顺序串行输出,便于后续确定目标类型和置信度。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种CNN全连接层运算的多并行加速方法,其特征在于,包括如下步骤:
步骤1、根据目标类型种类及特征选取运算数据格式:
步骤2、根据全连接层参数数据数量和数据格式位宽确定所需的存储资源,由存储资源和计算硬件资源确定运算并行度k;
步骤3、将全连接层权重参数数据格式转换为步骤1确定的数据格式;
假设格式转换后的权重参数数据长度为N,卷积层的数据长度为L;
从权重参数数据的第一个数据点开始,共抽取长度为L的数据点,得到第一份数据;将权重参数数据的第L+1个数据点作为第一个数据点,再抽取长度为L的数据点,得到第二份数据;
以此类推,直到得到第k份数据;
再将每份数据的同一位置的数据顺序取出拼接成一组数据,最后得到ceil(N/L/k)组数据,并将其存储至存储器中;其中,ceil函数表示向上取整;
步骤4、将运算数据输入到CNN全连接层进行运算,其中,每次得到的卷积层运算结果与存储的一组权重参数数据进行乘累加计算,乘累加一次则计数一次;其中,在乘累加计算之前,先对卷积层运算结果进行判定:如果卷积层运算结果为0,不读取该卷积层运算结果对应的权重参数数据,即不进行乘累加计算,但乘法计算计数累计一次;如果卷积层运算结果不为0,读取计数值指向的权重参数数据的列数,卷积层运算结果与该组权重参数数据同时进行乘累加计算并进行累积一次计数,得到当前的k个乘累加计算结果,当乘累加计算计数次数达到L时,则表示此组k个全连接层计算完成,开始下一组全连接层计算,直到完成所有ceil(N/L/k)组数据的乘累加计算;完成全连接层运算后,将运算结果按制定好的数据帧格式连续输出。
2.如权利要求1所述的一种CNN全连接层运算的多并行加速方法,其特征在于,所述步骤1中,选取运算数据格式的方法为:
如果目标分类种类100以上且类型差异小的情况下,采用32位单精度浮点数据格式;
如果目标分类种类少于20类且类型差异大的情况下,采用18位浮点数据格式;
其它情况采用24位浮点数据格式。
3.如权利要求1所述的一种CNN全连接层运算的多并行加速方法,其特征在于,所述步骤2中,假设处理数据位宽为n,存储器位宽为m,则运算并行度最高不超过k=floor(m/n);其中,floor函数表示向下取整。
4.如权利要求1所述的一种CNN全连接层运算的多并行加速方法,其特征在于,N不能整除L和k时,在权重参数数据末尾补零直到刚好满足整除。
5.如权利要求1所述的一种CNN全连接层运算的多并行加速方法,其特征在于,所述乘累加计算采用浮点乘法器、浮点加法器和存储器完成;其中,所述存储器用来缓存处理数据,存储器的位宽由待处理的数据的数据格式和位宽决定,存储器的深度由浮点加法器的流水延时决定,浮点加法器最大的流水延时为13个时钟周期,存储器深度设计为16。
6.如权利要求1所述的一种CNN全连接层运算的多并行加速方法,其特征在于,所述步骤4中,将运算结果按制定好的数据帧格式连续输出的方法为:将k个并行计算得到的累加值按拼接的先后顺序串行输出,以用于后续确定目标类型和置信度。
CN201910818287.1A 2019-08-30 2019-08-30 一种cnn全连接层运算的多并行加速方法 Active CN110543936B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910818287.1A CN110543936B (zh) 2019-08-30 2019-08-30 一种cnn全连接层运算的多并行加速方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910818287.1A CN110543936B (zh) 2019-08-30 2019-08-30 一种cnn全连接层运算的多并行加速方法

Publications (2)

Publication Number Publication Date
CN110543936A CN110543936A (zh) 2019-12-06
CN110543936B true CN110543936B (zh) 2022-03-25

Family

ID=68712473

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910818287.1A Active CN110543936B (zh) 2019-08-30 2019-08-30 一种cnn全连接层运算的多并行加速方法

Country Status (1)

Country Link
CN (1) CN110543936B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111178508B (zh) * 2019-12-27 2024-04-05 珠海亿智电子科技有限公司 用于执行卷积神经网络中全连接层的运算装置及方法
CN111860819B (zh) * 2020-07-27 2023-11-07 南京大学 一种可拼接、可分段的全连接神经网络推理加速器及其加速方法
CN112488296B (zh) * 2020-11-25 2022-12-02 苏州浪潮智能科技有限公司 基于硬件环境的数据操作方法、装置、设备及存储介质
CN117215994B (zh) * 2023-11-07 2024-01-09 北京数渡信息科技有限公司 一种不同部分良好情况下晶片间互连的配置策略

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107273969A (zh) * 2017-05-11 2017-10-20 西安交通大学 一种参数化可扩展的神经网络全连接层多层互连结构
CN107341544A (zh) * 2017-06-30 2017-11-10 清华大学 一种基于可分割阵列的可重构加速器及其实现方法
CN109409509A (zh) * 2018-12-24 2019-03-01 济南浪潮高新科技投资发展有限公司 一种针对基于fpga的卷积神经网络加速器的数据结构和加速方法
CN109635944A (zh) * 2018-12-24 2019-04-16 西安交通大学 一种稀疏卷积神经网络加速器及实现方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10614354B2 (en) * 2015-10-07 2020-04-07 Altera Corporation Method and apparatus for implementing layers on a convolutional neural network accelerator
US10929746B2 (en) * 2017-11-27 2021-02-23 Samsung Electronics Co., Ltd. Low-power hardware acceleration method and system for convolution neural network computation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107273969A (zh) * 2017-05-11 2017-10-20 西安交通大学 一种参数化可扩展的神经网络全连接层多层互连结构
CN107341544A (zh) * 2017-06-30 2017-11-10 清华大学 一种基于可分割阵列的可重构加速器及其实现方法
CN109409509A (zh) * 2018-12-24 2019-03-01 济南浪潮高新科技投资发展有限公司 一种针对基于fpga的卷积神经网络加速器的数据结构和加速方法
CN109635944A (zh) * 2018-12-24 2019-04-16 西安交通大学 一种稀疏卷积神经网络加速器及实现方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于多并行计算和存储的 CNN 加速器;李宗凌 等;《计算机技术与发展》;20190321;第29卷(第7期);第11-16页 *
基于异构处理器的深度卷积神经网络加速系统设计与实现;姜典坤;《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》;20190115(第1期);第I138-934页 *

Also Published As

Publication number Publication date
CN110543936A (zh) 2019-12-06

Similar Documents

Publication Publication Date Title
CN110543936B (zh) 一种cnn全连接层运算的多并行加速方法
JP7233656B2 (ja) 加速化ディープラーニングのタスクアクティベーション
Wang et al. PipeCNN: An OpenCL-based open-source FPGA accelerator for convolution neural networks
CN111684473B (zh) 提高神经网络阵列的性能
CN111459877B (zh) 基于FPGA加速的Winograd YOLOv2目标检测模型方法
CN107239829B (zh) 一种优化人工神经网络的方法
Ma et al. Scalable and modularized RTL compilation of convolutional neural networks onto FPGA
CN109063825B (zh) 卷积神经网络加速装置
CN108564168B (zh) 一种对支持多精度卷积神经网络处理器的设计方法
US11151445B2 (en) Neural network processor with a window expander circuit
CN109146067B (zh) 一种基于FPGA的Policy卷积神经网络加速器
CN114868108A (zh) 组合多个整数和浮点数据类型的脉动阵列部件
EP3785112B1 (en) Matrix vector multiplier with a vector register file comprising a multi-port memory
CN110163359B (zh) 一种计算装置及方法
CN115039067A (zh) 包括具有高效预规格化和扩展动态范围的熔合乘法累加的脉动阵列
WO2020176250A1 (en) Neural network layer processing with normalization and transformation of data
Li et al. A multistage dataflow implementation of a deep convolutional neural network based on FPGA for high-speed object recognition
CN112434801B (zh) 一种按照比特精度进行权重拆分的卷积运算加速方法
Wang et al. DSP-efficient hardware acceleration of convolutional neural network inference on FPGAs
CN113344179B (zh) 基于fpga的二值化卷积神经网络算法的ip核
EP3931758A1 (en) Neural network layer processing with scaled quantization
CN114626516A (zh) 一种基于对数块浮点量化的神经网络加速系统
Shahshahani et al. Memory optimization techniques for fpga based cnn implementations
CN112734020A (zh) 卷积神经网络的卷积乘累加硬件加速装置、系统以及方法
CN117813585A (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