运用于类神经网络系统的乘积累加电路的控制电路技术方案

技术编号:26479579 阅读:55 留言:0更新日期:2020-11-25 19:24
一种运用于类神经网络系统的控制电路,包括:一第一乘积累加电路、一第一神经元数值储存电路与一第一处理器。第一乘积累加电路包括n个忆阻性记忆胞。n个忆阻性记忆胞的一第一端接收一供应电压,n个忆阻性记忆胞的一第二端连接至一第一位线,n个忆阻性记忆胞的控制端连接至对应的n条字线。一第一神经元数值储存电路储存一第一层的n个神经元数值。于一应用程序时,该第一神经元数值储存电路根据该n个神经元数值的二进制码来控制该n条字线,使得第一处理器产生一第二层的一第一神经元数值。

【技术实现步骤摘要】
运用于类神经网络系统的乘积累加电路的控制电路
本专利技术是有关于一种运用于类神经网络系统的电路,且特别是有关于一种运用于类神经网络系统的乘积累加电路的控制电路。
技术介绍
近年来,类神经网络系统(neuralnetworksystem)已经广泛的运用在人工智能的用途(AIapplication)以提供智能处理能力,例如图形辨识(patternrecognition)、数据辨识(dataclassification)和物件侦测(objectdetection)。以下先简单介绍具备辨识数字能力的类神经网络系统。请参照图1,其所绘示为辨识数字的类神经网络系统示意图。利用类神经网络系统100可运用于辨识手写板102上所书写的数字,其中手写板102是由784(28×28)个感应点(sensepoint)所建构而成。类神经网络系统100包括输入层(inputlayer)110、隐藏层(hiddenlayer)120与输出层(outputlayer)130。基本上,手写板102上的每个感应点会对应到输入层的一个输入神经元(inputneuron),因此输入层110共有784(28×28)个输入神经元I0~I783,并可视为输入层110的大小(size)为784。由于类神经网络系统100需要辨识0~9的十个数字,因此输出层130共有10个输出神经元(outputneuron)O0~O9,并可视为输出层130的大小(size)为10。再者,类神经网络系统100的隐藏层120被设计为具有30个神经元H0~H29,亦即隐藏层130的大小(size)为30。因此,类神经网络系统100的尺寸为784-30-10。每个神经元之间的连线皆代表一个神经元连接权重(neuronconnectionweight)。如图1所示,输入层110中的784个输入神经元I0~I783连接至隐藏层120的神经元H0,而对应的784个神经元连接权重为(IH0,0~IH783,0)。同理,输入层110中的784个输入神经元I0~I783对应地连接至隐藏层120的30个神经元H0~H29。因此,输入层110与隐藏层120之间有734×30个神经元连接权重(IH0,0~IH783,0)、(IH0,1~IH783,1)~(IH0,29~IH783,29)。同理,隐藏层120的30个神经元H0~H29对应地连接至输出层130的10个神经元O0~O9。因此,隐藏层120与输出层130之间有30×10个神经元连接权重(HO0,0~HO29,0)~(HO0,9~HO29,9)。其中,类神经网络系统100中所有的神经元连接权重(IH0,0~IH783,0)~(IH0,29~IH783,29)与(HO0,0~HO29,0)~(HO0,9~HO29,9)即组合成为一权重群组(weightgroup)。基本上,将前一层(previouslayer)的每个神经元数值乘以对应的神经元连接权重后并加总之后即可获得下一层(nextlayer)的神经元数值。以隐藏层120的神经元数值H0为例,同理,隐藏层120中其他神经元H1~H29也是以相同的方式来计算。相同地,输出层130的输出神经元数值O0即为,而输出层130其他输出神经元数值O1~O9也是以相同的方式来计算。在实际应用类神经网络系统100之前,需要进行训练程序(trainingphase),以获得权重群组中所有的神经元连接权重。举例来说,经过多次的迭代训练(iterationsoftraining)并获得所有神经元连接权重后,即可获得一个训练完成的(well-trained)类神经网络系统100。在应用程序(applicationphase)时,即可在手写板102上写入数字,并由类神经网络系统100来进行辨识。如图1所示,于手写板102上写入数字7后,输出层130中的输出神经元O7数值最高,亦即类神经网络系统100辨识出数字7。当然,图1的类神经网络系统100仅是一个范例。对于更复杂的类神经网络系统,可以使用多个隐藏层来让类神经网络系统具备更佳的辨识能力,而每个隐藏层的尺寸也不限定。由于类神经网络系统中需要不断的进行乘法与加法运算,因此利用计算机系统可以进行上述的运算。举例来说,将所有的神经元连接权重储存于计算机系统的存储器中。接着,利用计算机系统的中央处理单元(CPU)来存取(access)存储器中的神经元连接权重,并进行乘法与加法运算后即可计算出所有神经元数值。然而,当类神经网络系统的尺寸越大时,存储器的容量也必须增加以便用来储存神经元连接权重以及神经元数值。并且,由于中央处理单元必须不断地存取存储器中的数据,使得计算机系统的效能大幅地降低且耗费大量的功耗(powerconsumption)。现今,针对类神经网络系统的特性,已发展出一种乘积累加电路(MultiplyAccumulatecircuit,简称MAC),用来计算神经元数值。请参照图2A至图2C,其所绘示为乘积累加电路器的方块图(blockdiagram)、已知乘积累加电路组(MACgroup)与控制电路示意图。如图2A所示,乘积累加电路200中,每个输入数值X1~Xn乘上对应的权重W1,j~Wn,j后,将结果加总即获得输出数值Yj。亦即,应用到类神经网络系统时,乘积累加电路200中的权重W1,j~Wn,j即为神经元连接权重。将前一层(previouslayer)的多个神经元数值即为输入数值,而乘积累加电路200的输出数值Yj即为下一层(nextlayer)的神经元数值。如图2B所示,乘积累加电路组250包括j个乘积累加电路251~25j,此乘积累加电路组250可以进行类神经网络系统中前一层大小(size)n,下一层的大小(size)j的运算。以乘积累加电路251为例来作说明,乘积累加电路251包括n个电导(electricalconductance),其电导值(conductancevalue)分别为G1,1~Gn,1。其中,每个电导皆由可变电阻(variableresistor)所组成。而调整后(tuned)的可变电阻,其电阻值(resistancevalue)的倒数即为电导值。举例来说,调整好的电阻值为5欧姆(ohm,Ω),其电导值为0.2西门子(siemens,S)。再者,根据类神经网络系统中的神经元连接权重来调整对应的电导值G1,1~Gn,1。再者,乘积累加电路251的n个输入端接收n个输入电压V1~Vn,每个电压值V1~Vn分别代表前一层的n个神经元数值,乘积累加电路251的输出端产生一个输出电流I1代表下一层的神经元数值。乘积累加电路251的n个输入端与输出端之间连接对应的电导G1,1~Gn,1。再者,乘积累加电路252~25j也有相同的结构,此处不再赘述。于类神经网络系统的训练程序(trainingphase)时,可调整每个乘积累加电路251~25j中的所有n×j个电导值G1,1~Gn,j作为n×j个神经元连接权重。于类本文档来自技高网...

