第二章:核心原理——计算与存储的物理融合

各位同学,欢迎来到第二章。这一章我们要聊的,是存算一体最核心、最硬核的部分。说白了,就是搞清楚“计算”和“存储”这两个原本分家的东西,到底是怎么揉到一起的。

我刚开始接触这个领域时,也觉得很玄乎。但后来在项目中踩过几次坑,才真正理解——这不仅仅是换个架构,而是从物理层面重新思考数据的流动方式。你想想看,传统芯片里,数据从存储单元搬到计算单元,路上花的时间比真正干活的时间还长,这合理吗?

2.1 物理融合:从“搬数据”到“原地计算”

传统架构里,计算和存储是两栋楼。CPU/GPU是计算楼,DRAM/SRAM是存储楼。数据要来回搬运,这就是所谓的“冯·诺依曼瓶颈”。

存算一体的核心思路,就是把这栋楼拆了,把计算单元直接塞进存储单元里。嗯,这里要注意,不是简单的“放得近一点”,而是物理上的融合。

关键区别:

  • 近存计算(Near-Memory Computing): 计算单元和存储单元封装在一起,但物理上还是分开的。比如HBM(高带宽存储器)和逻辑die堆叠在一起。
  • 存内计算(In-Memory Computing): 计算直接在存储单元内部完成。比如在SRAM或RRAM的存储阵列里,直接做乘加运算。

我在项目中遇到过一种情况:用近存计算做AI推理,带宽确实上去了,但延迟还是不够理想。后来换成存内计算,才真正把数据搬移的功耗降下来。说白了,近存是“把邻居叫到门口”,存内是“直接在邻居家干活”。

2.2 近存计算 vs 存内计算:一张表说清楚

很多初学者容易混淆这两个概念。我建议你记住这张表:

维度 近存计算 存内计算
物理距离 计算与存储封装在一起,但die分离 计算与存储完全融合在同一单元
数据搬运 仍需通过TSV/Interposer搬运 数据在存储阵列内部流动
延迟 纳秒级(比传统好,但仍有开销) 皮秒级(几乎无搬运开销)
功耗 降低30%-50% 降低80%-90%
工艺成熟度 较成熟(HBM、3D堆叠) 尚在研发/早期量产
典型应用 高性能计算、AI训练 边缘AI、低功耗推理

为什么会这样?因为近存计算本质上还是“搬数据”,只是搬的距离变短了。而存内计算是“数据不动,计算动”。你想想看,这就像你去图书馆查资料——近存是图书馆就在隔壁,走过去很快;存内是书自己会翻页给你看。

2.3 模拟 vs 数字存算一体:两种技术路线

接下来是另一个关键分岔路:模拟存算一体和数字存算一体。我当年在这个选择上纠结了很久,最后两个方向都做过项目。这里把我的经验分享给你。

2.3.1 模拟存算一体

模拟存算一体,说白了就是利用物理定律直接做计算。比如用电阻的欧姆定律做乘法,用基尔霍夫电流定律做加法。最典型的例子就是基于RRAM(忆阻器)的交叉阵列。

我记得有一次做原型验证,用模拟存算一体做矩阵乘法,功耗低得惊人——只有传统数字方案的十分之一。但代价是什么?精度和噪声问题。

避坑指南: 我曾经在模拟存算一体项目中,因为器件非理想特性(比如RRAM的阻值漂移),导致推理精度从98%掉到85%。后来不得不加入数字校准电路,才把精度拉回来。所以,模拟方案虽然功耗低,但一定要考虑工艺偏差和噪声容限。

模拟存算一体的核心优势:

  • 极致能效(每瓦性能极高)
  • 天然支持并行计算(阵列结构)
  • 适合低精度推理(INT4/INT2)

核心劣势:

  • 精度受限(ADC/DAC转换开销)
  • 工艺偏差敏感
  • 难以支持高精度训练

2.3.2 数字存算一体

数字存算一体,则是用数字逻辑(比如加法器、乘法器)嵌入到存储阵列中。每个存储单元旁边放一个小型ALU,数据不用搬出去,直接在本地算完。

我建议你理解成:把SRAM阵列改造成一个巨大的SIMD处理器。每个存储行都是一个处理单元,可以同时做几百个加法或乘法。

数字方案的优势很明显:

  • 精度可控(支持FP32/INT8)
  • 工艺兼容性好(标准CMOS工艺)
  • 设计流程成熟(数字EDA工具链)

但代价是什么?面积和功耗。每个存储单元旁边加数字逻辑,芯片面积会增大30%-50%。

我的经验: 如果你做的是边缘AI推理,对功耗极度敏感,精度要求不高(比如INT4),模拟存算一体是首选。但如果你做的是云端推理或训练,需要高精度和可靠性,数字存算一体更稳妥。我个人习惯是:先做数字原型验证功能,再考虑是否迁移到模拟方案。

2.4 核心逻辑:一张图看懂

下面我用一张SVG图,把本章的核心知识体系串起来。这张图我画了很多遍,希望能帮你建立整体认知。

存算一体核心原理知识体系 存算一体 核心思想:计算与存储的物理融合 近存计算 存内计算 模拟 vs 数字 特征 • 封装集成 • 带宽提升 • 延迟降低 特征 • 原地计算 • 极致能效 • 并行处理 特征 • 模拟:低功耗/低精度 • 数字:高精度/高面积 • 选择取决于应用 目标:打破冯·诺依曼瓶颈

2.5 总结与思考

这一章我们讲了三个核心问题:

  1. 物理融合——把计算塞进存储里,从根源上解决数据搬运问题。
  2. 近存 vs 存内——近存是“缩短距离”,存内是“消除距离”。两者各有适用场景。
  3. 模拟 vs 数字——模拟追求极致能效,数字追求精度和可靠性。没有绝对的好坏,只有适合不适合。

我个人觉得,理解这些区别的关键,是记住一句话:数据不动,计算动。这是存算一体区别于传统架构的根本逻辑。

好了,这一章就到这里。下一章我们会深入具体的实现技术,比如RRAM、SRAM、Flash这些存储器件是怎么做计算的。到时候我会拿实际项目的波形图和测试数据给你看,保证比干讲理论有意思得多。

课后思考: 如果你现在要设计一个智能手表上的语音唤醒芯片,你会选近存计算还是存内计算?模拟还是数字?为什么?

想要更多资料,联系可可