CN112418396A - 一种基于fpga的稀疏激活感知型神经网络加速器 - Google Patents

一种基于fpga的稀疏激活感知型神经网络加速器 Download PDF

Info

Publication number
CN112418396A
CN112418396A CN202011304282.6A CN202011304282A CN112418396A CN 112418396 A CN112418396 A CN 112418396A CN 202011304282 A CN202011304282 A CN 202011304282A CN 112418396 A CN112418396 A CN 112418396A
Authority
CN
China
Prior art keywords
activation
data
ceil
output
multiply
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
CN202011304282.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.)
Beijing University of Technology
Original Assignee
Beijing University of Technology
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 University of Technology filed Critical Beijing University of Technology
Priority to CN202011304282.6A priority Critical patent/CN112418396A/zh
Publication of CN112418396A publication Critical patent/CN112418396A/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/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

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)
  • Complex Calculations (AREA)

Abstract

本发明公开了一种基于FPGA的稀疏激活感知型神经网络加速器,包括了读命令发生器、数据分配器、Tm个运算子通道、大小为Tm×Tn的乘累加阵列、由Tn个加法树组成的加法树组、功能模块和输出缓存。数据分配器将片外存储器读入的数据分配给尽可能少的运算子通道。运算通道将权重和非0激活送入到乘累加阵列,乘累加阵列进行运算卷积乘累加。本发明还提供一种基于FPGA的稀疏激活神经网络运算数据流,它重建非0激活值的位置并且匹配对应的权重。本发明具有很高的数据复用性,减少了数据的搬移节省功耗,未用到的运算子通道及其后续模块被门控时钟所关闭,同样节省了功耗,它可以高效感知稀疏激活,使绝大部分为非0激活所进行的运算,加快了运算速度。

Description

