在边缘人工智能(AI)应用中,CIM技术的需求日益增长。在设备端训练场景下,CIM可提供实时响应、有效降低功耗,并更好地保护用户隐私,避免数据上传到云端可能带来的风险。然而,当前CIM领域的大部分研究工作主要集中在推理任务上,而对训练过程的探索相对较少。
边缘AI训练与推理在计算模式上差异显著:推理仅需前向传播(FF),而训练则额外包含反向传播(BP),BP阶段需要对权重矩阵进行转置并与误差梯度相。现有转置CIM (T-CIM) 方案存在一些局限FF和BP常使用独立电路,导致乘加(MAC)电路复用率低,造成芯片面积和能效损失;多数T-CIM方案仅支持整数(INT)格式,但在训练中,低分辨率INT表示会显著降低模型精度;模拟CIM方案易受工艺、电压、温度(PVT)变化影响,进一步导致训练精度下降。
尽管数字CIM (DCIM) 能有效缓解模拟CIM的精度问题,但在SRAM阵列和MAC电路之间实现高存储密度(MD)与高面积效率(AF)的优化权衡仍比较困难。本论文提出一款高性能计算内存架构。该架构采用28nm工艺,实现192.3 TFLOPS/W能效,支持精确/近似双模式、转置功能,基于数字6T-SRAM,专为浮点(FP)边缘训练和推理设计。
核心贡献体现在三大创新点:
- 循环权重映射6T-SRAM阵列 (CWM-SRAM): 实现阵列内权重转置,复用MAC电路,提升利用率和能效。
- 数字CIM架构 (SFME & VWPA): 结合SFME和VWPA技术,灵活支持FP8、BF16、INT4、INT8等多种数据格式,满足不同精度与能效需求。
- 精准/近似双模位并行MAC电路 (DMBP-MAC): 紧密集成于CWM-SRAM,显著提升存储密度、访问速度、面积和能量效率。
整体架构(图1)包括读写控制电路、激活旋转对齐电路,以及两套CWM-SRAM和DMBP-MAC。读写控制电路负责CWM-SRAM的地址解码和读写;激活旋转对齐电路用于向量对齐并执行SFME和VWPA;CWM-SRAM是64x64的6T-SRAM阵列,支持FF和BP访问;DMBP-MAC包含64个乘法器和6级加法器,生成14比特点积结果。
图1 所提出的转置数字SRAM CIM的整体架构。
为了在不增加额外电路开销的前提下同时实现前向传播 (FF) 和反向传播 (BP),论文提出了CWM-SRAM电路,其通过循环权重映射存储、单端口复用MAC电路和动态激活对齐机制,解决了传统T-CIM中硬件冗余的问题。
图2 CWM-SRAM电路
如图2(左上)所示,权重矩阵以循环移位方式存储在6T-SRAM中,例如第3行的权重向量会向右移动2个位置,依次为(3,63),(3,64),(3,1)……(3,61),(3,62)。在权重读取方面,在FF阶段直接按行读取权重向量,而在BP阶段按权重矩阵的对角线读取元素,例如如图2(左下)所示,对于第一行权重来说,FF阶段直接读取该行 (1st row for W) ,BP阶段读取对角线元素 (1st row for WT)。由于权重矩阵在存储时进行了循环移位,论文提出了激活向量对齐机制,以使激活向量同步调整以保持与权重向量的对齐。如图2(右上)所示,每一个存储单元均由FF读使能和BP读使能控制:FF 模式连接4行存储单元,按行读取权重;BP 模式连接4条对角线存储单元,按对角线读取转置权重。
论文提出的6T SRAM存储单元采用1端口的4b/cell,支持不同数据格式(如INT4、INT8、FP8、BF16)的存储与访问,且CWM-SRAM电路通过单端口256b读取接口连接MAC电路,FF和BP阶段共享同一组乘法累加器,无需额外硬件资源。
图3 SFME策略
为了使DCIM架构支持不同位宽的浮点MAC运算,论文提出了带符号定点尾数编码 (SFME) 策略。例如,对于BF16格式(1b符号位+8b指数位+7b尾数位)的浮点数来说,原始表示为
,s是符号位,E是原始指数,M为尾数。对于SFME来说,如图3(上)所示,首先提取同一批向量中的最大指数,再通过公式
计算出共享指数
;之后再将尾数位归一化为
,如原始尾数为010,隐藏位+尾数位为1.010,右移一位得到0.101,即
,此外还需乘以响应的缩放因子,由此将尾数转换为
。因此经过SFME处理之后,浮点数表示为
。
如图3(下)所示,为了支持4位和8位对齐尾数的统一MAC运算,论文设计了四模式4b乘法器。例如,FP8的4b尾数直接使用INT4乘法器,BF16的8b尾数拆分为高4位和低4位,分别通过INT4路径计算后合并。此外,传统层级预对齐会因跨层元素分布差异导致较大尾数截断误差。VWPA对同一向量内的元素进行预对齐,利用同向量元素值更接近的特性,缩小截断窗口,降低误差。通过移位寄存器和截断逻辑对激活向量进行实时调整,匹配循环权重映射的存储移位模式。例如,在BP阶段读取对角线权重时,激活向量需右移相应行数,VWPA同步完成尾数对齐与截断。
图4 DMBP-MAC电路
为了在边缘设备的存算一体架构中实现精度与能效的平衡,论文提出了DMBP MAC电路,该电路通过双模式灵活切换、位并行计算和近似逻辑优化,为实时AI任务提供了高效的硬件解决方案。如图4(左上和左下)所示,MAC电路主要由双模式乘法器 (DM MUL) 和双模式加法器 (DM ADD) 组成。对于DM MUL来说,精确模式下计算所有部分积,近似模式下舍弃右侧6个部分和;对于DM ADD来说,精确模式下使用标准加法器累加所有部分和,近似模式下按位或运算代替低位加法。此外,论文采用64个独立乘法器单元并行计算位级乘积,减少了计算周期,降低了输入信号的翻转率,从而减少了动态功耗。
如图4(右下)所示,论文提出的近似计算模式相对于精确模式,速度提升12%,功耗降低31%,并且其平均相对误差距离为5.3%,表明近似模式下的输出误差在可接受范围内。此外,在版图设计时,将DMBP MAC与CWM-SRAM集成时,采用中心对称的版图布局,使两者的长宽比匹配,从而减少了金属连线长度和交叉,缓解了布线拥塞。
如图5所示,这颗基于28nm工艺的芯片在0.9V标准电压下的访问时间为 2.5ns。而在能效方面,当电压降至0.55V,并采用FP8数据格式的近似计算模式时,其浮点计算能效达到了 192.3 TFLOPS/W。这个峰值能效是在50%权重稀疏度和50%输入翻转率的理想条件下测得的。然而在评估任何CIM架构时,都必须考虑实际应用中数据特性的影响。高稀疏度的模型能让芯片“跳过”大量无效的零值乘法,从而节省功耗。
图5 能效与PVT测试
相较于同样支持片上训练的T-CIM方案,本工作在能效和面积效率上实现了碾压性的提升。这主要得益于循环权重映射SRAM(CWM-SRAM)。过去的T-CIM一套用来前向传播,另一套用来反向传播, MAC电路无法共用。而CWM-SRAM的设通权重映射,实现MAC电路的复用,极大地节省了硬件开销,带来了能效和面积的双重收益。
作者在ResNet-18@CIFAR10和VGG-19@CIFAR100这两个经典的图像分类任务上进行了验证。结果显示,FP8格式虽然在最终的推理精度上不如INT8和BF16,但远超INT4。在能效方面FP8胜出。这指向了一个权衡关系(Trade-off):在许多边缘应用场景中,我们并非追求极致的、不计成本的精度。FP8格式在保证了可用精度的前提下,优化了能源效率。
这项工作的核心贡献在于首次实现了一款高能效的、支持浮点运算的、可转置的CIM。虽然近似计算能效很高,但仍存在固有误差,在层数庞大的网络中这种误差可能会逐层累积,导致最终精度下降。本论文的验证主要基于中小型网络,未来将会在更大、更复杂的模型(如Transformer)上验证其有效性。