CN106056211A - 神经元计算单元、神经元计算模块及人工神经网络计算核 - Google Patents

神经元计算单元、神经元计算模块及人工神经网络计算核 Download PDF

Info

Publication number
CN106056211A
CN106056211A CN201610354205.9A CN201610354205A CN106056211A CN 106056211 A CN106056211 A CN 106056211A CN 201610354205 A CN201610354205 A CN 201610354205A CN 106056211 A CN106056211 A CN 106056211A
Authority
CN
China
Prior art keywords
address
neuron
module
interface
caching
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
CN201610354205.9A
Other languages
English (en)
Other versions
CN106056211B (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.)
Tsinghua University
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 CN201610354205.9A priority Critical patent/CN106056211B/zh
Publication of CN106056211A publication Critical patent/CN106056211A/zh
Application granted granted Critical
Publication of CN106056211B publication Critical patent/CN106056211B/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

Landscapes

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

Abstract

本发明涉及一种神经元计算单元,包括:解码模块、地址权重模块、乘法器以及累加器。所述解码模块接收并解析地址信息和轴突值信息。所述地址权重模块接收所述地址信息并判断该地址信息与自身存储的地址信息是否匹配,若匹配则输出该地址信息对应的权重值。所述乘法器将所述轴突值信息与所述权重值相乘。所述累加器将乘法器输出的计算结果进行累加并输出。本发明提供的神经元计算单元采用寻址与计算一体化设计思路,突破了固定规模全联接的布局方式对神经元计算单元数目的限制,增强了神经网络计算效率。

Description

