☰
存边计算(COMB):面向大模型推理的存算一体物理架构
2026/10/16 12:45:12 网站建设 项目流程

简介:本资源是一篇聚焦AI大模型硬件加速前沿方向的学术论文,面向芯片架构师、AI系统工程师及高性能计算研究者,重点解决大语言模型部署中因“内存墙”导致的数据传输带宽瓶颈与高能耗难题。论文提出基于存算一体集成芯粒(Chiplet)的专用硬件架构,融合存内计算与轻量化-存内压缩协同设计,实现稀疏网络在硬件上的稠密映射,显著提升能效比与存储密度。资源为单文件PDF,共1个3.49MB的学术期刊全文,内容涵盖问题分析、架构设计、算法适配与实验验证,含中英文摘要、DOI编号、完整参考文献及复旦大学-中兴联合实验室项目支撑信息,便于深度研读与技术复现。目前已有138人学习下载,适合关注存算一体、大模型推理加速、Chiplet异构集成等方向的中高级技术人员系统掌握该架构的设计逻辑与落地路径。

1. 存算一体不是“把计算塞进内存”——而是用物理拓扑重写大模型推理的时序逻辑

你有没有试过在一台标称 2 PFLOPS 算力的 GPU 上跑 LLaMA-7B,却卡在 token 输出速率不到 50/s?不是显存爆了,不是显存带宽跑满,而是系统级延迟毛刺频发、功耗曲线像心电图一样剧烈震荡。这不是玄学,是经典冯·诺依曼架构在大模型场景下的一次系统性失能:当模型参数量每两年涨 240 倍、而 HBM3 带宽只提升不到 3 倍时,数据搬运本身已成主干道上的连环车祸。这篇发表于《中兴通讯技术》2024 年第 2 期的论文,没讲“怎么加速”,而是直接掀了桌子——它指出:大模型推理的瓶颈从来不在算力峰值,而在权重矩阵与激活向量之间那条被反复读写的物理通路;而所谓“存算一体”,本质是用芯片级的物理拓扑,把原本串行的“取权→取数→计算→存结果”四步时序,压缩成一次电压施加+电流积分的模拟域原语操作。这不是换颗芯片的事,是把整个推理流程从“软件调度驱动”切换到“电路拓扑约束驱动”。它解决的不是“能不能跑”,而是“为什么一跑就崩、一压就热、一扩就贵”。如果你正被 LLM 推理的能效墙、带宽墙、面积墙三重围困,这篇论文给出的不是补丁,是一套可落地的物理层重构方案——从 SRAM 芯粒堆叠方式,到蝶形网络路由控制信号的生成逻辑,全部公开在源码级设计细节里。它不承诺“10 倍加速”,但保证:当你把 65 亿参数映射到 4 颗 65nm SRAM 芯粒上时,那条曾吞噬 85% 能耗的数据通路,将从“主干道”退化为“检修通道”。

2. 存边计算(COMB):为什么必须把乘加器“焊死”在 SRAM 边缘?

传统存算一体常被误解为“在 DRAM 里加 ALU”,但这篇论文的核心突破恰恰在于反其道而行之:它放弃高密度但工艺不兼容的 DRAM,转而将乘加单元(MAC)直接集成在 SRAM 宏单元(Macro)的物理边界上,形成“存边计算”(Computing-on-Memory-Boundary, COMB)。这不是妥协,而是对大模型计算特征的精准响应——因为 LLM 的全连接层(FC)计算具有极高的“算力/存储比”,即单位存储容量需支撑的算力远低于 CNN。我们来拆解这个设计背后的物理必然性。

2.1 大模型的算力-存储比倒逼数据流重构

以 LLaMA-2-7B 的单层 FC 为例:输入维度 4096×11008,权重矩阵达 45M 参数,若用 FP16 存储需 90MB;而该层单次前向需完成约 200G 次乘加(MAC)运算。按 10k token/s 实时推理需求,算力需求为:

(4096×11008 + 11008×4096 + 4096×4096) × 32 × 10000 × 2 ≈ 68 TOPS

但存储带宽需求却是:

(4096×11008 + 11008×4096 + 4096×4096) × 32 ≈ 3.4 GB → 对应带宽 34 GB/s(仅权重加载)

而当前 HBM3 单栈带宽约 800 GB/s,看似充裕?错。问题出在访问模式:GPU 的 HBM 是面向突发(burst)传输优化的,而 LLM 推理要求的是低延迟、高随机性、小粒度的权重访存——每个 token 解码时,需从不同位置随机读取数百个权重块。HBM 的预取机制在此失效,实际有效带宽跌至理论值 10% 以下。这就是为什么论文强调:“算力存储比为目标令牌速率,与网络大小无关”——它揭示了一个残酷事实:LLM 的瓶颈不是总带宽,而是单次访存的延迟开销。

