半导体电路及其操作方法

文档序号:1568630 发布日期:2020-01-24 浏览:18次 >En<

阅读说明:本技术 半导体电路及其操作方法 (Semiconductor circuit and method of operating the same ) 是由 林榆瑄 王超鸿 于 2018-10-17 设计创作,主要内容包括:本发明公开了一种半导体电路及其操作方法。半导体电路的操作方法包括以下步骤:在第一时间操作存储器电路以获得第一存储器状态信号S1;第一时间之后的第二时间操作存储器电路以获得第二存储器状态信号S2;计算第一存储器状态信号S1和第二存储器状态信号S2的差异以获得状态差异信号SD;计算以得到未补偿输出数据信号OD,未补偿输出数据信号OD相关于输入数据信号ID和第二存储器状态信号S2;以及对状态差异信号SD与未补偿输出数据信号OD进行计算以获得补偿输出数据信号OD’。(The invention discloses a semiconductor circuit and an operating method thereof. The method of operating a semiconductor circuit comprises the steps of: operating the memory circuit at a first time to obtain a first memory state signal S1; operating the memory circuit at a second time after the first time to obtain a second memory state signal S2; calculating a difference of the first memory state signal S1 and the second memory state signal S2 to obtain a state difference signal SD; calculating to obtain an uncompensated output data signal OD, the uncompensated output data signal OD being related to the input data signal ID and the second memory state signal S2; and calculating the state difference signal SD and the uncompensated output data signal OD to obtain a compensated output data signal OD&#39;.)

半导体电路及其操作方法

技术领域

本发明属于集成电路技术领域,涉及一种半导体电路及其操作方法,且特别是有关于一种类神经网络及其操作方法。

背景技术

随着软件技术的开发,软件定义的神经网络的深度学习,通过通用的学习过程,大大提升了人工智能的能力,如图像识别,语音识别,自然语言理解和决策。一种硬件神经网络(Hardware Neural Networks,HNN)的出现,更进一步地降低了深度学习统的硬件尺寸、成本及功耗。HNN是由通过突触而相互连接的神经元网络组成,HNN可以有成千上万个突触,其中可以在训练期间,优化突触(synapse)的权重(weight)。

发明内容

本发明有关于一种半导体电路及其操作方法。

根据本发明的一个方面,提出一种半导体电路的操作方法,包括以下步骤:在第一时间操作存储器电路以获得第一存储器状态信号S1;第一时间之后的第二时间操作存储器电路以获得第二存储器状态信号S2;计算第一存储器状态信号S1和第二存储器状态信号S2的差异以获得状态差异信号SD;计算以得到未补偿输出数据信号OD,未补偿输出数据信号OD相关于输入数据信号ID和第二存储器状态信号S2;以及对状态差异信号SD与未补偿输出数据信号OD进行计算以获得补偿输出数据信号OD’。

根据本发明的另一个方面,提出一种半导体电路,包括主要存储器阵列、参考存储器阵列、存储器装置以及处理电路。存储器装置用以储存在第一时间操作参考存储器阵列所获得的第一存储器状态信号S1。处理电路用以读取在第一时间之后的第二时间时参考存储器阵列的第二存储器状态信号S2,并用以计算出未补偿输出数据信号OD。未补偿输出数据信号OD相关于输入数据信号ID和相关于主要存储器阵列在第二时间时的另一第二存储器状态信号S2。存储器装置与处理电路电性耦接。

为了对本发明的上述和其他方面有更佳的了解,下文特举实施例,并配合所附附图详细说明如下:

附图说明

图1绘示根据一实施例概念的半导体电路。

图2绘示根据一实施例概念的半导体电路的操作方法。

图3和图4绘示根据一实施例概念的半导体电路的操作方法。

图5根据实施例概念使用补偿的输出数据的半导体电路经150℃保留测试的电导范围曲线结果。

图6为使用未补偿输出数据的比较例经150℃保留测试的结果。

图7绘示根据另一实施例概念的半导体电路的操作方法。

图8根据实施例概念使用补偿的输出数据的半导体电路经150℃保留测试的曲线结果。

图9为使用未补偿输出数据的比较例经150℃保留测试的结果。

【符号说明】

102:处理电路;

106:存储器装置;

108:主要存储器阵列;

110:参考存储器阵列;

122:数据输入端;

124:数据输出端;

S552、S554、S556、S558、S560:步骤。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。

图1绘示根据一实施例概念的半导体电路。图2绘示根据一实施例概念的半导体电路的操作方法。

请参照图1,半导体电路包括存储器电路、处理电路102。存储器电路包括存储器装置106、主要存储器阵列108、参考存储器阵列110。存储器装置106、主要存储器阵列108与参考存储器阵列110可设置在相同芯片产品中,例如形成在一半导体芯片上。处理电路102可电性耦接在存储器装置106、主要存储器阵列108、与参考存储器阵列110之间。一实施例中,图1的半导体电路为类神经网络节点(neural network node),多个输入数据信号ID从数据输入端122经过处理电路102处理之后成为输出数据信号送至数据输出端124。输入数据信号ID分别要相乘的突触的权重是储存在主要存储器阵列108的多个存储单元中。处理电路102可耦接在数据输入端122与数据输出端124之间。处理电路102可电性耦接在数据输入端122与数据输出端124之间。

请同时参照图1与图2,半导体电路的操作方法包括步骤S552:在第一时间t1操作存储器电路以获得第一存储器状态信号S1。一实施例中,可在第一时间t1对参考存储器阵列110进行编程至一编程存储器状态,从而对参考存储器阵列110产生第一存储器状态信号S1(例如电导Gi,t1、或电导Gref,t1)。

可利用处理电路102读取来自参考存储器阵列110的第一存储器状态信号S1(例如电导Gi,t1、或电导Gref,t1),并将第一存储器状态信号S1传送至存储器装置106,从而利用存储器装置106储存第一存储器状态信号S1。一实施例中,处理电路102可对来自参考存储器阵列110的第一存储器状态信号S1(例如参考存储器阵列110的多个存储单元的电导值Gi,t1)进行运算,然后将运算后的第一存储器状态信号S1(例如电导Gref,t1)传送至存储器装置106进行储存。一实施例中,来自参考存储器阵列110的第一存储器状态信号S1为参考存储器阵列110的多个存储单元经编程之后所储存的存储单元信号(例如电导Gi,t1,i=1、2、3…),且处理电路102对这些存储单元信号进行运算所获得运算后的第一存储器状态信号S1(例如电导Gref,t1)小于这些存储单元状态信号(例如电导Gi,t1,i=1、2、3…)的最大者(例如电导Gi,t1中的最大者Gmax),并大于这些存储单元状态信号的最小者(例如电导Gi,t1中的最小者Gmin)。一实施例中,运算后的第一存储器状态信号S1(例如电导Gref,t1)为存储单元状态信号(例如电导Gi,t1,i=1、2、3…)的算术平均数(mean)、中位数(median)、或众数(mode)。

一实施例中,参考存储器阵列110和主要存储器阵列108具有相同存储器结构,因此可视编程之后的参考存储器阵列110和主要存储器阵列108为具有相同第一存储器状态,亦即,存储器装置106储存的第一存储器状态信号S1相当于是源自于主要存储器阵列108的第一存储器状态信号S1。

一实施例中,可在第一时间t1同时对参考存储器阵列110和主要存储器阵列108进行编程,且编程步骤以相同的编程参数进行。一实施例中,编程步骤对参考存储器阵列110和主要存储器阵列108产生相同的第一存储器状态信号S1。

然后进行步骤S554:在第一时间t1之后的第二时间t2操作存储器电路以获得第二存储器状态信号S2。

可利用处理电路102读取来自参考存储器阵列110在第二时间t2时的第二存储器状态信号S2(例如电导Gi,t2、或电导Gref,t2)。一实施例中,处理电路102可对来自参考存储器阵列110的未运算的第二存储器状态信号S2(例如电导Gi,t2)进行运算,从而得到运算后的第二存储器状态信号S2(例如电导Gref,t2)。一实施例中,来自参考存储器阵列110的第二存储器状态信号S2为参考存储器阵列110的多个存储单元的存储单元信号(例如电导Gi,t2,i=1、2、3…),且处理电路102对这些存储单元信号进行运算所获得运算后的第二存储器状态信号S2(例如电导Gref,t2)小于这些存储单元状态信号(例如电导Gi,t2,i=1、2、3…)的最大者(例如电导Gi,t2中的最大者Gmax),并大于这些存储单元状态信号的最小者(例如电导Gi,t2中的最小者Gmin)。一实施例中,运算后的第二存储器状态信号S2(例如电导Gref,t2)存储单元状态信号(例如电导Gi,t2,i=1、2、3…)的算术平均数(mean)、中位数(median)、或众数(mode)。一实施例中,运算后的第一存储器状态信号S1(例如电导Gref,t1)与运算后的第二存储器状态信号S2(例如电导Gref,t2)是基于相同的运算获得,例如,皆为中位数(median)。

一实施例中,参考存储器阵列110和主要存储器阵列108具有相同的存储器结构,因此可视第二时间t2时的参考存储器阵列110和主要存储器阵列108为具有相同第二存储器状态,亦即,处理电路102读取或运算所得的第二存储器状态信号S2相当于是源自于主要存储器阵列108的第二存储器状态信号S2。

一实施例中,参考存储器阵列110和主要存储器阵列108包括电阻式随机存取存储器(ReRAM)、相变存储器(phase change memory)、或电桥式存储器(conductive-bridgingrandom access memory),其数据保存性质可能会随着时间变异,亦即,源自参考存储器阵列110和/或主要存储器阵列108的存储器状态信号会从第一时间t1的第一存储器状态信号S1转变为第二时间t2的第二存储器状态信号S2。且随着保存时间(retention time)间距愈大,第一存储器状态信号S1与第二存储器状态信号S2的间的差异可能会更大。因此,第二时间t2的主要存储器阵列108的存储器状态信号(或权重)不精确。一实施例中,参考存储器阵列110和主要存储器阵列108具有相同的一晶体管一电阻式随机存取存储器(1-transistor-1-ReRAM,1T1R)结构,且以主要存储器阵列108的1T1R作为突触。

然后进行步骤S556:计算第一存储器状态信号S1和第二存储器状态信号S2的差异以获得状态差异信号SD。可利用处理电路102读取出存在存储器装置106的第一存储器状态信号S1(例如电导Gref,t1),并根据第一存储器状态信号S1(例如电导Gref,t1)和第二存储器状态信号S2(例如电导Gref,t2)进行计算以得到状态差异信号SD(例如Δ=Gref,t2-Gref,t1)。一实施例中,存储器装置106包括闪存(Flash memory)、只读存储器(Read-Only Memory,ROM)、或一次性编程(one time program,OTP)型存储器,其存储器状态实质上不会随时间变化,因此存储器装置106储存的第一存储器状态信号S1并未随时间变动,即使在第二时间t2,仍能实质上维持在第一时间t1时的存储器状态。一实施例中,状态差异信号SD为第二存储器状态信号S2减去第一存储器状态信号S1,例如一实施例中可表示为Δ=Gref,t2-Gref,t1。亦即,状态差异信号SD(例如差异Δ)可视为主要存储器阵列108在第一时间t1和第二时间t2之间存储器状态信号的差异程度。

步骤S552之后进行步骤S558:运算以获得未补偿输出数据信号OD。未补偿输出数据信号OD相关于数据输入端122的输入数据信号ID和相关于主要存储器阵列108在第二时间t2时的第二存储器状态信号S2。可利用处理电路102读取来自数据输入端122的输入数据信号ID,并读取主要存储器阵列108的第二存储器状态信号S2,然后根据输入数据信号ID和第二存储器状态信号S2计算出未补偿输出数据信号OD。一实施例中,输入数据信号ID为电压Vi,第二存储器状态信号S2为电导Gi,t2,未补偿输出数据信号OD为电流Iout,t2=∑Vi*Gi,t2,i=1、2、3…。由于未补偿输出数据信号OD是与主要存储器阵列108在第二时间t2时的第二存储器状态信号S2相关,第二存储器状态信号S2与第一时间t1时的第一存储器状态信号S1之间的差异造成未补偿输出数据信号OD的准确率下降。

步骤S560:对状态差异信号SD与未补偿输出数据信号OD进行计算以获得补偿输出数据信号OD’。一实施例中,可利用处理电路102进行此步骤。实施例中,计算出的补偿输出数据信号OD’的准确率高未补偿输出数据信号OD,亦即,补偿输出数据信号OD’更接近基于主要存储器阵列108在第一时间t1时的存储器状态所获得的输出数据信号。一实施例中,补偿输出数据信号OD’为电流Iout,t2m=Iotut,t2-Δ*∑Vi

第一存储器状态信号S1与第二存储器状态信号S2具有第一电性测量单位,输入数据信号ID具有第二电性测量单位,未补偿输出数据信号OD与补偿输出数据信号OD’具有第三电性测量单位,第一电性测量单位、第二电性测量单位和第三电性测量单位是不相同的电性测量单位,且彼此符合欧姆定律。一实施例中,第一电性测量单位为电导(electricalconductance)单位,第二电性测量单位为电压单位,第三电性测量单位为电流单位。

一实施例中,SD=S2-S1,OD=ID*S2,OD’=OD-(SD*ID)。

图3和图4绘示根据一实施例概念的半导体电路的操作方法。请参照图3,多个输入数据V1、V2、V3…(即电压Vi,i=1、2、3…)分别乘以主要存储器阵列的存储单元储存的权重G1、G2、G3…(即电导Gi,i=1、2、3…,第一时间t1的电导可标示为Gi,t1,第二时间t1的电导可标示为Gi,t2)的各个乘积I1、I2、I3(即电流Ii,i=1、2、3…,第一时间t1的电流可标示为Ii,t1,第二时间t2的电流可标示为Ii,t2)的总和为输出数据Iout=∑Vi*Gi。请参照图4,此实施例中,从参考存储器阵列110的存储单元储存的存储器状态G1、G2、G3…中的最大存储器状态(Gmax)和最小存储器状态(Gmin)之间的电导范围(G range)中计算取得一个参考存储器状态Gref,即Gmin≤Gref≤Gmax。Gmin、Gmax从第一时间t1至第二时间t2逐渐偏移,故第一时间t1与第二时间t2的参考存储器状态Gref不相同(即Gref,t1≠Gref,t2)。读取存储器装置储存的第一时间t1的参考存储状态Gref,t1,并计算参考存储状态Gref,t1与第二时间t2的参考存储器阵列110的存储单元的参考存储状态Gref,t2的差异,两者差异的关系以式子Gref,t2=Gref,t1+Δ表示,亦即Δ=Gref,t2-Gref,t1。与第一时间t1的主要存储器阵列相关的输出数据为Iout,t1=∑Vi*Gi,t1。与第二时间t2的主要存储器阵列相关的未补偿输出数据为Iout,t2=∑Vi*Gi,t2=∑Vi*(Gi,t1+Δ)=∑Vi*Gi,t1+Δ∑Vi。根据以上数据关系,补偿的输出数据Iout,t2m=Iout,t2-Δ*∑Vi。相较于未补偿的输出数据Iout,t2,补偿的输出数据Iout,t2m更为精确。图5根据实施例概念使用补偿的输出数据的半导体电路经150℃保留测试的G range曲线结果。图6为使用未补偿输出数据的比较例经150℃保留测试的结果。纵轴是基于100个存储器阵列的累积率(cumulative probability)。从图5和图6结果可发现,根据实施例概念使用补偿的输出数据具有较佳的精确度(accuracy)和可靠性。

图7绘示根据另一实施例概念的半导体电路的操作方法,此实施例中,参考存储器阵列110的存储单元储存的最大存储器状态和最小存储器状态之间取两个参考存储器状态,即第一时间t1的第一参考存储器状态Gref1,t1和第二参考存储器状态Gref2,t1,与第二时间t2的第一参考存储器状态Gref1,t2和第二参考存储器状态Gref2,t2。第一时间t1与第二时间t2的第一参考存储器状态差异以式子Gref1,t2=a*Gref1,t1+b表示;第一时间t1与第二时间t2的第二参考存储器状态差异以式子Gref2,t2=a*Gref2,t1+b表示;可从上述关系推导出式子Gt2=(dt2/dt1)*(Gt1-Gtefl,t2)+Gref1,t1,其中dt1=Gref2,t1-Gref1,t1,且dt2=Gref2,t2-Gref1,t2。第一时间t1主要存储器阵列的输出数据为∑Vi*Gi,t1=Iout,t1(概念可参考图3)。第二时间t2主要存储器阵列的未补偿输出数据为∑Vi*Gi,t2=∑Vi*[A(Gi,t1-B)+C]=A∑Vi*Gi,t1-AB∑Vi+C∑Vi。能通过输入数据的总和∑Vi和参考存储器状态差异来对未补偿的输出数据进行补偿,从而得到补偿的输出数据,其比未补偿的输出数据更为精确。图8根据实施例概念使用补偿的输出数据的半导体电路经150℃保留测试的G range曲线结果。图9为未补偿输出数据的比较例经150℃保留测试的结果。从图8和图9结果可发现,根据实施例概念使用补偿的输出数据具有较佳的精确度和可靠性。

综上所述,虽然本发明已以实施例公开如上,然其并非用以限定本发明。本发明所属技术领域中具有公知常识的技术人员,在不脱离本发明的精神和范围内,当可作各种的改动与润饰。因此,本发明的保护范围当以申请权利要求范围所界定的为准。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

12页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于类神经网路的存储器内运算装置

网友询问留言

已有0条留言

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

精彩留言,会给你点赞!

技术分类