CN105469143B - 基于神经网络动态特征的片上网络资源映射方法 - Google Patents

基于神经网络动态特征的片上网络资源映射方法 Download PDF

Info

Publication number
CN105469143B
CN105469143B CN201510781820.3A CN201510781820A CN105469143B CN 105469143 B CN105469143 B CN 105469143B CN 201510781820 A CN201510781820 A CN 201510781820A CN 105469143 B CN105469143 B CN 105469143B
Authority
CN
China
Prior art keywords
neuron
network
core
packet
chip
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
CN201510781820.3A
Other languages
English (en)
Other versions
CN105469143A (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 Ling Xi Technology Co Ltd
Original Assignee
Tsinghua University
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 Tsinghua University filed Critical Tsinghua University
Priority to CN201510781820.3A priority Critical patent/CN105469143B/zh
Publication of CN105469143A publication Critical patent/CN105469143A/zh
Application granted granted Critical
Publication of CN105469143B publication Critical patent/CN105469143B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Biophysics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Neurology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提出了一种基于神经网络动态特征的片上网络资源映射方法,包括以下步骤:获取神经网络中的所有神经元,将神经网络中的每个神经元群中的神经元以一定的初始化规则(顺次/随机)放入片上网络的N个核中,且同一个神经元群中的神经元放到同一个核和/或距离相近的两个或多个核中,运行SNN网络,分别计算每个核的通信量S,并根据S对N个核进行排序:S1≥S2≥…≥SN,判断Si/Sj是否小于预设值,如果否,则交换通信量分别为Si和Sj的两个核中一半神经元,最终得到从神经元到片上网络N个核的新的映射。本发明实施例的方法能够有效均衡负载,减少片上网络中的拥塞,降低最大传输延迟,进而提高数据传输性能。

Description

基于神经网络动态特征的片上网络资源映射方法
技术领域
本发明涉及计算机视觉技术领域,特别涉及一种基于神经网络动态特征的片上网络资源映射方法。
背景技术
大脑与传统的冯·诺伊曼计算机相比,具有超低功耗、高容错性的特点,在处理非结构化信息和智能方面,大脑具有显著优势。随着脑科学的发展,借鉴大脑的计算模式构建基于神经形态工程的新型计算***已经成为一个新兴的发展方向。
大脑的基本组成单元是神经元,神经元之间通过突触相互连接,通过收发动作电位进行通信。每个神经元通常连接着100到10000个突触,大量神经元通过突触相互连接形成复杂的神经网络。
模拟神经形态网络是一种非常重要、有效的研究和实现方法,虽然软件模拟具有非常高的灵活性,但模拟效率非常低,功耗非常高。为了加速神经形态网络的模拟,利用大规模集成电路实现神经形态网络的模拟和仿真是神经形态工程常用的实现方法,其计算特点是具有高度的并行性和密集的通信,因此用对称多核处理器结合片上网络来构建神经形态网络计算平台是一种较为通行的做法。
片上网络(NoC,Network on Chip)借鉴了分布式计算***的通信方式,采用路由和分组交换技术替代传统的总线,具有更加高效的核间通信能力。具体地,神经形态芯片通常由多个计算核心组成,每个核心可以模拟一定数量的神经元,核心之间通过片上网络连接起来,通过片上网络的虚拟连接来模拟神经元之间的突触连接。神经形态网络和片上网络差异非常大,前者拓扑复杂,运行频率低,后者拓扑简单,运行频率高。将神经形态网络配置到神经形态芯片上后,原来神经形态网络中的大量连接会共用片上网络的路径。因此,将神经形态网络映射到片上网络的策略将很大程度上影响***的性能。
SpiNNaker项目的映射技术中,在神经形态构建软件时,通常以神经元群为基本的构建单元,群内部的神经元类型、功能均相同,同一个群内的神经元之间无相互连接,但群与群之间会有大量的突触连接,并且通常是两个群的神经元之间全相联的形式。
基于上述特点,该技术尽可能将同一个神经元群的神经元放置到同一个核或相邻的核上。具体做法如下:
1)根据每个核可以放置的神经元数量,将每个神经元群分成若干个子群,子种群的大小与每个核可以放置的神经元数量相同;
2)当子群中神经元数量较少,未达到每个核可以放置的神经元数量时,则对该子群进行组合,使其能够尽量放满一个核;
3)将各个子群放置到各个核上,并考虑神经元群之间的局部性。
神经元的发放以多播的形式在片上网络上传播。由于每个神经元发放神经脉冲时,其目标节点通常是若干神经元群中的全部神经元,将这些目标节点尽可能放置在同一个节点或者多个相邻的节点上,以使多播数据包的目标节点数量最小,且分布尽量集中,进而可以减少传输多播数据包所占用的网络资源。
然而,由于同一个神经元群的神经元在发放神经脉冲时,通常具有相同目标节点,所以将这些神经元放置到同一个核或相邻的核上。又由于这些神经元产生的多播数据包具有相同的源节点和目标节点,因此这些多播数据包所走的路径将完全相同,这就导致了这些多播数据包之间会产生激烈的竞争和拥堵,尤其是较为活跃的神经元群。其中,在活跃的神经元群所在的计算节点上,由于从计算节点进入网络的通道资源有限,会导致大量的多播数据包拥堵在节点内部,节点的出口带宽将成为***的瓶颈。
另外,神经元的分配也可以利用传统的片上网络应用的映射算法来解决。该算法通常是根据IP核(Intellectual Property core,知识产权核)的热度、通信量等信息,将通信密集的IP核分配到临近的节点上,但由于搜索空间过大,找到全局最优解非常困难。因此,该算法主要致力于减少搜索空间,提高搜索效率,找到一个相对较好的局部最优解。
其中,较为经典的有KL(即Kernighan-Lin)算法。KL算法是一个O(n2logn)时间复杂度的图分割算法,设G(V,E)是一个图,其中,V是顶点的集合,E是边的集合,KL算法将V分为大小相同两个部分A和B,使得A和B中所有顶点之间边的权重之和T最小。设a为A中的顶点,Ia为a与A中其它顶点之间边的权重之和,Ea为a与B中其它顶点之间边的权重之和,损失权重定义为Da=Ea-Ia
该算法主要分为以下三个步骤:
1)随机产生大小相同的两个集合A和B;
2)计算A和B中每个顶点的内权重和外权重;
3)将A和B中的顶点a和b进行交换,每轮迭代选取交换之后损失权重降低最多的两个点进行交换,直至损失权重不再降低。
通过KL算法,逐步将一个网络的通信尽可能的集中到局部,可以有效降低网络中的通信量。
神经形态网络相比传统的并行计算任务有很多不同,传统的并行计算任务对少量节点的拥堵不敏感,而神经形态网络的多播数据包若在一定时间内未送达,会导致丢包,影响网络的功能。因此,为了确保网络的功能可靠,神经形态网络的运行速度取决于延迟最长的多播数据包传输时间。可以看出,若计算任务过于集中,则会导致局部的拥堵严重,影响神经形态网络的运行性能。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一。
有鉴于此,本发明需要提供一种基于神经网络动态特征的片上网络资源映射方法,该方法能够有效均衡负载,减少网络拥塞,降低最大传输延迟,并提高***性能。
为了实现上述目的,本发明的实施例提出了一种基于神经网络动态特征的片上网络资源映射方法,包括以下步骤:获取神经网络中的所有神经元,其中,所述神经网络由神经元群组成,所述神经元群由神经元组成;将所述神经元群中的神经元放入片上网络N个核中,其中,同一个所述神经元群中的神经元放到同一个所述核和/或距离相近的两个或多个核中,其中,所述N为大于1的正整数;运行SNN网络,分别计算每个核的通信量S,并根据所述S对所述N个核进行排序:S1≥S2≥...≥SN;判断Si/Sj是否小于预设值,其中,i=1,2,...,N/2or(N-1)/2,j=N-i+1;如果否,则交换通信量分别为Si和Sj的两个核中一半的神经元,得到神经元到片上网络N个核的新的映射。
本发明实施例的基于神经网络动态特征的片上网络资源映射方法,将多个神经元群中的神经元放置到多个核中,并且将同一神经元群中的神经元尽可能放到同一个核或距离相近的核中,每个核对应片上网络中的一个节点,进而通过交换不同核中的神经元,将片上网络一个节点内的任务进行拆分,即交换活跃节点和不活跃节点中的神经元。本发明实施例的方法能够有效均衡负载,减少片上网络中的拥塞,降低最大传输延迟,进而提高数据传输性能。
另外,本发明上述实施例的基于神经网络动态特征的片上网络资源映射方法还具有如下附加特征:
根据本发明的一个的实施例,所述每个核的通信量S为所述每个核运行SNN(Spiking Neuron Networks,脉冲神经网络)网络中发送的数据包数量,其中,所述数据包的字段包括神经元群ID和神经元ID,每个所述数据包只有一个数据分片。
根据本发明的一个实施例,所述片上网络包括处理单元、网络接口、路由器、节点和互联网络,其中,所述处理单元、所述网络接口、所述路由器和所述节点之间存在一一对应关系,所述节点包括源节点和目标节点,所述互联网络的拓扑为所述节点之间的连接方式。
根据本发明的一个实施例,所述N个核中神经元的所述数据包发送采用两层路由结构。
根据本发明的一个实施例,所述源节点向所述目标节点发送数据包,具体包括以下步骤:所述核中的所述数据包传到其对应的路由器上;根据所述数据包的所述神经元群ID进行路由;所述数据包到达所述目标节点后,根据所述神经元ID将所述数据包发送至对应神经元;所述对应神经元根据连接信息确定是否接收所述数据包,其中,所述连接信息保存在所述目标节点中。
根据本发明的一个实施例,所述数据包进入所述对应的路由器之后,所述对应的路由器通过查询路由表获取所述数据包的传输方向,所述路由表的表项包含键和值,其中,所述键为所述神经元群ID,所述值为出口方向。
根据本发明的一个实施例,如果所述路由表中没有找到某个神经元群ID对应的表项,则采用默认的路由方式。
根据本发明的一个实施例,所述预设值为2。
根据本发明的一个实施例,所述默认的路由方式为直行路由方式。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本发明一个实施例的基于神经网络动态特征的片上网络资源映射方法的流程图;
图2为根据本发明一个实施例的基于神经网络动态特征的片上网络资源映射方法的数据包传输流程图;
图3为根据本发明一个具体实施例的数据包传输示意图。
具体实施方式
下面参考附图描述根据本发明实施例的基于神经网络动态特征的片上网络资源映射方法,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
本发明的实施例提出了一种基于神经网络动态特征的片上网络资源映射方法。
图1为根据本发明一个实施例的基于神经网络动态特征的片上网络资源映射方法的流程图。
如图1所示,本发明实施例的方法,包括以下步骤:
S101,获取神经网络中的所有神经元。
其中,神经网络由神经元群组成,神经元群由神经元组成。
需要说明的是,不同的神经网络中的神经元群数量,以及不同神经元群中的神经元的数量可以是不同的,具体可根据被映射片上网络的承载能力而定,且不能超过片上网络所承载的最大神经元。
S102,将神经元群中的神经元放入片上网络N个核中,其中,同一个神经元群中的神经元放到同一个核和/或距离相近的两个或多个核中。
其中,N为大于1的正整数。
需要说明的是,每个核映射到片上网络,每个核对应片上网络一个节点,S102中距离相近即片上网络节点距离相近。
在本发明的实施例中,N的值可以自定义,以mesh结构的片上网络为例,如果是8×8的片上网络,N是64。每个核中的神经元个数也可以根据需要自定义,例如可以是64个。
S103,运行SNN网络,分别计算每个核的通信量S,并根据S对N个核进行排序:S1≥S2≥...≥SN
具体地,每个核的通信量S即为每个核在通过初始映射运行SNN网络时发送的数据包数量,其中,所述数据包的字段包括神经元群ID和神经元ID,每个数据包只有一个数据分片。
可以理解,由于SNN中传输的所有脉冲信号均无差别,所需要的数据也仅有神经元群ID与神经元ID组成的全局神经元ID,因此,不需要对数据包进行分片,即每个数据包只有一个数据分片。
在本发明的一个实施例中,数据包格式可如表1所示:
表1
字段 神经元群ID 神经元ID 保留
位宽(bit) 10 10 12
如表1所示,该数据包分为两个字段:神经元群ID和神经元ID。其中,神经元群ID位宽占10bit,神经元ID位宽占10bit。表1中的保留表示未设置字段的位宽,占12位。
S104,判断Si/Sj是否小于预设值。
其中,i=1,2,...,N2or(N-1)/2,j=N-i+1。可以理解,当N为偶数时,N/2为整数;当N为奇数时,(N-1)/2为整数。
在本发明的一个实施例中,预设值可以是2。
S105,如果否,则交换通信量分别为Si和Sj的两个核中一部分神经元,得到神经元到片上网络N个核的新的映射。在本发明的一个实施例中,若Si/Sj是大于或等于预设值,则交换通信量分别为Si和Sj的两个核中一半的神经元。其中,预设值可以是2。
在本发明一个具体实施例中,交换通信量最高和最低的两个核中一半的神经元、通信量次高和次低的两个核中一半的神经元,以此类推,直至两核通信量之比小于2。可以理解,通过上述交换,发送数据包最多的核在每个SNN周期发送的数据包的数量几乎可以减半。而且交换的作用主要体现在通信量差别较大的核之间,通过交换可以降低通信量大的核的通信量。
需要说明的是,对于在通信量排序中处于较中间位置的核,交换的作用比较微小,但带来的损失仍然增长,因此设置了一个参数——交换比例,即预设值,定义通信量高低两个核的热度比例。当这个比例大于或等于2时,交换带来的性能提升可以弥补破坏局部性带来的性能损失。
其中,交换带来的损失即局部性被破坏。具体地,由于神经元群所包含的神经元总量是固定的,交换之后,每个核不只放一个神经元群的神经元,还有交换过来的其他神经元群的神经元,因此神经元群分布在更多的核上,从而使得发给一个神经元群的数据包需要传递到更多的核,产生了更多的分支,增加了核的通信量。可以理解,设置交换比例是为了使通过交换降低的通信量大于增加的通信量。
本发明实施例的基于神经网络动态特征的片上网络资源映射方法的伪代码可用下表2表示:
表2
如表2所示,rate表示上述S104中的预设值,InitializeMapping表示可以采用顺序映射排布的方式或者通过KL算法映射方式生成的初始映射方案,SortByActiveDegree表示根据通信量对核进行排序,Core[i].ActiveDegree/Core[j].ActiveDegree即为Si/Sj,SwapHalf表示将两个核内的神经元相互交换一半。需要说明的是,表1中默认N是偶数。
其中,InitializeMapping(即初始映射方案)可以是将N个核通过顺序映射排布的方式直接映射到片上网络,每个核对应片上网络一个节点。也可以是通过KL算法将N个核尽可能集中映射到片上网络的局部,以降低片上网络中的通信量。
在本发明的实施例中,片上网络包括处理单元、网络接口、路由器、节点和互联网络,其中,处理单元、网络接口、路由器和节点之间存在一一对应关系,节点包括源节点和目标节点,互联网络的拓扑为节点之间的连接方式。
在本发明的实施例中,片上网络的拓扑结构可以是2D mesh结构、2D Torus结构、八角形(Octagon)结构、SPIN结构和三维拓扑结构中的一种。其中,2D mesh结构简单,容易实施,具有良好的扩展性;2D Torus结构缩短了节点间的平均距离,从理论上降低了功耗;八角形结构具有良好的可扩展性;SPIN结构各节点不直接连接,路由算法简单;三维拓扑结构在性能、面积和功耗上均好于二维结构。
进一步地,在本发明的一个实施例中,上述核中神经元产生的数据包传输采用两层路由结构。
具体地,以一个核为例,以该核所在节点为源节点,向目标节点发送数据包,如图2所示,具体包括以下步骤:
S201,核中的数据包传到其对应的路由器上。
具体地,一个核映射到片上网络的一个节点,同时对应片上网络中的一个处理单元,该处理单元将该核需要发送的消息数据写入网络接口,通过网络接口将上述消息数据组装成数据包,然后将该数据包传到该核对应的路由器上。
S202,根据数据包的神经元群ID进行路由。
具体地,数据包进入对应的路由器之后,对应的路由器通过查询路由表获取数据包的传输方向,路由表的表项包含键和值,其中,键为神经元群ID,值为出口方向。
在本发明的一个实施例中,神经元群ID位宽为10bit,即键位宽为10bit,值的位宽为6bit,具体格式可如表3所示:
表3
如表3所示,值的字段包括上(U,Up)、下(D,Down)、左(L,Left)、右(R,Right)和核(S,Stone),分别表示数据包的出口方向,位宽均为1bit。
在本发明的一个实施例中,如果路由表中没有找到某个神经元群ID对应的表项,则采用默认的路由方式。其中,默认的路由方式可以为直行路由方式。
S203,数据包到达目标节点后,根据神经元ID将数据包发送至对应神经元。
S204,对应神经元根据连接信息确定是否接收数据包,其中,连接信息保存在目标节点中。
具体地,可以以树状多播路由的片上网络进行说明。可以理解,在神经网络中,每个神经元通过突触连接着大量神经元,当神经元发出动作电位时,所有后向神经元都会接受到这个信号,这种一对多的通信方式与片上网络的多播完全相符,因此可以采用支持树状多播路由的片上网络。
如图3所示,①表示在5×5大小的mesh(即网格)网络上,一个源节点要向三个目标节点发送多播数据包,数据包首先从某个核传到其对应的路由器上,通过数据包的神经元种群ID查询到路由表项(可参考表3),其中R域为1,其他域为0,因此数据包从右侧出口传出。②表示路由器未查询到该数据包的神经元群ID的表项,因此采取默认路由,保持直行。③表示查询到的路由表项中,D域和R域为1,其他域为0,因此分别向下侧和右侧两个方向传输数据包。④⑤表示两个分支包分别查询各自的路由器表项,其中S域表示传递向路由器所在节点对应的另一个核。⑥表示所有目标节点均收到了数据包。
可以理解,路由表按照先x方向后y方向的路由方式生成,确保mesh网络中不存在环状路径,避免死锁的发生。
本发明实施例的基于神经网络动态特征的片上网络资源映射方法,将多个神经元群中的神经元放置到多个核中,并且将同一神经元群中的神经元尽可能放到同一个核或相近的核中,每个核对应片上网络中的一个节点,进而通过交换不同核中的神经元,将片上网络一个节点内的任务进行拆分,即交换活跃节点和不活跃节点中的神经元。本发明实施例的方法能够有效均衡负载,减少片上网络中的拥塞,降低最大传输延迟,进而提高数据传输性能。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行***、装置或设备(如基于计算机的***、包括处理器的***或其他可以从指令执行***、装置或设备取指令并执行指令的***)使用,或结合这些指令执行***、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行***、装置或设备或结合这些指令执行***、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行***执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同限定。

