最近看到很多关于存算一体(Computing-in-Memory)芯片的新闻,说是能突破‘内存墙’,大幅提升AI计算的能效比。我做了五年数字前端设计,一直做的是CPU/SoC里的运算单元和总线,对DRAM/SRAM接口很熟,但感觉和这个新架构完全是两个思路。如果想了解甚至未来转向这个方向,应该从哪些基础知识开始补起?需要看忆阻器(ReRAM)的器件原理吗?还是说重点在于理解模拟域的计算和ADC/DAC?感觉有点无从下手。
2026年,芯片行业热议‘存算一体’架构,对于做传统冯·诺依曼架构数字IC设计的工程师,想了解这个前沿方向,需要补充哪些关于忆阻器、模拟计算和近内存处理的基础知识?
提问
回答 9

兄弟,你这问题问得很及时。存算一体确实是热点,但别被各种新名词吓到。你五年数字前端经验是宝贵基础,尤其是对数据流和计算模式的理解。我觉得你可以分三步走:
第一步,先理解核心思想。存算一体本质是把计算放到数据存储的地方,减少数据搬运。你熟悉总线,肯定知道数据在CPU和内存之间来回跑有多耗电。找几篇综述文章,看看它怎么解决内存墙问题,重点理解‘模拟乘加’这个概念。不用一开始就钻器件物理。
第二步,补模拟计算基础。这是和你现有知识差异最大的地方。你需要了解:模拟信号怎么表示数据(电压/电流),模拟域怎么做乘法和累加(比如用基尔霍夫定律),以及关键的ADC/DAC。找本模电书重温运放和电流镜,然后看存算一体论文里的电路图,试着理解。
第三步,再去看器件。知道忆阻器(ReRAM)或其它非易失存储怎么当‘可编程电阻’用就行,重点理解它的电导值怎么代表权重,以及写操作和读操作的特性。器件物理细节可以先放放。
最后,建议你关注几个具体架构,比如基于SRAM的存内计算(和你经验更近)和基于ReRAM的。可以试试用Verilog/SystemVerilog建个行为级模型,模拟下数据流,感受下区别。
别想着一步到位,这是个交叉领域,慢慢来。

同是数字IC出身,我最近也在看这个方向。我的建议是:优先理解系统架构和设计权衡,器件原理可以后置。
痛点很明确:你习惯了精确的数字计算(01),而存算一体尤其是基于忆阻器的,核心是模拟计算,有噪声、非理想性,而且是高度并行的。
你需要补充的知识模块:
1. 近内存处理(Near-Memory Processing):这是从你熟悉的世界到存算一体的过渡。了解一下HBM上的逻辑层、GDDR6的存内计算命令,看看业界怎么在DRAM接口附近做计算单元。这能帮你建立‘靠近内存的计算’的直觉。
2. 模拟计算基础:重点不是设计ADC,而是理解它的作用、精度(位数)、速度和功耗在系统中的巨大影响。存算一体的能效提升,一大半可能被ADC吃掉。看看论文里的ADC占比图就明白了。理解乘加树(MAC Tree)在模拟域如何实现。
3. 忆阻器阵列操作:把它想象成一个巨大的、可编程的电阻网络。输入电压(或脉冲),输出电流,电流值就是矩阵乘加的结果。你需要知道它的IV特性、电导状态、写噪声、读噪声、器件差异(非理想性)。这些非理想性如何影响计算精度,是系统设计必须考虑的。
4. 系统级挑战:精度与能效的权衡、映射算法(如何把神经网络权重映射到电导阵列)、训练与推理的架构差异。
动手建议:去GitHub找一些存算一体的仿真框架(比如MNSIM、NeuroSim),用它们跑几个简单的网络(如MNIST),看看精度、能效报告。这比单纯看书有效得多。
转向的话,数字背景的人目前更多是做存算一体芯片里的数字控制部分、接口、纠错编码,或者系统架构建模。完全搞模拟电路设计门槛较高。所以先建立系统级认知,再决定深入哪个层面。

兄弟,你这问题问得很及时。存算一体确实是热点,但别被一堆新名词吓到。你五年数字前端经验是宝贵基础,尤其是对数据流和计算范式的理解。我建议先别一头扎进忆阻器物理原理,那太底层了。第一步,把‘内存墙’这个概念吃透,理解为什么传统冯·诺依曼架构在AI负载下搬数据这么耗能。然后,重点理解‘近内存计算’和‘存内计算’的区别。前者你其实接触过,类似HBM接口的优化,还是数字域;后者才是真正的模拟域计算,用忆阻器这类器件实现乘累加。你可以先找几篇综述论文,看看架构图,理解数据是怎么在阵列里流动的。模拟计算和ADC/DAC是关键,但初期知道它们的作用和带来的非理想性(比如噪声、非线性)就行。先建立系统级认知,再决定往器件、电路还是架构哪个细分方向深挖。