【技术保护点】
1.一种运用于类神经网络系统的控制电路,包括:/n第一乘积累加电路,包括n个忆阻性记忆胞,所述n个忆阻性记忆胞的第一端接收供应电压,所述n个忆阻性记忆胞的第二端连接至第一位线,所述n个忆阻性记忆胞的控制端连接至对应的n条字线;/n第一神经元数值储存电路,连接至所述n条字线,所述第一神经元数值储存电路包括n个寄存器对应地储存第一层的n个神经元数值;以及/n第一处理器,连接至所述第一位线;/n其中,于所述类神经网络系统的应用程序时,所述第一神经元数值储存电路根据所述n个神经元数值的二进制码来控制所述n条字线,使得所述第一乘积累加电路产生多个第一位线电流经由所述第一位线至所述第一处理器,且所述第一处理器利用模拟计算的方式,将所述多个第一位线电流转换为输出电流后,再将所述输出电流转换为第二层的第一神经元数值。/n

【技术特征摘要】
20190522 US 62/851,5821.一种运用于类神经网络系统的控制电路,包括:
第一乘积累加电路,包括n个忆阻性记忆胞,所述n个忆阻性记忆胞的第一端接收供应电压,所述n个忆阻性记忆胞的第二端连接至第一位线,所述n个忆阻性记忆胞的控制端连接至对应的n条字线;
第一神经元数值储存电路,连接至所述n条字线,所述第一神经元数值储存电路包括n个寄存器对应地储存第一层的n个神经元数值;以及
第一处理器,连接至所述第一位线;
其中,于所述类神经网络系统的应用程序时,所述第一神经元数值储存电路根据所述n个神经元数值的二进制码来控制所述n条字线,使得所述第一乘积累加电路产生多个第一位线电流经由所述第一位线至所述第一处理器,且所述第一处理器利用模拟计算的方式,将所述多个第一位线电流转换为输出电流后,再将所述输出电流转换为第二层的第一神经元数值。