一种基于FPGA的稀疏激活感知型神经网络加速器
技术领域
本发明涉及电子信息和深度学习领域,特别是一种基于FPGA的高效稀疏激活感知型神经网络加速器。
背景技术
卷积神经网络(CNN)近些年来已经成为计算机视觉任务中最流行和有效的算法之一,因其准确率明显高于传统算法,在图像分类,人脸识别,和语义分割等领域得到了广泛的应用。随着CNN网络模型规模不断扩大,需要更多的计算和存储资源,CPU由于其并行计算资源的不足,面对大规模的CNN运算已经现得力不从心,相反,具有大量流处理器的GPU成为了CNN训练和推理的主流平台,但是其运行CNN时高能耗的缺陷无法避免。FPGA作为一种可编程的逻辑器件,其不仅具有较高的灵活性可以适应各种网络结构,强大的逻辑计算资源和和其较高的能源效率也使其成为了运行CNN的很有前途的硬件平台。
在深度CNN中,其计算量是十分巨大的,这些运算的激活和权重很大一部分都为0,通过利用这些稀疏性,可以在不降低网络预测精度的前提下提升大规模网络的推理性能。其中激活的稀疏是在推理过程中产生的,特别是现代卷积神经网络中大规模使用的矫正线性单元,但是与权重稀疏不同的是,推理时产生的稀疏位置很难在训练时进行控制,这就造成现有的利用稀疏激活神经网络加速器方案对稀疏激活的利用率较为低下。
发明内容
本发明的目的在于针对现有技术利用稀疏激活神经网络加速器方案对稀疏激活的利用率较为低下的不足,提出了一种基于FPGA的稀疏激活感知型神经网络加速器,该加速器实现了较高的片上数据复用,同时使用的数据分配方式减少功耗并对稀疏激活中的0值实现了高效跳过。
本发明为实现上述技术目的,所实施的技术方案为:
一种基于FPGA的稀疏激活感知型神经网络加速器,其特征在于,包括:读命令发生器、数据分配器、Tm个运算子通道、大小为Tm×Tn的乘累加阵列、由Tn个加法树组成的加法树组、功能模块和输出缓存。
所述读命令发生器用于向外部总线发送读请求寻址片外存储器存储的激活和权重数据,其读请求按照Tn个输入通道的激活和权重为单位进行,读取顺序为:特征图从宽度到高度再到输入通道深度;权重从宽度到高度,随后从输入通道深度到输出通道深度。
所述数据分配器,用于将片外存储器读入的数据以输入通道为单位分配给运算子通道,内部维持1个输入通道的计数器,在输入通道为Chin的情况下,计数器的溢出值为ceil(Chin/Tn)-ceil(ceil(Chin/Tn)/Tm),跨步为ceil(ceil(Chin/Tn)/Tm),计数条件为上一个输入通道寻址完毕,此处ceil()表示向上取整,“/”为除法,Tm和Tn为乘累加阵列的高度和宽度。只要没溢出,每次计数条件的触发都引起下一个运算子通道的数据分配,一旦溢出,重新分配给第一个运算子通道。没有获得数据的运算子通道及其后续模块被门控时钟所关闭。
所述运算子通道包含片上激活和权重缓存、地址发生器、应答器、稀疏感知器和非0缓存,它接收到的数据首先存储在权重和激活的片上缓存内,片上缓存由FPGA中的blockram构成,激活地址发生器产生运算所需激活的地址,经过应答器应答确认数据已读入后,从激活缓存输出Tn个激活,数据进入稀疏感知器,稀疏感知器输出非0激活和偏移值并送入非0缓存中,非0缓存输出的偏移值进入权重地址发生器中,使用来自稀疏感知器的偏移加上其当前运行状态定位到具体的权重地址,该地址索引到Tn个权重,权重和非0激活送入到后面的乘累加阵列。
所述乘累加阵列接收运算子通道送过来的数据,包含Tm×Tn个乘累加器(MAC)所组成的运算矩阵用以运算卷积中的乘累加,每一个MAC用FPGA中的DSP资源构成,每一行MAC都接收到同样的运算子通道输送的数据,输出为部分和,并送入后面的加法树组。
所述由Tn个加法树组成的加法树组中的每一个加法树输入端为乘累加阵列的每一列MAC的输出,以将其部分和相加得到完整的Tn个输出激活。
可选地,所述读命令发生器寻址内部维持两个输入通道计数器,计数器A和计数器B,在输入通道为Chin的情况下,计数器A的溢出值为ceil(Chin/Tn)-ceil(ceil(Chin/Tn)/Tm),跨步为ceil(ceil(Chin/Tn)/Tm),计数条件为上一个输入通道寻址完毕,计数器B的溢出值为ceil(ceil(Chin/Tn)/Tm)-1,跨步为1,计数条件为计数器A溢出,此处ceil()表示向上取整,“/”为除法,Tm和Tn为乘累加阵列的高度和宽度。所寻址的输入通道为计数器A和计数器B的值之和。
可选地,所述稀疏感知器输入的Tn个激活值被暂存在该模块内部寄存器中,同时生成一个掩膜表,本质为Tn位的寄存器,如果激活值为0该表对应位就为0,否则为1。非0指针的生成依赖Tn级数据选择器,第n级的数据选择器的输入端为n+1级数据选择器的输出端和指针寄存器输出的值加n,其控制端为掩膜判断逻辑,该逻辑判断输入的指针对应位的掩膜值是否为1。第1级数据选择器输出的非0指针的值可以作为偏移值输出,指针指向当前要输出的非0激活,每个时钟周期都输出非0激活及其对应的偏移值。
可选地,所述加法树组的每一个输入接口设置了先入先出缓存,将来自乘累加阵列输出的非同时到达的数据暂存,待所有先入先出缓存均不空再做加法运算。
可选地,在乘累加阵列的第x行y列上的MAC运算输入通道从Dtm×x到Dtm×(x+1)、输出通道从ceil(Chout/Tn)×y到ceil(Chout/Tn)×(y+1)的卷积运算,这里Dtm=ceil(ceil(Chin/Tn)/Tm),Chin为输入通道深度,ceil()表示向上取整,“/”为除法,Tm和Tn为乘累加阵列的高度和宽度。
一种基于FPGA的稀疏激活神经网络运算数据流,将卷积运算按照每Dtm输入通道切分为一个运算片,在输入通道深度为Chin的情况下,Dtm=ceil(ceil(Chin/Tn)/Tm),此处ceil()表示向上取整,“/”为除法,Tm和Tn为乘累加阵列的高度和宽度。多个运算片包含多个运算条带,所述运算条带包含Tn个输入通道的输入激活和权重数据,数据以一个运算条带为单位在运算子通道内部流动;所述运算条带内部寻址非0激活并输出其相对位置的指针,所述运算条带的位置和指针重建非0激活值的位置并且匹配对应的权重。
可选地,所述运算条带在运算子通道内部流动方式为:每个时钟周期流动Tn个输出通道的输出激活所对应的输入激活和权重数据,流动顺序为输出激活的宽度到高度再到输出通道深度。
本发明所采用的技术方案具有的优点和有益效果是:
实现了高效的并行计算,每个时钟周期可以达到Tm×Tn次乘累加运算,并且同一行MAC使用相同的激活,使得其有很高的数据复用性,减少了数据的搬移节省功耗,没有用到的运算子通道及其后续模块被门控时钟所关闭,同样节省了功耗。可以高效感知稀疏激活,配合使用了缓存的加法树使得加速器的稀疏运算效率很高,绝大部分为非0激活所进行的运算,加快了运算速度。
附图说明
图1为本发明的结构示意图;
图2为运算子通道的结构示意图;
图3为乘累加阵列的结构示意图;
图4为加法树组的结构示意图;
具体实施方式
如图1所示的结构,本实施例涉及一种基于FPGA的稀疏激活感知型神经网络加速器,包括读命令发生器、数据分配器、Tm个运算子通道、大小为Tm×Tn的乘累加阵列、由Tn个加法树组成的加法树组、功能模块和输出缓存。
所述读命令发生器用于向外部总线发送读请求寻址片外存储器存储的激活和权重数据,其读请求按照Tn个输入通道的激活和权重为单位进行,读取顺序为:特征图从宽度到高度再到输入通道深度;权重从宽度到高度,随后从输入通道深度到输出通道深度。
所述数据分配器,用于将片外存储器读入的数据以输入通道为单位分配给运算子通道,内部维持1个输入通道的计数器,在输入通道为Chin的情况下,计数器的溢出值为ceil(Chin/Tn)-ceil(ceil(Chin/Tn)/Tm),跨步为ceil(ceil(Chin/Tn)/Tm),计数条件为上一个输入通道寻址完毕,此处ceil()表示向上取整,“/”为除法,Tm和Tn为乘累加阵列的高度和宽度。只要没溢出,每次计数条件的触发都引起下一个运算子通道的数据分配,一旦溢出,重新分配给第一个运算子通道。这时,只要不满足Chin>Tn×Tm,Tm个运算子通道就不会都有数据,没有数据的运算子通道及其后续模块使用门控时钟关闭,以降低系统功耗。
所述运算子通道的结构参见图2,接收到的数据首先存储在权重和激活的片上缓存上,片上缓存由FPGA中的block ram构成,激活地址发生器产生运算所需激活的地址,经过应答器应答确认数据已读入后,激活缓存输出Tn个激活,数据流入稀疏感知器,稀疏感知器每个周期输出一个非0激活,及其对应的偏移对,完成压缩功能以重建非0激活及其拓扑信息。非0激活经过非0缓存后广播给Tn个MAC单元,偏移进入权重寻址发生器,该模块进行寻址权重,使用来自稀疏感知器的偏移加上其当前运行状态就可以定位到具体的权重地址,该地址索引到Tn个权重值,这样Tn个MAC每个周期都可以得到一组权重和激活数据,没有空闲,以保证后级模块的最大运行效率。
所述稀疏感知器接收来自运算子通道中激活缓存输出的Tn个激活,所述稀疏感知器输入的Tn个激活值被暂存在该模块内部寄存器中,同时生成一个掩膜表,本质为Tn位的寄存器,如果激活值为0该表对应位就为0,否则为1。非0指针的生成依赖Tn级数据选择器,第n级的数据选择器的输入端为n+1级数据选择器的输出端和指针寄存器输出的值加n,其控制端为掩膜判断逻辑,该逻辑判断输入的指针对应位的掩膜值是否为1。第1级数据选择器输出的非0指针的值可以作为偏移值输出,指针指向当前要输出的非0激活,每个时钟周期都输出非0激活及其对应的偏移值。稀疏感知器的输出格式为第0位为stripe_new,该标志位标志着激活缓存输出新的Tn个激活,1+log2Tn位为偏移值,高16位输出非0值,以这种方式传输所耗费的额外硬件资源很少,以Tn=16为例,非数据位占比仅23.8%,这有效地减少内部数据传输的带宽消耗。由于其输入是Tn个激活,输出是每个时钟周期一个非0激活,所以这是种动态、无需解压的激活数据压缩方式阻止非0数据流入MAC,其输出速度等于MAC运算速度,从而保持MAC处于一直忙碌工作状态,有效地提高了运算效率。
所述乘累加阵列接收运算子通道传送过来的数据,通过图3的多个MAC上交错的行和列来分配卷积与并行化卷积的向量运算,该阵列尺寸为Tm×Tn,每一列将输出通道运算分为Tn份,每一行将输入通道运算分为Tm份,即:阵列的横向将Tn个输出通道乘加运算平铺,阵列的纵向将Tm个输入通道乘加运算平铺。为了最大程度地实现输入激活的复用,每一行Tn个MAC共享同一个激活,其建立了相同的激活连接,而连接到Tn个权重核。在乘累加阵列的第x行y列上的MAC运算输入通道从Dtm×x到Dtm×(x+1)、输出通道从ceil(Chout/Tn)×y到ceil(Chout/Tn)×(y+1)的卷积运算,这里Dtm=ceil(ceil(Chin/Tn)/Tm),Chin为输入通道深度,ceil()表示向上取整,“/”为除法,Tm和Tn为乘累加阵列的高度和宽度。任意2个MAC的运算不会重叠,由此避免内部互联数据传输所带来的资源消耗。
所述加法树组如图4将每一列MAC的输出都连接到一个单独的加法树中,这样Tn个加法树将Tn列MAC输出的部分和相加以得到Tn个完整的输出,为了防止前几层卷积层的负载不平衡带来的MAC的数据输出速率不同而造成水桶效应,所述加法树组在输入端口前增加先入先出存储器,暂时存下累加器输出的部分和来将加法运算和乘加运算解耦,在Tm=16的结构中,将先入先出存储器深度设为16可以较好地缓解前几层卷积层的负载不平衡问题,并以最优资源效率的情况下延缓运算时先入先出存储器进入近满状态。
加法树组输出Tn个运算结果进入功能模块,功能模块进行relu运算或者池化运算,运算结果进入宽度为16×Tn bits的输出缓存,当输出缓存存储的数据深度达到了外部总线的突发长度或者加法树组运算全部完成时,将数据以突发的形式写入到外部存储中。