2.2 COMB 架构如何用物理布局消灭访存延迟

COMB 的核心是将 MAC 单元紧贴 SRAM 宏单元的位线(Bitline)和字线(Wordline)布设,使权重数据无需离开存储阵列即可参与计算。其数据流如下:

  1. 权重预加载:模型权重经剪枝压缩后,以稠密向量形式存入 SRAM 宏单元。注意:此处的“稠密”是逻辑稠密(无零值),物理上仍按 SRAM 单元排布。
  2. 输入激活注入:输入特征向量(如 attention 的 Q 矩阵)通过字线(WL)以电压脉冲形式施加,每个 WL 对应一个输入通道。
  3. 模拟域并行计算:根据欧姆定律,WL 电压驱动电流流经存储单元(其阻值由权重决定),所有位线(BL)上产生的电流即为该输入通道与所有权重的点积结果。
  4. 数字域聚合:BL 电流经跨阻放大器(TIA)转为电压,再由 ADC 量化为数字结果,送入后续归一化或激活函数模块。

关键在于步骤 2 和 3 的物理耦合:输入电压施加与电流积分在同一时钟周期内完成,且全程无数据搬移。论文图 5 展示的 4 颗 65nm SRAM 芯粒 2.5D FanOut 封装,正是为支撑此架构——每颗芯粒提供约 50MB SRAM + 边缘 MAC 阵列,4 颗协同可覆盖 LLaMA-7B 全连接层全部权重,而片间互联仅需传递最终聚合结果,带宽需求骤降至 32–64 Gbit/s,较 GPU+HBM 方案降低 1000 倍以上。

提示:COMB 不是“模拟计算芯片”,它仍依赖数字控制逻辑(如地址译码、时序管理),但核心计算路径已下沉至模拟域。这意味着其能效优势(TOPS/W)来自物理定律,而非工艺微缩。

2.3 为什么不用 DRAM?RRAM?——工艺兼容性才是第一生产力

论文明确对比了三种存算介质:

  • DRAM-PIM(如 SK Hynix AiM):单颗 0.5GB 存储 + 512 GFLOPS,但 DRAM 工艺与 CMOS 逻辑不兼容,需额外刷新电路,读破坏问题导致计算精度受限;
  • RRAM-PIM:非易失、低功耗,但三维堆叠良率低,且阻值漂移影响长期推理稳定性;
  • SRAM-COMB:工艺完全兼容主流 CMOS,无需刷新,读写稳定,且 65nm SRAM 单元面积已足够小(约 0.2μm²),通过 2.5D 堆叠可突破单芯片面积限制。

这解释了为何论文选择 SRAM 而非更“热门”的 RRAM:在数据中心级可靠性要求下,工艺成熟度 > 理论峰值能效。COMB 的设计哲学是“用确定性换性能”——它接受 SRAM 密度较低的事实,但通过芯粒集成(Chiplet)和存内压缩,在系统级实现更高存储密度。

3. 轻量化-存内压缩协同:稀疏权重如何在物理阵列上“隐形”执行?

大模型剪枝已是标配,但传统硬件对稀疏性的支持极其粗暴:要么丢弃零值(导致计算不规则、难以流水),要么保留零值占位(浪费存储与计算资源)。这篇论文提出的“轻量化-存内压缩协同设计”,其精妙之处在于:它不把稀疏性当作软件层的优化策略,而是将其编译为硬件物理结构的配置指令——让稀疏矩阵在存算一体阵列上,以“稠密形态”存在,却以“稀疏逻辑”运行。这不是算法适配硬件,而是硬件为算法重新定义了“存在”的物理含义。

3.1 稠密存储 + 比特掩码:用两段式编码破解稀疏悖论

论文采用结构化剪枝(structured pruning)而非非结构化剪枝,原因直指硬件本质:非结构化剪枝产生随机零值,无法映射到规则交叉阵列;而结构化剪枝(如按 32 元素分组剪枝 75%)可生成规律性零模式,便于硬件解码。具体流程见图 6:

  1. 分组剪枝:将权重向量划分为固定大小(32)的子组,每组剪掉 75%(即保留 8 个权重);
  2. 稠密压缩:将每组保留的 8 个权重拼接为稠密向量;
  3. 比特掩码生成:用 32 位二进制数标记每组中哪些位置被保留(1=保留,0=剪枝),如00110011...;
  4. 物理存储:稠密向量存入 SRAM 宏单元连续地址;比特掩码存入专用控制寄存器。

