神经形态装置及其操作方法

文档序号:117019 发布日期:2021-10-19 浏览:18次 >En<

阅读说明:本技术 神经形态装置及其操作方法 (Neuromorphic device and method of operating same ) 是由 李炅奂 金容锡 金炫哲 山田悟 柳成原 弘载昊 于 2021-03-18 设计创作,主要内容包括:公开了神经形态装置及其操作方法。所述神经形态装置包括突触阵列,突触阵列包括:输入线,沿第一方向延伸,并且从连接到输入线的轴突电路独立地接收输入信号;位线,沿与第一方向交叉的第二方向延伸并且输出输出信号;单元串,均包括在输入线与位线之间串联连接的串选择晶体管和至少两个电阻忆阻器元件;电极垫,在输入线与位线之间堆叠并且彼此间隔开,并且连接到串选择晶体管和所述至少两个电阻忆阻器元件;解码器,将串选择信号或字线选择信号施加到电极垫;以及神经元电路,各自连接到所述多条位线中的与单元串中的一个连接的一条位线,对输出信号进行求和,当求和的输出信号大于预定的阈值时对求和的输出信号进行转换并且输出转换后的信号。(Neuromorphic devices and methods of operating the same are disclosed. The neuromorphic device includes an array of synapses comprising: an input line extending in a first direction and independently receiving an input signal from axon circuitry connected to the input line; a bit line extending in a second direction crossing the first direction and outputting an output signal; cell strings each including a string selection transistor and at least two resistive memristor elements connected in series between an input line and a bit line; electrode pads stacked and spaced apart from each other between the input lines and the bit lines and connected to the string selection transistors and the at least two resistive memristor elements; a decoder applying a string selection signal or a word line selection signal to the electrode pad; and neuron circuits each connected to one of the bit lines connected to one of the cell strings, summing the output signals, converting the summed output signals when the summed output signals are greater than a predetermined threshold value, and outputting the converted signals.)

神经形态装置及其操作方法

技术领域

本公开涉及一种神经形态装置,并且更具体地,涉及一种包括三维突触阵列的神经形态装置。

背景技术

对类似于人类神经系统的神经形态处理器的兴趣越来越大。已经进行了通过设计与存在于人类神经系统中的神经元和突触对应的神经元电路和突触电路来实现神经形态处理器的研究。这种神经形态处理器可以用于驱动各种神经网络(诸如,卷积神经网络(CNN)、循环神经网络(RNN)和前馈神经网络(FNN)),并且可以用在诸如数据分类或图像识别的领域中。

发明内容

实施例涉及一种神经形态装置,所述神经形态装置包括至少一个突触阵列,其中,突触阵列包括:多条输入线,沿第一方向延伸,并且从分别连接到所述多条输入线的多个轴突电路彼此独立地接收输入信号;多条位线,沿与第一方向正交的第二方向延伸,并且彼此独立地输出输出信号;多个单元串,均包括在所述多条输入线中的任何一条输入线与所述多条位线中的任何一条位线之间沿第三方向串联连接的串选择晶体管和至少两个电阻忆阻器元件;多个电极垫,在所述多条输入线与所述多条位线之间沿第三方向堆叠同时彼此间隔开,并且连接到串选择晶体管和所述至少两个电阻忆阻器元件;解码器,被配置为将串选择信号或字线选择信号施加到所述多个电极垫中的每个;以及多个神经元电路,各自连接到所述多条位线中的与所述多个单元串中的一个单元串连接的一条位线,对输出信号进行求和,当求和的信号大于预定的阈值时对求和的信号进行转换并且输出求和的信号,其中,突触阵列在被施加串选择信号的至少一个单元串中的由字线选择信号激活的层的电阻忆阻器元件中对输入信号执行人工神经网络计算。

根据本公开的另一实施例,一种神经形态装置包括:片上存储器,被配置为读取并存储神经形态数据;神经形态处理器,包括至少一个突触阵列,以根据突触阵列中的神经形态数据来执行人工神经网络计算,其中,突触阵列包括:多条输入线,分别连接到多个轴突电路,以基于神经形态数据彼此独立地接收输入信号;多条位线,与所述多条输入线间隔开,每条位线根据人工神经网络计算输出输出电流;多个神经元电路,分别连接到所述多条位线,以对输出电流进行求和,并且当求和的输出电流大于预定的阈值时输出求和的输出电流作为输出信号;多个电极垫,在所述多条输入线与所述多条位线之间以预定的间隔堆叠和布置;多个忆阻器贯穿结构,均穿过所述多个电极垫以连接在所述多条输入线中的任何一条输入线与所述多条位线中的一条位线之间,以形成输出电流的电流路径;多个串选择晶体管,分别设置在所述多个忆阻器贯穿结构与所述多条位线之间;以及解码器,连接到所述多个电极垫中的每个以施加字线选择信号和串选择信号。

