存内计算学习分享(十) | 存储器件之阻变随机存储器的应用

牵着猫散步的鼠鼠 社区KOC
全栈领域优质创作者
2024-02-10 16:38:37

 

前言

阻变随机存储器(下称 “RRAM”)被视为新兴内存技术中的杰出候选者之一,其主要原因是低功耗、非易失数据存储能力、高密度及具备逻辑计算的能力,以及具备改革现有工作存储器层次的潜力。得益于 RRAM 的各种优势,本文将介绍 RRAM 具有的各种潜在的应用。

目录

前言

存内计算

神经形态计算

硬件安全

非易失性SRAM

总结和未来展望


 

存内计算

在应用冯·诺依曼架构的计算机系统中,由于具有独立的计算和存储单元,必须使用不同单元之间的总线传输指令和数据,随着时代的发展,中央处理器和计算机内存的性能差距越来越大,同时数据传输成为导致能源消耗和时间延迟的主要原因,这通常被称为“冯·诺依曼瓶颈”或者“内存墙”。为了减少甚至消除冯·诺依曼瓶颈的影响,计算过程建议将内存与计算结合起来,通过在数据所在的位置进行原位计算,从而从根本上颠覆了冯·诺依曼体系结构,这种方法类似于人脑中的计算方案,信息在稀疏的神经元和突触网络中处理,计算和记忆之间没有任何的物理分离。这种方式存内计算的方式完全消除了内存墙的延迟与数据搬移的能量负担,但随之而来的就是需要全新的存储数据和计算的内存设备,而这一过程通常需要利用基本的物理定律,从最基本的存储单元开始重构,像是搭积木一样,这是一个复杂且漫长的过程。

 

RRAM 可以被用于实现存内计算的相关操作[1] 。首先,RRAM 中高电阻(HRS)状态意味着存储值为0,低电阻状态意味着存储值为1,假设初始状态是高电阻(HRS),两端电压V正向增大到Vset,RRAM 电阻状态从高电阻(HRS)到低电阻(LRS),低电阻(LRS)状态时,两端电压V 反向增加到 Vreset,RRAM 电阻状态从低电阻(LRS)状态到高电阻状态(HRS)。

 

其次,采用 RRAM 实现存内计算的方式主要包含实现逻辑门及模拟计算方式。图2 给出了采用器件特性的逻辑门实现方式,其中输入信号采用电压输入,根据器件的阈值写入电压的方式实现不同的逻辑门功能。举例说明,图2.g 中是由两个串联 RRAM 电阻开关(RRAM 设备中的箭头指向切换到 LRS 状态时偏置为负极的 [2] )组成的或逻辑门,其中中间节点的电压保持浮动,即,根据两个开关制成的分压器自由改变其电势。如果两个输入状态相等,例如X 1 =X 2 =0,即X 1和X 2都为高电阻状态,则电压在两个设备之间平均分配,从而保持在设定转换的阈值 Vset 以下,则没有 RRAM 设备的电阻状态改变,输出 Y 为任意 RRAM 设备的电阻状态。另一方面,如果 X 1处于高电阻状态,X 2处于低电阻状态,则中间浮动电压偏低。

 

使得X 1的两端达到转换阈值,X 1从高电阻状态(即0)转换为低电阻状态(即1),输出Y为发生变化的RRAM设备电阻状态(即为1);同理,如果X 1处于低电阻状态,X 2处于高电阻状态,则中间浮动电压偏高,使得 X 2的两端达到转换阈值,X 2从高电阻状态(即0)转换为低电阻状态(即1),输出Y为发生变化的 RRAM 设备电阻状态(即为1)。此操作生成一个 OR 函数,如图中真值表所示。

