用于类脑处理器的片上网络路由通信方法及片上网络技术

技术编号:27616051 阅读:81 留言:0更新日期:2021-03-10 10:46
本发明专利技术公开了一种用于类脑处理器的片上网络路由通信方法及片上网络,本发明专利技术方法包括根据SNN模型的神经元的交互情况,将通信频率更高的神经元划分为不同的子块映射到类脑处理器;在类脑处理器的NoC结构上为每个神经元创建了多条多播路径,类脑处理器通过处理单元PE模仿脉冲神经元的行为,当神经元产生脉冲时,处理单元PE访问本地的多播路径SRAM得到该神经元相对应的多播路径,并将多播数据包输出至多播路径,多播数据包在片上网络中传输直到此多播路径传输完成为止。本发明专利技术能有效支持基于NoC互连的类脑处理器的海量通信,又不会给NoC带来复杂的设计和存储开销。NoC带来复杂的设计和存储开销。NoC带来复杂的设计和存储开销。

【技术实现步骤摘要】
用于类脑处理器的片上网络路由通信方法及片上网络


[0001]本专利技术涉及类脑计算技术,具体涉及一种用于类脑处理器的片上网络路由通信方法及片上网络。

技术介绍

[0002]类脑计算是指使用超大规模集成电路(Very Large Scale Integrated,VLSI)系统来模仿神经系统中呈现的神经生物学体系结构。类脑计算平台是类脑计算技术的基础设施,能够实现海神经元的计算和互连,为类脑计算算法提供运行平台。近年来在国内外有许多类脑处理器研制成功,包括IBM的TrueNorth、Intel的Loihi、瑞士神经信息研究所的DYNAPs,曼彻斯特大学的SpiNNaker和清华大学的天机等等。
[0003]片上网络(Network-on-Chip,NoC)具有灵活性,可伸缩性和低功耗等特点,是类脑计算平台多采用的一种互连体系结构。脉冲神经网络(Spiking Neural Networks,SNN)是一种类脑计算的基本算法。SNN模型中的神经元通过突触与其他神经元连接,并通过脉冲传递信息,以此来执行一系列任务。当SNN模型部署在基于NoC本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种用于类脑处理器的片上网络路由通信方法,其特征在于,包括:1)输入SNN模型的神经元的交互情况;2)根据SNN模型的神经元的交互情况,将通信频率更高的神经元划分为不同的子块,然后将这些子块映射到基于NoC结构的类脑处理器中;3)在类脑处理器的NoC结构上为每个神经元创建了多条多播路径,并将这些多播路径存储在与神经元相对应的多播路径SRAM中;4)所述类脑处理器通过处理单元PE模仿脉冲神经元的行为,当神经元产生脉冲时,处理单元PE访问本地的多播路径SRAM得到该神经元相对应的多播路径,并将多播数据包输出至多播路径,多播数据包在片上网络中传输直到此多播路径传输完成为止。2.根据权利要求1所述的用于类脑处理器的片上网络路由通信方法,其特征在于,步骤1)之前还包括训练SNN模型,提取每个时间步长的脉冲行为作为神经元的交互情况的步骤。3.根据权利要求1所述的用于类脑处理器的片上网络路由通信方法,其特征在于,所述SNN模型的神经元的交互情况记录有每一个脉冲对应的脉冲产生时间、源神经元、目的神经元。4.根据权利要求1所述的用于类脑处理器的片上网络路由通信方法,其特征在于,步骤2)包括:2.1)解析输入的SNN模型的神经元的交互情况,获取每一个脉冲对应的脉冲产生时间、源神经元、目的神经元;2.2)根据SNN模型的神经元的交互情况中源神经元、目的神经元筛选出通信次数大于预设阈值的神经元划分为不同的子块;2.3)将这些子块采用启发式算法映射到基于NoC结构的类脑处理器中。5.根据权利要求1所述的用于类脑处理器的片上网络路由通信方法,其特征在于,步骤3)包括:3.1)针对映射到基于NoC结构的类脑处理器中的子块中的神经元,针对每个源神经元的目标神经元集,根据其汉密尔顿标签将其分为高通道集合DH和低通道集合DL两个子集,然后使用k均值算法对高通道集合DH和低通道集合DL两个子集的每个源神经元的目标神经元进行聚类;3.2)针对聚类得到的每个群集,通过哈密尔顿路径算法使用汉密尔顿标签排序;针对每个源神经元的目标神经元集,在高通道集合DH中的每个集群的多播路径的创建是沿着标签值增加的方向进行的,在低通道集合DL中的每个集群的多播路径的创建是沿着标签值减小的方向进行的,从而为每个神经元创建了多条多播路径;并将这些多播路径存储在与神经元相对应的多播路径SRAM中。6.根据权利要求1所述的用于类脑处理器的片上网络路由通信方法,其特征在于,步骤4)中多播数据包包括下述字段:源节点编号SID、多播路径中的目标节点D1~D
M
、源节点对应的神经元编号NID、多播路径中目标节点的数量LEN和多播路径中多播数据包的其余目标节点CNT,其中源节点和目标节点是指类脑处理器的NoC结构中的处理单元PE,且多播路径中任意一个节点收到多播数据包的处理步骤包括:S1)解析获取多播数据包中的多播路径中目标节点的数量LEN和多播路径中多播数据包的其余目标节点CNT并计算索引Index;
S2)判断多播数据包中索引Index对应的目标节点D
Index
是否和当前节点匹配,若不匹配,表示当前节点不是目的节点,当前节点使用基于哈密尔顿路由算法来计算下一个输出端口,然后将多播数据包从下一个输出端口输出;若匹配,则根据多播路径中多播数据包的其余目标节点CNT的值确定下一个操作:如果CNT=1,表示这是多播路径上的最后一个目标节点,则当前节点将多播数据包传输到类脑计算核,完成传输,结束并退出;如果CNT&...

【专利技术属性】
技术研发人员:王蕾康子扬李石明王世英张翔宇曲连华石伟龚锐周海亮徐炜遐
申请(专利权)人:中国人民解放军国防科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1