根据本公开的另一实施例,公开了一种包括具有多个层的至少一个三维突触阵列的神经形态装置的操作方法,所述操作方法包括:在接收到彼此独立的多个输入信号时,在与字线选择信号对应的层的多个电阻忆阻器元件中对输入信号执行人工神经网络计算;作为人工神经网络计算的结果,通过位线向神经元电路输出多个输出电流;以及对输出电流进行求和,以在求和的输出电流大于预定的阈值时输出求和的输出电流作为输出电压,其中,三维突触阵列针对由字线选择信号激活的每个层独立地执行人工神经网络计算。

然而,本公开的方面不限于在此阐述的那些。通过参照下面给出的本公开的详细的描述,对于本公开所属领域的普通技术人员来说,本公开的以上和其它方面将变得更加清楚。

附图说明

通过参照附图详细描述示例实施例,特征对于本领域技术人员将变得清楚,在附图中:

图1示出了用于神经形态计算的数学模型;

图2是解释神经形态计算的概念图;

图3至图5是解释根据一些示例实施例的神经形态装置中的突触阵列电路的配置的图;

图6A至图6D是示出根据一些示例实施例的突触阵列的一个串的图;

图7是描述根据一些示例实施例的当在突触阵列中选择了一个层时的操作的图;

图8和图9是描述根据一些示例实施例的神经形态装置的操作的概念图;

图10和图11是描述根据一些示例实施例的神经形态装置的操作的概念图;

图12和图13是描述根据一些示例实施例的突触阵列中的每个层的操作的概念图;

图14是示出根据示例实施例的神经形态装置的硬件配置的框图;

图15是示出根据一些示例实施例的电子系统的配置的框图。

具体实施方式

图1示出了用于神经形态计算(neuromorphic computation)的数学模型。图2是解释神经形态计算的概念图。

生物神经元是存在于人类神经系统中的细胞。生物神经元是基本的生物计算实体之一。人脑包含大约1000亿个生物神经元和生物神经元之间的100万亿个互连(interconnection)。

人脑可以通过经由将大量神经元彼此连接而形成的神经网络传输和处理各种信号,来学习和记忆大量信息。人脑中的神经元之间的大量互连与生物计算的大规模并行性质(massively parallel nature)直接相关,因此已经进行了各种尝试以通过模拟人工神经网络(artificial neural network)来高效地处理大量信息。例如,正在研究作为被设计为在神经元级别实现人工神经网络的计算系统的神经形态装置。

生物神经元的行为可以通过数学模型来模拟。作为神经形态运算的示例,与生物神经元对应的数学模型可以包括:将来自多个神经元的信息乘以突触权重(synapticweight)的乘法运算、乘以了突触权重的多个值的加法运算(Σ)、以及将特征函数(b)和激活函数(f)应用于加法运算结果的运算。

参照图1,示出了人工神经网络的示例,人工神经网络包括输入层、隐藏层和输出层。人工神经网络可以基于接收的输入数据(例如,Vin1、Vin2、Vin3)执行运算,并且基于运算结果生成输出数据(例如,Vout1、Vout2)。

人工神经网络可以是包括两个或更多个隐藏层的深度神经网络(DNN)或n层神经网络。例如,如图1中所示,人工神经网络可以是包括输入层“层1”(Layer 1)、两个隐藏层“层2”和“层3”(Layer 2和Layer 3)以及输出层“层4”(Layer 4)的DNN。DNN可以包括CNN、RNN、FNN、深度信念网络(deep belief network)或受限玻尔兹曼机(restrictedBoltzmann machine)等。

图1的人工神经网络被示出为包括四个层,但这仅是示例,并且人工神经网络可以包括更少或更多的层。此外,人工神经网络可以包括具有与图1中所示的结构不同的各种结构的层。

人工神经网络中包括的每个层可以包括多个人工神经元。人工神经元可以被称为“神经元”、“处理元件(PE)”、“单元”或类似术语。

如图1中所示出的,层1可以包括三个神经元,层2可以包括四个神经元。然而,这仅是示例,并且人工神经网络中包括的每个层可以包括各种数量的神经元。

在图1中,人工神经网络中的每个层中包括的神经元可以彼此连接以交换数据。例如,一个神经元可以从前一层的其它神经元接收数据并对该数据进行计算,以将计算结果输出给下一层的其它神经元。

每个神经元的输出值可以被称为激活(activation)。激活可以是来自一个神经元的输出值,并且可以是至包括在下一层中的神经元的输入值。参照图2,每个神经元可以基于权重和从前一层中包括的神经元接收的激活来确定它自己的激活值。权重是用于计算每个神经元中的激活的参数,并且可以是分配给神经元之间的连接关系的值。权重可以存储在连接神经元的突触中。

