NMC存算一体与AI ISP

NMC 存算一体与 AI ISP:打破"内存墙"的端侧视觉处理新范式

前言

在上一篇《列共享架构(CSA)深度解读》中,我们讨论了如何通过共享存储减少数据冗余。今天聊聊更底层的问题:数据搬运本身

AI 推理的核心运算是矩阵乘法(GEMM)。一个典型的卷积层,可能有数百万次乘加运算,每次运算都需要从存储中读取操作数。在传统冯·诺依曼架构中,计算和存储物理分离,数据需要在两者之间反复搬运。

问题在于:搬运数据的功耗,往往超过计算本身。

这就是"内存墙"------存储带宽和能效成为 AI 推理性能的核心瓶颈。尤其在端侧设备中,功耗预算极其有限(通常几百毫瓦到 1-2W),内存墙的影响更加显著。

NMC(Neural Memory Computing)存算一体技术,就是为打破这面墙而生的。

1. 内存墙的量化分析

先看一组数字。以 45nm CMOS 工艺为例:

操作 能耗
32-bit 整数加法 ~0.1 pJ
32-bit 整数乘法 ~3 pJ
32-bit SRAM 读取 ~5 pJ
32-bit DRAM 读取 ~200 pJ

一次简单的乘加运算(MAC),计算本身消耗 ~3.1 pJ,但从 DRAM 读取操作数需要 ~400 pJ(两个操作数)------数据搬运的功耗是计算功耗的 100 倍以上。

即使在 SRAM 场景下,读取的 ~5 pJ 也高于乘法的 ~3 pJ。当 AI 模型需要的数据量增大,存储访问频次上升,数据搬运的总功耗会迅速超过计算功耗。

这就是为什么在端侧 AI ISP 中,仅仅增加算力是不够的------如果不解决数据搬运问题,更多的算力反而意味着更多的功耗。

2. 存算一体的基本原理

存算一体(Computing-in-Memory, CIM)的核心思想非常直观:把计算搬到数据存储的位置,让数据不需要搬运就能完成计算。

2.1 基于 SRAM 的存算一体

SRAM CIM 是目前最接近量产的技术路线之一。其基本原理:

  • 在 SRAM 位单元(6T 或 8T 单元)的基础上,增加计算电路
  • 权重数据以数字形式存储在 SRAM 中
  • 输入数据以电压形式施加在字线(Word Line)上
  • 每个存储单元的位线(Bit Line)上的电流反映了权重与输入的乘积
  • 同一位线上多个单元的电流相加,自然实现了乘加运算

这种方式的优势:

  • 一次字线激活,可以并行完成一列所有的乘加运算
  • 数据不需要从 SRAM 读出再送入计算单元------计算直接在 SRAM 阵列内完成
  • 能效比传统方案提升 1-2 个数量级

2.2 基于 RRAM 的存算一体

RRAM(阻变存储器)CIM 是另一条有前景的路线。RRAM 单元的阻值可以编程,天然适合存储神经网络权重:

  • 高阻态 = 0,低阻态 = 1(或多级阻值对应多比特权重)
  • 输入电压施加在字线上
  • 根据欧姆定律(I = V/R),每个 RRAM 单元产生的电流 = V × G(G 为电导,即权重值)
  • 根据基尔霍夫电流定律,位线上的总电流 = Σ(I) = 矩阵向量乘的结果

RRAM CIM 的优势在于非易失性(掉电不丢失数据)和更高的存储密度,但目前的挑战是阻值精度和耐久性。

3. NMC 流处理架构

NMC(Neural Memory Computing)是我们在 AI ISP 中实现的一种存算一体流处理架构。它的核心特点是将存算一体与流处理(Stream Processing)相结合。

3.1 流处理的概念

传统 AI 加速器的工作方式是"批处理":先把一整帧数据存储到片上缓存,然后启动计算,计算完成后输出结果,再处理下一帧。

流处理则不同:数据像流水一样连续通过处理流水线。传感器输出的像素数据逐行进入 AI ISP,经过各级处理后逐行输出。不需要等待整帧数据就绪,也不需要中间帧缓存。

流处理的优势:

  • 延迟极低:第一个像素进入后,很快就有第一个像素输出
  • 缓存需求小:不需要整帧缓存,片上 SRAM 用量大幅减少
  • 功耗更低:减少了帧级缓存的读写功耗

3.2 NMC + 流处理的结合

NMC 将存算一体阵列接入流处理流水线:

