中文 英语

扩展内存计算加速器

新的研究指出了后冯·诺伊曼时代的进步和问题。

受欢迎程度

研究人员正致力于通过限制数据在设备中的移动来提高性能的新架构,但事实证明,这比看起来要困难得多。

基于内存的计算的论点现在已经很熟悉了。许多重要的计算工作负载涉及对大型数据集的重复操作。将数据从内存移动到处理单元并返回(所谓的冯·诺依曼瓶颈)是性能和功耗的限制因素。

内存计算体系结构试图通过将内存和计算集成到单个电路块中来消除这个瓶颈。但目前还不清楚该区块将以何种形式出现。最迫切的需求——也许是最简单的内存计算概念——是为许多人提供加速器矩阵乘法累加运算用于神经网络计算。

IBM苏黎世研究院的主要研究人员阿布·塞巴斯蒂安(Abu Sebastian)表示,人们还提出了各种各样的其他概念。在去年12月的IEEE电子设备会议(IEEE Electron Device Meeting)上的一篇教程中,他说,一方面,使用存储阵列周围的外围电路进行“近内存”计算可能会带来巨大的好处,而不会像直接涉及内存元素的计算那样产生根本性的变化。由于实际的计算使用传统的逻辑电路,近内存方法更宽容的耐力和其他限制的新型非易失性存储设备。另一方面,矩阵乘法并不是唯一可能发生在内存数组中的计算。基于电荷的存储器和基于电阻的存储器都可以潜在地用于通用逻辑。

基于电荷的存储器,如DRAM、SRAM和闪存,以在设备结构中捕获的电子电荷的形式存储信息。这些是包含至少一个晶体管的三端器件。

相比之下,基于电阻的存储器,如PCRAM和ReRAM,使用信号脉冲在高电阻和低电阻状态之间切换。在PCRAM中,开关是由于晶体结构的变化,而ReRAM则取决于导电灯丝的生长。虽然在电池中加入晶体管可以提高性能或精度,但这是不必要的。这些是两端设备,适合高密度使用。”横梁”架构。

Crossbar架构:易于可视化,难于构建
从概念上讲,在交叉条数组中实现矩阵乘法加速器很简单——在内存数组中存储权重矩阵。非易失性内存元素对于推理应用程序特别有吸引力,无论这一步是否只需要发生一次。然后,使用输入行施加表示数据向量的电压,并将结果读取为电流通过基尔霍夫电流定律

不幸的是,在实现这种具有商业价值的设计的道路上,有几个障碍。首先,这些设备本身存在局限性。设备的基础物理和制造工艺的不成熟意味着reram, pcram和其他新兴的非易失性存储器通常具有高度可变的SET和RESET特性。如果SET和RESET值太接近,可编程窗口可能太小。如果整个阵列的值不一致,或者随时间漂移,给定的电压脉冲可能会写入一些设备,但不会写入其他设备。这些限制在训练应用中尤其重要,因为权重可能需要经常调整。基于电荷的存储器对这些应用仍然有吸引力。

例如,Grace半导体制造公司的高世凡及其同事介绍了一种他们称为可编程线性随机存取存储器的设备(PLRAM).他们修改了一个标准的浮栅闪存单元,将选择门和浮栅分离开来,并使用隧道氧化物优化了精确的程序/擦除功能。在编程之前,他们测量了每个电池的电导,以确定所需的控制电压。因此,他们能够在一个单元中存储多达七个模拟值。

几种不同的设计方案试图弥补ReRAM设备的局限性。台湾国立清华大学和台积电的研究人员将传统的finFET与一对互补的ReRAM细胞结合.在这个“双位”对中,一个ReRAM设备始终处于高电阻状态,另一个处于低电阻状态。单元格的值取决于两者之间的差值。这种方法通过相互比较单元格,而不是与一些任意的参考值进行比较,减少了ReRAM可变性的影响。

虽然基于电阻的存储设备不断改进,但用于商业深度学习应用的数据阵列非常大,其权重矩阵包含数千个元素。麻省理工学院的Tien-Ju Yang和Vivienne Sze指出数组中的操作本身消耗相对较小的功率,但从一个大的交叉阵列激活和读取可能需要非常高的输出电流。将数据分割成更小的块以保持合理的电流会增加计算开销,并降低加速器提供的优势。

铁电体提供了第三种方法
作为一种替代方法,几个小组正在研究铁电隧道结。在FTJ中,所需的值不是存储在电容器或电阻元件中,而是存储在铁电层的极化中。载流子可以或多或少地通过该层,这取决于极化。正电压扫描或负电压扫描开关设备,而不是“写入”PCM或ReRAM所需的一系列脉冲。在纳安范围内的非破坏性读取电流,ftj可以为内存计算阵列提供低电流的替代方案。