每个神经元可以是接收输入并输出激活的计算单元(computational unit),并且可以映射输入和输出。例如,当σ是激活函数时,是从第i-1层中包括的第k个神经元到第i层中包括的第j个神经元的权重,是第i层中包括的第j个神经元的偏置(bias),是第i层中的第j个神经元的激活,激活可以遵循等式1。

如此,人工神经网络的运算可以包括将前一层的神经元的输出值乘以突触的权重的乘法运算以及将接收神经元中的每个乘法的结果相加的加法运算。

图3至图5是解释根据一些示例实施例的神经形态装置中的突触阵列电路的配置的图。

参照图3,二维地示出了神经形态装置200中的阵列电路的配置。根据本示例实施例的神经形态装置200包括轴突电路(又称为“轴突”)210、突触电路(又称为“突触”)220、树突电路(又称为“树突”)230、神经元电路(又称为“神经元”)240和网络(算法块)260。神经形态装置200可以包括沿第一方向从轴突电路210延伸的第一方向线(或轴突线)和沿第二方向延伸且与树突电路230对应的第二方向线(或树突线)。第一方向线和第二方向线彼此相交,并且突触电路220可以设置在第一方向线和第二方向线的交叉点上。在图3中,第一方向被示出为行方向,第二方向被示出为列方向,但这仅是示例。

每个轴突电路210可以是模拟生物神经元的轴突的电路。由于神经元的轴突执行将信号从一个神经元发送到另一个神经元的功能,所以模拟神经元的轴突的每个轴突电路210可以接收激活并将激活发送到第一方向线。激活对应于通过神经元传输的神经递质,并且可以是输入到每个轴突电路210的电信号。另外,每个轴突电路210可以包括用于存储输入信息的存储器或寄存器。

每个突触电路220可以是模拟神经元之间的突触的电路。突触电路220可以存储与神经元之间的连接强度对应的权重。每个突触电路220可以包括用于存储权重的存储器元件,或者可以连接到已经具有权重的存储器元件。在一个示例实施例中,这样的存储器元件可以是忆阻器(memristor)或包括忆阻器。

树突电路230可以是模拟神经元的树突的电路。树突电路230可以从其它外部神经元接收信号,并且通过第二方向线向每个神经元电路240提供权重和激活的计算结果。每个神经元电路240可以基于通过对应的第二方向线接收的计算结果来确定是否输出尖峰(spike)。在一个示例实施例中,神经元电路240可以包括积分器和比较器。例如,当接收的计算结果的累加值大于或等于预定的阈值(例如,VTH)时,每个神经元电路240可以输出尖峰。从神经元电路240输出的尖峰可以对应于通过网络260输入到下一级的轴突的激活。

神经元电路240可以相对于突触电路220定位在后端处,因此神经元电路240可以被称为突触后神经元电路。轴突电路210可以相对于突触电路220定位在前端处,因此轴突电路210可以被称为突触前神经元电路。

每个突触电路220可以用存储器元件(诸如,忆阻器元件250)来实现。忆阻器元件250可以通过基于忆阻器的设计将权重存储在其中,并在交叉点处执行乘法(即,“与”(AND)运算)。根据本示例实施例的每个突触电路220的忆阻器元件250可以被实现为电阻元件(诸如,使用相变材料的相变随机存取存储器(PRAM)或使用诸如复合金属氧化物的可变电阻材料的电阻式随机存取存储器(RRAM))。构成电阻元件的材料具有根据电流或电压的大小和/或方向而变化的可变电阻值,并且具有即使在电流或电压被切断时仍保持其电阻的非易失性特性。

参照图4,根据一些示例实施例的突触阵列300可以包括多条输入线IL、多条位线BL以及设置在每条输入线与每条位线之间的多个单元串。为了简化描述,突触阵列300被描述为包括三条位线BL1至BL3和三条输入线IL1至IL3,但是根据各种实施例,突触阵列300可以包括更多数量的位线和输入线。

突触阵列的输入线IL和位线BL可以彼此正交,同时沿Z方向彼此间隔开。例如,输入线IL可以沿X方向延伸,并且位线可以沿Y方向延伸。输入线IL可以连接到轴突电路,并且位线BL可以连接到树突电路。

多个单元串可以并联连接到位线BL1至BL3中的每条。多个单元串可以连接到彼此独立的输入线IL1至IL3。因此,多个单元串中的每个可以连接到一条输入线(例如,IL1)和一条位线(例如,BL1)。

多条输入线IL1至IL3中的每条可以沿X方向延伸,同时沿Y方向彼此平行地间隔开。输入信号可以独立地施加到输入线IL1至IL3中的每条。根据一些示例实施例,轴突电路210可以被实现为输入开关(SW)310并且连接到每条输入线IL1至IL3的输入端子以施加输入信号Vin1至Vin3。根据一些示例实施例,轴突电路210可以被实现为存储器或寄存器,以存储输入信号Vin1至Vin3并输出输入信号Vin1至Vin3。