Claims (7)

1.一种基于FPGA的稀疏激活感知型神经网络加速器,其特征在于,包括:读命令发生器、数据分配器、Tm个运算子通道、大小为Tm×Tn的乘累加阵列、由Tn个加法树组成的加法树组、功能模块和输出缓存;
所述读命令发生器用于向外部总线发送读请求寻址片外存储器存储的激活和权重数据,其读请求按照Tn个输入通道的激活和权重为单位进行,读取顺序为:特征图从宽度到高度再到输入通道深度;权重从宽度到高度,随后从输入通道深度到输出通道深度;
所述数据分配器,用于将片外存储器读入的数据以输入通道为单位分配给运算子通道,内部维持1个输入通道的计数器,在输入通道为Chin的情况下,计数器的溢出值为ceil(Chin/Tn)-ceil(ceil(Chin/Tn)/Tm),跨步为ceil(ceil(Chin/Tn)/Tm),计数条件为上一个输入通道寻址完毕,此处ceil()表示向上取整,“/”为除法,Tm和Tn为乘累加阵列的高度和宽度;只要没溢出,每次计数条件的触发都引起下一个运算子通道的数据分配,一旦溢出,重新分配给第一个运算子通道;没有获得数据的运算子通道及其后续模块被门控时钟所关闭;
所述运算子通道包含片上激活和权重缓存、地址发生器、应答器、稀疏感知器和非0缓存,它接收到的数据首先存储在权重和激活的片上缓存内,片上缓存由FPGA中的block ram构成,激活地址发生器产生运算所需激活的地址,经过应答器应答确认数据已读入后,从激活缓存输出Tn个激活,数据进入稀疏感知器,稀疏感知器输出非0激活和偏移值并送入非0缓存中,非0缓存输出的偏移值进入权重地址发生器中,使用来自稀疏感知器的偏移加上其当前运行状态位到具体的权重地址,该地址索引到Tn个权重,权重和非0激活送入到后面的乘累加阵列;
所述乘累加阵列接收运算子通道送过来的数据,包含Tm×Tn个乘累加器(MAC)所组成的运算矩阵用以运算卷积中的乘累加,每一个MAC用FPGA中的DSP资源构成,每一行MAC都接收到同样的运算子通道输送的数据,输出为部分和,并送入后面的加法树组;
所述由Tn个加法树组成的加法树组中的每一个加法树输入端为乘累加阵列的每一列MAC的输出,以将其部分和相加得到完整的Tn个输出激活。
2.根据权利要求1所述基于FPGA的稀疏激活感知型神经网络加速器,其特征在于,所述读命令发生器寻址内部维持两个输入通道计数器,计数器A和计数器B,在输入通道为Chin的情况下,计数器A的溢出值为ceil(Chin/Tn)-ceil(ceil(Chin/Tn)/Tm),跨步为ceil(ceil(Chin/Tn)/Tm),计数条件为上一个输入通道寻址完毕,计数器B的溢出值为ceil(ceil(Chin/Tn)/Tm)-1,跨步为1,计数条件为计数器A溢出,此处ceil()表示向上取整,“/”为除法,Tm和Tn为乘累加阵列的高度和宽度;所寻址的输入通道为计数器A和计数器B的值之和。
3.根据权利要求1所述基于FPGA的稀疏激活感知型神经网络加速器,其特征在于,所述稀疏感知器输入的Tn个激活值被暂存在该模块内部寄存器中,同时生成一个掩膜表,本质为Tn位的寄存器,如果激活值为0该表对应位就为0,否则为1;非0指针的生成依赖Tn级数据选择器,第n级的数据选择器的输入端为n+1级数据选择器的输出端和指针寄存器输出的值加n,其控制端为掩膜判断逻辑,该逻辑判断输入的指针对应位的掩膜值是否为1;第1级数据选择器输出的非0指针的值作为偏移值输出,指针指向当前要输出的非0激活,每个时钟周期都输出非0激活及其对应的偏移值。
4.根据权利要求1所述基于FPGA的稀疏激活感知型神经网络加速器,其特征在于,所述加法树组的每一个输入接口设置了先入先出缓存,将来自乘累加阵列输出的非同时到达的数据暂存,待所有先入先出缓存均不空再做加法运算。
5.根据权利要求1所述基于FPGA的稀疏激活感知型神经网络加速器,其特征在于,在乘累加阵列的第x行y列上的MAC运算输入通道从Dtm×x到Dtm×(x+1)、输出通道从ceil(Chout/Tn)×y到ceil(Chout/Tn)×(y+1)的卷积运算,这里Dtm=ceil(ceil(Chin/Tn)/Tm),Chin为输入通道深度,ceil()表示向上取整,“/”为除法,Tm和Tn为乘累加阵列的高度和宽度。
6.一种基于FPGA的稀疏激活神经网络运算数据流的方法,其特征在于,将卷积运算按照每Dtm输入通道切分为一个运算片,在输入通道深度为Chin的情况下,Dtm=ceil(ceil(Chin/Tn)/Tm),此处ceil()表示向上取整,“/”为除法,Tm和Tn为乘累加阵列的高度和宽度;运算片包含多个运算条带,所述运算条带包含Tn个输入通道的输入激活和权重数据,数据以一个运算条带为单位在运算子通道内部流动;所述运算条带内部寻址非0激活并输出其相对位置的指针,所述运算条带的位置和指针重建非0激活值的位置并且匹配对应的权重。
7.根据权利要求6所述方法,其特征在于,运算条带在运算子通道内部流动方式为:每个时钟周期流动Tn个输出通道的输出激活所对应的输入激活和权重数据,流动顺序为输出激活的宽度到高度再到输出通道深度。
CN202011304282.6A 2020-11-20 2020-11-20 一种基于fpga的稀疏激活感知型神经网络加速器 Pending CN112418396A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011304282.6A CN112418396A (zh) 2020-11-20 2020-11-20 一种基于fpga的稀疏激活感知型神经网络加速器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011304282.6A CN112418396A (zh) 2020-11-20 2020-11-20 一种基于fpga的稀疏激活感知型神经网络加速器

