存算一体:打破冯·诺依曼瓶颈的 AI 芯片新范式

为什么在 AI 时代,"数据搬运"比"计算"更贵?交叉阵列如何用一条欧姆定律完成矩阵乘法?这篇入门长文带你建立存算一体(Compute-in-Memory)的完整知识框架。

一、AI 算力需求撞上了"内存墙"

过去十年,深度学习的规模以每年数倍的速度膨胀。训练一个大模型需要成千上万张加速卡,而即便在推理阶段,一个 ResNet-50 前向传播也要数十亿次乘加运算。问题在于:我们今天所有计算机——从超算到手机——都建立在 80 年前提出的冯·诺依曼架构之上:计算单元与存储单元分离,程序和数据都放在内存里,CPU 逐条取指执行。

这个架构优雅而通用,却有一个致命的软肋:数据必须在处理器和内存之间来回搬运。而在先进工艺下,搬运的代价高得惊人:

  • 一次 32 位浮点加法约消耗 0.1~1 pJ 能量;
  • 从片上 SRAM 读取一位约 5~10 pJ;
  • 从片外 DRAM 读取一位则高达 数百 pJ 甚至 nJ 量级。

也就是说,给计算"喂数据"的能量,常常比计算本身高一到两个数量级。更糟糕的是,工艺演进让这个裂口越拉越大:制程进步主要提升晶体管密度与速度,而内存带宽与访问能耗的改善远远跟不上——这就是著名的"内存墙"(Memory Wall)。神经网络计算恰恰是"数据密集型"的:权重参数要在推理过程中被反复访问,海量数据在层与层之间流动,于是大量的能量与时间被消耗在了本可避免的搬运上。

二、存算一体的核心思想

存算一体(Compute-in-Memory, CIM),又称存内计算,思想朴素得近乎可爱:把计算直接放进存储单元里完成,让数据"不动",让"计算"动起来。

按"计算离数据有多近",通常分为两条技术路线:

  • 近存计算(Processing-Near-Memory, PNM):把计算单元搬到内存芯片旁边(如 3D 堆叠的 HBM + 逻辑层),或采用新型存储介质替代 DRAM。数据搬运距离大幅缩短,但计算与存储仍是两个部件。
  • 存内计算(Processing-In-Memory, PIM):在存储阵列内部嵌入计算能力。模拟 CIM 利用器件的物理特性(电导、阻值)直接完成乘加,是学术界和产业界最热门的方向,也是我研究的主线。

一句话总结:传统架构是"把数据搬给计算",存算一体是"把计算带给数据"。

三、模拟存算一体的物理原理

模拟 CIM 最经典的实现是阻变存储器交叉阵列(Crossbar Array):横竖交错的导线在交叉点放一个阻变器件(ReRAM / MRAM / PCM 等),构成一个二维矩阵。每个交叉点的器件电导 G 恰好可以表示一个神经网络的权重。

奇妙的事情发生在施加输入之后:

  • 每一行字线(Word Line)被施加一个正比于输入激活值的电压 V;
  • 每个交叉点的器件按欧姆定律流过电流 I = G·V——这一步,乘法自动完成;
  • 同一列上所有支路的电流在位线(Bit Line)上自然汇合,按基尔霍夫电流定律求和——这一步,加法自动完成。

于是一次矩阵-向量乘法 y = W·x,在不调用任何乘法器的情况下、在一个时钟周期内由物理定律完成了。阵列末端的 ADC 把累加电流数字化,即可送入下一层。这就是"用物理定律做计算"的浪漫。

交叉阵列:一行电压激励 → 一列电流求和 = 矩阵-向量乘法 输入 x x₁ = V₁ x₂ = V₂ x₃ = V₃ x₄ = V₄ W₁₁ W₁₂ W₁₃ W₁₄ W₁₅ W₁₆ ADC 数字化输出 I₁ = Σ G₁ⱼVⱼ 位线电流自然汇合(KCL 求和)
图 1 · 阻变交叉阵列中的矩阵-向量乘法:欧姆定律完成乘法,基尔霍夫电流定律完成加法

四、器件平台:用什么"存",用什么"算"

模拟 CIM 的性能上限,很大程度上由存储介质决定。主流候选器件各有千秋:

器件原理优势短板
ReRAM(阻变存储器)电场诱导氧空位细丝导通/断裂结构简单、多值能力强、功耗低变差大、耐久有限、良率挑战
PCM(相变存储器)硫系化合物晶态-非晶态相变多值能力强、工艺成熟写电流大、电导漂移
MRAM / SOT-MRAM磁矩方向表示阻值(TMR 效应)非易失、超快、超高耐久、抗辐照多值电平数少、写能耗待优化
FeFET铁电栅极电荷调制阈值电压与 CMOS 兼容性好耐久与保持特性受限

我的研究聚焦 SOT-MRAM:它兼具非易失性、亚纳秒级翻转、超过 1015 次擦写耐久与天然的抗辐照能力,且读写解耦——这些特性让它在"既要存、又要算"的场景里非常有竞争力。关于它的细节,我在《SOT-MRAM 存内计算》一文中单独展开。

五、热闹之下的真问题

存算一体听起来近乎完美,但真要做出能用的芯片,工程师要面对一连串硬骨头:

  • ADC 开销:模拟计算的结果是电流,必须数字化。ADC 的功耗与面积常常占整个宏单元的 30%~50%,直接侵蚀 CIM 的能效优势。逐位激活(bit-serial)、分段 ADC 等技巧应运而生。
  • 器件非理想性:周期间/器件间变异、I-V 非线性、漏电与潜行电流(sneak path)、导线 IR drop……模拟世界的"不精确"会累积成网络推理精度的显著损失。
  • 规模与互连:阵列越大,导线上寄生电阻电容越严重,仿真与建模难度陡增。
  • 软件栈与映射:神经网络的量化、剪枝、层到阵列的映射与调度,需要算法-电路-架构的协同设计,而不是把 CIM 当作"更快的乘法器"直接替换。

这些问题没有银弹,但每一个都足够有意思——这也是这个领域最让人着迷的地方:它要求你同时理解器件物理、模拟电路和深度学习。

六、写在最后

存算一体不是对冯·诺依曼架构的简单颠覆,而是在 AI 算力需求与摩尔定律双双放缓的岔路口上,提供了一条"用物理定律换能效"的务实路径。它是否会像有些人预言的那样"重塑计算",时间会给出答案;但可以确定的是,在端侧智能、always-on 感知、星载计算这些功耗极度敏感的场景里,CIM 已经展现出不可替代的价值。

下一篇,我们走进器件侧:看看自旋电子学如何从诺贝尔奖级的科学发现,一步步走到 AI 芯片的门前。


参考文献与延伸阅读

  1. S. Mittal, "A Survey of Techniques for Architecting Processors with Emerging Memory Technologies," IEEE Micro, 2017.(CIM/PNM 经典综述)
  2. W. Haensch et al., "Compute in Memory for Neural Networks: A Review," Nature Electronics, 2024.
  3. Q. Dong et al., "A 0.31 pJ/MAC Processing-in-Memory Macro for ReRAM-based Neural Network Inference," ISSCC, 2019.
  4. A. Shafiee et al., "ISAAC: A Convolutional Neural Network Accelerator with In-Situ Analog Arithmetic in Crossbars," ISCA, 2016.
  5. N. Verma et al., "In-Memory Computing: Advances and Prospects," IEEE Solid-State Circuits Magazine, 2019.

注:文中能量数值为典型量级(T. M. Taha 等对后 22nm 节点的估算),具体数值随工艺节点变化,仅用于说明量级关系。