Claims (9)

1.一种基于神经网络动态特征的片上网络资源映射方法,其特征在于,包括以下步骤:
获取神经网络中的所有神经元,其中,所述神经网络由神经元群组成,所述神经元群由神经元组成;
将所述神经元群中的神经元放入片上网络N个核中,且同一个所述神经元群中的神经元放到同一个核或距离相近的两个或多个核中,其中,所述N为大于1的正整数;
运行SNN网络,分别计算每个核的通信量S,并根据所述S对所述N个核进行排序:S1≥S2≥...≥SN,其中,所述每个核的通信量S为所述每个核在运行SNN网络中发送的数据包数量;
判断Si/Sj是否小于预设值,其中,i=1,2,...,N/2or(N-1)/2,j=N-i+1;
如果否,则交换通信量分别为Si和Sj的两个核中一半的神经元,得到神经元到片上网络N个核的新的映射。
2.根据权利要求1所述的基于神经网络动态特征的片上网络资源映射方法,其特征在于,所述数据包的字段包括神经元群ID和神经元ID,每个所述数据包只有一个数据分片。
3.根据权利要求1所述的基于神经网络动态特征的片上网络资源映射方法,其特征在于,所述片上网络包括处理单元、网络接口、路由器、节点和互联网络,其中,所述处理单元、所述网络接口、所述路由器和所述节点之间存在一一对应关系,所述节点包括源节点和目标节点,所述互联网络的拓扑为所述节点之间的连接方式。
4.根据权利要求1-3中任一项所述的基于神经网络动态特征的片上网络资源映射方法,其特征在于,所述N个核中神经元的所述数据包发送采用两层路由结构。
5.根据权利要求3所述的基于神经网络动态特征的片上网络资源映射方法,其特征在于,所述源节点向所述目标节点发送数据包,具体包括以下步骤:
所述核中的所述数据包传到其对应的路由器上;
根据所述数据包的所述神经元群ID进行路由;
所述数据包到达所述目标节点后,根据所述神经元ID将所述数据包发送至对应神经元;
所述对应神经元根据连接信息确定是否接收所述数据包,其中,所述连接信息保存在所述目标节点中。
6.根据权利要求5所述的基于神经网络动态特征的片上网络资源映射方法,其特征在于,所述数据包进入所述对应的路由器之后,所述对应的路由器通过查询路由表获取所述数据包的传输方向,所述路由表的表项包含键和值,其中,所述键为所述神经元群ID,所述值为出口方向。
7.根据权利要求6所述的基于神经网络动态特征的片上网络资源映射方法,其特征在于,如果所述路由表中没有找到某个神经元群ID对应的表项,则采用默认的路由方式。
8.根据权利要求1所述的基于神经网络动态特征的片上网络资源映射方法,其特征在于,所述预设值为2。
9.根据权利要求7所述的基于神经网络动态特征的片上网络资源映射方法,其特征在于,所述默认的路由方式为直行路由方式。
CN201510781820.3A 2015-11-13 2015-11-13 基于神经网络动态特征的片上网络资源映射方法 Active CN105469143B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510781820.3A CN105469143B (zh) 2015-11-13 2015-11-13 基于神经网络动态特征的片上网络资源映射方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510781820.3A CN105469143B (zh) 2015-11-13 2015-11-13 基于神经网络动态特征的片上网络资源映射方法