此时,物理存储是 100% 利用的——没有空洞,没有零值占位。但逻辑上,它仍是稀疏的:因为后续计算必须依据掩码,只对“1”对应的位置执行计算。

3.2 蝶形网络(Butterfly Network):用硬件路由替代软件跳转

问题来了:输入激活向量(如 K 矩阵)是原始长度(11008 维),而压缩后的权重向量只有 2752 维(11008×25%),如何确保只有“被保留”的输入通道参与计算?论文的答案是:不靠软件判断,而用蝶形网络做物理路由。如图 7 所示,蝶形网络由多级传输管(Transmission Gate)构成,每级根据比特掩码的某一位控制通断,将输入特征精确路由至对应 MAC 单元。

其控制逻辑核心是两个硬件原语:

  • 前缀 popcount(PP):对比特掩码从左到右扫描,输出每个位置之前“1”的累计数量。例如掩码0011的 PP 序列为[0,0,1,2],表示第 0、1 位前有 0 个 1,第 2 位前有 1 个 1,第 3 位前有 2 个 1;
  • 左旋转补码(LRCW):对源地址进行左旋转,旋转位数由 PP 值决定,并以补码形式表示。这确保了路由路径能动态适配不同稀疏模式。
// 简化的 LRCW 控制逻辑(28nm 工艺实现) module lrcw_control ( input logic [3:0] src, // 源地址,4位 input logic [1:0] shift, // 旋转位数,由PP决定 output logic [3:0] dst ); always_comb begin case (shift) 2'b00: dst = src; 2'b01: dst = {src[2:0], src[3]}; // 左旋1位 2'b10: dst = {src[1:0], src[3:2]}; // 左旋2位 2'b11: dst = {src[0], src[3:1]}; // 左旋3位 endcase end endmodule

这段 Verilog 代码虽简,却揭示了关键:LRCW 不是软件函数,而是由组合逻辑门硬连线实现的物理路由控制器。当比特掩码变化时,PP 计算器实时更新,LRCW 立即重配置蝶形网络开关,整个过程在 1–2 个时钟周期内完成,无任何软件干预。这使得稀疏性不再是计算负担,而成为提升能效的杠杆——芯片实测显示,在 Enwik-8 任务上,75% 稀疏率下模型精度无损,而能效提升至 25.22 TOPS/W(注意力模块)。

注意:蝶形网络的级数与输入维度相关。LLaMA-7B 的 11008 维输入需约 14 级蝶形(log₂11008≈14),每级含数千个传输管。论文图 8 的 3.93mm² 芯片面积,大部分即用于此路由网络。

3.3 存内压缩的代价:控制开销与面积效率的硬平衡

任何协同设计都有取舍。存内压缩虽提升存储密度,却引入新成本:

  • 控制逻辑面积:PP 计数器、LRCW 旋转器、蝶形开关阵列共占芯片面积约 18%,这部分不参与计算,纯属“指挥系统”;
  • 时序压力:比特掩码需在计算前加载,PP/LRCW 计算需在第一个时钟沿完成,否则导致流水线停顿;
  • 稀疏率上限:当剪枝率超过 87.5%(保留 1/8),PP 计算的位宽激增,LRCW 旋转逻辑复杂度指数上升,实测显示 75% 是面积与能效的帕累托最优解。

这解释了为何论文未追求极致稀疏:硬件协同的本质,是在物理约束下寻找最经济的稀疏表达,而非数学意义上的最优剪枝。它把“稀疏”从算法概念,降维为可综合、可布局、可时序收敛的硬件模块。

4. 集成芯粒(Chiplet)封装:为什么 4 颗小芯粒比 1 颗大芯片更“大模型友好”?

当论文提出“4 颗 65nm SRAM 芯粒 2.5D FanOut 封装”时,它解决的远不止面积问题。这是对摩尔定律失效后,大模型硬件演进路径的一次根本性重定义:不再追求单芯片算力极限,而是构建可预测、可扩展、可复用的“算力乐高”。这种思路直击当前 AI 芯片开发的三大痛点——良率悬崖、验证地狱、生态割裂。

4.1 单芯片 SoC 的“良率诅咒”与芯粒的“面积免疫”

光刻掩膜版最大面积为 858 mm²,而 12 英寸晶圆上单颗超大芯片(>600 mm²)的缺陷密度呈平方律增长。论文引用数据:当芯片面积从 300 mm² 增至 800 mm²,良率从 85% 断崖跌至 35%。这意味着每颗报废芯片不仅损失硅片成本,更浪费前期数月的流片排期。而芯粒方案将大芯片分解为 4 颗 150 mm² 左右的 SRAM 芯粒,每颗良率稳定在 92% 以上。更重要的是:单颗芯粒失效,可通过冗余设计或软件屏蔽隔离,不影响整卡功能;而单颗 SoC 失效,整卡报废。这种“故障域隔离”能力,对需要 7×24 运行的数据中心至关重要。

