近期美国模拟 AI 芯片初创公司 Areanna 在微型机器学习峰会(tinyML Summit)上首次公开了其 AI 芯片架构。不同于一般的模拟 AI 芯片,该芯片通过采用 SRAM 阵列,在存储阵列内部集成了模数转换器(ADC)和数模转换器(DAC)。
简单来说,DAC 就是把二进制码或 BCD 码表示的数字量转换为与其成正比的模拟量输出,而 ADC 则是将连续的模拟信号转换为数字信号。
但是这两种功能通常会在存内计算中占用绝大部分的芯片面积和功耗,因此在存储阵列中集成这两项功能可以进一步降低内存功耗,其计算性能也有了更大的提升空间,美国半导体杂志 EE Times 认为,该芯片可能会改变模拟计算技术。
一、曾获 NSF 种子资金,独特阵列设计或突破数据转换瓶颈
Areanna 成立于 2019 年,以小企业创新研究(SBIR)赠款的形式获得了美国国家科学基金会(US National Science Foundation)的种子资金,总计 22.5 万美元。该公司在其架构上拥有两项专利。
Areanna 的两位创始人 Behdad Youssefi 和 Patrick Satarzadeh 均出自电子仪器测量公司泰克(Tektronix),这两位创始人也是 Areanna 仅有的全职员工。
▲Areanna 创始人 Behdad Youssefi
此外,Areanna 还有两名兼职工程师和数名顾问。在 2020 年,这家初创公司发布了具有一颗 Tile 的测试芯片,能够进行部分矩阵乘法。该芯片的基准功率效率为 40 TOPS/W,运算密度为 2 TOPS/mm2,每个内核的内存带宽为 2 TB/s。
Areanna 的测试芯片在一种被称为存内计算和量化(CQIM)的架构上运行。该架构基于模拟存内计算技术,与 Mythic、Gyrfalcon 等其他 AI 芯片初创公司的概念基本一致。但是,Areanna 使用的是 SRAM 阵列,而不是常用的非易失性存储器,还配有一些独特的技术。
由于 AI 在边缘的优势,比如隐私、低延迟及对网络带宽的有效利用等,AI 边缘设备的研究受到了越来越多的关注,但边缘设备的功耗一直是个大问题。存内计算就是芯片在内存中进行计算,可以减少内存访问的能量消耗,是 AI 边缘的解决思路之一。
Areanna 的 SRAM 阵列设计是其核心技术的关键,该阵列在内部集成了 ADC 和 DAC 功能,释放了内存上的功耗和面积,也使芯片性能可以进一步提高。
传统的存内计算往往将 DAC 功能设计在每个行 / 输入上,在每个列 / 输出上使用 ADC,根据 Areanna 的数据,这两项功能占据了芯片高达 85% 的功耗和 98% 的硅片面积。在 tinyML Summit 上,Behdad Youssefi 称传统的模拟计算方法只是 “用数据转换瓶颈取代了冯 · 诺依曼体系结构的内存瓶颈”。
而在 Areanna 的 CQIM 架构中,模数、数模转换是通过与计算相同的电路结构执行的,该结构被称为乘法位单元(multiplying bit-cells,MBCs)。
二、模拟信号完整度高,100% 硬件利用率虽然
Areanna 的芯片是基于模拟计算开发的,但是其电路几乎完全是数字化的,并且在制造中采用了数字处理技术。Youssefi 曾对 EE Times 记者描述其模拟计算流程,该芯片通过从 SRAM 位单元读取权重参数,然后将其输入乘法器处理,再用金属电容器将信号转换为电荷,并垂直累加结果,即可进行模拟计算。
▲模拟计算过程(来源:Areanna)
由于模拟计算采用了相同的 MBC 结构,所以当芯片进行模数、数模转换时,这种架构节省了大量的芯片面积。并且这种设计可以不再使用 ADC 采样电路,也在功耗上取得了突破。
该设计的一个重要特点是,无论模拟运算的分辨率如何,每个点积计算只需要一个量化(一次模数转换)。对于模拟信号、数字信号转换来说,因为采集到的模拟信号是连续、无限值的,所以想要获得较好处理的有限值就需要进行量化处理。而在这过程中,如何准确、快速的处理就是难点所在。
▲Areanna 芯片的每个 MBC 单元中都包含 DAC 和 ADC 功能(来源:Areanna)
Youssefi 强调,在其他存内计算架构中,模拟 AI 芯片往往需要完成转换后,对数字信号进行缩放。而 Areanna 的芯片则会对模拟信号缩放后,再进行量化处理,保留了模拟信号的完整度。
在数模转换中,信号的转换精度往往用分辨率表示,分辨率则由模电输入二进制数的有效位数给出。Youssefi 提到,Areanna 的架构设计提供了完全可编程的分辨率,还能不损害硬件利用率。
他说:“(对于其他内存计算方案)如果你想提供可变的分辨率,那么你必须显著降低硬件利用率。但我们不会因为从 8 位到 4 位再到 1 位而降低硬件利用率,无论分辨率如何,它仍然是 100% 的硬件利用率。”
三、SRAM 阵列功耗较低、扩展性好
此外,与非易失性存储器件相比,SRAM 的读写功耗较低,使得芯片不用从外界引入很多能量,SRAM 的低写入能耗也使得数据流优化具有灵活性。
当前,AI 芯片进行机器学习需要将数据和权重从内存移动到处理单元,然后将中间结果存储回内存。这一方法效率较低,其无谓的信息传输不仅增加了计算延迟,也增加了相应的功耗。这些 “无增值”的数据移动消耗了很多的能量,实际上数据和计算单元权重只消耗了一小部分能量。
对于具有很多权重的大型神经网络层,保持权重固定或许可以有效提高性能。而对于处理高分辨率图像的网络,输入激活数据是数据密集度最高的数据类型,因此使输入激活保持静止可能会更有意义。
Areanna 基于 SRAM 的架构允许双重静态数据流优化,也就是说,无需额外的硬件即可将两种数据类型设为静态,可以更好的降低硬件功耗。
Youssefi 说:“因为我们的计算是在模拟域中并行完成的,所以我们实际上并不需要移动数据。凭借该架构,Areanna 芯片可以使权重或用户选择的任何数据固定,并且部分总和输出始终固定。因此,这两种数据类型没有变化。”用户可以选择对算法(或对于神经网络中的特定层)最有效的方式进行设置。
据 Youssefi 介绍,当前许多存内计算架构的可扩展性受到了限制。他提到,有些架构通过逻辑技术优化功率性能,有些则针对存储密度作了改进。当这两种技术放入同一芯片时,就会发现两种技术根本无法兼容。
Areanna 的芯片则没有这种问题,其架构由于几乎完全建立在数字电路上,可以使用标准的 CMOS 工艺进行制造,也能和很多其他技术兼容。
因为采用了标准化工艺,该芯片还可以随摩尔定律进步,使用更小的工艺节点。下一步,该公司准备用多个计算 Tile 构建更大的测试芯片,预计第二颗测试芯片将在 2022 年问世。
结语:Areanna 架构或解放存内计算功率负担随着人工智能浪潮席卷各个领域,AI 模型的复杂性日益提高。但是传统的计算架构,因为能耗问题很难满足 AI 边缘应用的未来需求,此前台积电曾公布了一种改良的 SRAM 存储器阵列,通过存内计算极大地降低了芯片功耗,某种程度上证明了 SRAM 阵列的可行性。
而模拟计算作为一种连续数据的计算方式,可以与数字计算形成互补,具有很大的潜力。Areanna 的芯片通过在存储阵列中集成 ADC 和 DAC 功能,为模拟计算提供了一种减少功耗和芯片面积的新思路。