一种铁电电容耦合神经网络电路结构及神经网络中向量与矩阵的乘法运算方法与流程

文档序号:19830813发布日期:2020-02-04 12:24阅读:614来源:国知局
一种铁电电容耦合神经网络电路结构及神经网络中向量与矩阵的乘法运算方法与流程

本发明属于半导体(semiconductor)、人工智能(artificialintelligence)和cmos混合集成电路技术领域,具体涉及一种基于铁电电容(ferroelectriccapacitor)的电容耦合神经网络电路结构,以及采用该电路结构实现神经网络中向量与矩阵的乘法运算的方法。



背景技术:

随着现代社会逐步迈入信息化、智能化的时代,信息处理能力和数据存储能力正在以各种各样的形式推动着现代社会的进步,未来的智能终端和计算平台将不仅强调传统的计算和大数据,更是在有限的功耗和嵌入式的平台中实现海量传感数据和信息的智能化处理,在复杂的数据处理中学习并进化,实现更加快速高效的信息处理、分类和存储。因此计算能力和存储能力是衡量未来信息化终端和平台的重要参数。以神经网络计算为代表的人工智能迅速崛起,神经网络计算中需要进行频繁的向量、矩阵之间的乘法运算。在现有的存储架构下,存储器系统由于在处理器和各级存储器间存在运行速度差异,导致数据交换存在“存储墙”的问题,使得存储系统的运行效率受到限制,从而降低了信息传输和存储的性能。

基于新器件和新机制实现存算一体的计算平台是未来的趋势。目前,新型的神经形态计算研究多采用具有缓变多值的忆阻器(memristor)、相变存储器(pcram)等新型器件。通常通过模拟域的电流欧姆定律和基尔霍夫定律实现并行的矩阵乘积。但是这类器件在多值特性上存在较多问题,且组成的阵列存在泄漏电流问题,仍需要进一步研究解决。

基于高介电常数的过渡金属氧化物材料可以通过掺杂等实现非易失的多值电容特性,有别于基于电流运算的范例,铁电电容可通过特定电压对电容进行调节,实现多个电容值。利用电容中的电量而非电阻值来存储神经网络算法中的节点权重,通过电容中电荷的再分布实现矩阵相乘,具有良好的功耗和性能,为新型神经网络计算提供了新的解决方式。



技术实现要素:

本发明针对上述问题,提供一种基于铁电电容的电容耦合神经网络电路结构,以及采用该电路结构实现神经网络中向量与矩阵的乘法运算的方法。

本发明采用的技术方案如下:

一种铁电电容耦合神经网络电路结构,包括基于铁电电容的权值阵列,以及与所述权值阵列连接的外部电路结构;所述权值阵列的每一个权值单元包含一个场效应晶体管和与所述场效应晶体管连接的一个铁电电容。

进一步地,所述外部电路结构包括多路选择器和神经元电路。

进一步地,所述权值阵列中每一列的连线即字线连接一个多路选择器的输出端,该多路选择器的输入端接入输入信号和零电平信号;所述权值阵列中每一行的连线即位线连接一个神经元电路。

进一步地,所述神经元电路包括一个运算放大器、一个与运算放大器并联的电容、以及一个与运算放大器并联的开关;所述权值阵列中每一行的连线即位线连接一个运算放大器的同向输入端,并通过并联的开关和电容与该运算放大器的输出端相连,该运算放大器的反相输入端接地。

进一步地,还包括权值擦写控制模块,用于控制新权值数据通过多路选择器写入权值阵列。

一种实现神经网络中向量与矩阵的乘法运算的方法,将训练好的神经网络的权值预先写入到本发明的铁电电容耦合神经网络电路结构的权值矩阵中;使用互补时钟控制多路选择器和神经元电路中的开关,实现神经网络中向量与矩阵的乘法运算。

进一步地,在数据输入阶段,输入数据通过前端电路后调制成脉冲输入信号,在时钟相clk0,时钟控制多路选择器接入输入信号,神经元电路中的电容被闭合的开关短路,输入信号被编码为小信号电压脉冲,并行给铁电电容充电,在铁电电容上积累一定量的电荷。

进一步地,在数据输出阶段,在时钟相clk1,时钟控制多路选择器接地,神经元电路中的开关断开,位线上所有铁电电容积累的电荷量与神经元电路中的电容上通过电容分享在输出端形成输出电压信号,电压值即为向量与矩阵的乘法的计算结果。

本发明的有益效果如下:

