CN113487020A - 用于神经网络计算的参差存储结构及神经网络计算方法 - Google Patents

用于神经网络计算的参差存储结构及神经网络计算方法 Download PDF

Info

Publication number
CN113487020A
CN113487020A CN202110781610.XA CN202110781610A CN113487020A CN 113487020 A CN113487020 A CN 113487020A CN 202110781610 A CN202110781610 A CN 202110781610A CN 113487020 A CN113487020 A CN 113487020A
Authority
CN
China
Prior art keywords
memory
weight data
storage
neural network
memories
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
CN202110781610.XA
Other languages
English (en)
Other versions
CN113487020B (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.)
Institute of Semiconductors of CAS
Original Assignee
Institute of Semiconductors of CAS
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 Institute of Semiconductors of CAS filed Critical Institute of Semiconductors of CAS
Priority to CN202110781610.XA priority Critical patent/CN113487020B/zh
Publication of CN113487020A publication Critical patent/CN113487020A/zh
Application granted granted Critical
Publication of CN113487020B publication Critical patent/CN113487020B/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)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Neurology (AREA)
  • Image Analysis (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明提供一种用于神经网络计算的参差存储结构及神经网络计算方法,涉及数字信号处理技术领域。该参差存储结构包括:直接存储器访问器,用于从外部获取需要的权重数据;存储阵列,包括并行布置的多个存储器,存储器用于存储权重数据;广播网络,包括多个选择器,选择器用于将多个存储器分配给不同的计算簇,以实现不同大小特征图;控制器,连接广播网络,用于控制广播网络中的数据流以及各个选择器的开关;其中,存储阵列包含的存储器个数与计算簇的数量相等,存储器的存储容量根据存储器在广播网络中的重要性进行排列。本发明可以通过配置不同的广播网络适配不同大小的特征图,同时通过较为简单的连接网络,获得很高的速度。

Description

用于神经网络计算的参差存储结构及神经网络计算方法
技术领域
本发明涉及数字信号处理技术领域,尤其涉及一种用于神经网络计算的参差存储结构及神经网络计算方法。
背景技术
随着人工神经网络的火热,通用平台开始逐渐无法满足神经网络计算的高效的需求,于是在FPGA平台或是芯片上规划的专用于神经网络计算的架构应运而生。
在神经网络计算中,卷积神经网络和脉冲神经网络又是其中最火热的领域。其中,卷积神经网络作为人工神经网络的一种,已成为当前语义分析和图像识别领域的研究热点。卷积神经网络是一个多层的神经网络,每层由多个二维平面构成,而每个平面都是由不同的卷积核卷积而成,卷积之后的图层通过池化处理后生成特征图谱,传输给下层网络。脉冲神经网络则是近几年新成为热潮的神经网络,脉冲神经网络中的数据将脉冲信号输送给网络进行类似卷积的累加处理,一旦神经元达到了阈值电位,就会输出脉冲给下一级,随后达到电位的神经元会被重置。这种神经网络更符合人们对于人工神经网络的认识,输入脉冲神经网络的脉冲随着时间发生,这样在二进制编码中丢失的信息可以在脉冲的时间信息中重新获取。
针对这两种人工神经网络的特性,主流对卷积神经网络进行处理的方式都是用冯诺依曼架构的处理器,加入大量的运算单元来对人工神经网络进行加速,同时使用大位宽的存储器,使之满足神经网络计算单元的要求,但大位宽的存储器一般意味着复杂的片上网络,会使得存储器成为神经网络加速器的速度瓶颈,同时造成功耗浪费。
发明内容
为了解决目前神经网络加速器的处理速度较慢的问题,本发明提供了一种用于神经网络计算的参差存储结构及神经网络计算方法。
本发明一方面提供了一种用于神经网络计算的参差存储结构,包括:
直接存储器访问器,用于从外部获取需要的权重数据;
存储阵列,包括并行布置的多个存储器,存储器用于存储权重数据;
广播网络,包括多个选择器,选择器用于将多个存储器分配给不同的计算簇,以实现不同大小特征图;
控制器,连接广播网络,用于控制广播网络中的数据流以及各个选择器的开关;
其中,存储阵列包含的存储器个数与计算簇的数量相等,存储器的存储容量根据存储器在广播网络中的重要性进行排列。
根据本公开的实施例,存储器由不同大小的存储块组成。
根据本公开的实施例,存储块包括SRAM、寄存器或DRAM。
根据本公开的实施例,选择器包括多路选择器或物理开关。
根据本公开的实施例,存储器的存储容量根据存储器在广播网络中的重要性进行排列,包括:
设定存储阵列包含的存储器个数为N,N=2n且n为正整数,则每个存储器都包含一个最底层的存储块;
编号为2k且k=1,2,…,N/2的存储器堆叠高一层级的存储块,编号为4k且k=1,2,…,[N/4]的存储器堆叠更高层级的存储块;
以此类推,直至存储阵列中的每个存储器中的存储块排列完成。
根据本公开的实施例,直接存储器访问器从片外或片上其他存储装置获取需要的权重数据。
本发明一方面提供了一种应用前述用于神经网络计算的参差存储结构的神经网络计算方法,包括:
步骤S1,通过直接存储器访问器从外部搬运权重数据到存储阵列中的各个存储器;
步骤S2,由控制器控制广播网络中各个选择器的开关,由存储器将权重数据输出至计算簇,以进行人工神经网络的计算;
步骤S3,对计算簇更换不同输入通道且需要用到相同权重值的特征图;
步骤S4,循环步骤S2至步骤S3,直至整层人工神经网络计算完成。
根据本公开的实施例,方法还包括:
步骤S5,当计算簇的输入特征图尺寸发生变化时,通过控制器重新修改广播网络中各个选择器的开关,循环步骤S2至步骤S4,直至整个人工神经网络计算完成。
根据本公开的实施例,存储器存储4种尺寸的输入特征图,包括64×64、32×32、16×16和8×8;存储器还存储全连接层的权重数据。
根据本公开的实施例,方法还包括:
预先设置计算簇和存储器的数量均为8个,通过控制器控制选择器的数据流动方向包括上侧选择或右侧选择,设置选择器1~7分别与存储器1~7和计算簇1~7的编号一一对应;
当控制器配置广播网络为64×64时,通过控制器将选择器1~7全部配置为右侧选择,则所有计算簇1~8的权重数据输入均为存储器8层1存储块中的权重数据;
当控制器配置广播网络为32×32时,通过控制器将选择器4配置为上侧选择且其余选择器配置为右侧选择,则计算簇1~4的权重数据输入均为存储器4层2存储块中的权重数据,计算簇5~8的权重数据输入均为存储器8层2存储块中的权重数据;
当控制器配置广播网络为16×16时,通过控制器将选择器2、4和6配置为上侧选择且其余选择器配置为右侧选择,则计算簇1~2的权重数据输入均为存储器2层3存储块中的权重数据,计算簇3~4的权重数据输入均为存储器4层3存储块中的权重数据,则计算簇5~6的权重数据输入均为存储器6层3存储块中的权重数据,计算簇7~8的权重数据输入均为存储器8层3存储块中的权重数据;
当控制器配置广播网络为8×8或全连接层时,通过控制器将所有选择器配置为上侧选择,则每个计算簇的权重数据输入均为各自存储器层4存储块中的权重数据。
与现有技术相比,本发明提供的用于神经网络计算的参差存储结构及神经网络计算方法,至少具有以下有益效果:
(1)本发明可以配置不同的广播网络模式以适应不同尺寸的特征图;
(2)本发明存储网络比较简单,有比较低的单元延时,神经网络计算的处理速度更快;
(3)本发明避免了无用访存,显著降低了功耗。
附图说明
通过以下参照附图对本发明实施例的描述,本发明的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了根据本公开实施例的用于神经网络计算的参差存储结构的方框图;
图2示意性示出了根据本公开一实施例的存储器中的存储块排列的结构图;
图3示意性示出了根据本公开实施例的神经网络计算方法的流程图;
图4示意性示出了根据本公开一实施例的通过控制器配置不同广播网络的操作流程图;
图5示意性示出了根据本公开另一实施例的存储器中的存储块排列的结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接或可以互相通讯;可以是直接连接,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
图1示意性示出了根据本公开实施例的用于神经网络计算的参差存储结构的方框图。
如图1所示,用于神经网络计算的参差存储结构,包括:直接存储器访问器,用于从外部获取需要的权重数据;存储阵列,包括并行布置的多个存储器,存储器用于存储权重数据;广播网络,包括多个选择器,选择器用于将多个存储器分配给不同的计算簇,以实现不同大小特征图;控制器,连接广播网络,用于控制广播网络中的数据流以及各个选择器的开关;其中,存储阵列包含的存储器个数与计算簇的数量相等,存储器的存储容量根据存储器在广播网络中的重要性进行排列。
由此,该参差存储结构可以用来存储权重,可以高速输送权重到神经网络加速器的计算单元,同时减少对存储器的读取次数,避免了无用读取,并减少了系统的功耗。
其中,直接存储器访问器(Direct Memory Access,DMA)是一种高速输入输出方式,不必中断当前程序,而是在输入输出设备与内存之间直接交换数据。DMA传输将数据从一个地址空间复制到另个地址空间,提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。
本公开实施例中,直接存储器访问器从片外或片上其他存储装置获取需要的权重数据。也即,前述直接存储器访问器中的外部可以包括片外或片上其他存储装置。
本公开实施例中,存储器由不同大小的存储块组成。
其中,存储块为该参差存储结构中最小的存储单元,不同的存储块可以为不同大小。具体地,存储块包括SRAM、寄存器或DRAM。
本公开实施例中,选择器包括多路选择器或物理开关。
图2示意性示出了根据本公开一实施例的存储器中的存储块排列的结构图。
如图2所示,本公开一实施例中,存储器的存储容量根据存储器在广播网络中的重要性进行排列,也即存储器中的存储块排列可以包括:
设定存储阵列包含的存储器个数为N,N=2n且n为正整数,则每个存储器都包含一个最底层的存储块;
编号为2k且k=1,2,…,N/2的存储器堆叠高一层级的存储块,编号为4k且k=1,2,…,[N/4]的存储器堆叠更高层级的存储块;
以此类推,直至存储阵列中的每个存储器中的存储块排列完成。
其中,[N/4]表示对N/4取整。图2给出了一个具体实施例下的存储器中的存储块排列形式,这里N=8,当K=1是,存储器1~8都包含一个最底层的存储块,也即层4。编号为2、4、6和8的存储器都在层4上堆叠了高一层级的存储块,也即层3。进一步地,编号为4和8的存储器都在层3上堆叠了更高层级的存储块,也即层2。最终,编号为8的存储器在层2上还堆叠了最高层级的存储块,也即层1。
由此可见,本公开一实施例在不同位置的存储器的存储容量大小不同,存储器的容量大小是根据其在广播网络中的重要性进行排列,最右侧的存储器(例如图2中的存储器8)存储容量最大。
可以理解的是,根据上述存储器中的存储块排列方式,本公开实施例还可以具有任意存储器个数为N,N=2n且n为正整数情况下的类推存储块排列。以上仅仪为便于理解给出了一种具体实施例,例如存储阵列中的存储器个数还可以为16、32、64或128等等。
根据同一总体构思,本公开实施例还提供了一种应用前述用于神经网络计算的参差存储结构的神经网络计算方法。
以下以一种置于视觉芯片内部的参差存储结构为例,对本公开一实施例提供的神经网络计算方法进行进一步详细说明。
根据该实施例的视觉芯片,包含64个计算单元,每8个计算单元为一组成为一个计算簇,共有8个计算簇,与之匹配的,存储阵列中包含8个存储器,整个参差存储结构如图2所示。
图3示意性示出了根据本公开实施例的神经网络计算方法的流程图。
如图3所示,该神经网络计算方法,包括步骤S1~步骤S4。
步骤S1,通过直接存储器访问器从外部搬运权重数据到存储阵列中的各个存储器。
步骤S2,由控制器控制广播网络中各个选择器的开关,由存储器将权重数据输出至计算簇,以进行人工神经网络的计算。
步骤S3,对计算簇更换不同输入通道且需要用到相同权重值的特征图。
步骤S4,循环步骤S2至步骤S3,直至整层人工神经网络计算完成。
其中,由于人工神经网络的权重数据相对固定,一般步骤S1只需进行一次。
在一些实施例中,上述方法还可以包括:
步骤S5,当计算簇的输入特征图尺寸发生变化时,通过控制器重新修改广播网络中各个选择器的开关,循环步骤S2至步骤S4,直至整个人工神经网络计算完成。
本公开一实施例中,存储器存储4种尺寸的输入特征图,包括64×64、32×32、16×16和8×8;存储器还存储全连接层的权重数据。
由此,存储器可为计算簇提供4种输入特征图以及全连接层的权重数据存储支持。
图4示意性示出了根据本公开一实施例的通过控制器配置不同广播网络的操作流程图。
如图4所示,通过控制器配置不同广播网络的操作可以包括子步骤S401~子步骤S404。
步骤S401,预先设置计算簇和存储器的数量均为8个,通过控制器控制选择器的数据流动方向包括上侧选择或右侧选择,设置选择器1~7分别与存储器1~7和计算簇1~7的编号一一对应。
结合图2可知,例如选择器1分别对应于存储器1和计算簇1,选择器2分别对应于存储器2和计算簇2,以此类推,选择器7分别对应于存储器7和计算簇7。需要说明的是,存储器8和计算簇8根据控制器设置的选择器的数据流动方向,可以无需配置相应的选择器。
步骤S402,当控制器配置广播网络为64×64时,通过控制器将选择器1~7全部配置为右侧选择,则所有计算簇1~8的权重数据输入均为存储器8层1存储块中的权重数据。
也即,当控制器配置广播网络为64×64时,将权重数据存储在层1的存储块中。
步骤S403,当控制器配置广播网络为32×32时,通过控制器将选择器4配置为上侧选择且其余选择器配置为右侧选择,则计算簇1~4的权重数据输入均为存储器4层2存储块中的权重数据,计算簇5~8的权重数据输入均为存储器8层2存储块中的权重数据。
也即,当控制器配置广播网络为32×32时,将权重数据存储在层2的存储块中。
步骤S404,当控制器配置广播网络为16×16时,通过控制器将选择器2、4和6配置为上侧选择且其余选择器配置为右侧选择,则计算簇1~2的权重数据输入均为存储器2层3存储块中的权重数据,计算簇3~4的权重数据输入均为存储器4层3存储块中的权重数据,则计算簇5~6的权重数据输入均为存储器6层3存储块中的权重数据,计算簇7~8的权重数据输入均为存储器8层3存储块中的权重数据。
也即,当控制器配置广播网络为16×16时,将权重数据存储在层3的存储块中。
步骤S405,当控制器配置广播网络为8×8或全连接层时,通过控制器将所有选择器配置为上侧选择,则每个计算簇的权重数据输入均为各自存储器层4存储块中的权重数据。
也即,当控制器配置广播网络为8×8或全连接层时,将权重数据存储在层4的存储块中。
需要说明的是,上述子步骤S402~子步骤S405均为同步进行的。由此可见,根据控制器配置的不同广播网络类型,本公开实施例可以配置不同的广播网络模式以适应不同尺寸的特征图。
可以理解的是,上述实施例以每8个计算单元为一组成为一个计算簇,共有8个计算簇。在其他实施例中,也可以自由分组成为4个计算簇,也可以为2个计算簇,甚至可以为1个计算簇。
如果为4个计算簇,则存储器存储的输入特征图可以包括64×64、32×32、16×16、8×8和4×4四种。如果为2个计算簇,存储器存储的输入特征图可以包括16×16、8×8、4×4和2×2四种。
此外,这4种尺寸的特征图并不是此种方法的限制,只不过是为了方便理解举的一个例子。
图5示意性示出了根据本公开另一实施例的存储器中的存储块排列的结构图。
例如图5所示,在一些实施例中,以16个计算簇为例,存储器存储的输入特征图就可以包括128×128、64×64、32×32、和16×16四种。在128×128的特征图运算中,通过控制器将选择器1~15都配置为右侧选择,从而选择出存储器16层0的权重数据;而在64×64的特征图中,通过控制器将选择器8配置为上侧选择,从而选择出存储器8层1和存储器16层1的权重数据,以此类推。
由于该参差存储结构具有较为简单的连接关系,能够在实际片上应用中获得很高的速度,并且避免了存储器自身无用读取,以及复杂网络造成的功耗问题,使得整个结构获得了更低的功耗。
综上所述,本公开实施例提供了一种用于神经网络计算的参差存储结构及神经网络计算方法,该参差存储结构用来存储权重,可以高速输送权重到神经网络加速器的计算单元,该神经网络计算方法可以通过配置不同的广播模式适配不同大小的特征图,同时通过较为简单的连接网络,获得很高的速度。此外,本公开还减少了无用的存储读取,拥有较低的功耗消耗。
应该明白,公开的过程中的步骤的特定顺序或层次是示例性方法的实例。基于设计偏好,应该理解,过程中的步骤的特定顺序或层次可以在不脱离本公开的保护范围的情况下得到重新安排。所附的方法权利要求以示例性的顺序给出了各种步骤的要素,并且不是要限于的特定顺序或层次。
在本发明的描述中,需要理解的是,术语“上”、“下”、“前”、“后”、“左”、“右”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
贯穿附图,相同的元素由相同或相近的附图标记来表示。可能导致本公开的理解造成混淆时,将省略常规结构或构造。并且图中各部件的形状、尺寸、位置关系不反映真实大小、比例和实际位置关系。另外,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。
类似地,为了精简本公开并帮助理解各个公开方面中的一个或多个,在上面对本公开示例性实施例的描述中,本公开的各个特征有时被一起分到单个实施例、图或者对其描述中。参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本公开的至少一个实施例或示例中。本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或者多个实施例或示例中以合适的方式结合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。因此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个、三个等,除非另有明确具体的限定。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种用于神经网络计算的参差存储结构,其特征在于,包括:
直接存储器访问器,用于从外部获取需要的权重数据;
存储阵列,包括并行布置的多个存储器,所述存储器用于存储所述权重数据;
广播网络,包括多个选择器,所述选择器用于将所述多个存储器分配给不同的计算簇,以实现不同大小特征图;
控制器,连接所述广播网络,用于控制所述广播网络中的数据流以及各个选择器的开关;
其中,所述存储阵列包含的存储器个数与所述计算簇的数量相等,所述存储器的存储容量根据所述存储器在广播网络中的重要性进行排列。
2.根据权利要求1所述的用于神经网络计算的参差存储结构,其特征在于,所述存储器由不同大小的存储块组成。
3.根据权利要求2所述的用于神经网络计算的参差存储结构,其特征在于,所述存储块包括SRAM、寄存器或DRAM。
4.根据权利要求1所述的用于神经网络计算的参差存储结构,其特征在于,所述选择器包括多路选择器或物理开关。
5.根据权利要求2所述的用于神经网络计算的参差存储结构,其特征在于,所述存储器的存储容量根据所述存储器在广播网络中的重要性进行排列,包括:
设定所述存储阵列包含的存储器个数为N,N=2n且n为正整数,则每个存储器都包含一个最底层的存储块;
编号为2k且k=1,2,…,N/2的存储器堆叠高一层级的存储块,编号为4k且k=1,2,…,[N/4]的存储器堆叠更高层级的存储块;
以此类推,直至所述存储阵列中的每个存储器中的存储块排列完成。
6.根据权利要求1所述的用于神经网络计算的参差存储结构,其特征在于,所述直接存储器访问器从片外或片上其他存储装置获取需要的权重数据。
7.一种应用权利要求1所述用于神经网络计算的参差存储结构的神经网络计算方法,其特征在于,包括:
步骤S1,通过直接存储器访问器从外部搬运权重数据到存储阵列中的各个存储器;
步骤S2,由控制器控制广播网络中各个选择器的开关,由存储器将权重数据输出至计算簇,以进行人工神经网络的计算;
步骤S3,对所述计算簇更换不同输入通道且需要用到相同权重值的特征图;
步骤S4,循环步骤S2至步骤S3,直至整层人工神经网络计算完成。
8.根据权利要求7所述的神经网络计算方法,其特征在于,所述方法还包括:
步骤S5,当计算簇的输入特征图尺寸发生变化时,通过控制器重新修改广播网络中各个选择器的开关,循环步骤S2至步骤S4,直至整个人工神经网络计算完成。
9.根据权利要求7所述的神经网络计算方法,其特征在于,所述存储器存储4种尺寸的输入特征图,包括64×64、32×32、16×16和8×8;
所述存储器还存储全连接层的权重数据。
10.根据权利要求9所述的神经网络计算方法,其特征在于,所述方法还包括:
预先设置所述计算簇和存储器的数量均为8个,通过控制器控制所述选择器的数据流动方向包括上侧选择或右侧选择,设置选择器1~7分别与所述存储器1~7和计算簇1~7的编号一一对应;
当控制器配置广播网络为64×64时,通过控制器将选择器1~7全部配置为右侧选择,则所有计算簇1~8的权重数据输入均为存储器8层1存储块中的权重数据;
当控制器配置广播网络为32×32时,通过控制器将选择器4配置为上侧选择且其余选择器配置为右侧选择,则计算簇1~4的权重数据输入均为存储器4层2存储块中的权重数据,计算簇5~8的权重数据输入均为存储器8层2存储块中的权重数据;
当控制器配置广播网络为16×16时,通过控制器将选择器2、4和6配置为上侧选择且其余选择器配置为右侧选择,则计算簇1~2的权重数据输入均为存储器2层3存储块中的权重数据,计算簇3~4的权重数据输入均为存储器4层3存储块中的权重数据,则计算簇5~6的权重数据输入均为存储器6层3存储块中的权重数据,计算簇7~8的权重数据输入均为存储器8层3存储块中的权重数据;
当控制器配置广播网络为8×8或全连接层时,通过控制器将所有选择器配置为上侧选择,则每个计算簇的权重数据输入均为各自存储器层4存储块中的权重数据。
CN202110781610.XA 2021-07-08 2021-07-08 用于神经网络计算的参差存储结构及神经网络计算方法 Active CN113487020B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110781610.XA CN113487020B (zh) 2021-07-08 2021-07-08 用于神经网络计算的参差存储结构及神经网络计算方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110781610.XA CN113487020B (zh) 2021-07-08 2021-07-08 用于神经网络计算的参差存储结构及神经网络计算方法

Publications (2)

Publication Number Publication Date
CN113487020A true CN113487020A (zh) 2021-10-08
CN113487020B CN113487020B (zh) 2023-10-17

Family

ID=77938531

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110781610.XA Active CN113487020B (zh) 2021-07-08 2021-07-08 用于神经网络计算的参差存储结构及神经网络计算方法

Country Status (1)

Country Link
CN (1) CN113487020B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116306811A (zh) * 2023-02-28 2023-06-23 苏州亿铸智能科技有限公司 一种针对ReRAM部署神经网络的权重分配方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108053029A (zh) * 2017-12-27 2018-05-18 宁波山丘电子科技有限公司 一种基于存储阵列的神经网络的训练方法
CN111033530A (zh) * 2017-06-21 2020-04-17 Arm有限公司 用于压缩神经网络参数的系统和设备
CN111915001A (zh) * 2020-08-18 2020-11-10 腾讯科技(深圳)有限公司 卷积计算引擎、人工智能芯片以及数据处理方法
CN111985602A (zh) * 2019-05-24 2020-11-24 华为技术有限公司 神经网络计算设备、方法以及计算设备
WO2021004366A1 (zh) * 2019-07-08 2021-01-14 浙江大学 基于结构化剪枝和低比特量化的神经网络加速器及方法
CN112328172A (zh) * 2020-10-27 2021-02-05 北京百度网讯科技有限公司 数据存储方法、装置及数据读取方法、装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111033530A (zh) * 2017-06-21 2020-04-17 Arm有限公司 用于压缩神经网络参数的系统和设备
CN108053029A (zh) * 2017-12-27 2018-05-18 宁波山丘电子科技有限公司 一种基于存储阵列的神经网络的训练方法
CN111985602A (zh) * 2019-05-24 2020-11-24 华为技术有限公司 神经网络计算设备、方法以及计算设备
WO2021004366A1 (zh) * 2019-07-08 2021-01-14 浙江大学 基于结构化剪枝和低比特量化的神经网络加速器及方法
CN111915001A (zh) * 2020-08-18 2020-11-10 腾讯科技(深圳)有限公司 卷积计算引擎、人工智能芯片以及数据处理方法
CN112328172A (zh) * 2020-10-27 2021-02-05 北京百度网讯科技有限公司 数据存储方法、装置及数据读取方法、装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李永博;王琴;蒋剑飞;: "稀疏卷积神经网络加速器设计", 微电子学与计算机, no. 06 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116306811A (zh) * 2023-02-28 2023-06-23 苏州亿铸智能科技有限公司 一种针对ReRAM部署神经网络的权重分配方法
CN116306811B (zh) * 2023-02-28 2023-10-27 苏州亿铸智能科技有限公司 一种针对ReRAM部署神经网络的权重分配方法

Also Published As

Publication number Publication date
CN113487020B (zh) 2023-10-17

Similar Documents

Publication Publication Date Title
US11475101B2 (en) Convolution engine for neural networks
CN110197270B (zh) 集成电路芯片装置及相关产品
EP3671433A1 (en) Nand block architecture for in-memory multiply-and-accumulate operations
US11165717B2 (en) Fabric interconnection for memory banks based on network-on-chip methodology
JP2930341B2 (ja) データ並列処理装置
CN112119459B (zh) 用于张量数据的存储器布置
US20190286974A1 (en) Processing circuit and neural network computation method thereof
WO2022006733A1 (en) Apparatus and method for matrix multiplication using processing-in-memory
CN107852379A (zh) 用于现场可编程门阵列的定向二维路由器和互连网络、以及所述路由器和网络的其他电路和应用
US11397886B2 (en) Vertical mapping and computing for deep neural networks in non-volatile memory
CN112149816A (zh) 支持深度神经网络推理加速的异构存算融合系统及方法
US11294851B2 (en) Reconfigurable reduced instruction set computer processor architecture with fractured cores
EP3742485B1 (en) Layered super-reticle computing: architectures and methods
CN113792010A (zh) 存算一体芯片及数据处理方法
CN114298296A (zh) 基于存算一体阵列的卷积神经网络处理方法和装置
US20200082246A1 (en) Scalable multi-die deep learning system
CN113261015A (zh) 神经网络系统及数据处理技术
CN113487020A (zh) 用于神经网络计算的参差存储结构及神经网络计算方法
Jain et al. VLSI considerations for TESH: A new hierarchical interconnection network for 3-D integration
CN103019947B (zh) 一种fpga芯片配置信息模型的层次化构建方法
CN117651997A (zh) 针对基于模式的操作在存储器裸片与逻辑裸片之间的信号路由
CN113626374A (zh) 一种堆叠芯片
CN113704137A (zh) 存内计算模块和方法、存内计算网络及构建方法
WO2023173530A1 (zh) 一种卷积运算加速器及卷积运算方法
CN112766479B (zh) 一种基于fpga的支持通道分离卷积的神经网络加速器

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