一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

存储器电路的制作方法

2022-02-22 07:34:53 来源:中国专利 TAG:


1.本发明的实施例涉及一种存储器电路。


背景技术:

2.通常,通过中央处理器(cpu)执行计算。为了将计算速度提高到更高水平,已利用

存储器内计算’的技术,从而导致计算速度显著提高且所述技术在近期将成为趋势。存储器内计算是指一种技术,所述技术在存储器器件自身内执行计算而无需将数据传输到cpu以进行计算,且可导致更高的计算速度且在大量数据盛行的时代产生显著改善。一种用于实施存储器内计算的技术将卷积神经网络(convolutional neural network,cnn)或深度神经网络(deep neural network,dnn)应用到计算机存储器设计的领域中。相应的,如何在计算机存储器中实施cnn或ddn已成为本领域的普通技术人员的热门话题。
3.在cnn或dnn的领域内,权重的一个实施方案是使用存储单元的电路。举例来说,字线的传导时间可视为输入,且存储在单元中的位可与权重相对应。随着时间推移,可通过执行向量矩阵乘法来获得权重、位线的电流、单元的输出。参看绘示用于实施权重的存储单元的概念图的图1。输入xi为施加在位线上的电压,且xi与施加在位线上的电压的时间段或持续时间相关联。w
ij
为存储在单元中或单元之间的数据位,且可基于来自所述单元的电流而获得数据位的值。
4.举例来说,如果单元与低电阻相对应,那么电流将较低。如果接着电流较低,那么数据位可视为表示
‘0’
。相反,如果单元与高电阻相对应,那么电流将较高。如果电流较高,那么数据位将视为表示
‘1’
。接着可根据xi和w
ij
的全部乘积的总和来确定输出,所述总和可表示为:yi=∑ixiw
ij
。具体来说,xi和w
ij
的乘积将指可接着转换成脉冲宽度且接着相应地输出为数字值的电荷(时间和电流的乘积)。
5.然而,为了通过使用存储器电路来实施神经网络的权重,一个常规概念是使用每单元一个二进制权重来实施近存储器计算。在此方案下,存储器电路可含有多个单元,且多个单元中的每一个可用作用于存储神经网络的二进制权重的临时性或永久性存储器。读出放大器可连接到单元中的一或多个,且配置成读出存储在单元中的每一个中的二进制权重。举例来说,假设存在两个电阻式单元(rl和rh)。rl单元可存储二进制值1的权重而rl单元可存储二进制值0的权重。在根据预定顺序(每周期n位)存取存储单元的权重之后,可获得用于神经网络操作的权重。
6.存储器电路的多个单元可经配置为多个行和多个列的矩阵。每一行将连接到不同字线,且每一字线可连接到数/模转换器(digital to analog converter,dac),所述数/模转换器将输出用于激活每一行的信号。每一列将连接到不同位线,所述不同位线可连接到模/数转换器(analog to digital converter,adc)。每一地址位置处的权重(即,第i行和第j列处的权重(w
ij
))可按存储单元处的电流的电荷计,且存储器位置处的电流的电荷可因此转换成表示存储单元的二进制权重的数字值。
7.然而,存储单元的数据位将为表示
‘0’

‘1’
的二进制数。所述数据位不能模拟学
习期间的情形,例如涉及

是’、

否’以及如

可能(maybe)’的第三种可能性的情形。因此,可能需要两个位以实施ccn或dnn的二进制权重。因此,权重的二进制实施方案可引起计算缓慢和存储器器件过热。
8.替代地,三进制权重系统可用于表示用于存储器内计算的神经网络的权重。三进制权重网络(ternary weight network,twn)是指具有被限制为 1、0以及-1的权重的神经网络,因为已最小化全精度权重与三进制权重之间的欧几里德距离(euclidian)以及缩放因子。可优化基于阈值的三进制函数以得到可引起快速且容易的计算的近似解。twn可具有比最近提出的二进制精度对应部分更强的表达能力,且因此比后者更有效。与全精度对应部分相比,twn可实现高水平的模型压缩率且将可能需要更少的乘法。总体上,与二进制权重神经网络相比,使用三进制权重实施方案的神经网络将可能实现更高的准确度。


技术实现要素:

