【文献阅读】Multi-state MRAM cells for hardware neuromorphic computing

题目:Multi-state MRAM cells for hardware neuromorphic computing
时间:2021
会议/期刊:
研究机构:AGH University of Science and Technology

Multi-state MRAM cells for hardware neuromorphic computing

Abstract

磁性隧道结(Magnetic tunnel junctions, MTJ)已成功应用于各种传感应用和数字信息存储技术。目前,正在积极研究 MTJ 的许多新的潜在应用,包括high-frequency electronics, energy harvesting or random number generators。最近,MTJs 也被用于unconventional or bio-inspired computing的新平台设计中。目前的工作表明,形成multi-state memory cell的串联 MTJ 可用于神经计算设备的硬件实现。基于实验确定的MTJ参数提出了the multi-cell的行为模型。Mutli-cell 的主要目的是形成quantized weights of the network,可以使用所提出的电子电路对其进行编程。Mutli-cells 连接到基于 CMOS 的求和放大器和 sigmoid 函数发生器,形成一个人工神经元。所设计网络的操作通过识别 20 × 20 像素矩阵中的手写数字进行测试,并显示出与软件算法相当的检测率,using the weight stored in a multi-cell consisting of four MTJs or more。

I. INTRODUCTION

非常规计算架构(例如人工神经网络 (ANN))在解决许多计算问题(例如,图像或语音识别、导航、优化和预测1-5)方面具有优于传统基于 CMOS 的电路的优越性能。作为一个概念,神经网络已被证明是快速、灵活和节能的。然而,他们的数字实施使用大量资源6,这导致实施它们所需的面积很大。与数字实现相反的另一种解决方案是使用基于模拟的电路,其中信号表示为连续电压值,而不是量化的位7-10。在这种实施方式中,关键元件是可编程电阻元件,例如忆阻器memristor11,它可以充当人工神经元中的权重。使用神经网络的纯数字实现可能会导致高资源和能源消耗。相反,使用混合的数字和模拟电子电路可以实现更紧凑和节能的解决方案。在许多提议的模拟 ANN 实现中,神经元行为由resistive RAM (RRAM) 元件12模拟,其电阻变化源于导体/绝缘体过渡7。然而,基于电阻或相变技术的电池的耐用性有限,并且可能会随着时间和随后的编程周期而退化13。相反,基于磁隧道结 (MTJ) 的自旋电子元件,如忆阻器memristors、纳米振荡器nano-oscillators14或概率位probabilistic bit15,它们依赖于磁化切换或动力学(magnetisation switching or dynamics),不存在此类耐久性问题,与 CMOS 技术兼容,并且具有已经显示出优异的仿生特性16。此外,最近的理论工作预测,神经网络不仅能够使用由实数表示的权重,而且还能够使用二进制或量化值17-19

最近,我们提出了一种多态自旋转移矩磁随机存取存储器 (multi-state spin transfer torque magnetic random access memory, STTMRAM) 单元的设计,可在神经形态计算方案neuromorphic computing schemes中用作突触synapses21-26或作为标准的多态存储单元standard multi-state memory unit。在本文中,我们提出了一个全功能的神经网络硬件实现设计,除了输入和输出设备外,它不需要额外的操作组件。单个突触的设计基于多位 STT-MRAM 单元,与传统 CMOS 技术中形成放大器的最小晶体管集互连。整个网络由四层排列的神经元组成。使用 MNIST27 数据库的手写数字识别任务验证了所提出的神经网络的工作原理。

II. EXPERIMENTAL AND CIRCUIT LEVEL SIMULATIONS

为了在制造过程之前对所提出的神经网络进行仿真,需要串联连接的 MTJ 的关键参数以形成可编程忆阻器器件。从理论上讲,这些参数最终可以从基于 Landau-Lifshitz-Gilbert 方程的 MTJ 动力学的完整模拟中推导出来。然而,这将需要对物理参数(如磁各向异性、自旋电流极化或温度依赖性)引入多种假设,从而使所得结果不那么普遍。另一方面,要作为神经网络权重运行,MRAM 单元唯一需要的是它的传递函数——或者等效地,电阻vs电压 (R(V)) loop。由于我们的目标是对由数千个单独的 MTJ 组成的现实 ANN 的行为进行建模,我们发现按照下面描述的方法直接对 R(V) loops进行建模的计算成本更低且更通用。我们将证明这种方法得到了实验数据的证实,它为构建功能性人工神经网络提供了坚实的基础。

II.1 单条 MTJ R(V) 曲线的建模