Publications (1)

Publication Number Publication Date
CN112418396A true CN112418396A (zh) 2021-02-26

Family

ID=74774202

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011304282.6A Pending CN112418396A (zh) 2020-11-20 2020-11-20 一种基于fpga的稀疏激活感知型神经网络加速器

Country Status (1)

Country Link
CN (1) CN112418396A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113065653A (zh) * 2021-04-27 2021-07-02 北京工业大学 面向移动端图像分类的轻量级卷积神经网络的设计方法
CN113191493A (zh) * 2021-04-27 2021-07-30 北京工业大学 一种基于fpga并行度自适应的卷积神经网络加速器
CN113269316A (zh) * 2021-03-26 2021-08-17 复旦大学 支持稀疏神经网络计算加速器的稀疏数据选择逻辑模块
CN113313244A (zh) * 2021-06-17 2021-08-27 东南大学 面向加法网络的近存储神经网络加速器及其加速方法
CN113592072A (zh) * 2021-07-26 2021-11-02 中国人民解放军国防科技大学 一种面向访存优化的稀疏卷积神经网络加速器

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107239824A (zh) * 2016-12-05 2017-10-10 北京深鉴智能科技有限公司 用于实现稀疏卷积神经网络加速器的装置和方法
CN111445012A (zh) * 2020-04-28 2020-07-24 南京大学 一种基于fpga的分组卷积硬件加速器及其方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107239824A (zh) * 2016-12-05 2017-10-10 北京深鉴智能科技有限公司 用于实现稀疏卷积神经网络加速器的装置和方法
US20180157969A1 (en) * 2016-12-05 2018-06-07 Beijing Deephi Technology Co., Ltd. Apparatus and Method for Achieving Accelerator of Sparse Convolutional Neural Network
CN111445012A (zh) * 2020-04-28 2020-07-24 南京大学 一种基于fpga的分组卷积硬件加速器及其方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JUNHONG LIU 等: "Register-Aware Optimizations for Parallel Sparse Matrix–Matrix Multiplication", INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 31 December 2019 (2019-12-31), pages 1 - 15 *
董晓: "面向稀疏卷积神经网络的 GPU 性能优化方法", 软件学报, vol. 31, no. 9, 21 April 2020 (2020-04-21), pages 2944 - 2964 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113269316A (zh) * 2021-03-26 2021-08-17 复旦大学 支持稀疏神经网络计算加速器的稀疏数据选择逻辑模块
CN113269316B (zh) * 2021-03-26 2022-10-11 复旦大学 支持稀疏神经网络计算加速器的稀疏数据选择逻辑模块
CN113065653A (zh) * 2021-04-27 2021-07-02 北京工业大学 面向移动端图像分类的轻量级卷积神经网络的设计方法
CN113191493A (zh) * 2021-04-27 2021-07-30 北京工业大学 一种基于fpga并行度自适应的卷积神经网络加速器
CN113065653B (zh) * 2021-04-27 2024-05-28 北京工业大学 面向移动端图像分类的轻量级卷积神经网络的设计方法
CN113191493B (zh) * 2021-04-27 2024-05-28 北京工业大学 一种基于fpga并行度自适应的卷积神经网络加速器
CN113313244A (zh) * 2021-06-17 2021-08-27 东南大学 面向加法网络的近存储神经网络加速器及其加速方法
CN113313244B (zh) * 2021-06-17 2024-04-09 东南大学 面向加法网络的近存储神经网络加速器及其加速方法
CN113592072A (zh) * 2021-07-26 2021-11-02 中国人民解放军国防科技大学 一种面向访存优化的稀疏卷积神经网络加速器
CN113592072B (zh) * 2021-07-26 2024-05-14 中国人民解放军国防科技大学 一种面向访存优化的稀疏卷积神经网络加速器