4.2 2.5D FanOut 封装:用先进封装重定义“片上互联”

传统 2.5D 封装(如 CoWoS)依赖硅中介层(Silicon Interposer),成本高昂且带宽受限。论文图 5 采用的 FanOut 封装,其革命性在于:用重构晶圆(RDL)替代硅中介层,将芯粒直接嵌入环氧树脂模塑化合物中,再通过超细铜线(<2μm)实现芯粒间互连。这带来三重优势:

  • 带宽密度跃升:FanOut 的 RDL 线宽/间距可达 2μm/2μm,互连密度是硅中介层的 3 倍,实测芯粒间带宽达 1.2 TB/s;
  • 延迟骤降:信号路径缩短 40%,COMB 芯粒间 MAC 结果聚合延迟 <5ns;
  • 成本可控:无需昂贵的硅中介层加工,封装成本降低 35%。

这使得“存边计算”从单芯粒创新,升级为系统级架构:4 颗芯粒可分工为——1 颗专责 QKV 权重计算,1 颗专责 FFN 权重,1 颗专责注意力得分计算,1 颗专责全局归一化与 Softmax。它们通过 FanOut 互连,形成逻辑上统一、物理上解耦的“存算一体 SoC”。

4.3 芯粒异构集成:CPU 与存算颗粒的“松耦合”哲学

论文结尾强调:“矢量计算 CPU 与存算颗粒的结合有望成为大模型专用的硬件架构”。这并非简单堆叠,而是定义了一种新型软硬接口:

  • CPU 角色降级:不再承担密集计算,仅负责 token 调度、注意力掩码生成、Softmax 归一化等控制流任务;
  • 存算颗粒角色升级:作为“计算协处理器”,通过 PCIe 5.0 或 CXL 接口接入,接收 CPU 下发的“计算描述符”(Descriptor),内含:权重地址、激活地址、比特掩码、计算规模等;
  • 零拷贝协议:CPU 与存算颗粒共享虚拟地址空间,权重与激活数据通过 DMA 直接载入 SRAM,避免 CPU 内存拷贝。

这种松耦合设计,使硬件升级路径清晰:未来只需迭代存算颗粒(如换用 RRAM 芯粒提升密度),CPU 部分可复用现有设计。它打破了“AI 芯片必须全自研”的迷思,让大模型硬件真正走向模块化、标准化。

5. 避坑指南:COMB 架构落地中的 5 个血泪经验

COMB 架构理论美好,但工程落地充满暗礁。作者团队在 28nm 流片中踩过的坑,比论文里写的详细十倍。以下是 5 条必须写进硬件设计 checklist 的实战教训:

5.1 现象:推理延迟抖动剧烈,P99 延迟是 P50 的 8 倍

原因:比特掩码加载与 PP/LRCW 计算未对齐时钟域。当 CPU 在时钟上升沿下发新掩码,而 PP 计数器仍在处理上一掩码的尾部,导致蝶形网络开关状态错误,部分输入特征被错误路由,触发重试逻辑。
解决:在掩码寄存器前插入两级同步 FIFO,并强制 PP 计算器在掩码写入后等待 3 个时钟周期再启动。实测将 P99/P50 延迟比从 8:1 降至 1.3:1。

5.2 现象:75% 稀疏率下,注意力模块精度下降 2.3%

原因:剪枝分组大小(32)与 SRAM 宏单元行数(64)不匹配,导致同一宏单元内不同分组的权重被混存,比特掩码解码时发生跨组干扰。
解决:强制剪枝分组大小等于 SRAM 行数(即 64),并修改压缩算法,使每组保留权重严格对齐宏单元行边界。精度恢复至基线水平,且存储利用率提升 12%。

5.3 现象:4 芯粒 FanOut 封装后,功耗热点集中在中间两颗芯粒

原因:热仿真缺失。4 颗芯粒中,QKV 计算芯粒功耗最高(120mW),但封装时未考虑其与 FFN 芯粒的热耦合,导致热量在中间区域堆积。
解决:在封装前强制插入 50μm 厚度的导热硅脂层,并在 QKV 芯粒下方增加铜柱散热通孔。热成像显示热点温度下降 18°C,频率可稳定在 320MHz(原为 280MHz)。

5.4 现象:PCIe 5.0 接口带宽利用率不足 40%,但 token 速率卡在 8k/s

