CN109901878B - 一种类脑计算芯片及计算设备 - Google Patents

一种类脑计算芯片及计算设备 Download PDF

Info

Publication number
CN109901878B
CN109901878B CN201910139378.2A CN201910139378A CN109901878B CN 109901878 B CN109901878 B CN 109901878B CN 201910139378 A CN201910139378 A CN 201910139378A CN 109901878 B CN109901878 B CN 109901878B
Authority
CN
China
Prior art keywords
neuron
coprocessor
brain
processor
computing
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
CN201910139378.2A
Other languages
English (en)
Other versions
CN109901878A (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 Lynxi Technology Co Ltd
Original Assignee
Beijing Lynxi Technology Co Ltd
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 Lynxi Technology Co Ltd filed Critical Beijing Lynxi Technology Co Ltd
Priority to CN201910139378.2A priority Critical patent/CN109901878B/zh
Publication of CN109901878A publication Critical patent/CN109901878A/zh
Priority to PCT/CN2020/072260 priority patent/WO2020173237A1/zh
Priority to US17/431,479 priority patent/US11461626B2/en
Application granted granted Critical
Publication of CN109901878B publication Critical patent/CN109901878B/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/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/5443Sum of products
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • 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)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Neurology (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Advance Control (AREA)

Abstract

本发明提供了一种类脑计算芯片及计算设备,所述类脑计算芯片包括由一个或多个功能核组成个众核系统,各功能核之间通过片上网络进行数据传输;所述功能核包括:至少一个神经元处理器,用于计算多种神经元模型;至少一个协处理器,与所述神经元处理器耦合,用于执行积分运算和/或乘加类运算;其中,所述神经元处理器可调用所述协处理器执行乘加类运算。本发明提供的类脑计算芯片,用于高效率地实现各类神经形态算法,尤其是对于富SNN模型的计算特点,具有高运算密度的突触计算,高灵活度需求的胞体计算。

Description

一种类脑计算芯片及计算设备
技术领域
本发明涉及芯片技术领域,特别是涉及一种类脑计算芯片及计算设备。
背景技术
目前,人工神经元模型根据模拟生物神经元的精细程度和侧重不同具有很多种。如最典型的Integrate and fire(IF)模型,Leaky integrate-and-fire(LIF)模型和Izhikevich模型等。传统的类脑芯片(神经形态芯片)只会考虑其中1-2种模型,并采用纯ASIC方式实现,虽然它们大都具有执行效率高,功耗低,但可编程性不足,无法支持更多模型。虽然,传统芯片中会采用处理器众核的可编程的神经形态芯片,每个核是一个通用ARM处理器,但由于其没有针对乘加的额外加速模块,使得运算效率低下。
发明内容
鉴于上述问题,本发明提供了一种克服上述问题或至少部分地解决了上述问题的一种类脑计算芯片及计算设备。
根据本发明的一个方面,提供了一种类脑计算芯片,其特征在于,所述类脑计算芯片是由一个或多个功能核组成的众核系统,各功能核之间通过片上网络进行数据传输;
所述功能核包括:
至少一个可编程的神经元处理器,用于计算多种神经元模型;
至少一个协处理器,与所述神经元处理器耦合,用于执行积分运算和/或乘加类运算;
其中,所述神经元处理器可调用所述协处理器执行乘加类运算。
可选地,所述协处理器用于执行积分运算具体为:执行神经元模型中一组输入轴突到一组神经元的胞体之间的能量积分运算;所述能量积分运算过程通过以下方式表示:
Y=WX;
其中,X表示一组突触;Y表示一组神经元,W代表X到Y的突触连接关系。
可选地,所述W表示为二维矩阵MxN;其中,W具有MxN个乘加运算;
所述协处理器,还用于至少部分地并行完成所述MxN个乘加运算。
可选地,所述乘加类运算包括以下至少之一:向量-矩阵的乘、向量-矩阵的加、向量加,向量求和、向量点乘、向量乘以及矩阵-矩阵乘。
可选地,所述神经元处理器,还用于将指定计算参数和/或计算数据源传输至所述协处理器;
所述协处理器,还用于基于所述神经元处理器传输的所述指定计算参数和计算数据源执行相应地数据运算,并在所述数据运算至少部分执行完成后向所述神经元处理器发送通知,由所述神经元处理器在接收到所述通知后执行其他运算。
可选地,所述神经元处理器,还用于在所述协处理器进行乘加类运算的同时,并行运行其他运算程序。
可选地,所述类脑计算芯片还包括:
存储器阵列,包括至少一个存储器,与所述神经元处理器和/或所述协处理器耦合;
所述存储器,用于对所述神经元处理器和/或协处理器的运算数据进行存储,并通过预设方式实现所述多个所述神经元处理器和/或协处理器的并发访问。
可选地,所述神经元处理器和所述协处理器至少共享一片存储器,并通过所述存储器交换数据。
可选地,所述类脑计算芯片还包括:
路由收发器,路由收发器,与所述神经元处理器和协处理器耦合,用于在所述神经元处理器和协处理器之间进行信号传输。
可选地,所述神经元模型包括脉冲神经网络SNN模型。
根据本发明的另一个方面,还提供了一种计算设备,包括上述任一项所述的类脑计算芯片。
可选地,所述计算设备还包括:
存储设备,用于存储计算机程序,所述计算机程序在所述计算设备中运行时由类脑计算芯片加载并执行。
本发明提供了一种新型类脑计算芯片及计算设备,通过采用并行乘加协处理器和神经元处理器协同工作的核结构,有效解决了神经形态芯片效率和灵活度之间的矛盾,并且每核具有高计算吞吐率的并行乘加协处理器和高灵活度的神经元处理器,从而可以高效率地计算各类SNN模型,实现高精度的脑机制仿真以及高精度的类脑计算。
针对主流的大部分神经元模型对突触积分部分、大运算量的乘加操作需求,以及模型各异灵活度很高的神经元更新和激活模型,提供了高可编程性处理器,以及众核系统结构,进而实现大规模神经元并行计算。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例的众核系统结构示意图;
图2示出了本发明一个实施例的功能核结构示意图;
图3示出了本发明另一实施例的功能核结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
类脑计算芯片是以模拟生物脉冲神经网络为基本功能的硬件器件,是下一代人工智能的核心运算驱动力。传统的神经形态芯片实现大多只考虑较为简单的LeakyIntegrate and Fire(LIF)模型,此模型具有计算复杂度较低的特性,但依据此模型算法设计的芯片并不能用于其他模型的计算,因此可称为单一模型的神经形态芯片。另一种芯片属于通用数学计算芯片,具有细粒度的执行单元和调度能力,但并未对神经形态算法做专门的优化。因此,这两种芯片都不能称为可以用于富SNN模型的类脑芯片。另外,神经形态的模型也不完全确定,一直在发展完善中,因此未知算法也对芯片兼容性提出挑战。
本发明实施例提供了一种新型类脑计算芯片,参见图1可知,本发明实施例提供的脑类计算芯片可以是由一个或多个功能核100组成的众核系统,各功能核100之间可以通过片上网络进行数据传输。
参见图2可知,本发明实施例提供的功能核100可以包括:至少一个神经元处理器110,用于计算多种神经元模型。如Integrate and fire(积分-发放)、McCulloch andPitts(M-P)、Hodgkin-Huxley模型、Perceptron(感知器)、Fitzhugh-Nagumo(菲茨休-南云)、Leaky integrate-and-fire(LIF)、Morris-Lecar、Quadratic integrate-and-fire(二次积分-发放)、Time-varying integrate-and-fire model(时变积分-发放模型)、Wilson Polynomial(Wilson多项式)、Integrate-and-fire or burst、Resonate-and-fire、Izhikevich、Exponential integrate-and-fire(指数积分-发放)、Generalizedintegrate-and-fire(广义积分-发放)、Adaptive exponential integrate-and-fire(自适应指数积分-发放)、Mihalas-Neibur等等。上述所列举的神经元模型为常见的神经元模型,实际应用中还可以包括其他神经元模型。另外,对于上述所列举各神经元模型对应的中文只是较为常用释义,并不做为对神经元模型本身的限定。
本发明实施例提供的神经元模型优选为脉冲神经网络SNN模型。
脉冲神经网络(SNN-Spiking Neural Networks)经常被誉为第三代人工神经网络,其模拟神经元更加接近生物脑。由于脉冲神经网络的仿生特性,具有由粗到精各种模型算法。另外,SNN还具有各类时域编码方式,进一步体现了模型的丰富性。如Unary coding(元编码)、Burst Coding(突发编码)、Rate Coding(频率编码)、Temporal Coding(时间编码)、Spatial-temporal coding(空间-时间编码)以及Population coding(群编码)等。
本发明实施例中的神经元处理器110可以具备两个特性:其一,它是一个具有图灵完备性的处理器,具有与通用计算机完备性等价的指令集,可以编写用于神经元计算的程序,即该神经元处理器是可编程的。其二,它可以是根据SNN模型定制优化的处理器,不同于GPU,DSP,x86CPU等通用处理器,它针对SNN模型的运算特点进行了指令优化,具有专用的神经元处理指令。
继续参见图2可知,本发明实施例提供的功能核100还可以包括至少一个协处理器120,与神经元处理器110耦合,用于执行积分运算和/或乘加类运算。实际应用中,神经元处理器110和协处理器120可以通过核内总线或者内存接口电路连接,在总线模式下,二者可以共享内存。
可选地,本发明实施例中的协处理器120为并行乘加协处理器,其执行积分运算时,可以执行任一神经元模型中一组输入轴突到一组神经元的胞体之间的能量积分运算。在脉冲神经网络模型中,连在细胞膜上的分叉结构叫树突,是输入,那根长长的“尾巴”叫轴突,是输出。神经元输出的有电信号和化学信号。最主要的是沿着轴突细胞膜表面传播的一个电脉冲。树突和轴突都有大量的分支。轴突的末端通常连接到其他细胞的树突上,连接点上是一个叫“突触”的结构,一个神经元的输出通过突触传递给成千上万个下游的神经元。一个神经元有成千上万个上游神经元,积累它们的输入,产生输出。
可选地,一组输入轴突到一组神经元的胞体之间能量积分运算过程通过以下方式表示:Y=WX;
其中,X表示一组突触;Y表示一组神经元,W代表X到Y的突触连接关系。另外,X所表示的一组突触为一维向量,Y所标识的一组神经元也为一维向量。其中,W表示为二维矩阵MxN;其中,W具有MxN个乘加运算;协处理器120,还可以用于至少部分地并行完成上述MxN个乘加运算。由于上述过程的运算量很大,无法在神经元处理器高效率完成,因此本实施例中采用并行乘加协处理器完成,可进一步提升运算效率。其中,M、N均为大于1的整数,具体可以根据不同的情况进行设置,本发明不做限定。
上文提及,协处理器120还可以用于执行乘加类运算,乘加类运算可以包括以下至少之一:向量-矩阵的乘、向量-矩阵的加、向量加,向量求和、向量点乘、向量乘以及矩阵-矩阵乘。当然,除上述介绍的之外,协处理器120还可执行其他运算,本发明不做限定。上述多种类的乘加类运算复用乘加阵列,并以神经元处理器110中设置的协处理器120的调用指令的方式与神经元处理器110进行交互。
神经元处理器110在与协处理器120交互时,可调用协处理器120执行乘加类运算,具体可以包括将指定计算参数和计算数据源传输至协处理器120,或是通过预先编译的代码实现调用。即,神经元处理器110,还可以用于将指定计算参数和/或计算数据源传输至所述协处理器120;协处理器120,还可以用于基于神经元处理器110传输的所述指定计算参数和/或计算数据源执行相应地数据运算,并在所述数据运算至少部分执行完成后向所述神经元处理器110发送通知,由神经元处理器110在接收到所述通知后执行其他运算。可选地,神经元处理器110,还可以用于在协处理器120进行乘加类运算的同时,并行运行其他运算程序,如乘加类计算之外的调度,计算等程序。其中,神经元处理器110向协处理器120传输指定计算参数和/或计算数据源时,可以在预先传输或调用协处理器120执行乘加类运算时进行传输,本发明不做限定。
图3示出了本发明另一实施例的功能核结构示意图,参见图3可知,本发明另一实施例提供的功能核100还可以包括存储器阵列130,包括至少一个存储器,与神经元处理器110和/或所述协处理器120耦合。其中,所述存储器用于对所述神经元处理器110和/或协处理器120的运算数据进行存储,并通过预设方式实现所述多个所述神经元处理器110和/或协处理器120的并发访问。神经元处理器110和所述协处理器120至少共享一片存储器130,并通过存储器130交换数据。该预设方式可以是负载平衡或是其他方式,本发明不做限定。
也就是说,本实施例中,神经元处理器110和协处理器120的大批量数据交互采用共享内存完成,共享内存通过仲裁实现多个神经元处理器110和协处理器120的并发访问。举例来说,协处理器120与神经元处理器110同时访问内存时,先响应协处理器120的访问,并挂起神经元处理器110的访问,直到并协处理器120不再访问时再响应神经元处理器110的访问。当有多个协处理器120同时访问内存时,将协处理器120标号,按照序号小的先响应等等。
继续参见图3可知,本发明另一实施例提供的功能核100还可以包括路由收发器140,与神经元处理器110和协处理器120耦合,用于在所述神经元处理器110和协处理器120之间进行信号传输,协处理器120与神经元处理器110之间可以有其他控制信号,如启动信号,二者的获取状态信号等。
除上述介绍的之外,本发明实施例提供的类脑计算芯片,还可以用于非SNN的其他类神经网络的计算、图计算和高速路由交换机等设备。
下面通过几个具体实施例如何采用神经元处理器和并行乘加协处理器实现模型计算进行介绍说明。
实施例一,Leaky Integrate and Fire(LIF)模型
1、神经元膜电位值更新:在t时刻更新LIF脉冲神经元的膜电位值V1(t),在t时刻时神经元的膜电位值V1(t)可以表示为:轴突输入X(t)和突触权重W1的点积,与上一时刻神经元保持的膜电位值V1rst(t)经膜电位衰减系数α作用后的数值的和,如下公式所示:
V1(t)=X(t)·W1+αV1rst(t-1) 公式(1)
2.神经元输出判断:LIF脉冲神经元的输出为由0或者1表示的脉冲的有无,所述输出脉冲y1(t)由t时刻神经元膜电位V1(t)加上偏置项b(也被称为长治衰减项)后,与神经元阈值Vth作比较,当所述偏置后的膜电位值大于或等于神经元阈值Vth时,y1(t)为1,反之当偏置后的膜电位值小于神经元阈值Vth时,y1(t)为0,如下公式所示:
y1(t)=argmax(Vth,V1(t)+b) 公式(2)
3.神经元膜电位复位:当LIF脉冲神经元由脉冲产生,即y1(t)为1时,需要对神经元模电为进行复位操作,其可由如下数学形式表示:当前神经元膜电位V1(t)减去一个复位常熟β的值和输出脉冲y1(t)的积,得到复位操作作用之后的神经元膜电位V1rst(t)
V1rst(t)=V1(t)-βy1(t) 公式(3)
其中,y=argmax(a,b)的定义为:当b>a,y=1;否则,y=0.
在本实施例中,阵列乘加协处理器具备以下功能:
向量矩阵乘指令:vector=vec_mat_mul(matrix,vector)
向量点乘:vector=vec_mul(vector1,vector2)
向量加法:vector=vec_add(vector1,vector2)
向量减法:vector=vec_sub(vector1,vector2)
神经元处理器实现argmax函数。
则上述LIF过程可以表示为代码:
router_read(X)
I1=vec_mat_mul(W1,X)//协处理器高效实现
I2=vec_mul(α,V1)//协处理器高效实现
V1=vec_add(I1,I2)//协处理器高效实现
V2=vec_add(V1,b)//协处理器高效实现
y1=argmax(Vth,V2)
y2=vec_mul(y1,β)//协处理器高效实现
V1=vec_sub(V1,y2)//协处理器高效实现
router_send(V1)//协处理器高效实现
其中vec_mat_mul,vec_mul,vec_add,vec_sub由阵列乘加协处理器计算,argmax等其他操作及运算流程由神经元处理器通过编程处理。
这个代码存放于神经元处理器中,神经元处理器调用乘加协处理器完成对应功能,对于乘加协处理器没有的功能,如argmax,采用神经元处理器软件代码实现。
实施例二Izhikevich Model模型
Izhikevich Model是用微分方程表示神经元膜电位的更新,如下公式所示,其中v表示Izhikevich神经元的膜电位;u为恢复变量,用于描述生物神经元中Na+、K+的活动;I表示神经元接受到的输入刺激,同发明实施例一类似输入刺激由轴突输入X和突触权重W的乘积得到。
公式(4)表示了神经元膜电位v随时间的变化由其自身,当前的恢复变量u和输入刺激I共同决定,公式(5)表示了恢复变量u随时间的变化由其自身和当前的神经元膜电位v共同决定,公式(6)则描述了神经元的输出判断和神经元膜电位及恢复变量的复位更新逻辑,当神经元膜电位v大于阈值v_th神经元回输出一个脉冲信号(spike,与发明实施例一中的y1(t)相同,为由0和1表示的脉输出脉冲的有无),同时更新膜电位v和恢复变量u的值;公式中的a、b、c、d均为不同的神经元参数,进一步的,在本发明的实施例中,公式(4)中所出现的常数值(0.04、5、140),在由协处理器高效实现时也可以被配置为其他值,以实现更加灵活的膜电位更新。
Figure BDA0001977294080000081
Figure BDA0001977294080000082
if v>vth,spike&v=c&u=u+d 公式(6)
对应实现代码如下:
//以下代码用于计算
Figure BDA0001977294080000083
un=vec_sub(0,u)//协处理器高效实现
v1=vec_add(un,input)//协处理器高效实现
v1=vec_add(v1,140)//协处理器高效实现
v2=vec_mul(5,v)//协处理器高效实现
v1=vec_add(v1,v2)//协处理器高效实现
v2=vec_mul(v,v)//协处理器高效实现
v2=vec_mul(v2,0.04)//协处理器高效实现
v1=vec_add(v1,v2)//协处理器高效实现
v=vec_add(v1,v)//协处理器高效实现
//以下代码用于计算
Figure BDA0001977294080000091
和fu>uth,spike&v=c&u=u+d
v1=vec_mul(b,v)//协处理器高效实现
v1=vec_sub(v1,u)//协处理器高效实现
u1=vec_mul(v1,a)//协处理器高效实现
u1=vec_add(u1,u)//协处理器高效实现
u2=vec_mul(para1,v)//协处理器高效实现
u=vec_sub(u2,u1)//协处理器高效实现
s=argmax(vth,v)
v=sel(s,c,v)
ud=vec_add(u,d)//协处理器高效实现
u=sel(s,ud,u)
y=sel(c,a,b)的执行方式是当c=1时,y=a,否则y=b。
可见采用神经元处理器调用乘加协处理器的方式可以高效地执行LIF,Izhikevich等各类神经元模型。具有高效性和灵活性。
基于同一发明构思,本发明实施例还提供了一种计算设备,包括上述任一实施例所述的类脑计算芯片。
在本发明一可选实施例中,所述计算设备还包括:
存储设备,用于存储计算机程序,所述计算机程序在所述计算设备中运行时由类脑计算芯片加载并执行。
本发明实施例提供的类脑计算芯片,用于高效率地实现各类神经形态算法,尤其是对于富SNN模型的计算特点,具有高运算密度的突触计算,高灵活度需求的胞体计算,以实现对富SNN模型类脑计算的优化。并且,通过采用并行乘加协处理器和神经元处理器协同工作的核结构,有效解决了神经形态芯片效率和灵活度之间的矛盾,并且每核具有高计算吞吐率的并行乘加协处理器和高灵活度的神经元处理器,从而可以高效率地计算各类SNN模型,实现高精度的脑机制仿真以及高精度的类脑计算。
针对主流的大部分神经元模型对突触积分部分、大运算量的乘加操作需求,以及模型各异灵活度很高的神经元更新和激活模型,提供了高可编程性处理器,以及众核系统结构,进而实现大规模神经元并行计算。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
至此,本领域技术人员应认识到,虽然本文已详尽示出和描述了本发明的多个示例性实施例,但是,在不脱离本发明精神和范围的情况下,仍可根据本发明公开的内容直接确定或推导出符合本发明原理的许多其他变型或修改。因此,本发明的范围应被理解和认定为覆盖了所有这些其他变型或修改。

Claims (9)

1.一种类脑计算芯片,其特征在于,所述类脑计算芯片是由多个功能核组成的众核系统,各功能核之间通过片上网络进行数据传输;
所述功能核包括:
至少一个可编程的神经元处理器,用于计算多种神经元模型;所述神经元处理器具有与通用计算机完备性等价的指令集、具有专用的神经元处理指令;
至少一个协处理器,与所述神经元处理器耦合,用于执行积分运算和乘加类运算;
其中,所述神经元处理器可调用所述协处理器执行乘加类运算;
所述协处理器用于执行积分运算具体为:执行神经元模型中一组输入轴突到一组神经元的胞体之间的能量积分运算;所述能量积分运算过程通过以下方式表示:
Y=WX;
其中,X表示一组突触;Y表示一组神经元,W代表X到Y的突触连接关系。
2.根据权利要求1所述的类脑计算芯片,其特征在于,所述W表示为二维矩阵MxN;其中,W具有MxN个乘加运算;
所述协处理器,还用于至少部分地并行完成所述MxN个乘加运算。
3.根据权利要求1所述的类脑计算芯片,其特征在于,所述乘加类运算包括以下至少之一:向量-矩阵的乘、向量-矩阵的加、向量加,向量求和、向量点乘、向量乘以及矩阵-矩阵乘。
4.根据权利要求1所述的类脑计算芯片,其特征在于,
所述神经元处理器,还用于将指定计算参数和计算数据源传输至所述协处理器;
所述协处理器,还用于基于所述神经元处理器传输的所述指定计算参数和计算数据源执行相应地数据运算,并在所述数据运算至少部分执行完成后向所述神经元处理器发送通知,由所述神经元处理器在接收到所述通知后执行其他运算。
5.根据权利要求4所述的类脑计算芯片,其特征在于,所述神经元处理器,还用于在所述协处理器进行乘加类运算的同时,并行运行其他运算程序。
6.根据权利要求1-5任一项所述的类脑计算芯片,其特征在于,所述类脑计算芯片还包括:
存储器阵列,包括至少一个存储器,与所述神经元处理器和所述协处理器耦合;
所述存储器,用于对所述神经元处理器和协处理器的运算数据进行存储,并通过预设方式实现多个所述神经元处理器和协处理器的并发访问。
7.根据权利要求1所述的类脑计算芯片,其特征在于,所述神经元处理器和所述协处理器至少共享一片存储器,并通过所述存储器交换数据。
8.根据权利要求1所述的类脑计算芯片,其特征在于,所述类脑计算芯片还包括:
路由收发器,与所述神经元处理器和协处理器耦合,用于在所述神经元处理器和协处理器之间进行信号传输。
9.一种计算设备,包括权利要求1-8任一项所述的类脑计算芯片。
CN201910139378.2A 2019-02-25 2019-02-25 一种类脑计算芯片及计算设备 Active CN109901878B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201910139378.2A CN109901878B (zh) 2019-02-25 2019-02-25 一种类脑计算芯片及计算设备
PCT/CN2020/072260 WO2020173237A1 (zh) 2019-02-25 2020-01-15 一种类脑计算芯片及计算设备
US17/431,479 US11461626B2 (en) 2019-02-25 2020-01-15 Brain-like computing chip and computing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910139378.2A CN109901878B (zh) 2019-02-25 2019-02-25 一种类脑计算芯片及计算设备

Publications (2)

Publication Number Publication Date
CN109901878A CN109901878A (zh) 2019-06-18
CN109901878B true CN109901878B (zh) 2021-07-23

Family

ID=66945635

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910139378.2A Active CN109901878B (zh) 2019-02-25 2019-02-25 一种类脑计算芯片及计算设备

Country Status (3)

Country Link
US (1) US11461626B2 (zh)
CN (1) CN109901878B (zh)
WO (1) WO2020173237A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110515739B (zh) * 2019-10-23 2020-01-31 上海燧原智能科技有限公司 深度学习神经网络模型负载计算方法、装置、设备及介质
CN111082949B (zh) * 2019-10-29 2022-01-28 广东工业大学 一种类脑计算机中脉冲数据包高效传输方法
CN110909869B (zh) * 2019-11-21 2022-08-23 浙江大学 一种基于脉冲神经网络的类脑计算芯片
US20210334072A1 (en) * 2020-04-22 2021-10-28 Facebook, Inc. Mapping convolution to connected processing elements using distributed pipelined separable convolution operations
CN111831852B (zh) * 2020-07-07 2023-11-24 北京灵汐科技有限公司 一种视频检索方法、装置、设备及存储介质
CN112434800B (zh) * 2020-11-20 2024-02-20 清华大学 控制装置及类脑计算系统
CN112416475A (zh) * 2020-11-20 2021-02-26 清华大学 触发方法
CN112468401B (zh) * 2020-11-26 2022-05-20 中国人民解放军国防科技大学 用于类脑处理器的片上网络路由通信方法及片上网络
CN112822113B (zh) * 2020-12-31 2022-04-12 北京灵汐科技有限公司 路由地址的获取方法及装置、电子设备和可读存储介质
CN112783261B (zh) * 2021-01-13 2023-03-28 之江实验室 一种异步通讯互连架构及具有该架构的类脑芯片
CN113222134B (zh) * 2021-07-12 2021-10-26 深圳市永达电子信息股份有限公司 一种类脑计算系统、方法及计算机可读存储介质
CN114548390A (zh) * 2022-02-25 2022-05-27 电子科技大学 一种基于risc-v和神经形态计算的异构架构处理系统
CN114372568B (zh) * 2022-03-21 2022-07-15 深圳时识科技有限公司 类脑芯片及电子设备
CN115271058B (zh) * 2022-09-29 2023-01-17 北京芯可鉴科技有限公司 类脑计算芯片和数据处理终端

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104809498A (zh) * 2014-01-24 2015-07-29 清华大学 一种基于神经形态电路的类脑协处理器
CN105095967A (zh) * 2015-07-16 2015-11-25 清华大学 一种多模态神经形态网络核
CN106030622A (zh) * 2014-02-21 2016-10-12 高通股份有限公司 原位神经网络协同处理
CN108427584A (zh) * 2018-03-19 2018-08-21 清华大学 快速启动的具有并行计算核的芯片及该芯片的配置方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5237210A (en) * 1992-03-12 1993-08-17 Intel Corporation Neural network accomodating parallel synaptic weight adjustments for correlation learning algorithms
US5479579A (en) 1992-09-04 1995-12-26 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Cascaded VLSI neural network architecture for on-line learning
CN101567159A (zh) * 2009-06-10 2009-10-28 北京豪仪测控工程有限公司 基于图像识别技术的导览方法及设备
US8504503B1 (en) * 2009-07-16 2013-08-06 Massachusetts Institute Of Technology Pulse modulated neural integrator circuit
US8442927B2 (en) * 2009-07-30 2013-05-14 Nec Laboratories America, Inc. Dynamically configurable, multi-ported co-processor for convolutional neural networks
CN104809501B (zh) * 2014-01-24 2018-05-01 清华大学 一种基于类脑协处理器的计算机系统
US9904976B2 (en) * 2015-01-16 2018-02-27 Nec Corporation High performance portable convulational neural network library on GP-GPUs
CN105095966B (zh) * 2015-07-16 2018-08-21 北京灵汐科技有限公司 人工神经网络和脉冲神经网络的混合计算系统
CN105488565A (zh) * 2015-11-17 2016-04-13 中国科学院计算技术研究所 加速深度神经网络算法的加速芯片的运算装置及方法
CN105913119B (zh) * 2016-04-06 2018-04-17 中国科学院上海微系统与信息技术研究所 行列互联的异构多核心类脑芯片及其使用方法
US10387298B2 (en) * 2017-04-04 2019-08-20 Hailo Technologies Ltd Artificial neural network incorporating emphasis and focus techniques
CN108364066B (zh) * 2017-11-30 2019-11-08 中国科学院计算技术研究所 基于n-gram和wfst模型的人工神经网络芯片及其应用方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104809498A (zh) * 2014-01-24 2015-07-29 清华大学 一种基于神经形态电路的类脑协处理器
CN106030622A (zh) * 2014-02-21 2016-10-12 高通股份有限公司 原位神经网络协同处理
CN105095967A (zh) * 2015-07-16 2015-11-25 清华大学 一种多模态神经形态网络核
CN108427584A (zh) * 2018-03-19 2018-08-21 清华大学 快速启动的具有并行计算核的芯片及该芯片的配置方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
异构融合类脑计算平台的计算模型与关键技术研究;邓磊;《中国博士学位论文全文数据库 信息科技辑》;20190215(第02期);第I140-22页 *

Also Published As

Publication number Publication date
US20220138542A1 (en) 2022-05-05
US11461626B2 (en) 2022-10-04
CN109901878A (zh) 2019-06-18
WO2020173237A1 (zh) 2020-09-03

Similar Documents

Publication Publication Date Title
CN109901878B (zh) 一种类脑计算芯片及计算设备
Balaji et al. Mapping spiking neural networks to neuromorphic hardware
Zhao et al. F-CNN: An FPGA-based framework for training convolutional neural networks
Ramasamy et al. Multi-disease classification model using strassen’s half of threshold (SHoT) training algorithm in healthcare sector
WO2022134391A1 (zh) 融合神经元模型、神经网络结构及训练、推理方法、存储介质和设备
CN110121721A (zh) 用于稀疏神经网络加速的架构
US11468332B2 (en) Deep neural network processor with interleaved backpropagation
CN109472356A (zh) 一种可重构神经网络算法的加速装置及方法
CN109409510A (zh) 神经元电路、芯片、系统及其方法、存储介质
CN108320018A (zh) 一种人工神经网络运算的装置及方法
He et al. A low-cost fpga implementation of spiking extreme learning machine with on-chip reward-modulated stdp learning
Card et al. Competitive learning algorithms and neurocomputer architecture
Pu et al. Block-based spiking neural network hardware with deme genetic algorithm
CN110490317B (zh) 神经网络运算装置及运算方法
CN109978143B (zh) 一种基于simd架构的堆栈式自编码器及编码方法
Philip et al. Review of FPGA-based accelerators of deep convolutional neural networks
Ben-Bright et al. Taxonomy and a theoretical model for feedforward neural networks
Biswas et al. A temporally and spatially local spike-based backpropagation algorithm to enable training in hardware
Das et al. Study of spiking neural network architecture for neuromorphic computing
Ivković et al. Exploring the potential of new AI-enabled MCU/SOC systems with integrated NPU/GPU accelerators for disconnected Edge computing applications: towards cognitive SNN Neuromorphic computing
CN111382848A (zh) 一种计算装置及相关产品
Duranton et al. A general purpose digital architecture for neural network simulations
Domen et al. Implementation of Massive Artificial Neural Networks with Field-programmable Gate Arrays
CN114692847B (zh) 数据处理电路、数据处理方法及相关产品
WO2019084254A1 (en) TENSEUR HANDLING IN A NEURONAL NETWORK

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
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Wu Zhenzhi

Inventor after: Wang Guanrui

Inventor before: Wu Zhenzhi

Inventor before: Wu Guanrui

GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A kind of brain computing chip and computing equipment

Effective date of registration: 20220318

Granted publication date: 20210723

Pledgee: Zhongguancun Beijing technology financing Company limited by guarantee

Pledgor: LYNXI TECHNOLOGIES Co.,Ltd.

Registration number: Y2022990000151

PC01 Cancellation of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20230420

Granted publication date: 20210723

Pledgee: Zhongguancun Beijing technology financing Company limited by guarantee

Pledgor: LYNXI TECHNOLOGIES Co.,Ltd.

Registration number: Y2022990000151