Similar Documents

Publication Publication Date Title
CN112418396A (zh) 一种基于fpga的稀疏激活感知型神经网络加速器
CN108108809B (zh) 一种针对卷积神经元网络进行推理加速的硬件架构及其工作方法
CN110516801B (zh) 一种高吞吐率的动态可重构卷积神经网络加速器
CN109447241B (zh) 一种面向物联网领域的动态可重构卷积神经网络加速器架构
CN110348574B (zh) 一种基于zynq的通用卷积神经网络加速结构及设计方法
CN109409511B (zh) 一种用于动态可重构阵列的卷积运算数据流调度方法
CN111626414B (zh) 一种动态多精度神经网络加速单元
CN108805266A (zh) 一种可重构cnn高并发卷积加速器
CN111967468A (zh) 一种基于fpga的轻量级目标检测神经网络的实现方法
CN110738308B (zh) 一种神经网络加速器
CN111445012A (zh) 一种基于fpga的分组卷积硬件加速器及其方法
CN108416433A (zh) 一种基于异步事件的神经网络异构加速方法和系统
CN111898733A (zh) 一种深度可分离卷积神经网络加速器架构
CN110851779B (zh) 用于稀疏矩阵运算的脉动阵列架构
CN112950656A (zh) 一种基于fpga平台的按通道进行预读取数据的分块卷积方法
CN113283587B (zh) 一种Winograd卷积运算加速方法及加速模块
CN113361695A (zh) 卷积神经网络加速器
CN110598844A (zh) 一种基于fpga的并行卷积神经网络加速器及加速方法
Chen et al. An efficient accelerator for multiple convolutions from the sparsity perspective
CN113313244B (zh) 面向加法网络的近存储神经网络加速器及其加速方法
Zong-ling et al. The design of lightweight and multi parallel CNN accelerator based on FPGA
Liu et al. CASSANN-v2: A high-performance CNN accelerator architecture with on-chip memory self-adaptive tuning
CN111610963B (zh) 芯片结构及其乘加计算引擎
CN113191493B (zh) 一种基于fpga并行度自适应的卷积神经网络加速器
Xu et al. Design and implementation of an efficient CNN accelerator for low-cost FPGAs

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