本文提出了一种面向海洋边缘计算的FPGA Transformer加速器T3,由Dingyang Yu、Xinrui Zhang、Changlong Chen、Seok-bum Ko和Hao Zhang等人共同完成,发表于IEEE Transactions on Very Large Scale Integration (VLSI) Systems第34卷第5期(2026年5月)。该研究针对Transformer模型在海洋边缘设备部署时面临的高计算复杂度、高精度需求以及硬件资源受限等问题,提出了基于浮点(floating-point, FP)的高效Top-k排序方法和动态tanh(dynamic tanh, DYT)计算方法,从而有效提升Transformer加速器的能效。
研究的学术背景主要围绕Transformer模型在海洋科学和工程中的广泛应用,如海浪高度预测、海洋涡旋探测和次表层密度反演等任务。这些应用对计算精度要求较高,而海洋边缘设备在供电、散热和可靠性方面存在严格限制。与陆地数据中心不同,深海设备无法依赖庞大的计算资源和维护支持,因此需要设计能效高且支持浮点运算的专用加速器。Transformer模型中的自注意力(self-attention)机制和层归一化(layer normalization, LN)是主要的计算瓶颈,特别是自注意力中的QK^T矩阵计算复杂度与序列长度成平方关系,而层归一化需要等待所有注意力头计算完成才能进行,导致额外的存储访问和延迟。为此,作者提出了两项关键技术:一是基于浮点的Top-k排序方法,用于在线剪枝自注意力中的弱相关项;二是利用DYT替代层归一化,并通过误差控制的分段线性(piecewise linear, PWL)近似和系数融合实现高效的tanh硬件计算。
在具体工作流程方面,该研究首先设计了整体T3加速器数据流。加速器采用16位标准浮点格式FP16以满足海洋应用的高精度需求,并支持同时计算两个自注意力头。输入序列长度为196,隐藏维度为768,适用于DeiT-base等Transformer模型。在计算过程中,输入矩阵与权重矩阵W_Q、W_K、W_V从外部DDR存储器加载到输入SRAM,经过线性变换生成Q、K、V矩阵。由于Q和K矩阵规模较大,直接对全部元素执行QK^T计算代价很高,作者提出了一种两阶段计算策略。第一阶段将Q和K量化为低精度格式,截断尾数部分从10位到2位,执行低精度QK^T估计;随后通过Top-k排序选择每行中最大的k个值,生成掩码矩阵,其中Top-k值对应位置为1,其他位置为0。第二阶段仅对掩码矩阵中非零位置对应的元素执行FP16精度的QK^T计算,从而显著减少计算量。
所提出的浮点Top-k排序方法采用基于计数器的架构,不同于传统基于比较器的排序网络。该方法在第一阶段统计不同指数(exponent)和尾数(fraction)值的出现次数。设计中使用31个指数计数器(对应5位指数除异常值外的31种取值)和31×4个尾数计数器(每种指数下对应2位尾数的4种取值),所有计数器位宽为11位,支持最多2048个数的Top-k排序。在第二阶段,从最大指数开始累加计数器值,当累计值达到k时即可确定第k大值的指数;随后在对应指数组内累加尾数计数器,确定第k大值的尾数。通过符号门控逻辑,负值元素被忽略,因为softmax对负值指数抑制效果显著,对最终注意力权重贡献可忽略。该方法的时间复杂度为O(n),且由于采用计数器结构,其资源消耗在不同k值和并行度p下几乎保持不变。实验结果显示,与已有工作相比,该Top-k排序方法在k=128、p=16时可实现79.6%的查找表(lookup tables, LUTs)减少、80.3%的触发器(flip-flops, FFs)减少和90.8%的功耗降低。
在DYT计算方面,研究发现直接对tanh函数进行PWL近似需要56个线性区域,存储需求大。为减少分段数量,作者利用sigmoid函数的曲线变化更平缓的特性,将tanh(x)表示为2·sigmoid(2x)−1。在相同近似误差阈值0.0001下,仅需33个线性区域即可覆盖tanh的线性区(0, 3.837),分段数量减少41%。随后,作者提出了逐通道参数融合方法,将DYT中的缩放参数γ、平移参数β以及tanh近似中的斜率k′和截距b′离线合并为新的系数k″和b″,使得每个近似线性区域仅需一次乘法和一次加法即可完成计算。为隐藏参数加载延迟,设计中使用预取缓冲区,在计算当前通道最后几个预测token时触发下一通道参数的传输,从而在不增加大容量双缓冲区的情况下降低延迟。此外,作者还提出了多头流水线操作,利用DYT可对每个注意力头独立计算的特点,使得一个注意力头完成残差操作后即可直接进入DYT计算,无需等待所有头完成拼接,从而消除额外存储访问和等待时间。
在实验结果方面,模型精度评估表明,在稀疏度为30.6%(即跳过196个元素中的60个计算)时,DeiT-small在CIFAR-10数据集上的准确率下降仅0.1%,DeiT-base在ImageNet数据集上的准确率损失为0.7%。即使在50%稀疏度下,DeiT-base的准确率仍超过80%。硬件实现方面,所提出的DYT模块在FPGA上的LUT使用量比现有最优设计减少38.3%,且近似误差更小。在ASIC综合对比中,所提出的方法在面积和功耗方面优于多种已有tanh实现方案。整体T3加速器在Xilinx Alveo U50设备上的能效比同类FP16设计提升了15.2%,同时消耗更少的DSP资源。在等效资源换算后,所提出的加速器在面积上也具有优势。
本研究的结论表明,通过提出高效的浮点Top-k排序方法和误差控制的DYT计算方法,T3加速器在保持高精度的同时显著降低了自注意力和归一化的硬件开销,满足了海洋边缘计算对浮点运算和能效的双重需求。该工作不仅为Transformer模型的边缘部署提供了一种新的硬件架构,还展示了基于计数器的排序方法和参数融合的DYT实现在不同Transformer变体上的可扩展性。研究还指出,由于采用FP16格式,其功耗仍高于定点设计,且系统性能受存储带宽限制,未来可通过进一步优化片外数据传输来提升性能。整体而言,该研究为海洋环境下的高精度边缘AI计算提供了一种可行的加速器设计方案,具有重要的科学价值和应用前景。