每个单元串可以包括连接到位线BL的串选择晶体管以及串联连接在输入线IL与串选择晶体管之间的多个忆阻器元件320。每个忆阻器元件320可以包括字线晶体管和权重存储元件350。可以竖直地堆叠一个单元串以通过共享和使用一个神经元电路来减少开销。将参照图6A至图6D更详细地描述单元串。

在一些示例实施例中,突触阵列可以在层的基础上进行操作。神经形态装置可以通过针对每个层独立地执行人工神经网络计算来学习。

在突触阵列中,一个层可以包括设置在同一平面上并沿着一条字线WL激活的忆阻器元件。如参照图1所描述的,每个层可以包括不同数量的忆阻器元件。包括在一个层中的忆阻器元件的数量可以在解码器370和外围电路360的控制下变化。例如,第一层可以包括3×3个忆阻器元件,第二层可以包括2×3个忆阻器元件。

位线BL1至BL3中的每条可以将输出信号Iout输出到神经元电路340。根据一些示例实施例,一个神经元电路340可以连接到一条位线BL。

神经元电路340可以将输出信号Iout从电流值转换为电压值Vout,并将电压值Vout发送到外围电路360。

解码器370可以响应于与字线WL1至WL3对应的字线选择信号和串选择信号SEL而激活多条字线之中的至少一条字线,以激活特定地址的忆阻器元件。字线选择信号可包括通过电压Vpass和截止电压Voff。在这种情况下,可以将通过电压Vpass或截止电压Voff施加到字线。

参照图5更详细地描述操作,外围电路460可以包括至少两个晶体管461和462。第一晶体管461和第二晶体管462可以连接在外围电路460与位线BL之间。第一晶体管461可以连接到突触阵列400的输入端子侧,第二晶体管462可以连接到突触阵列400的输出端子侧。

在一个示例实施例中,外围电路460首先将输入信号Vin输出到轴突电路410。当输入信号Vin被施加时,训练脉冲生成电路401基于关于是否执行学习的控制信号来生成训练脉冲。第一晶体管461连接在训练脉冲生成电路401与位线BL之间,并在外围电路460的控制下将训练脉冲输出到位线BL。

当响应于串选择信号SEL选择了至少一个串X时,可以响应于控制信号CON而将截止电压Voff施加到通过解码器470选择的至少一条字线,并且可以将通过电压Vpass施加到其余的未选择的字线。

例如,当选择了字线WL3时,将截止电压Voff施加到字线WL3的晶体管,并且将通过电压Vpass施加到字线WL1、WL2和WL4。突触阵列400针对与字线WL3对应的层执行人工神经网络计算。例如,字线WL3的忆阻器元件420可以将输入信号Vin乘以权重,以输出乘法结果作为输出信号Iout。

在位线BL中,从每个串输出的输出信号Iout可被求和。当接收求和的输出信号Itot时,第二晶体管462在外围电路460的控制下导通时将求和的输出信号Itot输出到神经元电路440。当求和的输出信号Itot超过预定的阈值时,神经元电路440可以将求和的输出信号Itot转换为输出电压Vout并将输出电压Vout输出到外围电路460。

图6A至图6D是示出根据一些示例实施例的突触阵列的一个串的图。图6C是图6B的忆阻器元件的放大图。图6D是图6C的部分“B”的剖视图。

参照图6A,一个单元串X可以包括串联连接的至少两个忆阻器元件320。单元串X可以包括位于位线BL与输入线IL之间的串选择晶体管。忆阻器元件320可以包括一个字线选择晶体管和电阻式存储器单元。单元串X中的分别与字线对应的多个忆阻器元件可以被包括在彼此不同的层中。

参照图6B,在沿着X-Y方向的平面中延伸的电极垫可以堆叠在位线BL与输入线IL之间,位线BL与输入线IL彼此正交交叉同时沿Z方向间隔开。

电极垫沿Z方向以预定的间隔堆叠,并且可以包括用于字线WL1至WL4的电极垫之间的电极间绝缘膜(ILD)。电极间绝缘膜可以包括例如氧化硅等。每个电极垫可以包括存储器单元的字线WL1至WL4。此外,尽管未示出,但是每个电极垫可以包括参照图4至图6A描述的轴突电路的输出端子和包括在串选择晶体管中的栅电极。单元串可穿过堆叠的电极垫并且被布置成连接位线BL和输入线IL的柱形状。

串联连接的忆阻器元件可以形成为忆阻器贯穿结构。忆阻器贯穿结构具有沿着Z轴纵向地延伸的柱形状,并且被设置为通过堆叠的电极垫将一条位线BL连接到一条输入线IL。

参照图6C和图6D,忆阻器元件500(见图6B)可以包括控制栅电极510、栅极绝缘膜520、多晶硅氧化物530、电阻材料或相变材料540以及柱氧化物550。

