各位前辈好,我是一名工作3年的数字IC设计工程师,主要做逻辑模块。最近看到很多关于近存/存内计算架构的论文和招聘信息,感觉是未来趋势,想提前学习布局。但我的知识背景完全是数字域,对存储器特性和模拟电路很陌生。请问如果想切入这个领域,应该从哪些基础知识学起?比如需要看哪些教材来理解ReRAM/MRAM的器件原理?需要补充哪些模拟/混合信号设计知识才能看懂相关电路?有没有推荐的开源项目或仿真环境可以上手实践?感谢!
2026年,芯片行业‘近存计算’和‘存内计算’概念火热,对于从事传统数字IC设计的工程师,想了解并参与相关项目,需要先掌握哪些关于新型非易失性存储器(如ReRAM, MRAM)特性、模拟计算单元以及混合信号设计的基础知识?
提问
回答 26

同是数字背景转过来的,说点我的经验。存内计算的核心是利用存储单元本身的模拟特性做计算,比如用ReRAM的阻值代表权重,所以第一步得搞懂这些存储器咋工作的。建议先找几篇综述看,比如《Nature Electronics》上关于存内计算的专题,不用深究器件物理,但得明白IV特性、阻变机制、耐久性这些参数对电路设计的影响。书的话推荐《Emerging Memories: Technologies and Trends》,讲得很系统。
模拟方面,数字工程师最头疼的是连续信号和噪声。你得补运放基础、ADC/DAC原理,重点是理解精度、带宽、噪声怎么影响系统。存内计算里经常用模拟向量矩阵乘法,里面一堆电流镜、积分器,可以看拉扎维的《模拟CMOS集成电路设计》前几章,至少能看懂电路图。
实践的话,可以试试用Cadence Virtuoso搭个简单的模拟乘加单元,或者找开源工具如MLIR-based的模拟仿真器。关键是把一个完整链路跑通:从数字权重映射到模拟值,经过模拟计算,再转回数字。这样你就能明白混合信号设计的坑在哪了。

我去年刚从一个纯数字组转到存内计算项目,当时也是一脸懵。建议分三步走:
第一,先建立概念框架。近存计算和存内计算的区别要搞清楚:近存是把计算单元紧挨着内存,还是数字计算为主;存内是直接在存储阵列里做模拟计算。你数字背景强,可以从近存切入,比如学点3D堆叠内存(HBM)的接口设计,再慢慢往模拟靠。
第二,补模拟知识时别贪多。重点学跟数据转换相关的:SAR ADC、电流舵DAC,因为存内计算输入输出多是数字,中间模拟计算完还得转回来。另外,存储器的非理想特性(如阻值漂移、非线性)会影响计算精度,得学怎么建模和校准。推荐看B. Murmann的ADC讲义,网上有免费视频。
第三,动手最要紧。GitHub上有些ReRAM交叉阵列的SPICE模型,可以下下来仿真看看IV曲线。也可以玩一些高层次仿真工具,如MNSIM,它能帮你快速评估存内计算系统的性能。实际项目中,数字工程师往往负责控制逻辑和数字校准部分,所以先把这些接口设计搞明白,再逐步深入模拟核心。

我当初也是数字转混合信号,理解你的困惑。建议先别急着啃器件物理,从系统层面理解更重要。找几篇综述论文,比如《IEEE TCAS-I》上近两年的存内计算架构综述,重点看它们怎么用ReRAM/MRAM做乘累加运算。你会看到核心是‘模拟电流/电压求和’替代数字乘法器,这时候再倒推需要哪些基础知识:器件IV特性、模拟积分电路、ADC/DAC。推荐Behzad Razavi的《模拟CMOS集成电路设计》前八章,重点学运放、电流镜、比较器。仿真用Cadence Virtuoso+Spectre,但初学者可以先用LTspice跑简单电路,比如用电阻模拟ReRAM做向量矩阵乘法仿真。注意:存内计算目前很多在科研阶段,工业界项目可能更侧重近存计算(比如HBM+加速器),建议同时关注CXL协议、NoC设计。

数字背景转这个方向有天然优势!存内计算的核心其实是‘用物理定律做计算’,比如欧姆定律(V=IR)和基尔霍夫电流定律直接实现乘加。你需要补的短板是:1)存储器特性——找一篇ReRAM tutorial,理解阻变机理、SET/RESET操作、IV滞回曲线;2)模拟单元——关键不是设计精密运放,而是理解非理想性(噪声、偏移、非线性)对计算精度的影响。实践上,可以玩一下MIT的‘Mythic’公司公开的模拟存内计算demo(他们有用Flash实现)。混合信号设计最难的是验证方法学,建议学UVM-MS(混合信号验证方法学),否则将来调试模拟-数字接口会崩溃。教材推荐:R. Jacob Baker的《CMOS混合信号电路设计》。

兄弟,直接上干货吧。我去年刚从一个数字IP组转到存内计算项目组,现在每天和模拟工程师吵架(开玩笑)。第一步:两周时间恶补存储器基础知识。看Simon M. Sze的《半导体器件物理》里存储器章节,重点看MRAM的MTJ原理和ReRAM的细丝模型。第二步:学基础模拟电路。不用成为模拟专家,但要能看懂电流镜、开关电容电路、比较器——这些是存内计算阵列的外围电路核心。推荐Phillip E. Allen的《CMOS模拟集成电路设计》,配合Coursera上‘模拟集成电路设计’课程。第三步:仿真实践。下载一个ReRAM compact model(比如Stanford的RRAM模型),在Cadence里搭个4×4交叉阵列,仿真一个向量矩阵乘法。你会立刻理解非理想性(如IR drop)对精度的影响。注意:数字工程师容易低估模拟设计的迭代周期,一个运放可能调两个月,心理准备要有。