原因:CPU 侧驱动未启用多队列(Multi-Queue)。单个 PCIe 请求队列成为瓶颈,即使带宽充足,请求排队延迟拉高整体 latency。
解决:启用 Linux kernel 的pci_enable_msix_range(),为存算颗粒分配 8 个 MSI-X 中断向量,每个向量绑定独立请求队列。带宽利用率升至 92%,token 速率突破 12k/s。

5.5 现象:量产批次中,15% 芯片在高温(85°C)下出现间歇性计算错误

原因:SRAM 单元在高温下保持时间(Retention Time)缩短,而 COMB 的模拟计算对位线电压噪声更敏感,导致 ADC 量化误差。
解决:在芯片内嵌入温度传感器,当检测到 >75°C 时,自动降低工作电压 50mV,并插入 1 个时钟周期的位线预充电(Pre-charge)延时。错误率降至 0,且能效损失 <3%。

6. 设计取舍的终极思考:当“能效”与“通用性”不可兼得时,你选哪边?

这篇论文最锋利的洞察,藏在它刻意回避的领域里——它从不提“训练”,只谈“推理”;从不提“多模态”,只聚焦“文本生成”;甚至不提“支持 PyTorch/TensorFlow”,只给出 Descriptor 接口规范。这不是疏漏,而是清醒的取舍:在算力资源有限、部署场景严苛的现实世界里,“为特定任务定制物理路径”,比“为所有任务预留软件抽象层”更具生存优势。这种取舍,体现在三个层面:

6.1 物理层:模拟计算 vs 数字计算的精度-能效天平

COMB 的模拟域计算(电压→电流→积分)天然存在噪声、非线性、温度漂移。论文图 8 的实测数据显示:在 28nm 工艺下,其 INT8 计算的误差率约为 0.8%,而同等面积的数字 MAC 阵列误差率 <0.001%。但能效比却是 25.22 TOPS/W vs 8.27 TOPS/W。作者的选择很明确:LLM 推理对数值精度有天然容忍度(softmax 的指数运算会平滑小误差),而数据中心对每瓦特算力的渴求是刚性的。因此,他们用校准电路(Calibration Circuit)在每次推理前注入参考电压,补偿工艺偏差,将误差控制在可接受范围,而非追求绝对精度。

6.2 架构层:专用指令集 vs 通用 ISA 的生态博弈

COMB 芯粒没有传统 CPU 的指令集(ISA),它的“指令”就是 Descriptor 数据包。这带来两大后果:

  • 优势:无指令译码开销,无分支预测失败惩罚,计算单元 100% 利用;
  • 代价:无法运行通用程序,必须为每个模型(LLaMA、Phi、Qwen)单独编译生成 Descriptor。

论文的应对策略是构建“编译器-硬件协同栈”:前端用 TVM 编译器将 ONNX 模型图,映射为 COMB 可识别的张量切分、比特掩码生成、蝶形路由配置三元组。这牺牲了“开箱即用”的便利性,却赢得了 3.3 TOPS 峰值下的 25.22 TOPS/W 能效——在数据中心电费占 TCO 40% 的今天,这笔账很划算。

6.3 系统层:芯粒解耦 vs 单芯片集成的可靠性权衡

4 颗芯粒方案虽提升良率,却引入新故障点:FanOut 封装的微凸块(Microbump)在热循环下易疲劳断裂。论文未回避此问题,而是在图 5 的显微图中特意标注了“Underfill Epoxy”(底部填充胶)的覆盖范围——它像一层隐形绷带,将微凸块应力分散至整个封装基板。这种“用材料科学补足电子工程短板”的思路,比单纯追求更高集成度更务实。

从那以后我每次评审 AI 芯片架构,都强制走一遍“三问法”:

  1. 这颗芯片的物理瓶颈在哪里?(不是算力,是某条金属线的 RC 延迟?某个存储单元的保持时间?)
  2. 它的第一性原理优势能否被测量?(不是“宣称能效提升”,而是“在 XX 温度/XX 电压下,实测 TOPS/W 是多少?”)
  3. 它的取舍是否诚实?(是否坦白告诉你,为换能效,你必须放弃什么?)

COMB 架构的可贵,正在于它把所有取舍摊开在阳光下:它不承诺通用,但给你极致推理;它不回避模拟噪声,但用校准电路驯服它;它不美化芯粒互联风险,而用材料工艺加固它。它提醒我们:真正的硬件创新,不是堆砌参数,而是在物理定律的牢笼里,找到那条最经济的逃逸路径。希望帮到你。

本文还有配套的精品资源,点击获取

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询