忆阻器元件500可以是柱的形式,使柱氧化物550处于忆阻器元件500的中心处并且被按电阻材料540、多晶硅氧化物530、栅极绝缘膜520和控制栅电极510的顺序的多个层围绕。

在图6B至图6D中,控制栅电极510可以是电极垫。控制栅电极510可以由铂(Pt)、钌(Ru)、铱(Ir)、银(Ag)、铝(Al)、钛(Ti)、钽(Ta)、钨(W)、硅(Si)、铜(Cu)、镍(Ni)、钴(Co)、其导电氮化物(例如,TiN)或者其组合(例如,Ti/TiN)制成。在一个示例实施例中,控制栅电极510可以由TiN制成,TiN与基于CMOS的Si工艺很好地兼容。

根据一些示例实施例,忆阻器元件500可以包括具有特性(即,可变电阻特性)的材料中的至少一种,其中,忆阻器元件的电阻可以通过流过忆阻器元件的电流选择性地改变。根据一些示例实施例,电阻材料540可以是过渡金属氧化物膜,例如,TiO2、NiO、HfO2、Al2O3、ZrO2和ZnO膜中的任何一种或者其组合。在另一实施方式中,电阻材料540可以由能够可变地切换电阻的材料(诸如,基于硫族元素的化合物或基于钙钛矿的化合物)形成。可以使用具有在低电阻状态下的电阻值与在高电阻状态下的电阻值之间的大比率并且具有用于降低功耗的小的驱动电压的材料。

在附图中,电阻材料540和控制栅电极510均被示出为单层,但是均可以具有包括适合于其它实施例的阻挡膜的多层结构。

图7是描述根据一些示例实施例的当在突触阵列中选择了一个层时的操作的图。图7是图6B的部分“A”的剖视图。

参照图7和图6B的“A”,从输入线IL到位线BL形成电流路径。当截止电压Voff被施加到电极垫511至514中的任何一个(例如,电极垫513)并且通过电压Vpass被施加到其余的电极垫511、512和514时,电流可以流过沟道层(即,多晶硅氧化物530),并且由于截止电压Voff而迂回到与电极垫513对应的层中的电阻材料540,然后流回到下一个电极垫514处的多晶硅氧化物530。

当电流流过选择的字线的电阻材料540时,电阻值根据流过电阻材料540的电流的程度而变化。然后,可以从根据输入电压(或输入信号)Vin而变化的电阻值来确定输出电流(或输出信号)Iout。在单元串中,电阻式存储器元件被串联连接,并且基于电流相对于电阻分量的线性特性,输出电流Iout可以在神经元电路中被求和。

图8和图9是描述根据一些示例实施例的神经形态装置的操作的概念图。

在图8和图9中,神经形态装置600可以包括至少两个突触阵列,例如,突触阵列621和622。至少两个突触阵列621和622分别可以包括轴突电路611、612和神经元电路641、642,轴突电路611、612和神经元电路641、642可以在突触阵列621和622之间彼此串联连接。两个突触阵列621和622可以沿第一方向或第二方向间隔开,并且共用多个电极垫和解码器。

突触阵列621、622的每个层可以彼此独立地执行人工神经网络计算。根据一些示例实施例,与突触阵列621、622的字线WL1对应的第一层可以执行用于面部识别的人工神经网络计算,与字线WL2对应的第二层可以执行用于密码分析的人工神经网络计算,与字线WL3对应的第三层可以执行用于趋势推断的人工神经网络计算,并且与字线WL4对应的第四层可以执行用于模式识别的人工神经网络计算。

在图9中,根据一些示例实施例,第一突触阵列621和第二突触阵列622被实现为4×3阵列,但是根据各种示例实施例,第一突触阵列621和第二突触阵列622可以被实现为至少2×2的阵列。

解码器630可以连接到第一突触阵列621和第二突触阵列622,以选择一个突触阵列并且针对选择的突触阵列施加串选择信号和字线电压。

当输入信号Vin1(即,Vin11、Vin12、Vin13)通过第一轴突电路611输入到第一突触阵列621时,解码器630可以响应于输入信号Vin1而选择一个层(在附图中被示出为阵列4)以执行人工神经网络计算。作为人工神经网络计算的结果,输出信号Iout1(即,Iout11、Iout12、Iout13)从第一突触阵列621被输出。然后,输出信号Iout1由第一神经元电路641(即,6411、6412、6413)转换为Vout11、Vout12、Vout13,作为第二突触阵列622的输入信号Vin2(即,Vin21、Vin22、Vin23)。当树突(即,在位线中求和的输出信号Iout11、Iout12、Iout13)超过预定的阈值时,输入信号Vin2可以被输出。

