美国和中国的一组研究人员使用电阻式RAM(也称为忆阻器)设计制造了一种神经形态AI芯片——48核NeuRRAM芯片的能效是其他内存计算芯片的两倍,并且提供的结果与传统数字芯片一样准确。
使用RRAM芯片进行计算并不一定是新事物,许多初创公司和研究小组都在研究这项技术。然而,这通常会导致在芯片上执行的计算的准确性降低,并且芯片架构缺乏灵活性。
NeuRRAM芯片也高度通用,支持许多不同的神经网络模型和架构。因此,该芯片可用于许多不同的应用,包括图像识别和重建以及语音识别。
传统观点认为,内存计算的更高效率是以多功能性为代价的,NeuRRAM芯片在不牺牲多功能性的情况下获得了效率。
RRAM和其他用作神经形态计算的突触阵列的新兴内存技术是由万在斯坦福大学的顾问和主要贡献者PhilipWong的实验室与美国Standord和中国清华大学的研究人员一起开创的。可以并行执行计算的48个CIM内核。内核可以在不活跃使用时通过电源门控有选择地关闭,而模型权重由非易失性RRAM设备保留。
每个内核的核心是一个双向可转座神经突触阵列(TNSA),它由×RRAM单元和个CMOS神经元电路组成,用于实现模数转换器(ADC)和激活功能。沿边缘的附加外围电路提供推理控制并管理RRAM编程。
TNSA架构旨在提供对数据流方向的灵活控制,这对于启用具有不同数据流模式的不同模型架构至关重要。
例如,在通常应用于视觉相关任务的CNN中,数据以单一方向流过层,以生成不同抽象级别的数据表示;在用于处理时间数据(如音频信号)的LSTM中,数据在多个时间步长内反复通过同一层;在诸如受限玻尔兹曼机(RBM)等概率图模型中,概率采样在层之间来回执行,直到网络收敛到高概率状态。除了推理之外,多个AI模型的梯度下降训练期间的误差反向传播需要反转通过网络的数据流方向。
NeuRRAM能效的关键是电压模式输出感应。这会在单个计算周期中激活RRAM阵列的所有行和所有列,从而实现更高的并行度。
在该架构中,CMOS神经元电路也与RRAM权重物理交错。这与CMOS电路通常位于RRAM重量外围的传统设计不同。
神经元与RRAM阵列的连接可配置为用作神经元的输入或输出,从而允许在各种数据流方向上进行神经网络推理,而不会产生面积或功耗方面的开销。这反过来又使架构更易于重新配置。
为了确保人工智能计算的准确性可以在各种神经网络架构中保持不变,研究人员开发了一套硬件算法协同优化技术。这些技术在各种神经网络上得到了验证,包括卷积神经网络、长短期记忆和受限玻尔兹曼机。
为了在48个内核上同时实现高通用性和高效率,NeuRRAM通过将神经网络模型中的一个层映射到多个内核上以对多个数据进行并行推理来支持数据并行性。此外,该芯片通过将模型的不同层映射到不同的内核并以流水线方式执行推理来提供模型并行性。
研究人员通过一种称为能量延迟积或EDP的方法来测量芯片的能量效率。EDP结合了每次操作消耗的能量和完成操作所需的时间。通过这一措施,与最先进的芯片相比,NeuRRAM芯片的EDP低1.6到2.3倍(越低越好),计算密度高7到13倍。
研究人员在芯片上运行各种AI任务。它在手写数字识别任务上达到了99%的准确率;85.7%的图像分类任务;84.7%的谷歌语音命令识别任务。此外,该芯片还在图像恢复任务中实现了70%的图像重建误差降低。这些结果可与现有的数字芯片相媲美,这些芯片在相同的位精度下执行计算,但大大节省了能源。
研究人员还计划解决其他应用,例如脉冲神经网络。