本发明提出了一种基于铁电电容的突触权值阵列(神经网络电路中的“突触”是指在网络中存储权值大小的节点)和其外部电路,通过创新的电路设计,使得向量与矩阵的乘法运算有了新型的解决方式。这种解决方式利用铁电电容的非易失多值特性,通过电容电荷积累与电荷重分配的特性,可以高速度、低功耗地完成向量与矩阵的乘法,且具有电路结构简单,与现有cmos工艺兼容的特性,对未来新型神经网络加速芯片的研究有着重要意义。

附图说明

图1是在时钟相clk0的铁电电容权值阵列和相应的外围电路结构图。

图2是在时钟相clk1的铁电电容权值阵列和相应的外围电路结构图。

图3是采用本发明的电路结构识别minst手写数字数据集的仿真结果图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面通过具体实施例和附图,对本发明做进一步详细说明。

本发明提出了一种基于非易失多值铁电电容的权值阵列和其外部的神经元等控制电路,实现了基于电容存储权值并通过电荷再分布读出的方式实现神经网络中向量与矩阵的乘法运算。

本发明的铁电电容权值阵列和相应的外围电路结构如图1和图2所示。本例中,通过十字交叉(crossbar)的阵列实现基于非易失多值铁电电容的权值阵列,权值阵列的每一个权值单元中包括一个铁电电容和一个场效应晶体管。

非易失多值铁电电容的权值阵列的一侧(本例位于1图中阵列的上方),阵列中的每一列的连线(本示例中称之为字线)上接一个多路选择器(mux),多路选择器的输入端分别接入输入信号(如图1中的)和零电平信号,输出端连接阵列的字线。

在与上文所述的阵列中每一列垂直的每一行的连线(本示例中在阵列的右侧边缘)称为位线,阵列中的字线与位线应为垂直关系,每一根位线分别连接一个运算放大器的同向输入端,并通过并联的开关和电容与输出端相连,运算放大器的反相输入端接地。位线电路也称为神经元电路(neuroncircuits)。图1与图2中仅画出了两处字线的电路和一处位线的电路,但是需要明白的是,每一根字线和位线都连接有上述电路。

图1和图2中clk0/clk1表示多路选择器的时钟输入信号;vdd表示全局高电平信号。

图1和图2中的权值擦写控制模块,其功能是控制新权值数据通过多路选择器写入权值阵列,该模块仅用于示意本发明中的电路和外部电路的连接关系,可以采用现有技术实现。

本发明的电路结构实现向量与矩阵的乘法的过程可以分为两步进行操作,首先将训练好的神经网络的权值预先写入到铁电电容的权值矩阵中,使用一个互补时钟去控制一个开关和多路选择器。

(a)数据输入阶段

将信号转换为矩阵向量进行输入。具体的,输入数据通过前端电路(前端电路不属于本发明内容,可以采用现有技术实现)后调制成脉冲输入信号。图1左上角所示的符号代表手写输入“4”,表示手写输入经过外部电路调制成一系列脉冲,进入本发明中的外围电路部分。

在时钟相clk0,图1中时钟控制多路选择器接入输入信号,图1的神经元电路(neuroncircuit)中的连接到输出的电容(一个普通电容,非铁电电容)被闭合的开关短路,输入信号被编码为小信号电压脉冲,并行给铁电电容充电,在铁电电容上积累一定量的电荷q,如图1中的公式(1)所示。也即下面公式:

其中,qj表示第j行位线上所有铁电电容中积累的电荷量的总值;表示第i列字线上脉冲电压的输入值;cij表示第i列字线和第j行位线相交处铁电电容的电容值。

(b)数据输出阶段

时钟相clk1,图1中时钟控制多路选择器接地,图2中的神经元电路中的开关断开,该位线上所有铁电电容积累的电荷量与神经元电路中的电容上通过电容分享在输出端形成输出电压信号,如图2中的公式(2)所示,电压值即为向量与矩阵的乘法的计算结果。电容矩阵完成的操作如公式(3)所示。公式(2)、公式(3)具体如下:

qj=voutcreference(2)

其中,vout表示第j行位线输出端的电压值;creference表示位线外围电路(即神经元电路)中电容的大小;input表示输入到权值阵列中的字线总数。

图3是上述电路识别minst手写数字数据集的仿真结果,横轴代表铁电电容作为权值单元的精度,纵轴代表minst手写数字数据集的识别率,可以看到当权值精度大于2比特的时候,识别精度在75%-87%。

以上实施例仅用以说明本发明的技术方案而非对其进行限制,本领域的普通技术人员可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明的原理和范围,本发明的保护范围应以权利要求书所述为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1