输入信号Vin2通过第二轴突电路612输入到第二突触阵列622,并且解码器630可以响应于输入信号Vin2而选择一个层(在附图中被示出为阵列4)以执行人工神经网络计算。作为人工神经网络计算的结果,输出信号Iout2(即,Iout21、Iout22、Iout23)从第二突触阵列622被输出。然后,输出信号Iout2由第二神经元电路642(即,6421、6422、6423)转换为输出信号Vout2(即,Vout21、Vout22、Vout23)。当树突(即,在位线中求和的输出信号Iout21、Iout22、Iout23)超过预定的阈值时,输出信号Vout2可以被输出。

根据一些示例实施例,神经形态装置600可以通过激活多个突触阵列的同一层来执行人工神经网络计算。因此,通过经由解码器630激活第一突触阵列621的阵列4和第二突触阵列622的阵列4,可以执行人工神经网络计算以输出输出信号。在这种情况下,第一突触阵列621的阵列4和第二突触阵列622的阵列4可以具有相同的N×M阵列(N和M是2或更大的自然数),并且由同一字线字线选择信号激活。在一个示例实施例中,在第一突触阵列621的阵列4和第二突触阵列622的阵列4中执行的人工神经网络计算可具有相同的权重。

第一突触阵列621和第二突触阵列622的阵列1至阵列4可以具有针对人工神经网络计算的彼此独立的大小。根据一些示例实施例,每个层中的阵列的大小可以对于阵列1为3×3,对于阵列2为2×3,对于阵列3为4×4,并且对于阵列4为2×2。

图10和图11是描述根据一些示例实施例的神经形态装置的操作的概念图。

参照图10和图11,根据一些示例实施例的神经形态装置700可以包括轴突电路710、一个突触阵列720、解码器730、神经元电路740和锁存器电路(又称为“锁存器”)750。

与图8和图9的实施例不同,神经形态装置700可以如图10的部分(b)中所示使用一个突触阵列720来执行人工神经网络计算。在这种情况下,前一层的计算结果被存储在锁存器电路750中,并且当需要学习下一个人工神经网络时,存储在锁存器电路750中的值可以被输入到突触阵列720,并且下一个人工神经网络计算可以被执行。

突触阵列720的每个层可以以彼此相关联的方式执行人工神经网络计算。根据一些示例实施例,在用于面部识别的人工神经网络计算的情况下,第一层(与字线WL1对应)至第四层(与字线WL4对应)可以通过接收存储在锁存器电路750中的值来学习,以执行用于面部识别的人工神经网络计算。在这种情况下,可以通过在一个突触阵列中的不同层中执行人工神经网络计算来使读取干扰现象最小化,并且当存在多个突触阵列时,可以改善用于将阵列彼此连接的连接自由度。在一个示例实施例中,在同一突触阵列的不同层中执行的人工神经网络计算可具有相同的权重。

在图10中,在神经形态装置700中,输入信号Vin1可以通过轴突电路710被输入到突触阵列720,并且解码器730可以响应于输入信号Vin1而选择一个层(例如,与WL1对应的层)以执行第一人工神经网络计算(1st)。作为人工神经网络计算的结果,输出信号Iout1从突触阵列720被输出。然后,神经元电路740可以将输出信号从电流Iout1转换为电压Vout1,以输出转换后的信号。转换后的输出信号Vout1被存储在锁存器电路750中,然后在下一人工神经网络计算(2nd)中被调用,以作为输入信号Vin2输入到与WL2对应的层。类似地,第三人工神经网络计算(3rd)和第四人工神经网络计算(4th)也可以接收先前的计算结果(Vin3和Vin4),将Vin3和Vin4存储在锁存器电路750(即,7501、7502、7503)中,并且将Vin3和Vin4顺序地输入到不同的层(例如,如附图中所示,与WL3对应的层和与WL4对应的层),以通过神经元电路740(即,7401、7402、7403)输出输出信号Vout。

图12和图13是描述根据一些示例实施例的突触阵列中的每个层的操作的概念图。根据一些示例实施例,假设人工神经网络学习被执行四次。

在图12中,根据一些示例实施例,当神经形态装置600'包括多个突触阵列时,多个突触阵列可以针对与每条字线对应的每个层独立地执行人工神经网络计算。对于四次的人工神经网络学习,4个突触阵列621、622、623和624可以被串联连接并且被顺序地激活,以在针对同一字线的(如附图中使用阵列4所示的)层中顺序地执行第一人工神经网络计算至第四人工神经网络计算并且输出输出信号Vout。

“使用串联连接的突触阵列顺序地执行人工神经网络计算”表示串联连接的每个突触阵列分别使用相同级别的阵列执行人工神经网络计算。也就是说,第一突触阵列621接收输入Vin,例如使用阵列4执行第一人工神经网络计算,并且将第一结果Out1输出到第二突触阵列622。第二突触阵列622使用与第一突触阵列621对应的阵列阵列4执行第二人工神经计算,并将第二结果Out2输出到第三突触阵列623。第三突触阵列623使用阵列4执行第三人工神经网络计算,并将第三结果Out3输出到第四突触阵列624。第四突触阵列624使用与阵列4对应的阵列执行第四人工神经网络计算,并将最终结果Vout输出到神经元电路641。