神经元计算单元、神经元计算模块及人工神经网络计算核
技术领域
本发明属于人工神经网络计算领域,特别涉及一种神经元计算单元。
背景技术
人工神经网络是借鉴生物大脑突触-神经元结构演化而成的计算模型,能并行地进行大规模复杂运算,并具有高度非线性、自适应性的特点。与生物大脑神经网络结构类似,人工神经网络可定义为由神经元计算单元、轴突单元、树突单元、突触单元等基本结构组成。神经元计算单元是最基本的计算单元,能进行简单的数学运算;轴突单元负责输出神经元计算结果,一个神经元有一个轴突;树突单元是神经元计算的输入,一个神经元可有多个树突;突触单元表示上一神经元轴突和下一神经元树突联接的权重;神经元与神经元间通过轴突、突触、树突形成分层联接从而构成神经网络。
人工神经网络由多层神经元计算单元联接而成,通过大量分布式的简单运算单元相互作用实现并行复杂非线性计算,具有强大的信息处理能力。在研究人工神经网络计算模型时,常用的计算设备如通用计算机往往会出现计算效能低,耗时长,能耗高等缺点。近年来,部分研究机构针对人工神经网络的特点研发出通用的神经网络计算芯片,如IBM的TrueNorth,初步达到了芯片中进行人工神经网络运算的目的。然而,目前多数神经网络计算芯片采用的是将计算单元(神经元)和联接单元(突触矩阵)分离的设计思路,由于采用了固定规模全联接的布局方式,从而限制了单核中神经元的联接数,同时在非全联接神经网络的应用中,也会造成未联接突触点位存储资源的浪费。
发明内容
有鉴于此,确有必要提供一种寻址与计算一体化设计的神经网络计算芯片。
一种神经元计算单元,包括:解码模块,接收并解析地址信息和轴突值信息;地址权重模块,接收所述解码模块输出的地址信息,并判断该地址信息与地址权重模块中存储的地址信息是否匹配,若匹配则输出该地址信息对应的权重值;乘法器,将所述解码模块输出的轴突值信息与所述地址权重模块输出的权重值相乘;累加器,将所述乘法器输出的计算结果进行累加并输出。
一种神经元计算模块,包括:多个所述神经元计算单元、发送缓存及接口、函数信息表;所述多个神经元计算单元接收来自外部的地址信息和轴突值信息,并对所述地址信息进行判断,若接收到的地址信息与自身地址权重模块中存储的地址信息匹配,则对该接收到的信息进行神经网络计算,并将计算结果及地址有效标志发送至所述发送缓存及接口,若接收到的地址信息与自身地址权重模块中存储的地址信息不匹配,则不对该接收到的信息进行神经网络计算;所述发送缓存及接口用于在外部全局时钟触发时将所述多个神经元计算单元的计算结果及地址有效标志进行锁存,以及将指定的神经元计算结果输出至所述函数信息表并获取转换结果;所述函数信息表将所述神经元计算结果转换为对应的函数值。
一种人工神经网络计算核,包括:所述神经元计算模块、核控制器;所述核控制器用于向所述发送缓存及接口发出神经元周期和比较脉冲;所述发送缓存及接口还用于在接收到所述核控制器发出的比较脉冲后,读取序号与当前神经元周期相同的神经元地址有效标志,若为有效,所述发送缓存及接口将该神经元计算结果送入所述函数信息表并获取转换结果,若为无效,所述发送缓存及接口向所述核控制器发出数据无效标志。
与现有技术相比较,本发明提供的神经元计算单元采用寻址与计算一体化设计思路,突破了固定规模全联接的布局方式对神经元计算单元数目的限制,同时由于采取了地址匹配的联接方式,避免了无用联接造成的资源浪费,从而实现柔性拓展以及存储资源的有效利用,增强了神经网络计算效率。
附图说明
图1为本发明第一实施例提供的神经元计算单元示意图。
图2为本发明第二实施例提供的神经元计算模块示意图。
图3为本发明第三实施例提供的人工神经网络计算核示意图。
图4为本发明第四实施例提供的人工神经网络计算核示意图。
图5为本发明第四实施例提供的人工神经网络计算核核间传输数据帧格式。
图6为本发明提供的人工神经网络计算核路由器数据收发流程图。
图7为本发明提供的人工神经网络计算核神经元计算模块计算结果发送流程图。
图8为本发明第五实施例提供的人工神经网络计算核示意图。
图9为本发明提供的人工神经网络计算核组网示意图。
主要元件符号说明
人工神经网络计算核 10、20、30、40
路由器模块 100、400
路由控制器 110、410
上发送接收缓存及接口 120
左发送接收缓存及接口 130
下发送接收缓存及接口 140
右发送接收缓存及接口 150
路由信息表 160
神经元-路由器接口 170
第一神经元-路由器接口 471
第二神经元-路由器接口 472
第三神经元-路由器接口 473
第四神经元-路由器接口 474
神经元计算模块 200
第一神经元计算模块 200a
第二神经元计算模块 200b
第三神经元计算模块 200c
第四神经元计算模块 200d
神经元计算单元 210
解码模块 211
地址权重模块 212
乘法器 213
累加器 214
发送缓存及接口 220
函数信息表 230
核控制器 300
第一核控制器 300a
第二核控制器 300b
第三核控制器 300c
第四核控制器 300d
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
下面将结合附图及具体实施例,对本发明提供的神经元计算单元作进一步的详细说明。
请参见图1,本发明第一实施例提供一种神经元计算单元210,包括解码模块211、地址权重模块212、乘法器213、累加器214。
所述解码模块211用于接收神经网络信息并解析。所述神经网络信息包括地址信息和轴突值信息,所述解码模块211将其中的地址信息送入所述地址权重模块212,将轴突值信息送入所述乘法器213。
所述地址权重模块212中存储地址权重对列表,实现对输入到该地址权重模块212的地址信息进行匹配。若输入地址与地址权重模块212中已存储的地址信息匹配,则地址权重模块212向乘法器213输出相对应的权重值,输出的权重值为一定范围内变化的数值;若输入地址与已存储的地址信息不匹配,则地址权重模块212向乘法器213输出零值。此外,所述地址权重模块212还可以根据匹配判断结果设置地址有效标志状态。具体为,若输入地址与地址权重模块212中已存储的地址信息匹配,所述地址权重模块212发出地址有效标志,若输入地址与地址权重模块212中已存储的地址信息不匹配,所述地址权重模块212不改变地址有效标志状态。
所述乘法器213接收所述地址权重模块212输出的权重值以及所述解码模块211输出的轴突值,将所述权重值与轴突值相乘,并将乘积送入累加器214。
所述累加器214实现将乘法器213输出的计算结果进行累加并输出。
本发明第一实施例提供的神经元计算单元210实现了寻址与计算一体化,通过采用寻址与计算一体化设计,突破了固定规模全联接的布局方式对神经元计算单元数目的限制,同时由于采取了地址匹配的联接方式,避免了无用联接造成的资源浪费,从而实现柔性拓展以及存储资源的有效利用,增强了神经网络计算效率。
本发明第二实施例进一步提供一种神经元计算模块,用于建立神经元间联接关系及进行神经元计算。请参见图2,所述神经元计算模块200包括:多个神经元计算单元210、发送缓存及接口220、函数信息表230。
所述多个神经元计算单元210接收来自外部的地址信息和轴突值信息,并对所述地址信息进行判断,若接收到的地址信息与自身存储的地址信息匹配,则对该接收到的信息进行神经网络计算,并将计算结果及地址有效标志发送至所述发送缓存及接口220,若接收到的地址信息与自身存储的地址信息不匹配,则不对该接收到的信息进行神经网络计算。
本实施例中所述多个神经元计算单元中每一神经元计算单元进一步包括:解码模块211、地址权重模块212、乘法器213、累加器214。本实施例中的神经元计算单元与本发明第一实施例提供的神经元计算单元210结构与功能基本相同,本实施例中所述地址权重模块212还用于当输入地址与地址权重模块212中已存储的地址信息匹配,则地址权重模块212向乘法器213输出相对应的权重值,并向发送缓存及接口220发出地址有效标志;若输入地址与已存储的地址信息不匹配,则地址权重模块212向乘法器213输出零值,且不改变地址有效标志状态。
所述发送缓存及接口220用于在外部全局时钟gclk触发时将所述多个神经元计算单元210的计算结果及地址有效标志进行锁存,并清零各神经元计算单元210的地址有效标志,以及将指定的神经元计算结果输出至所述函数信息表230并获取转换结果。
所述函数信息表230将所述神经元计算结果转换为对应的函数值。
本发明第二实施例提供的神经元计算模块中单个神经元计算单元将寻址与计算合二为一,可同时进行神经元寻址与计算,通过采用寻址与计算一体化设计,突破了固定规模全联接的布局方式对神经元计算单元数目的限制,同时由于采取了地址匹配的联接方式,避免了无用联接造成的资源浪费,从而实现柔性拓展以及存储资源的有效利用,增强了神经网络计算效率。
本发明第三实施例提供一种人工神经网络计算核,包括:神经元计算模块、核控制器。所述神经元计算模块用于进行神经元计算,并在所述核控制器的控制下进入不同神经元计算结果的发送流程。所述神经元计算模块可以为现有的各种神经元计算模块,本实施例中以本发明第二实施例提供的神经元计算模块200为例进行说明。具体请参见图3,人工神经网络计算核10包括神经元计算模块200、核控制器300。
所述核控制器300通过发出神经元周期N_peri和比较脉冲N_data_comp控制人工神经网络计算核10进入不同神经元计算结果的发送流程。当进入新的神经元周期时,通过输出比较脉冲N_data_comp触发神经元计算结果的比较、输出,并等待数据处理结果标志R_N_data_done或N_data_null有效以进入新的神经元周期。所述核控制器300在全局时钟gclk触发下进入新一轮神经元计算结果的发送周期。
所述神经元计算模块200用于建立神经元间联接关系及进行神经元计算,与本发明第二实施例提供的神经元计算模块结构与功能基本相同,本实施例中所述发送缓存及接口220在全局时钟gclk触发时将各神经元计算单元210的计算结果及地址有效标志进行锁存,并清零各神经元计算单元210的地址有效标志,此后所述核控制器300发出比较脉冲N_data_comp,神经元计算模块200接收到所述比较脉冲N_data_comp后,读取序号与当前神经元周期N_peri相同的神经元地址有效标志,若为有效,则将该神经元计算结果送入函数信息表230并获取转换结果,若为无效,则向核控制器300发出数据无效标志N_data_null,驱动核控制器300进入下一神经元周期。所述发送缓存及接口220当判断地址有效标志为有效时,将函数信息表230的转换结果通过SPI接口输出,同时清零对应神经元计算单元210的累加器214,当判断地址有效标志为无效时,不对累加器214进行处理,同时发出数据无效标志N_data_null,驱动核控制器300进入下一神经元周期。
本发明第三实施例提供的人工神经网络计算核10通过采用寻址与计算一体化设计思路,可动态配置核中神经元计算单元数目,也可改变单个神经元计算单元的联接数。
本发明第四实施例提供一种人工神经网络计算核,包括路由器模块、神经元计算模块、核控制器。所述神经元计算模块用于进行神经元计算,并将神经元计算结果发送至所述路由器模块。所述神经元计算模块可以为现有的各种神经元计算模块,本实施例中以本发明第二实施例提供的神经元计算模块200为例进行说明。具体请参见图4,人工神经网络计算核20包括路由器模块100、神经元计算模块200、核控制器300。
本实施例与第三实施例区别在于增加了路由器模块100,现对该路由器模块100进行详细说明。
所述路由器模块100用于接收并解析外部输入数据,并将解析后的地址信息和轴突值信息送入对应的神经元计算模块200;以及将所述神经元计算模块200输出的神经元计算结果发送至目标地址,并向核控制器300发送本帧数据处理完成标志。
所述路由器模块100进一步包括:路由控制器110、核间交互缓存及接口、路由信息表160、神经元-路由器接口170。其中所述核间交互缓存及接口进一步包括上左下右四个发送接收缓存及接口,即上发送接收缓存及接口120、左发送接收缓存及接口130、下发送接收缓存及接口140、右发送接收缓存及接口150。实际应用中发送接收缓存及其数据接口的数目可以根据具体需求而做适当的变化。所述路由器模块100与外部数据交互采用串行外设接口 (Serial Peripheral Interface,SPI)。上左下右四个发送接收缓存为核间交互缓存区。所述神经元-路由器接口170用于接收神经元计算模块200输出的神经元计算结果,本实施例中采用SPI接口,仅能存储一帧计算结果。
所述路由器模块100接收数据时,外部接口(包括相邻路由器模块的核间交互缓存及接口以及本地神经元接口)向该路由器模块100发送缓存非空标志,提示本地路由器模块100进行数据接收。此时外部接口工作于从模式,本地接口工作于主模式。若本地路由器模块100中对应方向接收缓存未满,则按照先入先出规则发动一帧数据接收,并向路由控制器110发出接收缓存非空标志,提示路由控制器110对接收缓存中数据帧进行处理;若本地路由器模块100中对应方向接收缓存已满,则不进行数据接收,外部发送缓存等待数据发送。
所述路由器模块100发送数据时,路由控制器110先读取发送缓存状态。若发送缓存未满,则将待发送数据帧按照先入先出规则写入发送缓存,同时向外部接口送出发送缓存非空标志,等待外部接收;若发送缓存已满,则路由控制器110跳过此帧数据发送,读取下一帧数据并解析。
所述路由控制器110是路由数据解析及传输控制的核心。其按照上发送接收缓存及接口120,左发送接收缓存及接口130,下发送接收缓存及接口140,右发送接收缓存及接口150,神经元-路由器接口170的顺序依次读取各接收缓存是否为空。若为非空,则读取一帧数据进行解析;若为空,则跳至下一方向接收缓存。
请参见图5,该图为人工神经网络计算核核间传输数据帧格式,即核间交互缓存中存储的一帧数据格式,该数据帧包括:目标核地址字段、核内神经元计算模块地址字段、轴突地址字段、神经元输出字段。具体在本实施例中,所述目标核地址字段进一步包括:左右方向目标核地址字段、上下方向目标核地址字段。其中,左右方向目标核地址字段、上下方向目标核地址字段分别为8比特有符号数,最高位为0代表向左或向上,最高位为1代表向右或向下;核内神经元计算模块地址字段为4比特无符号数,代表某个核内神经元计算模块;轴突地址字段为8比特无符号数,用于神经元计算模块内神经元计算单元进行地址匹配;神经元输出字段分为8比特无符号数。所述神经元-路由器接口170存储的数据帧格式仅包括图5数据帧中的神经元输出字段。单个人工神经网络计算核发出数据帧所能到达的网络位置、核中神经元计算模块数目及单个神经元计算单元所能联接的轴突地址数目上限由该核间传输数据帧确定。需要说明的是,本实施例只是给出了一种具体的数据帧形式,实际应用中数据帧中各字段的顺序及比特数可做适当调整。
所述路由控制器110读取核间交互缓存一帧数据后进行数据解析。若为发送至本地的数据帧,即数据帧的左右方向目标核地址、上下方向目标核地址均为0,则去掉数据帧中的目标核地址字段,同时解析核内神经元计算模块地址并将轴突地址和神经元输出两字段送入目标神经元计算模块中,而后清除接收缓存中被解析数据帧;若不为发送至本地的数据帧,则按照先左右,后上下的顺序将目标核地址减1,而后检测目标发送缓存是否为满,若为满则不作处理同时跳至读取下一方向接收缓存,若不为满则将处理后的数据帧送入发送缓存中等待发送,同时清除接收缓存中被解析数据帧。
所述路由控制器110读取神经元-路由器接口170接收缓存一帧数据后,以核控制器300输出的当前神经元周期N_peri作路由信息表160的输入,提取路由信息表160中存储的不同神经元目标地址,并将地址与读取的神经元输出进行组帧,同时检测目标发送缓存是否为满,若为满则不作处理同时跳至读取下一方向接收缓存,若不为满则将处理后的数据帧送入发送缓存中等待发送,同时清除神经元-路由器接口170接收缓存中被解析数据帧并向核控制器300发送本帧数据处理完成标志R_N_data_done,驱动核控制器300进入下一神经元周期。所述神经元-路由器接口170在神经元计算模块200发出数据有效标志N_data_en后,若接收缓存未满则启动接收一帧数据,若接收缓存已满则保持接收等待。神经元计算模块200在向神经元-路由器接口170成功发送一帧数据后清空数据有效标志N_data_en。
所述路由信息表160中存储的是不同神经元的目标地址,输入为当前神经元周期,输出为对应的目标地址。
所述人工神经网络计算核20运行流程包括路由器数据收发和神经元计算模块计算结果发送两个部分,请参见图6,所述路由器数据收发包含以下步骤:
S101,路由器模块100等待接收神经网络数据包;
S102,路由器模块100接收到神经网络数据包并解析;
S103,路由器模块100判断接收到的神经网络数据包是否发往本地,若是则执行S105,若否则执行S104;
S104,按先左右后上下的顺序将该神经网络数据包中目标核地址减1后送入发送缓存,返回S101;
S105,将该神经网络数据包中的轴突地址和轴突值送入神经元计算模块200,该神经网络数据包被传递至每个神经元计算单元;
S106,每个神经元计算单元判断所述轴突地址是否与自身存储地址匹配,若是则执行S107,若否则返回S101;
S107,神经元计算单元输出与所述轴突地址对应的权重值,将该权重值与所述轴突值相乘后送入累加器,返回S101。
请参见图7,所述神经元计算模块200计算结果发送包含以下步骤:
S201,等待全局时钟触发生效;
S202,判断全局时钟触发是否生效,若是则执行S203,若否则返回S201;
S203,将各神经元计算模块累加器结果锁存至对应的发送缓存及接口;
S204,判断各发送缓存及接口是否接收到对应的核控制器发出的比较脉冲,若是则执行S205,若否则返回S204;
S205,读取地址数值与当前神经元周期相同的神经元计算模块发送缓存中及接口中的数据;
S206,判断该数据是否有效,若是则执行S207,若否则执行S215;
S207,将该数据输入函数查找表并输出结果;
S208,判断该输出结果是否有效,若是则执行S209,若否则执行S215;
S209, 将该输出结果送至缓存等待路由器接收,清零对应神经元累加器;
S210,等待路由器空闲,若路由器空闲则执行S211,若路由器不空闲则返回S210;
S211,路由器模块启动一次神经元计算模块缓存数据接收;
S212,判断神经元计算模块发出信息是否处理完成,若是则执行S213,若否则返回S212;
S213,路由器模块向核控制器发信息处理完成脉冲;
S214,核控制器判断是否最后一个神经元周期,若是则返回S201,若否则执行S216;
S215,向核控制器发信息数据无效脉冲;
S216,核控制器驱动神经元周期更替,发出比较脉冲,返回S204。
本发明第四实施例提供的人工神经网络计算核20采用单路由器单神经元计算模块的工作方式,通过路由器模块100实现多个人工神经网络计算核20的组网。
本发明第五实施例提供一种人工神经网络计算核,包括一路由器模块、多个神经元计算模块、多个核控制器,所述多个神经元计算模块与所述多个核控制器一一对应。本实施例与第三实施例区别在于,第三实施例为单路由单神经元计算模块的配置,而本实施例为单路由多神经元计算模块的配置,即单一路由器模块可与多个神经元计算模块建立联接。
本实施例具体以单路由四神经元计算模块为例进行说明,实际应用中经元计算模块的数量可以根据具体需求而做适当的变化。请参见图8,一种人工神经网络计算核30,包括路由器模块400、第一神经元计算模块200a、第一核控制器300a、第二神经元计算模块200b、第二核控制器300b、第三神经元计算模块200c、第三核控制器300c、第四神经元计算模块200d、第四核控制器300d。
所述路由器模块400与第三实施例中的路由器模块100区别在于,路由器模块400包括了多个神经元-路由器接口,即第一神经元-路由器接口471、第二神经元-路由器接口472、第三神经元-路由器接口473、第四神经元-路由器接口474。每组核控制器、神经元计算模块、神经元-路由器接口分别同路由控制器410按实施例三中单路由单神经元计算模块的配置方式建立联接。
本发明第四实施例提供的人工神经网络计算核30中一个路由器模块对应多个神经元计算模块,若该多个神经元计算模块具有相同或相近的功能,可以实现聚类计算,可降低路由器节点数、提高传输带宽。实现计算核的柔性拓展以及存储资源的有效利用,以增强计算核的适应性,避免额外的资源开销。
请参见图9,本发明进一步提供一种人工神经网络计算系统,包括多个人工神经网络计算核40,该多个人工神经网络计算核40通过路由器模块100实现多个方向的相互联接。实施例中仅给出了包含有9个人工神经网络计算核40的情形,且每一人工神经网络计算核40包含有4个发送接收缓存及接口,实现上下左右4个方向的相互联接。可以理解,实际应用中人工神经网络计算核的数目及每一人工神经网络计算核中包含的发送接收缓存及接口数目可以依据实际的应用情形而改变。
本实施例提供了一种通过将多个人工神经网络计算核40组网形成的人工神经网络计算系统,实现了多人工神经网络计算核40的网络连接。
另外,本领域技术人员还可以在本发明精神内做其它变化,当然,这些依据本发明精神所做的变化,都应包含在本发明所要求保护的范围之内。