再者,采用模拟计算方式的 RRAM 存内计算架构是研究中效果最好的方案,如图3所示。采用 crossbar 的方式可以实现 RRAM 阵列的多行并行读取功能,从而实现电流或者电压的累积,采用模数转换电路实现电流或者电压的转换,得到最终的乘累加结果。图3例中,不仅实现了稳定的器件特性、阵列的计算功能,还实现了可重配的智能计算架构,证实了 RRAM 支持大规模的计算的可能性。其中整个芯片包含了48个存内计算核心,可以并行执行运算功能及实现功耗门控,在不需要使用的时候关闭某些计算核心,从而实现低功耗的运算加速功能。每个运算核心包含一个 256x256 的RRAM 存储单元阵列和 256 个运算电路单元,利用电压型的模拟/数字数据转换,实现计算功能 [3] 。


神经形态计算

为了克服“冯·诺依曼瓶颈”,还有一种有效的方法是大脑启发的神经形态计算,RRAM在类脑计算中的人工突触器件 [4] ,在视觉/音频识别、自动驾驶和实时大数据分析等一系列复杂和认知任务中显示出了巨大的潜力。与基于 CMOS 的神经形态网络相比,基于 RRAM 阵列的神经形态计算在片上权重存储、在线训练和扩展到更大的阵列尺寸方面具有优势。此外,RRAM 的处理速度提高了三个数量级,而功耗率降低了四个数量级[5]。

为了实现硬件的神经形态计算范式,提出了两种方法:一种是模仿生物神经网络的结构和工作机制,另一种是加速现有的人工神经网络算法。在神经网络中,除了存储有关传递权重的信息外,还使用突触在不同神经元之间传递尖峰。有关权重的信息可以通过某些学习规则获得,例如尖峰时间依赖性可塑性(STDP)和尖峰速率依赖性可塑性(SRDP) [5] 。尽管文献中报告的一些工作试图在 RRAM 设备上模拟此类学习规则,但将此类生物启发学习规则扩展到复杂任务比较困难,目前仍然缺乏理论算法。

另一种切实可行的方法是将人工神经网络直接映射到基于 RRAM 的神经形态网络,基于该方法演示了一些高级任务,例如模式和语音识别。尽管非常有前景,但基于RRAM 的突触仍远未得到应用,因为需要有效解决各种问题,包括材料优化、差异抑制、控制电路设计、架构和模拟计算算法设计等。

硬件安全

随着信息技术领域的快速发展,安全方面变得更加突出,因此,需要基于硬件的安全集成电路。硬件安全技术不局限于传统的密码芯片研究,而是芯片和固件的密不可分。硬件安全包括由证书和加密密钥提供的保护,还需要一个物理安全锚,以确保这些密钥和证书不能复制到假冒的非法设备中,提供这种安全锚的技术是物理不可克隆函数(physical unclonable function,PUF)。PUF 是一种物理结构,可以从中生成设备唯一且不可克隆的加密根密钥。与利用半导体制造过程随机性的安全电路相比,利用 RRAM 随机切换机制和内在可变性的安全电路对各种类型的攻击更具鲁棒性。PUF 利用物理随机性和制造可变性来提供安全源语,RRAM 的随机机制为 PUF 提供了真正的随机来源,面临的挑战是如何将硬件物理随机可变性转变为数字位串可变性。

 


非易失性SRAM

新型非易失存储器的物理性能更适合发展高密度及低功耗的存储器,从而开拓更多的人工智能应用场景。新型非易失存储器的具有更高的发展上限,而现有存储器将在未来3-4年走向技术极限,而新型非易失存储器还可以继续发展10-20年,“基于RRAM的新型存储器件有望在5年内在产品化上取得突破”。尤其从大的晶圆厂中提供的成熟产线将有助于 RRAM 逐渐走向工业化 [7] 。