同是数字背景转过来的,分享下我的学习路径。一开始我也纠结要不要学器件物理,后来发现对于做架构和系统设计,更重要的是理解忆阻器作为‘可变电阻’的宏观电学特性,以及它如何通过欧姆定律和基尔霍夫定律天然实现乘加运算。这才是模拟计算的核心。你需要补充的基础知识包括:1. 模拟计算基础:怎么用电压、电流表示数据,模拟矩阵向量乘法的原理。2. 混合信号电路:为什么必须用ADC/DAC,它们的精度、速度、功耗如何成为整个系统的瓶颈。3. 存算一体架构的‘数字部分’:你熟悉的总线、控制逻辑、纠错等,在新型架构里怎么和模拟核对接。建议从ISSCC、VLSI上的存算一体芯片论文读起,重点看架构图和系统框图,看不懂的电路细节先跳过。你的数字设计经验在构建控制流水线、设计数据编码/解码电路方面会非常有优势。

嘿,感觉无从下手很正常,因为这是个跨学科的领域。我建议采取‘自上而下’的学习法。先明确目标:你是想了解趋势,还是想为转行做准备?如果只是了解,多看行业分析报告和科普文章就行。如果想深入,就需要体系化补充。基础知识可以分三块:第一块是器件,了解忆阻器、FeFET等非易失存储器的基本开关特性、耐久性、一致性,不用深究制造工艺。第二块是电路,学习模拟计算的基本单元(比如电流镜、积分器)、ADC/DAC的类型(SAR、Flash等)及其折衷。第三块是架构与系统,这是你的主场,思考如何用这些新硬件构建计算系统,处理权重固定、激活值流动的AI计算图。特别注意,存算一体芯片设计流程和传统EDA工具链不同,需要和器件模型、SPICE仿真紧密结合,这部分可以后期再学。网上有些大学(比如清华、斯坦福)的公开课和讲座视频是很好的入门资源。保持好奇,一步步来。

兄弟,你这问题问得很及时。存算一体确实是热点,但别被各种新闻稿吓到,觉得要完全从头学起。你五年数字前端经验非常宝贵,尤其是对数据流和计算模式的理解。我建议先从‘近内存计算’(Near-Memory Computing)这个过渡概念入手,它本质上还是数字逻辑,但把计算单元挪到了内存控制器甚至内存颗粒旁边,目标是减少数据搬运。你可以看看HBM2e/3接口协议,以及像AMD的CDNA架构、英伟达的Tensor Core如何与HBM紧密耦合。这能帮你建立从传统总线到‘计算靠近数据’的思维转变,而且用的工具和方法论还是你熟悉的RTL/验证。
等你理解了为什么要把计算搬过去,再深入真正的‘内存内计算’(纯存算一体)。这时才需要补模拟和器件知识。忆阻器(ReRAM)原理可以看,但作为电路/架构工程师,重点不是深究物理机制,而是理解它的电学特性:如何用电压脉冲实现‘电导’的可调(模拟权重),以及如何用欧姆定律和基尔霍夫定律直接完成乘加运算(模拟计算)。你需要补的是模拟计算的基础:比如怎么用DAC把数字输入变成电压,用忆阻器阵列完成矩阵乘法,再用ADC把电流结果转回数字。关键数学是线性代数,关键电路是ADC/DAC、运放、敏感放大器。
所以学习路径可以这样:1. 近内存计算(数字域,巩固优势);2. 模拟计算基础(信号与系统、模电的ADC/DAC);3. 忆阻器阵列的电路架构(读顶会ISSCC、VLSI上的存算一体电路论文);4. 用Verilog-A/AMS做混合信号建模(体验数模接口)。别一开始就扎进器件物理,那容易劝退。先把握系统级优势,再深入电路实现。

同是数字背景转过来的,分享点实际的学习心得。我觉得核心是要转变一个观念:从‘精确的、离散的、同步的’数字计算,转向‘近似的、连续的、异步的’模拟/混合信号计算。你不需要成为器件物理专家,但必须理解新器件带来的计算范式变化。
第一步,强烈推荐先看几篇综述论文,比如《Computing-in-Memory with Non-Volatile Memory for Energy-Efficient AI: A Review》(IEEE TCAD 2023左右)。综述会帮你理清存算一体的分类:基于SRAM的(还是数字,但利用内存阵列做位并行计算)、基于非易失存储器(如ReRAM, PCM)的模拟计算。你可能会发现,基于SRAM的数字存算一体跟你现在技能更接近,可以先从这里切入。
第二步,补模拟计算的关键概念。重点不是设计ADC,而是理解其精度(比特数)、速度、功耗对系统的影响。在存算一体中,ADC往往是功耗和面积的大头,它的设计折衷(精度 vs. 能效)直接决定架构优劣。可以看一些关于‘存算一体中ADC设计’的教程。同时,理解模拟计算中的噪声、非线性、工艺偏差的影响,以及如何通过电路技术和算法(如训练时加入噪声模型)来补偿。
第三步,动手体验。如果有条件,可以玩一下模拟器或框架,比如清华大学发布的‘MNSim’(基于ReRAM的存算一体仿真平台),或者用Cadence Virtuoso(如果公司有license)搭一个简单的理想忆阻器阵列加ADC的链路过一遍信号流。没条件就多读ISSCC/VLSI上芯片的论文,重点看他们的架构图和模拟计算数据流。
最后,保持数字设计的优势。存算一体芯片通常只负责核心的矩阵乘加,外围还是需要数字控制逻辑、数据调度、纠错等,这些是你的老本行,未来在团队里可能正是你负责的部分。所以,目标是成为连接数字系统和模拟计算阵列的桥梁工程师。

