第 16 节 电路的设计和优化(第1页)

电路设计是 AI 芯片最后实现的关键阶段。如果把 AI 芯片设计分成架构级、算法级和电路级的话,电路级是最后测量这块芯片的关键性能指标(如 TOPS/W)的层级。目前,大部分 AI 芯片都基于数字电路,然后用一些创新思路来实现。例如,使用 XNOR 来实现 1 位数字 MAC、多精度(2~16 位)数字 MAC 等。另外,很多用于普通 ASIC 或 SoC 的低功耗设计技术(如电源门控、时钟门控等)在 AI 芯片设计中也得到了广泛应用。

用模数混合电路设计的 MAC

考虑边缘侧应用中苛刻的能效要求,如何进一步降低 AI 芯片的功耗,一直是研究人员探讨的问题。为此,研究人员提出不仅要从网络架构级设法提高能效,而且要从电路级改变思路。2019 年,斯坦福大学的丹尼尔·班克曼(Daniel Bankman)提出一种使用模拟电路的模数混合信号二值 CNN 处理器 [49] ,就是针对用于「永远在线」的 AI 推理的应用所开发的。这种处理器每次分类任务只消耗 3.8μJ 的能量。

该设计针对中等复杂度的推理任务,如 CIFAR-10 图像分类数据集。一般来说,能量和可编程性之间,以及能量和分类精度之间往往不容易得到很好的权衡。而这项工作的设计目标是尽量降低能耗,允许牺牲一些可编程性和分类精度。尽管如此,这种设计仍然是半可编程的,并与其他最近的硬件实现相比具有更高的精度。这种「模拟 MAC」实现了每次分类的最低能耗,与数字 MAC 相比功耗要小得多,但缺点是芯片面积要比数字 MAC 大。

这个模拟 MAC 使用了二值神经网络,权重和激活值都约束为 +1 和-1,把乘法简化为 XNOR,并允许在片上集成所有存储器。使用具有输入重用功能的权重固定、数据并行架构,可以在许多计算中分摊内存访问的能量成本。剩下的能量瓶颈是矢量求和,该设计采用高能效的开关电容(Switched Capacitor,SC)神经元来应对这一挑战,采用 1024 位温度计编码(即一元编码)的电容式数模转换器(Capacitive Digital-to-Analog Converter,CDAC)对 CNN 卷积核权重和激活值的逐个点积求和,并采用一个 9 位二值加权部分,用于添加卷积核偏置。SC 神经元通过重新分布充电电荷来
(本章节未完结,点击下一页翻页继续阅读)