MTJ 的典型 R(V) loop可以使用四个线性函数(每个 MTJ 状态中的电阻与偏置电压相关性)和两个阈值点(开关电压)来近似,如图 1 所示。此外,在这种情况下 对于真正的 MTJ,以下参数相互关联:a1n = -a1p = a1、b1n = b1p = b1、a0n = -a0p = a0 和 b0n = b0p = b0。 此外,必须包括a current resistance state(高电阻或低电阻)。 使用这种 R(V) 曲线模型还可以计算其他传输曲线,包括 V(I)。 所提出的模型对应于研究期间调查的所有 MTJ。
在这里插入图片描述
由于隧道磁阻效应的偏置依赖性,MTJ 的电阻随电压变化(因此 V(I) 不是线性的),并且没有直接的方法来计算串联连接的 MTJ 的 R(V) 传输曲线。 Instead,可以使用基尔霍夫定律计算 V(I),因为在串联的 MTJ 中,电流是恒定的,而总电压是每个元件上电压降的总和29。 为了确定给定电压 V 的电阻,执行以下步骤30

  1. 从所有 MTJ 的给定状态开始,电流 I = 0
  2. 小步增加电流 I = I + ΔI
  3. 对于每个 MTJ:
    ( a ) (a) (a) 检查是否达到给定状态的临界电流:
    ( b ) (b) (b) 如果是,则将 I 设置为 0,改变state of the element并转到 2。如果不是,继续。
    ( c ) (c) (c) 计算给定 I 的 MTJ 上的电压 Vi
  4. 计算总电压 V t = ∑ i = 1 N V i V_t = ∑_{i=1}^N V_i Vt=i=1NVi
  5. 如果总电压 Vt ≥ V,则找到解,算法结束。 否则,返回步骤 2。

根据所施加电压的极性,ΔI 的符号可能与所施加 V 的符号相同或相反。对于给定的计算时间限制,ΔI 的值应尽可能小。通过对每个请求的 V 重复该过程,可以计算出完整的 I(V) 和 R(V) 曲线。

我们的方法可以非常简单地解释现实生活中的 MTJ 永远不会完全相同,而是由于制造缺陷和电流感应磁化切换过程的部分随机性质而具有略微不同的动态行为这一事实。由于每个multi-MTJ cell的工作原理由其 R(V) 曲线描述,因此在模拟开始时为每个cell选择略微不同的 R(V) 参数就足以表示这种变化。

为了验证所提出的模型,对三个不同element的一系列 R(V) 曲线测量对每个element重复数十次,并将数据用于获得模型的参数。然后,对这些串联的 MTJ 进行了一系列测量。完全相同的MTJ的实验数据和模拟结果的比较如图1(b)所示。可以看出,模拟结果与实验依赖性密切相关,甚至可以再现从高电阻状态到低电阻状态的多步切换。

为了预测mutli-cell的行为,对几十个制造的 MTJ 的 R(V) 环进行了测量和分析。接下来,对于每次测量(图 1(a)),拟合模型,从而估计制造参数和工艺产量。在整个样本中,这些参数呈现正态分布,因此,预期值 μ 及其标准偏差 σ 可用于对每个参数进行建模。

表1中显示的参数被用来模拟由七个串联的 MTJ 组成的mutli-cell,其中可以观察到八个稳定的电阻状态。重复模拟 300 次后,计算了switching (write) voltages and resistances 的分布(图 2)。观察到稳定电阻水平(读出值)之间以及写入电压之间的明显分离。
在这里插入图片描述
在这里插入图片描述

II.A Electronic neuron

After the analysis of the multi-cell, which may be used as programmable resistor for performing weighted sum operation for many input voltages, we turn to the artificial neuron design. 所提出的神经元的示意图如图 3 所示。输入和输出(VINm,VOUT)作为bipolar analog signals提供。为了启用正负权重,每个信号输入都使用一对可编程 MTJ 多单元(MmP 和 MmN)。在multi-cell resistances满足条件 MmP < MmN 的情况下,实现正权重,而对于 MmP > MmN 的情况,实现负权重值。最近在参考文献32中提出了一种替代设计,其中多个 MTJ 与单独的选择晶体管串联连接。对于相等的mutli-cells’ resistances,提供零权重,这相当于输入与突触synapse断开连接的情况。加法放大器架构被用于实现加法运算,同时减少突触的占用空间footprint。差分放大器将差分电压转换为单个双极信号,该信号使用非线性(sigmoid)函数进行转换。该电压可以用作下一个突触的输入,也可以用作网络的输出。此外,为了提供恒定的偏置,可以使用具有恒定电压的标准输入,其中该恒定偏置的水平以与其他功能输入的权重相同的方式确定。
在这里插入图片描述