例如,Kioxia和东芝的研究人员,在电极之间夹上一层氧化铪锆(HZO),系统地研究了厚度、组成和极化行为之间的关系。他们发现,较薄的铁电层降低了器件的变异性,而降低锆浓度则增加了工作电压裕度。这项工作还证明了内存计算范式对于矩阵计算以外的应用程序非常有用。他们使用FTJ设备实现了一种强化学习算法:在特定任务中给出良好结果的细胞组合——在这种情况下平衡推车上的电杆——会得到增加电导的“奖励”。

然而,正如普渡大学和佐治亚理工学院的M. Si及其同事所指出的那样,ftj并不理想,要么。非常薄的隧道层可以很容易地去极化,而较厚的隧道层可能无法携带足够的电流。相反,他们基于最近发现的铁电半导体InSe提出了铁电半导体结。这些器件的开关是基于肖特基势垒高度的变化,电导随器件面积的变化而变化。虽然该材料已经集成到fefet中,它提供了高开关比,但该小组还演示了两端器件。

虽然两端器件可以最大限度地提高密度,但更复杂的结构可以使用晶体管来帮助检测和放大微弱的、依赖极化的电流。中国科学院的Qing Luo和他的同事们将一个晶体管和两个基于hzo的现场可编程二极管结合起来,创造了一个补充细胞.所述二极管之一与所述负极前接,另一与所述正极前接;电压扫描可以反转其中一个,也可以反转两个。

展望未来:从加速器到神经元
这里讨论的应用是相对简单的矩阵乘法,简单的强化学习算法。但正如CEA-Leti的研究工程师亚历山大·瓦伦丁指出的那样,生物大脑表现出更复杂的行为,不只是在突触中存储值,而是神经元之间的相互作用。在生物大脑和许多现实应用中,信号是动态的。它们不仅描述了一个瞬间,还描述了一种情况随时间的演变。为了模拟这种行为,研究人员转向了像莫特fet和石墨烯铁电晶体管这样的奇异器件,使用可以加强和削弱自身连接的网络。

有关的故事
内存计算知识中心
头条新闻,特别报道,视频和更多关于内存计算
内存计算
为什么这种方法在今天如此有趣,以及它真正需要什么。
内存处理工作吗?
绕过冯·诺依曼架构的改变可能是低功耗ML硬件的关键。
提高内存
是否可以关闭处理器/内存瓶颈,或者是否需要重新架构应用程序以避免它?



3评论

丹尼尔·佩恩 说:

在你的文章中,有一句话我不同意,“像DRAM、SRAM和闪存这样的基于电荷的存储器在电容器上存储电荷,通常至少由一个晶体管控制。”是的,DRAM确实在电容器上存储电荷,并且需要刷新周期,但是SRAM使用交叉耦合逆变器来存储状态,并且没有刷新周期,而DRAM和SRAM在电源关闭时都是松散状态。闪存将状态存储在它的第二个门中,即使电源关闭也能保持状态。我在英特尔开始了我的IC设计生涯,做DRAM的电路级模拟,我也做过SRAM设计,但我从来没有做过FLASH设计(尽管谷歌让我看起来更聪明)。

凯瑟琳德比郡 说:

你是对的。谢谢你提醒我这件事。我的观点是区分基于电荷的存储器(如DRAM和SRAM)和基于电阻的存储器(如ReRAM),但我这样做有点过于概括了。我要修改这篇文章。

欧内斯特Demaray 说:

凯瑟琳,
主动神经网络矩阵和向量机器学习将光学。你在斯坦福大学做过范肖辉的报道吗?他在最近的一篇文章中报告了通过配置的MachZander阵列进行光学光子神经网络计算的FDFT模拟。它是皮秒,远小于毫瓦,这取决于波导结构的插入损耗(不是SOI- LOL),如果有有效的光纤到芯片耦合,可能相当于-20 dBm,相当于1个面/所有谷歌个面,而Si则是百万瓦。但是光子神经网络确实需要从下面的硅层提供MZ阵列来加载矩阵值。我一直认为依赖硅基存储器是光子神经网络的瓶颈。而现在,基于Rb原子的光存储器的最新工程可以使整个计算流的问题存储器/过程存储器/答案存储器成为光学存储器。这是另一个故事。Rb原子存储比特的方式与它为原子钟提供a好处的方式相同,即当它在被写入和放松后发射听觉光子时,基态的纠缠超精细状态。两个这样的空腔可提供瞬移安全遥测,多个这样的空腔可提供退火。 Right now the Rb cell is formed by 4 fiber facets but is labile to monolythic integration in planar waveguides on Si or silica. Ive always been sceptical about doping single atoms in anything except MIT Draper now has a working machine as I write so there goes that problem. The other thing is the memory lifetime is like 30 microseconds. But that is plenty of time with no decoherence, the whole reason actually. Think of the band width of an optical device full of cavity coupled coherent MZs! Si has a long way to go. No substitute to drive resistice loads, store energy… not a hope in ANN or a chip/wafer wide actual real time clock.
干杯
欧内斯特

留下回复


(注:此名称将公开显示)

Baidu