在图13中,根据一些示例实施例,当神经形态装置700'包括一个突触阵列720时,突触阵列720的所有层可以执行同一人工神经网络计算。对于四次的人工神经网络学习,突触阵列720可以顺序地激活每个层,以在第一层(阵列1)中执行第一次人工神经网络计算,在第二层(阵列2)中执行第二次人工神经网络计算,在第三层(阵列3)中执行第三次人工神经网络计算以及在第四层(阵列4)中执行第四次人工神经网络计算,并输出输出信号Vout。

“使用突触阵列的所有层顺序地执行人工神经网络计算”表示包括在突触阵列720中的每个层分别使用不同的阵列来执行人工神经网络计算。也就是说,神经形态装置700'接收输入Vin,使用阵列1执行第一人工神经网络计算,并将第一结果Out1输出到第二阵列——阵列2。神经形态装置700'使用阵列2执行第二人工神经网络计算,并将第二结果Out2输出到第三阵列——阵列3。神经形态装置700'使用阵列3执行第三人工神经网络计算,并将第三结果Out3输出到第四阵列——阵列4。神经形态装置700'使用阵列4执行第四人工神经网络计算,并输出最终结果Vout。

图14是示出根据示例实施例的神经形态装置的硬件配置的框图。

参照图14,根据本示例实施例的神经形态装置100包括外部存储器120以及具有神经形态处理器(N-处理器)112和片上存储器114的神经形态芯片110。应该注意的是,在图14中所示的神经形态装置100中,仅示出了与本示例实施例相关的一些组件,并且除了图14中所示的组件之外,其它通用组件(例如,中央处理器(CPU)、图形处理器(GPU)、应用处理器(AP)、传感器模块、通信模块等)还可以包括在神经形态装置100中。

神经形态装置100可以被包括在各种类型的电子装置(诸如,个人计算机(PC)、服务器装置、移动装置和嵌入装置)中。神经形态装置100可以对应于包括在使用神经网络执行例如语音识别、图像识别和图像分类的例如智能电话、平板装置、增强现实(AR)装置、物联网(IoT)装置、自主车辆、机器人、医疗装置等中的硬件组件。因此,神经形态装置100可以对应于安装在上述电子装置上的专用硬件加速器,或者对应于硬件加速器(诸如,神经处理器(NPU)、张量处理器(TPU)或神经引擎(Neural Engine)(神经引擎是用于驱动神经网络的专用模块)等)。

神经形态芯片110可以用于控制用于驱动神经形态装置100中的神经网络的整体功能。例如,神经形态芯片110的神经形态处理器112可以访问存储在神经形态装置100中的外部存储器120中的神经形态数据(例如,轴突值、突触值等)以执行神经形态相关的程序,从而总体上控制神经形态装置100。神经形态处理器112可以包括根据图1至图13中所示的一些示例实施例的突触阵列。神经形态芯片110可以在CPU、GPU、AP等的控制下驱动神经网络,CPU、GPU、AP等可以设置在神经形态装置100内部或外部。

外部存储器120可以是存储在神经形态芯片110中处理的各种神经形态数据的硬件。外部存储器120可以在其中存储已经在神经形态芯片110中处理的数据和将在神经形态芯片110中处理的数据。此外,外部存储器120可以在其中存储将由神经形态芯片110运行的应用、驱动程序等。外部存储器120可以包括随机存取存储器(RAM)(诸如,动态随机存取存储器(DRAM)和静态随机存取存储器(SRAM))、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、CD-ROM、蓝光或另一光盘存储装置、硬盘驱动器(HDD)、固态驱动器(SSD)或闪存。

神经形态芯片110的片上存储器114可以从外部存储器120读取并存储(或缓冲)突触前神经元电路的神经形态数据(例如,轴突值、突触值),并且可以执行神经网络,即,使用存储的神经形态数据来执行人工神经网络计算。此外,片上存储器114可以存储突触后神经元电路的数据(诸如,作为执行神经网络的结果而生成的神经元值和尖峰值)。

图15是示出根据一些示例实施例的电子系统的配置的框图。

参照图15,电子系统1000可以基于神经网络实时分析输入数据以提取有效信息,基于提取的信息,电子系统1000可以确定其上安装有电子系统1000的电子装置的情况或者控制其上安装有电子系统1000的电子装置的组件。例如,电子系统1000可以应用于机器人装置(诸如,无人机和高级驾驶员辅助系统(ADAS))、智能电视、智能电话、医疗装置、移动装置、图像显示装置、测量装置和IoT装置等。此外,电子系统1000可以安装在各种其它类型的电子装置中的至少一种上。

电子系统1000可以包括处理器1010、RAM 1020、神经形态装置1030、存储器1040、传感器模块1050和通信模块1060。电子系统1000还可以包括输入/输出模块、安全模块、电力控制装置等。电子系统1000的硬件组件中的一些可以安装在至少一个半导体芯片上。