作为同样从数字转过来的,我的经验是别一上来就死磕器件物理。先理解架构层面的动机:为什么近存/存内能降低功耗、提升算力?推荐看几篇综述,比如《A Survey of ReRAM-Based Architectures for Processing-in-Memory and Neural Networks》。这能帮你建立系统级认知,知道数字工程师在其中的角色——比如设计存内计算阵列周边的数字控制逻辑、数据调度模块。
然后补存储器特性。不用深究制造工艺,但要懂电学行为:ReRAM的阻变机理(SET/RESET)、IV特性、离散性;MRAM的磁化翻转、读写速度差异。教材可以看《Emerging Nanoelectronic Devices》相关章节,或者找IEDM、VLSI上的tutorial slides,比较直观。
模拟部分,重点学运放、比较器、DAC/ADC的基本原理,因为存内计算常涉及模拟乘加(电流/电压域)。建议用Coursera上Boris Murmann的模拟集成电路课程,配合仿真工具(Cadence Virtuoso或开源工具如ngspice)搭个简单运放练手。
开源项目可以关注ETHZ的PULP平台,或者MIT的MANIC项目,有些用Verilog-A/Verilog-AMS写的存内计算单元模型,可以配合数字testbench仿真。
最后提醒:数字思维和模拟思维差异大,模拟要关注噪声、非线性、工艺偏差,一开始仿真结果和理想差距大很正常,耐心调试。

我去年刚加入一个存内计算项目组,也是数字背景。建议分三步走:
第一步,快速建立直观概念。看YouTube上一些动画讲解ReRAM/MRAM工作原理的视频(比如IEEE Spectrum的短片),比读论文更快入门。同时下载几个ReRAM的SPICE模型(比如斯坦福大学公开的),在LTspice里跑一下DC扫描,观察阻值变化,感受器件的非线性。
第二步,补模拟基础。数字工程师最缺的是对连续信号和电路节点的直觉。重点学三块:1)晶体管的小信号模型(理解增益、带宽);2)开关电容电路基础(存内计算常用);3)数据转换器概念(SAR ADC最相关)。书推《模拟集成电路设计》拉扎维版,但不用全看,挑这几章精读。
第三步,从数字-模拟接口切入实践。存内计算系统里,数字控制序列生成、纠错编码、数据重排仍是数字工程师的主场。你可以先用Verilog写一个存内计算阵列的控制器(假设阵列行为用Verilog-A模型描述),重点解决时序同步、精度校准算法等问题。这样既能发挥现有优势,又能逐步接触混合信号仿真。
工具上,公司如果有Virtuoso最好,没有的话可以尝试开源工具链:ngspice仿真,GTKWave看波形,配合Python做数据处理。注意,混合信号仿真速度慢,调试时要有分层验证意识。
最后,心态上别怕。很多存内计算架构其实数字部分占比很大,你已有的技能不会浪费,只是需要拓宽边界去理解模拟模块的约束。

作为过来人,我建议你先别急着啃器件物理。从数字设计转到这个领域,最大的障碍其实是思维模式的转换——从离散的逻辑门到连续的电压电流。我建议第一步是补模拟电路基础,重点学运放、比较器、电流镜这些基础模块,看拉扎维的《模拟CMOS集成电路设计》前几章就行,不用全看完。然后找几篇经典的存内计算架构论文(比如用ReRAM做点积运算的),把里面的电路框图(比如DAC、ADC、模拟乘法累加单元)一个个查明白功能。开源项目可以看看Fabric之类的模拟仿真环境,但初期用LTspice跑跑简单电路更实际。记住,你的数字设计经验在架构层面其实很有优势,重点是补足对模拟信号链的理解。

我最近也在学这个方向,分享一下我的学习路径吧。首先,关于新型存储器,直接看器件物理教材可能太深,建议从综述文章入手,比如搜“ReRAM for neuromorphic computing”这类review,先了解它们的基本特性(比如阻值可变、非易失、模拟/多态行为)。然后,混合信号设计的关键是数据转换器(ADC/DAC)和模拟计算单元(比如用电流求和做乘法)。你需要掌握ADC的基本类型(如SAR、Flash)和精度/速度折衷。实践方面,可以尝试用Verilog-A/AMS在Cadence或开源工具(如ngspice)里建一个简单的ReRAM行为模型,再搭一个模拟累加电路仿真。网上有些大学课程项目(比如MIT 6.374)的作业可以参考。注意,别一开始就追求太复杂的芯片设计,先从理解系统级如何利用存储器特性做起。

数字背景转过来,我觉得最直接的是从系统架构角度切入,这样能快速发挥你现有的优势。近存/存内计算的核心是用存储器阵列做并行计算,你需要理解的是:存储器单元(如ReRAM)的IV特性如何被用来表示权重,外围电路(比如字线/位线驱动、灵敏放大器)怎么完成模拟量的读取和计算。建议先看一本叫《Memory Technologies for Machine Learning》的电子书(网上有),它比较通俗地讲了器件和电路的结合。模拟知识方面,重点补灵敏放大器和电压/电流基准源的设计,因为这是读存储器的关键。仿真环境可以用XSchem+ngspice做开源混合信号仿真,或者从IEEE找一些带仿真代码的论文复现。另外,关注一下业界动态,比如知存科技、Mythic这些公司的技术分享,了解实际工程中的挑战(比如工艺波动对模拟计算精度的影响),这比纯理论更有用。
发表回答
登录后可在本页底部提交回答