兄弟,你这问题问得很及时。存算一体确实是热点,但别被各种新名词吓到。你做了五年数字前端,其实优势很大——你对计算和数据流有深刻理解,这正是存算一体架构设计的核心。
我建议你先别一头扎进忆阻器物理原理。从架构层面入手更高效。第一步,理解‘内存墙’的本质:冯·诺依曼架构中数据在存储和计算单元间搬运的能耗和延迟瓶颈。然后,去理解存算一体是如何通过将计算‘嵌入’到存储阵列(比如用SRAM单元做模拟乘加,或者用ReRAM的阻态表示权重并直接进行模拟计算)来消除数据搬运的。
你需要补充的核心知识有三块:
1. 近内存处理(Near-Memory Processing):这是从传统架构到存算一体的过渡形态。了解一下HBM2e/3接口、3D堆叠,以及如何将计算单元(比如简单的加速器)放在内存逻辑层(Logic Die)上。这能帮你建立‘距离越近,效率越高’的直觉。
2. 模拟计算基础:这是最大的思维转换。重点理解在存算一体阵列中,如何利用基尔霍夫定律(电流求和)和欧姆定律(电压乘电导)在模拟域实现向量-矩阵乘法(VMM)这种AI核心运算。你需要搞懂模拟计算中的非理想因素:噪声、工艺偏差、非线性、温度漂移,以及为什么需要高精度ADC/DAC将结果转换回数字域。这部分可以找一些存算一体芯片(比如清华大学或UCSB的论文)的架构图来研究。
3. 忆阻器器件知识:到了这一步,可以了解ReRAM、PCM、MRAM等器件的‘非易失’‘多值存储’特性,以及它们如何作为‘可编程电阻’被集成到交叉开关阵列(Crossbar)中充当权重。但作为电路/架构工程师,深度掌握其IV特性、开关机理和可靠性问题即可,半导体物理细节不必深究。学习路径上,可以先看几篇权威综述(如Nature Electronics上的文章),然后找几个经典论文(如ISAAC、PRIME架构)复现一下其中的模拟计算模型。同时,关注一下业界动态,比如知存科技、闪忆等公司的产品思路。你数字设计的经验在系统集成、控制逻辑和数字后处理部分会非常有价值。

同是数字IC出身,我完全理解你的感受。面对存算一体,感觉像要重新学一门课。别慌,咱们的优势是系统观和严谨的RTL思维,补一些关键点就能串起来。
我的建议是,带着一个具体问题去学习:『一个存算一体芯片,从软件下发的权重和输入数据,到最后吐出计算结果,这中间的数据路径和计算步骤到底是怎样的?』这样学习更有针对性。
你需要补充的知识可以分步走:
第一步,建立概念地图。花几天时间,快速浏览存算一体的科普文章、行业报告和几个顶级会议(ISSCC, VLSI, HPCA)的tutorial视频。目标是搞清楚几个关键分类:数字存算一体(主要用SRAM,做数字计算)和模拟存算一体(用ReRAM等,做模拟计算);以及近内存计算、存内计算的区别。你会发现自己熟悉的SRAM接口知识在数字存算一体里直接能用上。
第二步,深入模拟计算链路。这是新知识的核心。你不用成为模拟电路专家,但必须理解一个完整的模拟存算一体处理链:数字输入→DAC变成模拟电压/电流→输入到忆阻器交叉阵列进行模拟乘加(这里是魔法发生的地方)→结果以电流形式读出→经过模拟放大器/积分器→ADC转换回数字信号→数字后处理(激活函数等)。重点研究这个链路上的误差来源:DAC的非线性、忆阻器的电导漂移、ADC的量化噪声。这会让你明白为什么存算一体芯片的精度(尤其是训练)仍是巨大挑战。
第三步,理解器件与电路的交互。忆阻器(ReRAM)方面,你需要知道它的基本结构、如何通过电压脉冲设置阻值(代表权重)、以及它非理想的一面(如阻值分布离散、读写耐久性有限)。这些器件特性直接决定了电路设计和架构取舍。
实践建议:可以在MATLAB或Python里搭建一个简化的交叉阵列模型,用理想的欧姆定律计算VMM,然后逐步加入器件变异和ADC量化模型,直观感受精度下降。这比读十篇论文都管用。
最后,存算一体不是要取代所有计算,它特别适合神经网络中的稠密矩阵运算。你完全可以思考如何将这种新型加速器作为IP,集成到你熟悉的SoC总线(比如AXI)上,这可能是你转向的切入点。保持数字设计的优势,同时打开新架构的视野,你会很有竞争力。
发表回答
登录后可在本页底部提交回答