Publications (2)

Publication Number Publication Date
CN105469143A CN105469143A (zh) 2016-04-06
CN105469143B true CN105469143B (zh) 2017-12-19

Family

ID=55606813

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510781820.3A Active CN105469143B (zh) 2015-11-13 2015-11-13 基于神经网络动态特征的片上网络资源映射方法

Country Status (1)

Country Link
CN (1) CN105469143B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108416436B (zh) 2016-04-18 2021-06-01 中国科学院计算技术研究所 使用多核心处理模块进行神经网络划分的方法及其***
CN107169561B (zh) * 2017-05-09 2020-08-07 广西师范大学 面向功耗的混合粒子群脉冲神经网络映射方法
CN108470009B (zh) * 2018-03-19 2020-05-29 上海兆芯集成电路有限公司 处理电路及其神经网络运算方法
CN109254946B (zh) * 2018-08-31 2021-09-17 郑州云海信息技术有限公司 图像特征提取方法、装置、设备及可读存储介质
CN110958177B (zh) * 2019-11-07 2022-02-18 浪潮电子信息产业股份有限公司 一种片上网络路由优化方法、装置、设备及可读存储介质
CN112561043B (zh) * 2021-03-01 2021-06-29 浙江大学 一种类脑计算机操作***的神经模型拆分方法
CN113807511B (zh) * 2021-09-24 2023-09-26 北京大学 一种脉冲神经网络多播路由器及方法
CN114564434B (zh) * 2022-01-13 2024-04-02 中国人民解放军国防科技大学 一种通用多核类脑处理器、加速卡及计算机设备
CN114116596A (zh) * 2022-01-26 2022-03-01 之江实验室 面向片上神经网络的基于动态中继的无限路由方法和架构
CN115099395B (zh) * 2022-08-25 2022-11-15 北京灵汐科技有限公司 神经网络构建方法及装置、设备、介质
CN115168281B (zh) * 2022-09-09 2023-01-03 之江实验室 一种基于禁忌搜索算法的神经网络片上映射方法和装置
CN116070682B (zh) * 2023-04-06 2023-08-15 浙江大学 神经元计算机操作***的snn模型动态映射方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104809498A (zh) * 2014-01-24 2015-07-29 清华大学 一种基于神经形态电路的类脑协处理器

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104809498A (zh) * 2014-01-24 2015-07-29 清华大学 一种基于神经形态电路的类脑协处理器

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A Neural Network Model for a Hierarchical Spatio-temporal Memory;Kiruthika Ramanathan etal.;《International Conference on Neural Information Processing》;20081231;第428-435页 *
延时敏感的推测多线程调度策略;李艳华 等;《计算机工程与科学》;20131130;第35卷(第11期);第14-21页 *