新型非易失存储器也可以助力传统存储器,达到较好的性能与功耗的平衡。随着技术尺寸的减小和泄漏电流的增加,降低集成电路的功耗成为越来越重要的一个挑战,尤其对于便携式设备,对性能及功耗的要求逐渐升高。为了降低功耗,提出一种算法和内存分区的方法,SRAM 分组交替运行,达到低功耗的目的[8]。还提出一种减少静态功耗待机期间降低内存块的电源电压(VDD)的方法,但是晶体管数量的不断增加,使得最小电源电压(确保数据不丢失)越来越难以预测。因此,一种更加有效地减少泄漏电流,降低静态功率的方法是在混合SRAM电路中使用RRAM,将数据从SRAM 备份到 RRAM,然后关闭电源,可以实现在不丢失数据的情况下完全抑制泄漏,降低静态功率,这类混合存储器被称为非易失性 SRAM(NV-SRAM)。在组成 NV-SRAM 的候选非易失存储器中,RRAM 因为其低功耗和快速的运行速度而备受关注。有研究结果表明,8T2R单元结构(8个晶体管和2个电阻)的 NV-SRAM 单元仅占在相同电压和速度下批量运行的同一单元面积的46% [8] 。

 

图5. 8T2R NV-SRAM的结构图[5]

该单元设计有一个经典 6T-SRAM 单元(M 1 –M 6 ),以及两个额外的 P 型控制晶体管(CM 1 ,CM 2 ),连接在 SRAM 单元的数据节点(D,DN)和 OxRRAM(R 1 ,R 2 )之间。R 1和 R 2可通过 CM 1和 CM 2 访问 SRAM 单元。TE1(TE2)和BE1(BE2)表示OxRAM 的顶部和底部电极。在这项工作中,OxRRAM 上的存储操作对应于逻辑“1”,重置对应于逻辑“0”。NV-SRAM单元操作遵循以下顺序:正常SRAM操作(读/写)、复位、存储、断电、通电/恢复[8]。该循环可以根据需要重复多次,其使用理论上仅受到OxRRAM设备耐久性的限制。工作的大致流程为:正常 SRAM 操作时,通过 CM 1、CM 2 将 R 1、R 2 隔绝在 SRAM 核心存储之外,存储时通过控制CTRL2 的电平与 CLRL1 的电平,使得 SRAM 数据节点D 或 DN 的数据存储到R 1或R 2 中。

总结和未来展望

在过去几年中,新兴内存技术领域的研究显著增长,开发了多个基于 RRAM 的原型产品,展示了高速低功耗嵌入式内存应用的潜力。尽管 RRAM 在存内计算、神经形态计算、硬件安全和非易失性 SRAM 等领域具有重大潜力,但 RRAM 在高工作电流、低电阻比和耐久性方面仍然面临重大挑战,需要做出更多的努力。但是我们可以相信,随着不断的工作和改进,非易失存储器技术尤其是 RRAM 技术将逐渐走向产业化,改变现有的应用场景格局,提升智能处理器的性能。

...全文
61 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复 1

支持存内计算开发社区的建设

  • 打赏
  • 举报
回复 1

支持存内计算开发社区的建设

牵着猫散步的鼠鼠 社区KOC 02-15
  • 打赏
  • 举报
回复

支持存内计算开发社区的建设

  • 打赏
  • 举报
回复 1

建设存内计算开发者社区

  • 打赏
  • 举报
回复 1

建设存内计算开发者社区

  • 打赏
  • 举报
回复 1

建设存内计算开发者社区

2,037

社区成员

发帖
与我相关
我的任务
社区描述
首个存内开发者社区,是整合产学研各界资源优势,搭建的学习与实践平台,提供存内架构学习,平台算法部署实践,存内计算线下训练以及AI时代大模型追踪,从理论到实践,供开发者体验未来第三极算力架构。
其他 企业社区
社区管理员
  • 存内计算开发者社区
  • Hundred++
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  • 奖品兑换上新:

100积分 - 品牌赞助托特包 (单个账号限兑换5个)

200积分-罗技M240无线鼠标 ( 单个账号限兑换3个)

400积分-马歇尔入耳式耳机 (单个账号限兑换2个)

600积分-Cherry MIX 3.0键盘 (单个账号限兑换2个)

800积分- 雷切Pro游戏手柄 (单个账号限兑换1个)

1200积分-Switch 积分(单个账号限兑换1个)

 

  • 积分规则:

 

创作积分:

1,发布文章获取20积分

2,文章内容加精30积分

互动积分:

1,发布评论互动积分:2积分

2,点赞文章获取积分:1积分

 

 

试试用AI创作助手写篇文章吧