Claims (10)

1.一种神经元计算单元,其特征在于,包括:
解码模块,接收并解析地址信息和轴突值信息;
地址权重模块,接收所述解码模块输出的地址信息,并判断该地址信息与地址权重模块中存储的地址信息是否匹配,若匹配则输出该地址信息对应的权重值;
乘法器,将所述解码模块输出的轴突值信息与所述地址权重模块输出的权重值相乘;以及
累加器,将所述乘法器输出的计算结果进行累加并输出。
2.如权利要求1所述的神经元计算单元,其特征在于,所述地址权重模块还用于,当输入的地址信息与地址权重模块中存储的地址信息不匹配时,所述地址权重模块输出零值。
3.如权利要求2所述的神经元计算单元,其特征在于,所述地址权重模块还用于,当输入的地址信息与地址权重模块中存储的地址信息匹配时,发送地址有效标志。
4.一种神经元计算模块,其特征在于,包括:多个如权利要求3所述的神经元计算单元、发送缓存及接口、函数信息表;
所述多个神经元计算单元,接收来自外部的地址信息和轴突值信息,并对所述地址信息进行判断,若接收到的地址信息与自身地址权重模块中存储的地址信息匹配,则对该接收到的信息进行神经网络计算,并将计算结果及地址有效标志发送至所述发送缓存及接口,若接收到的地址信息与自身地址权重模块中存储的地址信息不匹配,则不对该接收到的信息进行神经网络计算;
所述发送缓存及接口,用于在外部全局时钟触发时将所述多个神经元计算单元的计算结果及地址有效标志进行锁存,以及将指定的神经元计算结果输出至所述函数信息表并获取转换结果;
所述函数信息表,将所述神经元计算结果转换为对应的函数值。
5.如权利要求4所述的神经元计算模块,其特征在于,所述发送缓存及接口还用于,在外部全局时钟触发时清零所述多个神经元计算单元的地址有效标志。
6.一种人工神经网络计算核,其特征在于,包括:如权利要求4所述的神经元计算模块、核控制器;
所述核控制器,用于向所述发送缓存及接口发出神经元周期和比较脉冲;
所述发送缓存及接口,还用于在接收到所述核控制器发出的比较脉冲后,读取序号与当前神经元周期相同的神经元地址有效标志,若为有效,所述发送缓存及接口将该神经元计算结果送入所述函数信息表并获取转换结果,若为无效,所述发送缓存及接口向所述核控制器发出数据无效标志。
7.如权利要求6所述的人工神经网络计算核,其特征在于,所述发送缓存及接口还用于判断所述转函数信息表的换结果是否有效,若为有效,所述发送缓存及接口将该转换结果输出,若为无效,所述发送缓存及接口向所述核控制器发出数据无效标志。
8.如权利要求7所述的人工神经网络计算核,其特征在于,所述发送缓存及接口通过串行外设接口将所述转换结果输出。
9.如权利要求6或7所述的人工神经网络计算核,其特征在于,所述核控制器还用于在接收到所述发送缓存及接口发送的数据无效标志后进入下一神经元周期。
10.如权利要求7所述的人工神经网络计算核,其特征在于,所述发送缓存及接口还用于当所述转函数信息表的换结果为有效时,清零对应神经元计算单元的累加器。
CN201610354205.9A 2016-05-25 2016-05-25 神经元计算单元、神经元计算模块及人工神经网络计算核 Active CN106056211B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610354205.9A CN106056211B (zh) 2016-05-25 2016-05-25 神经元计算单元、神经元计算模块及人工神经网络计算核

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610354205.9A CN106056211B (zh) 2016-05-25 2016-05-25 神经元计算单元、神经元计算模块及人工神经网络计算核