II.B Neural network circuit

实现所提出的神经网络的电路采用标准 CMOS 技术 – UMC 180 nm 设计。为了对七个串联的 MTJ 所需的电阻进行编程,需要大约 3.25 V 的电压,因此输入/输出 (I/O) 3.3 V 晶体管用于设计用于 MTJ 编程目的的电路,而对于其他电路中,使用了标准的 1.8 V 晶体管。一个单独的神经元回路由三部分组成。在输入端,由忆阻器组成的两个电阻网络实现了输入电压和系数的乘法 - 图 3(a)。接下来,获得的电压在差分放大器中被放大到所需的值 - 图 3(b)。最后,第三部分是一个sigmoid函数块,它实现了激活函数——图3 ( c ) (c) (c)。忆阻器编程电路是使用 I/O 晶体管(未显示)设计的,由高压开关和控制它们的数字元件组成。

The differential voltage Vd generated by the divider network (Fig. 3(a)) connected to a pair of summing amplifiers (Fig. 3(d)) can be expressed as:
在这里插入图片描述
这里
在这里插入图片描述
图 4 所示的运算放大器设计为两级电路,由差分对 M1、M2 和电流镜负载 M3、M4 组成,M5 偏置电流为 1 µA。输出级M6、M7提供适当的放大和输出电流。运算放大器消耗的总电流约为 12 µA,开环放大约为 74 dB。晶体管的尺寸以这样一种方式选择,即在满足所需电气参数的同时获得尽可能小的面积。
在这里插入图片描述
神经元的最后阶段是一个执行激活功能并具有 sigmoid 传递特性的电路,如图 5(b) 所示。它被设计为一个modified inverter33。晶体管 M2 和 M3 work as resistors,将晶体管 M0 和 M1 的工作点移动到线性区域。最后电路实现了图5(a)所示的传输特性。使用了通道的最小长度(180 nm,M3 除外,它使用 750 nm),同时选择它们的宽度以获得驱动下一级所需的特性和输出电流。因此,M0 和 M3 的宽度为 1:2 µm,M1 为 4:56 µm,M2 为 1:12 µm。
在这里插入图片描述

III. RESULTS AND DISCUSSION

为了评估 multi-bit MTJ cellbased ANN 的性能,准备了一组使用 MNIST 手写数字数据集的分类任务(图 6(a))。用于网络的概念架构如图 6(b) 所示,由输入层、两个包含 N 个神经元的隐藏层和输出层组成。该网络使用标准缩放共轭梯度方法(standard scaled conjugate gradient method)和交叉熵误差度量进行训练,除了最后一层使用了 softmax 函数外,每一层都有 tanh 激活函数。然后,在从输入数据中随机抽取且未参与训练的测试子集上对其性能进行评估。这个过程总共重复了 50 次,每次都重新洗牌训练和测试子集,从而得到每个网络大小的平均误差估计。
在这里插入图片描述
建立基准网络后,我们对基于 MTJ 的设计进行了评估。不同神经元之间的原始浮点精度权重被替换为对应于多状态 MTJ 突触的离散版本(a discrete version corresponding to multi-state MTJ synapses),并将设计的放大器和激活函数电路的特性应用于模型。新的权重是使用模拟电导数据(如第二节所述)计算的,并通过调整放大器的增益重新调整以匹配神经元的所需值范围。然后,在测试数据子集上重新评估网络的性能。结果如图6(c)所示。可以看出,只要每个多态单元使用的 MTJ 数量超过 3 个,基于 MTJ 的解决方案的性能就可以与原始软件版本相媲美,差异只是在character上有所增加。

IV. SUMMARY

所提出的全硬件人工神经网络架构被证明是执行神经形态计算的有效方式。 与其他解决方案相比,它采用了与 STT-MRAM 技术兼容的标准 MTJ,该技术是最近为大规模生产而开发的。 此外,与概率计算中使用的低能垒 MTJ 相比,此类应用中的 MTJ 随着时间的推移非常稳定,并且在重新编程方面表现出高耐久性。 此外,所提出的解决方案能够实现更高效的计算,因为设备可以受益于multi-state memristor。 为了验证这一点,设计了基于人工 CMOS 的神经元,由multi-cell based synapses、差分放大器和 sigmoid 函数发生器组成。 结果表明,量化权重方法能够开发功能性人工神经网络,能够以与基准软件模型相似的精度水平解决识别问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值