一句话说,模拟计算(Analog Computing)是用电压、电流、光强这类连续变化的物理量直接表示数值并完成运算,而不是把一切拆成 0 和 1 再逐位处理。
打个比方。数字计算像打算盘:不管算多大的数,都是一颗一颗珠子拨过去,步骤固定、结果精确,但步数随规模增长。模拟计算像用水管算账:两股水流汇到一处,流量自然相加,这就是加法;水流经过一段细管,阻力按比例削弱它,这就是乘法。你没有“执行”任何指令,物理定律自己把答案算出来了。
矩阵乘法是 AI 里最贵的操作。输出向量的每个数,都是“若干个数各自乘一下、再加起来”。在模拟电路里,这件事可以映射得极其直接:输入变成一组电压,权重矩阵变成一组可调电导,根据欧姆定律,流过每个器件的电流就是电压与电导的乘积;再把同一行的电流用一根导线汇到一起,基尔霍夫电流定律自动完成求和。电流在阵列里流一遍,一次矩阵乘法就结束了。这正是它能效高的原因——没有取指令,也没有在存储和计算单元之间来回搬数据,权重存在哪里,计算就在哪里发生,也就是常说的存算一体(compute-in-memory)。
代价同样直接:物理世界不干净。热噪声、器件电导漂移、温度变化、制造偏差,都会让“该是 3.7 伏”变成“3.6 伏多一点”。结果读回数字域时还要经过模数转换(ADC),既引入量化误差,也额外耗电。因此模拟阵列的有效精度通常远低于数字浮点,往往要靠校准、冗余器件和数字侧纠错来兜底。往阵列里写权重也是难题:把每个电导调到目标值本身既慢又不稳。
| 维度 | 数字计算 | 模拟计算 |
|---|---|---|
| 数值表示 | 0/1 比特 | 连续电压、电流 |
| 矩阵乘法 | 逐次乘加,指令驱动 | 电流叠加,物理定律一次完成 |
| 能效 | 受数据搬运拖累 | 权重固定时潜力很大 |
| 精度 | 高且可复现 | 受噪声与漂移限制 |
| 可编程性 | 强,通用 | 弱,更适合专用推理 |
和相邻概念的区别:模拟计算说的是“用什么表示数”,存算一体说的是“计算放在哪里”,神经形态计算(neuromorphic computing)侧重模仿神经元的脉冲行为,量子计算则利用量子态。它们有交集,但不在同一个层面上。
对 AI 从业者来说,模型推理的绝大部分算力都花在矩阵乘法上,而很多场景的权重是固定的,这恰好是模拟阵列的甜区;训练和需要高动态范围、强可复现性的任务,短期仍属于数字计算。对普通人来说,它的意义更可能体现在“同样功耗下能跑更大的端侧模型”。至于某款芯片具体能做到什么程度,以厂商官方页面为准。