2.根据权利要求1所述的控制电路,其中所述n个忆阻性记忆胞中的第一忆阻性记忆胞包括:开关晶体管与忆阻器,所述开关晶体管的栅极端作为所述第一忆阻性记忆胞的所述控制端,所述开关晶体管的第一漏/源极端作为所述第一忆阻性记忆胞的所述第一端,所述开关晶体管的第二漏/源极端连接至所述忆阻器的第一端,且所述忆阻器的第二端作为所述第一忆阻性记忆胞的所述第二端。


3.根据权利要求2所述的控制电路,其中所述忆阻器为浮动栅晶体管,所述浮动栅晶体管的第一漏/源极端连接至所述开关晶体管的所述第二漏/源极端,且所述浮动栅晶体管的第二漏/源极端作为所述第一忆阻性记忆胞的所述第二端。


4.根据权利要求2所述的控制电路,其中于所述类神经网络系统的训练程序时,调整所述忆阻器的电阻值。


5.根据权利要求4所述的控制电路,其中调整所述电阻值用以调整神经元连接权重。


6.根据权利要求2所述的控制电路,还包括:
第二乘积累加电路,包括n个忆阻性记忆胞,所述n个忆阻性记忆胞的第一端接收所述供应电压,所述n个忆阻性记忆胞的第二端连接至第二位线,所述n个忆阻性记忆胞的控制端连接至对应的n条字线;
处理电路,包括所述第一处理器与一第二处理器,且所述第二处理器连接至所述第二位线,其中于所述类神经网络系统的所述应用程序时,所述第一神经元数值储存电路根据所述n个神经元数值的二进制码来控制所述n条字线,使得所述第二乘积累加电路产生多个第二位线电流经由所述第二位线至所述第二处理器,且所述第二处理器根据所述多个第二位线电流产生所述第二层的第二神经元数值;以及
第二神经元数值储存电路,包括第一寄存器连接至所述第一处理器用以储存所述第二层的所述第一神经元数值,以及第二寄存器连接至所述第二处理器用以储存所述第二层的所述第二神经元数值。


7.根据权利要求1所述的控制电路,其中所述第一层的所述n个神经元数值的二进制码有L位,所述第一神经元数值储存电路依序提供L次所述n个神经元数值中的一个位用以控制所述第一乘积累加电路的所述n条字线,使得所述第一乘积累加电路产生L次所述第一位线电流。


8.根据权利要求7所述的控制电路,其中所述第一处理器包括:
电流电压转换器,所述电流电压转换器的输入端接收所述第一位线上产生的L次所述第一位线电流,并由所述电流电压转换器的输出端产生L笔转换电压;
模拟计算电路,包括L个放大电路接收对应的L笔转换电压,并产生L笔放大电流加总后成为输出电流,且所述模拟计算电路的输出端输出所述输出电流;以及
模拟数字转换器,连接至所述模拟计算电路,其中于致能号动作时,接收所述输出电流,并将所述输出电流转换为所述第二层的所述第一神经元数值。


9.根据权利要求8所述的...

【专利技术属性】
技术研发人员:张家福锺承亨林庆源
申请(专利权)人:力旺电子股份有限公司
类型:发明
国别省市:中国台湾;71

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

1