9.本发明的一些实施例提供一种存储器电路,其特征在于,包括:第一存储单元,包括第一电阻器;第二存储单元,包括第二电阻器;第一写入驱动器,配置成将所述第一电阻器设定为第一电阻值;第二写入驱动器,配置成将所述第二电阻器设定为第二电阻值;差分电流感测电路,配置成基于所述第一电阻值和所述第二电阻值确定所述第一存储单元与所述第二存储单元之间的差分电流;以及三进制权重检测器,配置成基于所述差分电流确定在第一三进制权重、第二三进制权重以及第三三进制权重中选出的三进制权重。
附图说明
10.包含附图以提供对本公开的进一步理解,且附图并入本说明书中并构成本说明书的一部分。图式示出本公开的实施例,且与描述一起用于解释本公开的原理。
11.图1示出用于实施三进制权重的存储单元的概念图。
12.图2示出根据本公开的示例性实施例的用于实施三进制权重的存储器器件的硬件图。
13.图3示出根据本公开的示例性实施例的由存储器器件使用的用于实施三进制权重的方法。
14.图4示出根据本公开的第一示例性实施例的用于实施dnn的rram器件。
15.图5示出根据本公开的第二示例性实施例的用于实施dnn的rram器件的硬件图。
16.图6示出根据本公开的第三示例性实施例的用于实施cnn的rram器件。
17.图7示出根据本公开的第四示例性实施例的用于实施cnn的rram器件的硬件图。
18.图8示出根据本公开的示例性实施例的三进制权重检测电路的硬件图。
19.图9示出根据本公开的第五示例性实施例的用于实施用于近存储器计算的三进制权重的存储器器件的硬件图。
20.图10示出根据本公开的第六示例性实施例的用于实施用于近存储器计算的三进制权重的存储器器件的硬件图。
具体实施方式
21.现将详细参考本公开的当前示例性实施例,附图中示出了所述示例性实施例的实
例。在可能的情况下,在附图和描述中使用相同的附图标号以指代相同或类似部分。
22.本公开为存储器器件提供机制以设定神经网络的三进制权重,以提高存储器内计算的性能。本公开通过设定单元电阻以在存储单元中的两个之间产生差分电流来利用多个(例如,双)存储单元来实施一个三进制权重。接着可通过针对不同的参考电流测量差分电流以获得三进制权重。
23.在本公开中,当将存储单元电阻设定为高电阻时,电阻将高于电阻阈值。具体来说,此电阻阈值可高于会限制电流流动的高电阻。通过此方式,不必微调存储单元电阻,且因此可相应降低制造存储器器件的成本。
24.本公开可通过使用两个单元来表示一个三进制权重而在存储器器件(如电阻式随机存取存储器(resistive random-access memory,rram)、快闪存储器以及类似者)中实施。一个三进制权重的两个单元可以不同方式实施。举例来说,两个存储单元可串联连接在同一位线(bl)上且位于bl的左侧和右侧上,但连接到两个不同的字线(wl)。替代地,两个存储单元可连接到两个不同的位线(bl),但连接到同一字线(wl)。两个单元可共享同一读出放大器,所述读出放大器用于确定所存储的数据信号且将所述所存储的数据信号传输到检测三进制权重的值的三进制权重检测电路。
25.每一存储单元可含有可在写入操作期间由驱动器设定的至少一个电阻器。假设两个单元中的每一个中存在两个电阻器(r1和r2),可将r1设定为低且可将r2设定为高,以产生跨两个单元的正差分电流。可将r1设定为高且可将r2设定为低,以产生跨两个单元的负差分电流。可将r1和r2均设定为高,以产生跨两个单元的近似零的差分电流。具体来说,当将电阻器设定为高电阻时,电阻高于阈值(ruh)。阈值高于本领域的普通技术人员使用的高电阻。举例来说,高电阻可大于10k欧姆且低电阻可小于1k欧姆。因此,举例来说,为了产生跨两个单元的正差分电流,r1可小于1k欧姆且r2可大于10k欧姆;为了产生跨两个单元的负差分电流,r1可大于10k欧姆且r2可小于1k欧姆;且为了产生零差分电流或极少量的差分电流,r1和r2均可大于10k。然而,本公开并不限于这些确切数目,且电阻的值无须为确切的。
26.下文中的表1a绘示电阻、差分参考电流与最终状态(即,三进制权重值)之间的关系。如表1a中所绘示,如果差分电流大于正参考电流,则最终状态可通过额外电路转化为 1;如果将差分电流确定为零或可忽略不计,则最终状态可通过额外电路转化为0;且如果将差分电流确定为小于负参考电流,则最终状态可通过额外电路转化为-1。
27.状态r1r2 1r
l
rh》 i
ref
0》r
uh
》r
uh
~0-1rhr
l
《-i
ref
28.表1a
29.工作原理进一步阐明如下。根据右单元和左单元的电流差来确定状态,所述电流差可根据等式1来表示。
[0030][0031]
对于等式1,δi代表差分电流,r1代表第一单元的电阻,r2代表第二单元的电阻,且v代表bl电压。如果两个单元连接到不同的bl,那么两个bl的bl电压可相同。
[0032]
举例来说,假设两个单元串联地位于同一位线(bl)上且位于bl的左侧和右侧上,接着对于状态“ 1”,将右单元设定为低电阻且将左单元设定为高电阻。通过此方式,左单元的电流(i
l
)高于右单元的电流(ir),这是因为左单元的电阻(r
l
)高得多。因此,可确定δi大于0。对于状态
“‑
1”,将右单元设定为高电阻且将左单元设定为低电阻。因此,ir高于i
l
,这是因为右单元的电阻(rr)高得多。因此,可确定δi小于0。此处,高电阻高于阈值,但是本发明不限于此。对于状态“0”,高电阻高于阈值(r
uh
),且因此r
l
和rh均会非常高。然而,本公开的优点在于,不管ir和i
l
类似或非常不类似,由于ir和i
l
都非常小,则δi几乎为“0”。
[0033]
为了实现上文所描述的概念,本公开提供一种存储器电路和一种由存储器电路使用来表示用于存储器内计算的三进制权重的对应方法。图2绘示根据本公开的示例性实施例的用于表示三进制权重的存储器电路200的硬件图。存储器电路200可包含在存储器器件(如rram或快闪存储器器件)或任何类似的存储器器件内。存储器器件可包含在含有不限于中央处理单元(central processing unit,cpu)、存储器控制器以及存储器器件的电子器件内。存储器器件可连接到存储器控制器,所述存储器控制器连接到电子器件的cpu。
[0034]
参看图2,存储器电路200将包含不限于:第一存储单元201,具有第一电阻器r1;第二存储单元202,具有第二电阻器r2;写入驱动器203,配置成将第一电阻器r1设定为第一电阻值;第二写入驱动器204,配置成将第二电阻器r2设定为第二电阻值;差分电流感测电路205,配置成基于第一电阻值和第二电阻值确定第一存储单元201与第二存储单元202之间的差分电流;以及三进制权重检测器206,配置成基于差分电流确定在第一三进制权重、第二三进制权重以及第三三进制权重中选出的三进制权重。
[0035]
对于第一三进制权重( 1),可将第一电阻值设定为低值且可将第二电阻值设定为高值;对于第二三进制权重(0),可将第一电阻值设定为高值且可将第二电阻值设定为高值;且对于第三三进制权重(-1),可将第一电阻值设定为高值且可将第二电阻值设定为低值。低值可为低于低电阻阈值的任何正电阻值,且高值可为高于高电阻阈值的任何正电阻值。差分电流感测电路205可配置成根据来自第一存储单元的第一电流与第二存储单元的第二电流的总和来输出差分电流。
[0036]
三进制权重检测电路206可配置成在差分电流高于正电流阈值时将差分电流确定为与第一三进制权重( 1)相对应;差分电流检测器配置成在差分电流在正电流阈值与负电流阈值之间时将差分电流确定为与第二三进制权重(0)相对应;且差分电流检测器配置成在差分电流低于负电流阈值时将差分电流确定为与第三三进制权重(-1)相对应。
[0037]
差分电流感测电路205可配置成基于wl的电压与第一电阻的第一比率与wl的电压与第二电阻的第二比率之间的电流差来检测差分电流。可通过使用将差分电流与参考电流进行比较的电流比较器来实施差分电流感测电路205。
[0038]
第一存储单元201可连接到第一bl,第二存储单元202可连接到第二bl,而第一存储单元201和第二存储单元202可连接到同一wl。替代地,第一存储单元201和第二存储单元202可连接到同一bl,第一存储单元可连接到第一wl且第二存储单元可连接到第二wl。
[0039]
图3示出由存储器电路200使用的用于表示三进制权重的方法。在步骤s301中,存储器电路200将第一存储单元的第一电阻器设定为第一电阻值且将第二存储单元的第二电阻器设定为第二电阻值,其中:对于第一三进制权重,第一电阻值为低值且第二电阻值为高值;对于第二三进制权重,第一电阻值为高值且第二电阻值为高值;且对于第三三进制权
重,第一电阻值为高值且第二电阻值为低值。在步骤s302中,存储器电路200将根据bl电压与第一电阻值的第一比率与bl电压与第二电阻值的第二比率之间的电流差而产生差分电流。在步骤s303中,存储器电路200将基于差分电流而确定三进制权重。
[0040]
为了进一步阐明存储器电路200的操作的原理,本公开提供如图4到图10中所绘示的各种示例性实施例。图4示出根据本公开的第一示例性实施例的用于实施dnn的rram器件400。对于此示例性实施例,rram器件400具有多个存储单元,其中每一单元由图4的电阻器符号表示。存储单元中的两个将用于表示神经网络的单元,且神经网络的每一单元输出三进制权重。举例来说,并排安置的第一存储单元401和第二存储单元402可用于表示一个三进制权重。第一存储单元401含有第一电阻器lrs且第二存储单元402含有第二电阻器hrs。已熟知,可在写入操作期间设定rram器件的此类电阻器(例如lrs、hrs)。因此,可在写入操作期间根据等式1来设定第一电阻器lrs和第二电阻器hrs,以使单元具有三进制权重。
[0041]
差分电流可由第一存储单元401和第二存储单元402产生,且由差分电流感测电路(例如205,图4中未绘示)检测。在此实例中,差分电流将为其中电压将为bl电压,所述bl电压对于分别连接到lrs和hrs的bl可为相同的。在已产生差分电流之后,可通过三进制权重检测电路(例如206)基于表1a来确定三进制权重。替代地,三进制权重可以数字方式确定。举例来说,来自第一电阻器lrs和第二电阻器hrs的电流可各自转换成电压且随后通过模/数转换器(adc)403转换成数字信号。接着可根据等式1来确定差分电流且可根据表1a来确定三进制权重。替代地,可通过使用差分电流感测电路(例如205)来确定差分电流以确定接着可通过使用adc 403转换成差分电压且随后转换成数字形式的差分电流。接着,可根据表1a以数字方式确定三进制权重。
[0042]
图5示出根据本公开的第二示例性实施例的用于实施dnn的rram器件500的硬件框图。对于此示例性实施例,不需要adc,且两个存储单元在由同一wl控制但连接到不同bl的同一行上并排连接。rram器件500含有包含第一存储单元501和第二存储单元502的多个存储单元。第一存储单元501由wl控制且含有第一电阻器r1,且第二存储单元502由wl控制且含有第二电阻器r2。可在写入操作期间将第一电阻器r1和第二电阻器r2各自设定为高电阻或低电阻。高电阻可为高于高电阻阈值的任何电阻,且低电阻可为低于低电阻阈值的任何电阻。高电阻阈值可为例如10,000欧姆或10k欧姆,且低电阻阈值可为例如1,000欧姆或1k欧姆。
[0043]
可在写入操作期间通过激活wl和bl1以及通过施加可将第一电阻501设定为高电阻的高电阻设定电压或通过施加可将第一电阻501设定为低电阻的低电阻设定电压来设定第一电阻501。将应用相同原理以用于将第二电阻502设定为高电阻或低电阻。为了表示三进制权重的三个状态中的一个或三个值中的一个,将应用表1a中的关系。
[0044]
第一单元501将输出第一电流i1且第二单元502将输出第二电流i2。差分电流感测电路505将根据等式1从第一存储单元501和第二存储单元502接收第一电流i1和第二电流i2,以产生差分电流δi。差分电流感测电路505为当前熟知的,且因此操作的原理对于本领域的普通技术人员将显而易见。差分电流δi将发送到接着将基于表1a确定三进制权重的三进制权重检测电路506。将在本公开的后半部分中详细说明三进制权重检测电路506。替代地,对于本领域的普通技术人员将显而易见的是,由数字逻辑电路或处理器功能替换差
分电流感测电路505和三进制权重检测电路506的功能以实现相同目的。
[0045]
图6示出根据本公开的第三示例性实施例的用于实施cnn的rram器件。对于此示例性实施例,rram器件600具有多个存储单元,其中每一单元由图6的电阻器符号表示。存储单元中的两个将用于表示神经网络的单元,且神经网络的每一单元输出三进制权重。存储单元中的两个可连接到同一bl但由不同的wl控制或连接到同一wl但不同的bl。尽管图6绘示此类替代方案中的一个,但对于本领域的普通技术人员将显而易见的是,类似概念将适用于另一替代方案。对于图6的实施例,存储单元连接到同一bl和同一wl,但由反相器分隔开,这意味着一次仅接通存储单元601和存储单元602中的一个。替代地,存储单元601和存储单元602可连接到不同的wl。如图6所绘示,第一存储单元601和第二存储单元602可位于不同的相邻行中以表示一个三进制权重。第一存储单元601含有第一电阻器lrs且第二存储单元602含有第二电阻器hrs。rram器件的电阻器中的每一个(例如lrs、hrs)连接到可在写入操作期间设定电阻值的写入驱动器。因此,可在写入操作期间根据等式1来设定第一电阻器lrs和第二电阻器hrs,以便与特定的三进制权重相对应。
[0046]
可基于来自第一存储单元601和第二存储单元602的电流来检测差分电流,且可通过bl 603上的读出放大器(sa)来检测差分电流,可修改所述bl 603以充当差分电流感测电路(例如205,图6中未绘示)以及三进制权重检测电路206。举例来说,wl可首先接通第一存储单元601,所述第一存储单元601将输出待由对应的sa 603检测的第一电流,且可将第一电流与如表1a中所绘示的正参考电流i
ref
进行比较以用于确定电流是否超过i
ref
。经过一段时间之后,可反转wl电压以断开第一存储单元601但接通第二存储单元602,所述第二存储单元602将输出待由对应的sa 603检测的第二电流,且可在参考电流已从i
ref
切换到-i
ref
之后将第二电流与如表1a中所绘示的负参考电流-i
ref
进行比较,以用于确定电流是否小于-i
ref
。如果第一电流已超过i
ref
,则三进制权重为 1;如果第二电流低于-i
ref
,则三进制权重为-1;以及如果第一电流没有超过i
ref
且第二电流也不低于-i
ref
,则三进制权重为0。
[0047]
而且,在此实例中,差分电流将为其中电压将为bl电压。而且,替代地,三进制权重可以数字方式确定。举例来说,可通过模/数转换器(adc)403将sa 603的输出转换成数字信号,且接着可根据等式1确定差分电流且可根据表1a确定三进制权重。
[0048]
图7示出根据本公开的第四示例性实施例的用于实施cnn的rram器件的硬件图。对于此示例性实施例,如先前所描述,由差分电流感测电路705与三进制权重检测电路706的组合来替换sa。差分电流感测电路705连接到由两个存储单元共享的位线,且三进制权重检测电路706连接到差分电流感测电路705的输出。两个存储单元连接到同一bl,但如图6中所绘示,所述两个存储单元可由不同的wl控制或由由反相器分隔开的同一wl控制。rram器件700含有包含第一存储单元701和第二存储单元702的多个存储单元。第一存储单元701由wl1控制且含有第一电阻器r1,且第二存储单元702由wl2控制且含有第二电阻器r2。在写入操作期间,第一电阻器r1和第二电阻器r2可各自通过其相应的写入驱动器703和写入驱动器704而设定为高电阻或低电阻。高电阻可为高于高电阻阈值的任何电阻,且低电阻可为低于低电阻阈值的任何电阻。高电阻阈值可为例如10,000欧姆或10k欧姆,且低电阻阈值可为例如1,000欧姆或1k欧姆。
[0049]
与图5的实施例类似,可在写入操作期间通过激活wl1和bl且通过施加可将第一电
阻701设定为高电阻的高电阻设定电压或通过施加可将第一电阻701设定为低电阻的低电阻设定电压来设定第一电阻701。将应用相同原理以用于将第二电阻702设定为高电阻或低电阻。为了表示三进制权重的三个状态中的一个或三个值中的一个,将应用表1a中的关系。
[0050]
第一单元701将输出第一电流i1且第二单元702将输出第二电流i2。差分电流感测电路705将通过接通wl1从第一存储单元701接收且记录第一电流i1。在一段时间之后,差分电流感测电路705将从第二存储单元702接收且记录第二电流i2。差分电流感测电路705将配置成基于第一电流i1和第二电流i2根据等式1来计算差分电流δi。差分电流感测电路705为当前熟知的,且因此操作的原理对于本领域的普通技术人员将显而易见。将差分电流δi发送到三进制权重检测电路706,三进制权重检测电路706接着将基于表1a确定三进制权重。而且,本领域的普通技术人员将显而易见的是,由数字逻辑电路或处理器功能替换差分电流感测电路705和三进制权重检测电路706的功能以实现相同目的。
[0051]
图8中绘示三进制权重检测电路800(例如206、506、706)的示例性实施例。三进制权重检测电路800可包含第一电流比较器801、第二电流比较器802以及逻辑栅极(例如nand栅极)803。响应于接收差分电流δi,第一电流比较器801会将δi与参考电流i
ref
进行比较。如果δi大于i
ref
,则第一电流比较器801的输出将为高状态,这意味着三进制权重为 1。如果第一电流比较器801的输出处于低状态,那么其意味着三进制权重不为 1。响应于接收差分电流δi,第二电流比较器802会将δi与参考电流-i
ref
进行比较。如果-i
ref
大于δi,则第一电流比较器801的输出将为高状态,这意味着三进制权重为-1。如果第二电流比较器802的输出处于低状态,那么其意味着三进制权重不为-1。如果第一电流比较器801的输出和第二电流比较器802的输出均处于低状态,则nand栅极的输出将处于高状态。如果nand栅极的输出处于高状态,则三进制权重为0。如果nand栅极的输出处于低状态,则三进制权重不为0。
[0052]
图9绘示用于实施近存储器计算的每单元三进制权重的存储器器件900的硬件图。存储器器件900可包含不限于:多个存储单元901,布置成多个行和多个列的矩阵;行解码器902,用于激活特定行;列多路复用器903,用于选出位线的列;以及读取放大器和写入缓冲器电路904。多个存储单元901可包含不限于第一存储单元911和第二存储单元912。第一存储单元911和第二存储单元912可位于不同列中但由同一字线控制。替代地,第一存储单元911和第二存储单元912也可位于同一列中但由不同字线控制。多个存储单元901的存储单元中的每一个可为例如电阻式存储单元,但本公开并不将存储单元限制为特定类型。
[0053]
在多个存储单元901内,存储单元(例如第一存储单元911和第二存储单元912)中的两个可为用于实施三进制权重的双单元单元。对于此示例性实施例,可设定或编程第一存储单元911的第一电阻器与第二存储单元912的第二电阻器的组合以根据下文中的表1b来实施三进制权重,其中左单元可为第一存储单元911且右单元可为第二存储单元912。如果将右单元(例如912)的电阻器设定为高(即rh)且将左单元(例如911)中的电阻器设定为低(即r
l
),则三进制权重将为 1;如果左单元(例如911)和右单元(例如912)的电阻器均高于阈值(即“r
uh”),则三进制权重将为 0;且如果将右单元(例如912)的电阻器设定为低(即r
l
)且将左单元(例如911)中的电阻器设定为高(即rh),则三进制权重将为-1。读出放大器可连接到第一存储单元911和第二存储单元912以读出三进制权重,且多个存储单元901的三进制权重可以每周期n位的方式依序读出以获得神经网络操作的权重。
[0054]
权重右单元左单元 1rhr
l
0>r
uh
>r
uh-1r
l
rh[0055]
表1b
[0056]
图10示出用于实施存储器内计算的三进制权重的存储器器件1000的硬件图。与图9的示例性实施例类似,存储器器件1000可包含不限于布置成行和列的矩阵的多个存储单元。存储器件1000的每一行可连接到dac的不同输出,而存储器器件的每一列可连接到adc的不同输入。还与图9的示例性实施例类似,多个存储单元中的两个相邻存储单元将形成为双单元单元以实施一个三进制权重。举例来说,第一存储单元1001和第二存储单元1002可位于不同列中,但由于每一字线连接到dac的不同输出而连接到同一字线。替代地,第一存储单元1001和第二存储单元1002也可位于同一列中但由不同字线控制。多个存储单元的存储单元中的每一个可为例如电阻式存储单元,但本公开并不将存储单元限制为特定类型。对于图10的实例,每一dac输出将激活每一行的字线,且adc输入中的两个可以表示三进制权重。adc将由adc输入接收的电荷转换成数字值。
[0057]
举例来说,可通过用于输入激活的来自dac的脉冲宽度(ti)来实施神经网络的乘法和加法(multiplication and accumulation,mac)操作。第i行和第j列处的三进制权重可表示为其中vbl为位线上的恒定电压,且r
ij
( )和r
ij
(-)为在第i行和第j列上的双单元单元(例如1001、1002)中配置的两个电阻值。mac操作可表示为可表示为其中oj为位线中的每一个上的电流。表2绘示电流oj与三进制权重之间的对应关系。adc将模拟值oj转换成数字值,以用于后续操作。
[0058]
权重右单元左单元权重(当前) 1rhr
l
=(v
bl
/r
l-v
bl
/rh)》00》r
uh
》r
uh
=(v
bl
/r
l-v
bl
/rh)~0-1r
l
rh=(v
bl
/r
l-v
bl
/rh)《0
[0059]
表2
[0060]
总之,本公开涉及一种存储器电路、一种电子器件以及一种用于实施存储器内计算的三进制权重的方法。根据本公开的一方面,本公开提供一种存储器电路,所述存储器电路包含:第一存储单元,包括第一电阻器;第二存储单元,包括第二电阻器;写入驱动器,配置成将第一电阻器设定为第一电阻值;第二写入驱动器,配置成将第二电阻器设定为第二电阻值;以及三进制权重检测器,配置成基于第一电阻值和第二电阻值确定在第一三进制权重、第二三进制权重以及第三三进制权重中选出的三进制权重。
[0061]
根据各种示例性实施例,对于第一三进制权重,可将第一电阻值设定为低值且可将第二电阻值设定为高值;对于第二三进制权重,可将第一电阻值设定为高值且可将第二电阻值设定为高值;且对于第三三进制权重,可将第一电阻值设定为高值且可将第二电阻值设定为低值。低值可为低于低电阻阈值的任何正电阻值,且高值可为高于高电阻阈值的任何正电阻值。第一三进制权重可为 1,第二三进制权重可为0且第三三进制权重可为-1。
三进制权重检测器可包含差分电流检测器,配置成根据第一bl的第一电流与第二bl的第二电流的总和来输出差分电流。差分电流检测器可配置成在差分电流高于正电流阈值时将差分电流确定为与第一三进制权重相对应;差分电流检测器可配置成在差分电流在正电流阈值与负电流阈值之间时将差分电流确定为与第二三进制权重相对应;且差分电流检测器配置成在差分电流低于负电流阈值时将差分电流确定为与第三三进制权重相对应。差分电流检测器可配置成基于wl的电压与第一电阻的第一比率与wl的电压与第二电阻的第二比率之间的电流差来检测差分电流。差分电流检测器可为接收电流差的读出放大器,所述读出放大器与参考电流进行比较以确定三进制权重。第一存储单元可连接到第一bl,第二存储单元连接到第二bl,且第一存储单元和第二存储单元连接到同一wl。替代地,第一存储单元和第二存储单元可连接到同一bl,第一存储单元连接到第一wl且第二存储单元连接到第二wl。
[0062]
在本发明的实施例中,对于所述第一三进制权重,将所述第一电阻值设定为低值且将所述第二电阻值设定为高值;对于所述第二三进制权重,将所述第一电阻值设定为所述高值且将所述第二电阻值设定为所述高值;且对于所述第三三进制权重,将所述第一电阻值设定为所述高值且将所述第二电阻值设定为所述低值。
[0063]
在本发明的实施例中,其中所述低值是低于低电阻阈值的任何正电阻值,且所述高值是高于高电阻阈值的任何正电阻值。
[0064]
在本发明的实施例中,其中所述第一三进制权重为 1,所述第二三进制权重为0,且所述第三三进制权重为-1。
[0065]
在本发明的实施例中,其中所述差分电流感测电路配置成根据来自所述第一存储单元的第一电流与来自所述第二存储单元的第二电流的总和来输出差分电流。
[0066]
在本发明的实施例中,其中所述三进制权重检测电路配置成:在所述差分电流高于正电流阈值时将所述差分电流确定为与所述第一三进制权重相对应;在所述差分电流在所述正电流阈值与负电流阈值之间时将所述差分电流确定为与所述第二三进制权重相对应;且配置成在所述差分电流低于所述负电流阈值时将所述差分电流确定为与所述第三三进制权重相对应。
[0067]
在本发明的实施例中,其中所述差分电流感测电路配置成基于字线的电压与所述第一电阻的第一比率与所述字线的所述电压与所述第二电阻的第二比率之间的电流差来检测所述差分电流。
[0068]
在本发明的实施例中,其中所述三进制权重检测电路包括将所述差分电流与参考电流进行比较以确定所述三进制权重的电流比较器电路。
[0069]
在本发明的实施例中,其中所述第一存储单元连接到第一位线(bl),所述第二存储单元连接到第二位线,且所述第一存储单元和所述第二存储单元连接到同一字线(wl)。
[0070]
在本发明的实施例中,其中所述第一存储单元和所述第二存储单元连接到同一位线(bl),所述第一存储单元连接到第一字线(wl),且所述第二存储单元连接到第二字线。
[0071]
根据本公开的一方面,本公开涉及一种电子器件,所述电子器件包含:cpu;存储器控制器,耦合到cpu;以及存储器电路,耦合到存储器控制器,且包含:第一存储单元,具有第一电阻器;第二存储单元,具有第二电阻器;写入驱动器,配置成将第一电阻器设定为第一电阻值;第二写入驱动器,配置成将第二电阻器设定为第二电阻值;以及三进制权重检测
器,配置成基于第一电阻值和第二电阻值确定在第一三进制权重、第二三进制权重以及第三三进制权重中选出的三进制权重。对于第一三进制权重,将第一电阻值设定为低值且将第二电阻值设定为高值;对于第二三进制权重,将第一电阻值设定为高值且将第二电阻值设定为高值;且对于第三三进制权重,将第一电阻值设定为高值且将第二电阻值设定为低值。
[0072]
根据各种示例性实施例,低值可为低于低电阻阈值的任何正电阻值,且高值可为高于高电阻阈值的任何正电阻值。第一三进制权重可为 1,第二三进制权重可为0且第三三进制权重可为-1。三进制权重检测器可包含差分电流检测器,配置成根据第一bl的第一电流与第二bl的第二电流的总和来输出差分电流;且可配置成在差分电流高于正电流阈值时将差分电流确定为与第一三进制权重相对应,电流检测器可配置成在差分电流在正电流阈值与负电流阈值之间时将差分电流确定为与第二三进制权重相对应,且电流检测器可配置成在差分电流低于负电流阈值时将差分电流确定为与第三三进制权重相对应。第一存储单元可连接到第一bl,第二存储单元可连接到第二bl,且第一存储单元和第二存储单元可连接到同一wl。替代地,第一存储单元和第二存储单元连接到同一bl,第一存储单元连接到第一wl且第二存储单元连接到第二wl。
[0073]
在本发明的实施例中,一种电子器件,其特征在于,包括:中央处理器(cpu);存储器控制器,耦合到所述中央处理器;以及存储器电路,耦合到所述存储器控制器且包括:第一存储单元,包括第一电阻器;第二存储单元,包括第二电阻器;第一写入驱动器,配置成将所述第一电阻器设定为第一电阻值;第二写入驱动器,配置成将所述第二电阻器设定为第二电阻值;差分电流感测电路,配置成基于所述第一电阻值和所述第二电阻值确定所述第一存储单元与所述第二存储单元之间的差分电流;以及三进制权重检测器,配置成基于所述差分电流确定在第一三进制权重、第二三进制权重以及第三三进制权重中选出的三进制权重,其中:对于所述第一三进制权重,将所述第一电阻值设定为低值且将所述第二电阻值设定为高值;对于所述第二三进制权重,将所述第一电阻值设定为所述高值且将所述第二电阻值设定为所述高值;且对于所述第三三进制权重,将所述第一电阻值设定为所述高值且将所述第二电阻值设定为所述低值。
[0074]
在本发明的实施例中,其中所述低值是低于低电阻阈值的任何正电阻值,且所述高值是高于高电阻阈值的任何正电阻值。
[0075]
在本发明的实施例中,其中所述第一三进制权重为 1,所述第二三进制权重为0,且所述第三三进制权重为-1。
[0076]
在本发明的实施例中,其中所述差分电流感测电路配置成根据来自所述第一存储单元的第一电流与来自所述第二存储单元的第二电流的总和来输出差分电流,且配置成在所述差分电流高于正电流阈值时将所述差分电流确定为与所述第一三进制权重相对应,电流检测器配置成在所述差分电流在所述正电流阈值与负电流阈值之间时将所述差分电流确定为与所述第二三进制权重相对应,且所述电流检测器配置成在所述差分电流低于所述负电流阈值时将所述差分电流确定为与所述第三三进制权重相对应。
[0077]
在本发明的实施例中,其中所述第一存储单元连接到第一位线(bl),所述第二存储单元连接到第二位线,且所述第一存储单元和所述第二存储单元连接到同一字线(wl)。
[0078]
在本发明的实施例中,其中所述第一存储单元和所述第二存储单元连接到同一位
线(bl),所述第一存储单元连接到第一字线(wl),且所述第二存储单元连接到第二字线。
[0079]
根据本公开的一方面,本公开涉及一种确定由存储器电路使用的从第一三进制权重、第二三进制权重以及第三三进制权重中选出的三进制权重的方法,所述存储器电路包含具有第一电阻器的第一存储单元和具有第二电阻器的第二存储单元。方法将包含:将第一电阻器设定为第一电阻值且将第二电阻器设定为第二电阻值,其中:对于第一三进制权重,第一电阻值为低值且第二电阻值为高值,对于第二三进制权重,第一电阻值为高值且第二电阻值为高值,且对于第三三进制权重,第一电阻值为高值且第二电阻值为低值;根据bl电压与第一电阻值的第一比率与bl电压与第二电阻值的第二比率之间的电流差而产生差分电流;以及使用差分电流检测器以用于输出三进制权重。
[0080]
根据各种示例性实施例,方法可更包含:对于第一三进制权重,产生具有正值的差分电流;对于第二三进制权重,产生具有零值的差分电流;以及对于第三三进制权重,产生具有负值的差分电流,以便根据bl电压与第一电阻值的第一比率与bl电压与第二电阻值的第二比率之间的电流差而产生差分电流。第一三进制权重可为 1,第二三进制权重可为0且第三三进制权重可为-1。低值可为低于低电阻阈值的任何正电阻值,且高值可为高于高电阻阈值的任何正电阻值。
[0081]
在本发明的实施例中,一种由存储器电路使用的方法,用于确定从第一三进制权重、第二三进制权重以及第三三进制权重中选出的三进制权重,所述存储器电路包括具有第一电阻器的第一存储单元和具有第二电阻器的第二存储单元,其特征在于,所述方法包括:将第一电阻器设定为第一电阻值且将第二电阻器设定为第二电阻值,其中:对于所述第一三进制权重,所述第一电阻值为低值且所述第二电阻值为高值;对于所述第二三进制权重,所述第一电阻值为所述高值且所述第二电阻值为所述高值;且对于所述第三三进制权重,所述第一电阻值为所述高值且所述第二电阻值为所述低值;根据位线电压与所述第一电阻值的第一比率与所述位线电压与所述第二电阻值的第二比率之间的电流差而产生差分电流;以及基于所述差分电流而确定所述三进制权重。
[0082]
在本发明的实施例中,其中根据所述位线电压与所述第一电阻值的所述第一比率与所述位线电压与所述第二电阻值的所述第二比率之间的差值而产生所述差分电流更包括:对于所述第一三进制权重,产生具有正值的所述差分电流;对于所述第二三进制权重,产生具有零值的所述差分电流;以及
[0083]
对于所述第三三进制权重,产生具有负值的所述差分电流。
[0084]
在本发明的实施例中,其中所述第一三进制权重为 1,所述第二三进制权重为0,且所述第三三进制权重为-1。
[0085]
在本发明的实施例中,其中所述低值是低于低电阻阈值的任何正电阻值,且所述高值是高于高电阻阈值的任何正电阻值。
[0086]
鉴于前述描述,本公开适用于在存储器电路中使用,且能够以模拟方式实施cnn或dnn的三进制权重,从而导致更快的计算速度,以改善存储器内计算的领域。
[0087]
本技术所公开的实施例的详细描述中使用的元件、动作或指令不应解释为对本公开来说绝对关键或必要的,除非明确地如此描述。而且,如本文中所使用,不定冠词“一(a/an)”中的每一个可包含多于一个项目。如果想表示只有一个项目,那么可以使用术语“单个”或类似语言。此外,如本文中所使用,在多个项目及/或多个项目种类的列表之前的术语“中的任一个”希望包含所述项目及/或项目种类个别地或结合其它项目及/或其它项目种类“中的任一个”、“中的任何组合”、“中的任何多个”及/或“中的多个的任何组合”。此外,如本文中所使用,术语“集合”希望包含任何数目的项目,包含零个。此外,如本文中所使用,术语“数目”希望包含任何数目个,包含零个。
[0088]
对本领域的技术人员将显而易见的是,在不脱离本公开的范围或精神的情况下,可对所公开的实施例的结构进行各种修改和变化。鉴于前述内容,希望本公开涵盖属于所附权利要求书和其等效物的范围内的本公开的修改及变化。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献