Publications (2)

Publication Number Publication Date
CN106056211A true CN106056211A (zh) 2016-10-26
CN106056211B CN106056211B (zh) 2018-11-23

Family

ID=57175933

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610354205.9A Active CN106056211B (zh) 2016-05-25 2016-05-25 神经元计算单元、神经元计算模块及人工神经网络计算核

Country Status (1)

Country Link
CN (1) CN106056211B (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106815638A (zh) * 2017-01-20 2017-06-09 清华大学 输入权重拓展的神经元信息处理方法和系统
CN107527089A (zh) * 2017-10-10 2017-12-29 胡明建 一种以时间采压计数作为识别人工神经元的设计方法
CN107563502A (zh) * 2017-09-09 2018-01-09 胡明建 一种可编码多态输出人工神经元的设计方法
CN107563504A (zh) * 2017-09-19 2018-01-09 胡明建 一种可植入激活函数双择端输出人工神经元的设计方法
CN107563501A (zh) * 2017-09-17 2018-01-09 胡明建 一种可植入激活函数择端输出人工神经元的设计方法
CN107688851A (zh) * 2017-08-26 2018-02-13 胡明建 一种无轴突全传递人工神经元的设计方法
CN107818367A (zh) * 2017-10-30 2018-03-20 中国科学院计算技术研究所 用于神经网络的处理系统和处理方法
WO2018119785A1 (en) * 2016-12-28 2018-07-05 Intel Corporation Method and apparatus for a binary neural network mapping scheme utilizing a gate array architecture
CN108875919A (zh) * 2017-07-21 2018-11-23 北京旷视科技有限公司 数据处理装置、数据处理方法和存储介质产品
CN110796244A (zh) * 2018-08-01 2020-02-14 南京天数智芯科技有限公司 用于人工智能设备的核心计算单元处理器及加速处理方法
WO2020062299A1 (zh) * 2018-09-30 2020-04-02 华为技术有限公司 一种神经网络处理器、数据处理方法及相关设备
CN112955878A (zh) * 2018-11-06 2021-06-11 创惟科技股份有限公司 实施神经网络的激活逻辑的装置及其方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104145281A (zh) * 2012-02-03 2014-11-12 安秉益 神经网络计算装置和系统及其方法
CN105095967A (zh) * 2015-07-16 2015-11-25 清华大学 一种多模态神经形态网络核
CN105320495A (zh) * 2014-07-22 2016-02-10 英特尔公司 用于卷积神经网络的权重移位机制

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104145281A (zh) * 2012-02-03 2014-11-12 安秉益 神经网络计算装置和系统及其方法
CN105320495A (zh) * 2014-07-22 2016-02-10 英特尔公司 用于卷积神经网络的权重移位机制
CN105095967A (zh) * 2015-07-16 2015-11-25 清华大学 一种多模态神经形态网络核

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
罗莉 等: "数字神经元芯片的设计与应用", 《计算机研究与发展》 *

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018119785A1 (en) * 2016-12-28 2018-07-05 Intel Corporation Method and apparatus for a binary neural network mapping scheme utilizing a gate array architecture
US11055613B2 (en) 2016-12-28 2021-07-06 Intel Corporation Method and apparatus for a binary neural network mapping scheme utilizing a gate array architecture
CN106815638A (zh) * 2017-01-20 2017-06-09 清华大学 输入权重拓展的神经元信息处理方法和系统
CN106815638B (zh) * 2017-01-20 2020-03-27 北京灵汐科技有限公司 输入权重拓展的神经元信息处理方法和系统
CN108875919B (zh) * 2017-07-21 2021-04-02 北京旷视科技有限公司 数据处理装置、数据处理方法和存储介质产品
CN108875919A (zh) * 2017-07-21 2018-11-23 北京旷视科技有限公司 数据处理装置、数据处理方法和存储介质产品
CN107688851A (zh) * 2017-08-26 2018-02-13 胡明建 一种无轴突全传递人工神经元的设计方法
CN107563502A (zh) * 2017-09-09 2018-01-09 胡明建 一种可编码多态输出人工神经元的设计方法
CN107563501A (zh) * 2017-09-17 2018-01-09 胡明建 一种可植入激活函数择端输出人工神经元的设计方法
CN107563504A (zh) * 2017-09-19 2018-01-09 胡明建 一种可植入激活函数双择端输出人工神经元的设计方法
CN107527089A (zh) * 2017-10-10 2017-12-29 胡明建 一种以时间采压计数作为识别人工神经元的设计方法
CN107818367A (zh) * 2017-10-30 2018-03-20 中国科学院计算技术研究所 用于神经网络的处理系统和处理方法
CN110796244A (zh) * 2018-08-01 2020-02-14 南京天数智芯科技有限公司 用于人工智能设备的核心计算单元处理器及加速处理方法
CN110796244B (zh) * 2018-08-01 2022-11-08 上海天数智芯半导体有限公司 用于人工智能设备的核心计算单元处理器及加速处理方法
WO2020062299A1 (zh) * 2018-09-30 2020-04-02 华为技术有限公司 一种神经网络处理器、数据处理方法及相关设备
CN112955878A (zh) * 2018-11-06 2021-06-11 创惟科技股份有限公司 实施神经网络的激活逻辑的装置及其方法
CN112955878B (zh) * 2018-11-06 2023-10-27 创惟科技股份有限公司 实施神经网络的激活逻辑的装置及其方法

Also Published As

Publication number Publication date
CN106056211B (zh) 2018-11-23

Similar Documents

Publication Publication Date Title
CN106056211A (zh) 神经元计算单元、神经元计算模块及人工神经网络计算核
CN106056212A (zh) 一种人工神经网络计算核
Keeling et al. Individual identity and movement networks for disease metapopulations
EP3340126A1 (en) Scalable neuromoric core with shared synaptic memory and variable precision synaptic memory
CN109919316A (zh) 获取网络表示学习向量的方法、装置和设备及存储介质
US10867238B2 (en) Population-based connectivity architecture for spiking neural networks
CN101206588B (zh) 用于在多个进程之间分配计算操作的方法和装置
CN106951926A (zh) 一种混合架构的深度学习系统方法及装置
CN107710237A (zh) 服务器上深度神经网络划分
CN111708641B (zh) 一种内存管理方法、装置、设备及计算机可读存储介质
CN108431796A (zh) 分布式资源管理系统和方法
CN104424507B (zh) 一种回声状态网络的预测方法和预测装置
CN109788489A (zh) 一种基站规划方法及装置
CN109242013A (zh) 一种数据标注方法、装置、电子设备及存储介质
US11900243B2 (en) Spiking neural network-based data processing method, computing core circuit, and chip
CN107678858A (zh) 应用处理方法、装置、存储介质及电子设备
CN113642734A (zh) 一种深度学习模型的分布式训练方法、装置以及计算设备
CN105430060B (zh) 条件约束发布订阅模式航天测控数据交换系统
Chou et al. A clonal selection algorithm for energy-efficient mobile agent itinerary planning in wireless sensor networks
CN108881254A (zh) 基于神经网络的入侵检测系统
CN111626311B (zh) 一种异构图数据处理方法和装置
CN109710403B (zh) 应用进程映射方法、电子装置及计算机可读存储介质
CN104854602A (zh) 根据突触前神经元的激发生成消息
CN112700006A (zh) 网络架构搜索方法、装置、电子设备及介质
CN112242963A (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