复制代码
传感器 → [行缓冲] → [NMC 存算阵列:第一级处理]
                            ↓
                    [NMC 存算阵列:第二级处理]
                            ↓
                    [后处理单元] → 输出

传感器数据逐行流入,经过 NMC 存算阵列的多级处理,每一级直接在存储位置完成矩阵运算,处理结果以流的形式传递到下一级。

整个过程的关键特性:

  • 零中间缓存:数据在存算阵列间以模拟信号形式流动,不需要数字化中转
  • 确定性延迟:流水线的级数和每级延迟固定,端到端延迟可精确预测
  • 功耗与数据量成正比:不处理数据时几乎不消耗动态功耗

4. NMC 在 AI ISP 中的应用场景

4.1 AI 降噪

极低光照场景下,传感器输出的信噪比可能低至 0dB 以下。传统的 BM3D 或 NLM 降噪算法计算量大,不适合端侧实时处理。

基于深度学习的降噪模型(如 DnCNN 结构)可以用 NMC 存算一体阵列高效实现:卷积运算直接在阵列中完成,流处理保证低延迟。在 0.001Lux 场景下,可以实现实时全彩降噪。

4.2 实时目标检测

轻量级目标检测模型(如 YOLO-Nano 级别)的计算量在端侧设备上可接受,但对延迟和功耗要求严格。NMC 流处理架构可以在几百毫瓦功耗下实现实时推理,端到端延迟稳定可控。

4.3 HDR 合成

多帧 HDR 合成需要将多帧图像对齐、融合。NMC 存算一体阵列可以并行处理多帧数据,流处理保证合成结果的实时输出。

5. NMC 的工程挑战与解决方案

5.1 精度问题

存算一体阵列的计算精度受限于器件特性(如 SRAM 的噪声、RRAM 的阻值偏差)。解决方案:

  • 混合精度策略:关键层使用高精度数字计算,非关键层使用存算一体
  • 校准机制:定期用已知数据校准阵列的计算偏差
  • 算法适配:训练时模拟存算一体阵列的精度限制,提高模型鲁棒性

5.2 模拟信号链

NMC 存算一体阵列输出的是模拟电流信号,需要 ADC 转换为数字信号。ADC 的精度和速度直接影响系统性能。解决方案:

  • 采用时间编码(Time-based)ADC,在面积和功耗上优于传统 SAR ADC
  • 通过流水线设计,ADC 转换与下一级计算重叠,隐藏转换延迟

5.3 工艺兼容性

NMC 存算一体阵列需要在标准 CMOS 工艺中实现。SRAM CIM 与标准工艺完全兼容;RRAM CIM 需要额外的后道工艺(BEOL),但目前已有多个代工厂提供成熟方案。

6. 小结

NMC 存算一体流处理架构,通过在存储位置直接完成矩阵运算、消除数据搬运开销,结合流处理的低延迟和低缓存需求特性,为端侧 AI ISP 提供了一种在极低功耗下实现高性能 AI 推理的可行路径。

CSA(列共享)解决数据共享效率,NMC(存算一体)解决计算能效------两者结合,构成了新一代 AI ISP 的架构基础。


本文为技术分享,如有技术讨论欢迎评论区交流。后续文章将深入讨论"主协配合"系统级设计。

相关推荐
qq_369173631 小时前
让 Agent 自己完成交付:AI 生成内容的发布、反馈与自动修改闭环
人工智能·ai·效率工具·ai 工作流
AI码农小姐姐1 小时前
AI漫剧推文短视频生成中的数据版本管理:基于DVC的模型与素材追踪实践
人工智能·音视频·ai工具·ai漫剧
L@ncor1 小时前
第二章 智能体发展史 · 学习笔记
人工智能·python
不穿鞋的懒羊羊1 小时前
高精度算法——加、减、乘、除
算法
一木 之林1 小时前
第 8 节 C++ 设计模式在 AI 推理 SDK 和 Agent 工具运行时中如何落地
c++·人工智能·设计模式
liliangcsdn1 小时前
基本面因子计算的示例分析
算法
猫头虎1 小时前
FDE 是什么岗位?Forward Deployed Engineer 岗位标准、能力模型、交付物规范与冲突处置规则全解析
人工智能·开源·开源软件·ai编程·ai写作·gpu算力·agi
G31135422731 小时前
当声音、图片和视频都能被生成,信任将从“看起来真实”转向“能够验证”
人工智能
揽秀亭长1 小时前
视频转脚本实际怎么做?对比3个不同方案,拆解视频转脚本不同技术流程
人工智能·音视频