处理器1010可以控制电子系统1000的整体操作。处理器1010可以包括一个处理器核(单核)或多个处理器核(多核)。处理器1010可以处理或执行存储在存储器1040中的程序和/或数据。在一些示例实施例中,处理器1010可以通过执行存储在存储器1040中的程序来控制神经形态装置1030的功能。处理器1010可以被实现为CPU、GPU、AP等。

RAM 1020可以临时存储程序、数据或指令。例如,存储在存储器1040中的程序和/或数据可以根据处理器1010的控制或引导代码被临时存储在RAM 1020中。RAM 1020可以被实现为动态RAM(DRAM)、静态RAM(SRAM)等。

神经形态装置1030可以基于接收的输入数据执行神经网络的计算,并且基于计算结果生成信息信号。神经网络可以包括但不限于CNN、RNN、FNN、深度信念网络、受限玻尔兹曼机等。根据示例实施例,神经形态装置1030是专用于神经网络的硬件加速器或者包括硬件加速器的装置,并且可以包括根据上述示例实施例的神经形态处理器。

信息信号可以包括各种类型的识别信号(诸如,语音识别信号、对象识别信号、图像识别信号和生物特征信息识别信号)中的一种。例如,神经形态装置1030可以接收包括在视频流中的帧数据作为输入数据,并且从帧数据生成包括在由帧数据表示的图像中的对象的识别信号。在其它示例实施例中,神经形态装置1030可以根据其上安装有电子系统1000的电子装置的类型或功能来接收各种类型的输入数据,并且可以根据输入数据生成识别信号。

存储器1040是用于存储数据的存储位置,并且可以存储操作系统(OS)、各种程序和各种数据。在一个实施例中,存储器1040可以存储在神经形态装置1030的计算处理期间生成的中间结果。

存储器1040可以是DRAM等。存储器1040可以包括易失性存储器或非易失性存储器中的至少一者。非易失性存储器包括ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、闪存、相变随机存取存储器(PRAM)、磁阻RAM(MRAM)、电阻式RAM(RRAM)、铁电RAM(FRAM)等。易失性存储器包括DRAM、SRAM、SDRAM、PRAM、MRAM、RRAM、FeRAM等。在一个实施例中,存储器1040可以包括HDD、SSD、CF、SD、微型SD、迷你SD、xD和记忆棒中的至少一者。

传感器模块1050可以收集其上安装有电子系统1000的电子装置的外围信息。传感器模块1050可以从电子装置的外部感测或接收信号(例如,视频信号、音频信号、磁信号、生物信号、触摸信号等),并将感测或接收的信号转换为数据。例如,传感器模块1050可以包括各种类型的感测装置(诸如,麦克风、成像装置、图像传感器、光检测和测距(LIDAR)传感器、超声波传感器、红外传感器、生物传感器和触摸传感器)中的至少一者。

传感器模块1050可以将转换后的数据作为输入数据提供给神经形态装置1030。例如,传感器模块1050可以包括图像传感器,通过拍摄电子装置的外部环境来生成视频流,并且将视频流的连续数据帧按顺序提供给神经形态装置1030作为输入数据。在其它示例实施例中,传感器模块1050可以向神经形态装置1030提供各种类型的数据。

通信模块1060可以设置有能够与外部装置进行通信的各种有线或无线接口。例如,通信模块1060可以包括能够访问有线局域网(LAN)、无线局域网(WLAN)(诸如,无线保真(Wi-Fi))、无线个域网(WPAN)(诸如,蓝牙)、无线通用串行总线(无线USB)、Zigbee、近场通信(NFC)、射频识别(RFID)、电力线通信(PLC)或者移动蜂窝网络(诸如,第三代(3G)、第四代(4G)和长期演进(LTE))的通信接口。

通过总结和回顾,神经形态装置可以包括存储神经元之间的连接强度的突触电路,并且突触电路可以使用包括存储一个或多个位的可变电阻元件的存储器装置来实现。

如上所述,实施例可以提供高度集成的高功率突触阵列。实施例还可以提供高度集成的高功率神经形态装置。实施例还可以提供高度集成的高功率神经形态装置的操作方法。

在此已经公开了示例实施例,尽管采用了特定的术语,但是仅以一般的和描述性的含义来使用和解释特定的术语,而不是出于限制的目的。在一些情况下,除非另外特别指示,否则如本领域普通技术人员将清楚的,自提交本申请之时起,结合具体实施例描述的特征、特性和/或元件可以单独使用,或者可以与结合其它实施例描述的特征、特性和/或元件组合起来使用。因此,本领域技术人员将理解的是,可以在不脱离由权利要求阐述的本发明的精神和范围的情况下做出形式上和细节上的各种改变。

26页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种实现存储单元多级存储的方法及装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!