Also Published As

Publication number Publication date
CN105469143A (zh) 2016-04-06

Similar Documents

Publication Publication Date Title
CN105469143B (zh) 基于神经网络动态特征的片上网络资源映射方法
CN101855622A (zh) 用于紧密耦合多处理器的共享存储器***
Zhao et al. Edge-MapReduce-based intelligent information-centric IoV: Cognitive route planning
Trik et al. Providing an Adaptive Routing along with a Hybrid Selection Strategy to Increase Efficiency in NoC‐Based Neuromorphic Systems
CN110390388A (zh) 具有3d堆叠结构的神经形态电路和包括其的半导体装置
Liao et al. Securing collaborative environment monitoring in smart cities using blockchain enabled software-defined internet of drones
Chang et al. Performance evaluation of artificial intelligence algorithms for virtual network embedding
CN102175256A (zh) 一种基于进化树拓扑路网构建的路径规划确定方法
CN108053037A (zh) 一种基于两网融合的配电网抢修策略制定方法及装置
CN107742169A (zh) 一种基于复杂网络的城市公交网络***构建方法及性能评估方法
Lam et al. Opportunistic routing for vehicular energy network
CN108111335A (zh) 一种调度和链接虚拟网络功能的方法及***
CN108494685A (zh) 服务链在多播路由中的最优嵌入方法
CN112468401A (zh) 用于类脑处理器的片上网络路由通信方法及片上网络
Ebrahimi et al. Fuzzy-based adaptive routing algorithm for networks-on-chip
CN106101262A (zh) 一种基于以太网的直连架构计算集群***及构建方法
Torres et al. Parallel particle swarm optimization applied to the static transmission expansion planning problem
Mahafzah et al. The optical chained-cubic tree interconnection network: topological structure and properties
CN102325089A (zh) 基于差分进化和捕食搜索策略的胖树型片上网络映射方法
Javadpour et al. Reinforcement learning-based slice isolation against ddos attacks in beyond 5g networks
CN102546380B (zh) 修改的基于树的多播路由方案
CN107169561A (zh) 面向功耗的混合粒子群脉冲神经网络映射方法
Wagh et al. Optimal route selection for vehicular adhoc networks using lion algorithm
CN116915313A (zh) 一种面向双层巨型星座的智能负载均衡方法及***
CN114599043A (zh) 一种基于深度强化学习的空天地一体化网络资源分配方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20180208

Address after: 100142 Beijing city Haidian District West Sanhuan Road No. 10 wanghailou B block two layer 200-30

Patentee after: Beijing Ling Xi Technology Co. Ltd.

Address before: 100084 Haidian District 100084-82 mailbox Beijing

Patentee before: Tsinghua University

TR01 Transfer of patent right