← 返回 PaperDaily 前沿研究

最新综述:FPGA压缩加速不协同,25个案例仅1个能横比?

FPGA上跑AI模型,压缩和加速是两件事吗?这篇综述梳理了2015-2026年25个协同设计案例,用五分类法重新组织,结果发现:只有1个案例报告了统一基线的压缩比与精度变化。想快速摸清FINN、HLS4ML、Vitis AI谁更靠谱,这套分类和开放挑战值得一读。

最新综述:FPGA压缩加速不协同,25个案例仅1个能横比?
原论文信息如下:
论文标题:
Model Compression and Hardware-Aware Acceleration for Deep Learning on FPGAs: A Co-Design Taxonomy and Comparative Analysis

发表日期: 2026年8月

发表单位: 佛罗里达大学(University of Florida)

原文链接: https://arxiv.org/pdf/2608.21657v1.pdf

先从一组数字说起:AlexNet参数量6000万,VGGNet直接干到1.38亿,ResNet-152有152层,而GPT-3已经冲到1750亿参数。模型越来越大,但服务器机箱没有变大,边缘设备的功耗预算也没有变大。于是,模型压缩(Model Compression)成了AI部署圈绕不开的话题:量化、剪枝、知识蒸馏、低秩分解、权重共享,这些招数大家多少都听过。
但压缩完了往哪儿放?GPU当然是默认答案,可还有一种硬件,既能像ASIC一样高效,又能像CPU一样灵活编程,它就是FPGA(现场可编程门阵列,Field-Programmable Gate Array)。微软的Catapult项目曾把Bing搜索的排序计算卸载到FPGA上,延迟降低25%,吞吐量几乎翻倍。听起来很美,对吧?
但问题来了:很多人习惯把模型压缩和硬件加速当成两道独立的工序——先压缩,再映射。佛罗里达大学(University of Florida)团队在2026年8月发布的这篇综述里,给出了一个反直觉的结论:如果你不把压缩和硬件加速放在一起设计,FPGA上根本发挥不出应有的性能。更扎心的是,他们梳理了2015到2026年间25个压缩-硬件协同设计案例,发现整个领域有一个严重的“评估裸奔”问题——25篇工作里,符合统一基线横比标准的案例,只有1个。
这篇综述干了一件此前没人干得这么细的事:它不满足于“量化对硬件的影响”这种泛泛而谈,而是追问——你做的压缩,到底动了FPGA的哪块资源?是DSP、LUT、BRAM,还是片外带宽?这个视角,比之前Deng等人发表的横跨CPU、GPU、FPGA、ASIC四类平台的综述要狠得多。今天带大家把这套“五分类法”和它的元分析结论掰开揉碎。

五类分类法:从DSP消除到工具链部署

图4:本综述涵盖的模型压缩技术分类。五种核心技术(量化、剪枝、低秩分解、知识蒸馏和权重共享)在各自的子章节中展开;混合方法直接组合其中两种或多种。这一分类最终汇聚到第三部分的硬件后果分类法,按它们主要重塑的FPGA资源重新组织这些技术。
在展开五分类法之前,得先把FPGA的“家底”交代清楚。FPGA芯片上的三种核心资源,决定了所有压缩策略的落点:DSP切片(Digital Signal Processing slice,数字信号处理单元)负责乘法和累加,就好比一个工程队里的高级技工;LUT(Look-Up Table,查找表)实现组合逻辑,是万能的基础劳工;BRAM(Block RAM,块内存)负责片上数据缓存,相当于工地旁的小仓库。此外还有可编程互连网络和I/O块,把以上所有单元连成一张可重构的“乐高网”。这三个资源彼此不能任意替代,压缩算法动哪个资源,直接决定性能和成本。
图7:通用FPGA布局图:由可配置逻辑块(CLB)阵列构成,外围环绕I/O块环,通过可编程互连连接;每个CLB内部串联查找表(LUT)、触发器(FF)和输出多路选择器(MUX)。原始示意图,遵循FPGA架构文献中使用的标准CLB/开关盒/I/O布局惯例。
那压缩技术有哪些?主流的有五类:量化(Quantization)、剪枝(Pruning)、低秩分解(Low-Rank Factorization,LRF)、知识蒸馏(Knowledge Distillation,KD)和权重共享(Weight Sharing)。量化把高精度数值映射到低精度,比如FP32干到INT8甚至二值;剪枝把不重要的连接或通道直接扔掉;低秩分解把一个大权重矩阵拆成两个小矩阵的乘积,参数从mn降到r(m+n);知识蒸馏则是让一个小学生模型去模仿大模型的“解题思路”;权重共享则把相似权重聚类到一个中心值,配合霍夫曼编码还能进一步压内存。
图3:单个人工神经元:加权输入与偏置求和,通过激活函数产生输出y帽。
以知识蒸馏为例,其核心思想是让学生模型逼近教师模型的软标签输出。标准的KL散度蒸馏损失如下,其中T是温度系数,zᵗ和zˢ分别是教师和学生模型的logits输出,σ表示softmax函数,c为类别索引:
公式1:知识蒸馏的KL散度损失,L_KD^KL = T² ∑_c σ(zᵗ/T)_c log(σ(zᵗ/T)_c / σ(zˢ/T)_c)
也有用均方误差(MSE)直接对齐软化logits的做法:
公式2:知识蒸馏的MSE损失,L_KD^MSE = ‖σ(zᵗ/T) - σ(zˢ/T)‖₂²
总损失通常将蒸馏损失与交叉熵(CE)损失按系数α加权组合:
公式3:总损失 L_total = α·L_KD + (1-α)·L_CE
这些压缩技术本身不新鲜,真正新鲜的是把它们跟FPGA资源绑定起来审视。
本综述最核心的贡献,是提出了一套按FPGA资源后果划分的压缩-硬件协同设计分类法。它不按发表时间排序,也不按算法家族归类,而是问一个更“物理”的问题:你的压缩策略,主要重塑了FPGA的哪一类资源?根据这个答案,25个案例研究被分为五类。
表一:本综述回顾的25项工作的案例研究总对比表。“N/R”表示在源文献中未以数值形式报告;“N/A”表示不适用于该研究的研究类型;“—”表示作为ASIC实现,而非FPGA。
第一类叫DSP消除型(DSP-eliminating)。这类策略的目标是彻底绕开DSP。最典型的例子是二值化神经网络,权重和激活被压到只有+1和-1,原来的乘法运算直接变成XNOR-位计数(XNOR-popcount)操作。Xilinx的FINN框架就是这么干的:用LUT把乘法逻辑全部吃掉,DSP完全闲置,照样能跑出每秒上万帧的ImageNet分类。对FPGA来说,省下DSP就等于省下了最稀缺的算力资源。
第二类叫DSP复用/混合精度型(DSP-repurposing/mixed-precision)。DSP不是不用,而是“一个掰成两个用”。比如Bit Fusion加速器把一块27×18位的DSP拆成两个9×18位、甚至四个4×18位的乘法器并行工作,实现逐层甚至逐通道的精度自适应。这就是所谓的DSP复用:还是那块硬件,但把数据通路切得更细,让算力利用率直接翻倍。
第三类叫稀疏性利用型(sparsity-exploiting)。剪枝是这类的主战场,但注意区分两种剪法:非结构化剪枝把单个权重干掉,压缩率高但产生不规则稀疏矩阵,在FPGA上难以被有效利用;结构化剪枝则是成块地移除整个通道或神经元,保留规则的运算模式,方便映射到脉动阵列或数据流架构。在FPGA上,后者明显更香。
第四类叫内存层次驱动型(memory-hierarchy-driven)。FPGA的片上存储只有几兆字节,但神经网络的权重动辄几十上百兆,所以数据搬运成了大头。这一类的核心思路是用循环分块(loop tiling)、循环展开、数据复用等策略,尽可能减少片外DRAM的访问。张(Zhang)等人的roofline分析是这方面的奠基之作,之后DNNBuilder通过逐层定制缓冲把能效相对提升了2.5倍。
第五类叫工具链/部署级型(toolchain/deployment-level)。这一类不做算法创新,而是把压缩和硬件映射打包成自动化工具。FINN、HLS4ML、Vitis AI、DNNWeaver四大框架都归入此类,它们的目标是让用户从PyTorch或Keras模型出发,一键生成FPGA位流,把协同设计的门槛从芯片级降到算法级。

25个案例研究的元分析揭示了什么

分类法只是第一步。接下来这篇综述做了一件让整个领域尴尬的事:把25篇案例研究按11个维度统一规范化整理后,做了一次诚实的元分析。维度包括:发表年份、分类类别、模型/领域、硬件平台、压缩比、精度变化、吞吐量、能效、DSP/LUT/BRAM利用率、基线对比等。凡是原文没报的指标,一律标注“N/R”(Not Reported,未报告),绝不脑补。
图9:25个案例研究中,仅有两个在单一明确基线下同时报告了压缩比与精度变化,此图展示其压缩比与精度变化的关系。水平条表示每个研究报告的范围。注意两个点压缩的实质内容不同(模型权重 vs. KV缓存),不在同一尺度上;只因两者都满足第四-A部分的单一基线标准才画在一起。
结果如何?25篇工作中,只有2篇同时报告了压缩比和精度变化,且它们各自基于不同的单一基线;只有1篇能在同一个共同基线框架下与其他工作做对比;只有4篇报告了能效倍数,而且基线类型还不统一。图9把那个唯一符合“单一基线”标准的两个案例摆在一起,还专门提示说:这俩点压缩的对象都不一样,一个是模型权重,一个是KV缓存,画在一起纯粹是因为它们恰好都满足单一基线标准,根本不能直接比较。
图10:25个案例研究中,四个报告了能效倍数的案例按基线类型分组展示。Deep Compression的柱状使用了其报告的3-7倍范围的中点。括号中的类别字母对应表一中的分类。
这意味着什么?整个FPGA压缩加速领域,缺乏一套统一的度量和基线规范。每个团队都有自己的标尺:有的对比CPU,有的对比GPU,有的对比未压缩的FPGA版本,有的连基线都没说清楚。你说你压缩率50倍、精度损失1%,好,跟谁比出来的?在什么硬件上、什么时钟频率、什么批处理大小下测的?没人说得清。
go I am not angry
这还不是最离谱的,最离谱的是整个行业似乎默认接受这种状态。佛罗里达大学团队把这种“各自报数、互不打通”的现象称之为领域层面的表征鸿沟(characterization gap)。更扎心的是,报告指出:没有任何一个现有工具链能独自解决这个问题。你把希望寄托在FINN上?它只管二值网络。换HLS4ML?它把硬件生成简化了,但压缩算法得你自己接。Vitis AI覆盖更多精度档次,但对自定义算子支持有限。每个工具链只解决垂直切片里的一段,指望一个框架打通全链路,目前没有答案。

四大工具链对比:FINN、HLS4ML、Vitis AI与DNNWeaver

既然工具链是绕不开的坎,这篇综述专门拉了一张对比表。这里先逐个给读者介绍这四位“选手”。
表二:FINN框架:关键技术与优化。列出了FINN在二值神经网络部署中使用的核心变换,包括XNOR-popcount计算、快速量化、阈值化等。
FINN是Xilinx研究院出品的二值网络推断框架,专攻极端量化场景。它把网络中的卷积全部重写成XNOR-位计数形式,用LUT资源替代DSP实现算力。FINN在Xilinx PYNQ-Z1开发板上跑ImageNet分类能达到12190帧每秒,这个数字让GPU都汗颜。但它的问题是只吃二值网络,精度敏感的任务根本不敢用。
HLS4ML可以说是学术界的“国民工具”。它把Keras和PyTorch模型翻译成C/C++高层综合(High-Level Synthesis,HLS)代码,然后交给FPGA综合工具生成硬件。好处是开发效率高、灵活性强,但坏处是性能上限依赖设计者的手工调优水平,同样的模型两个人写出来的硬件吞吐可能差出一个数量级。
表三:压缩技术对比:压缩率、精度代价与FPGA硬件适配度。
Vitis AI是AMD(Xilinx)目前的官方主力工具链,覆盖面最广,从量化感知训练(Quantization-Aware Training,QAT)到剪枝再到编译部署一应俱全,尤其对自家DPU(深度学习处理单元)优化很深。但商业工具的通病是黑盒:自定义算子支持不友好,想动底层细节时容易被“封装”限制手脚。
DNNWeaver相对老牌,学术参考文献引用率高,它最大的特点是针对给定FPGA自动生成汇编级代码,理论上对硬件资源利用可以做到很细。但学起来陡、维护少,在与数据流架构的适配灵活性上已经有些跟不上后续出现的异构CLB(可配置逻辑块)设计。
表四:工具链对比表。“N/R” = 在综述来源中未对此工具链报告/量化。
看完表四的读者会发现一个惊人的事实:四大工具链各自支持的精度范围、编程语言、后端目标差得不是一点半点。FINN只吃二值,HLS4ML只能到INT8而且浮点支持有限,Vitis AI更倾向自家DPU,DNNWeaver语言门槛又高。这就导致同一个压缩模型想在不同工具链间切换,几乎等于重写一遍。

六个开放挑战与具体研究路线图

分类法梳理完了、工具链比完了、元分析的雷也排了。接下来,这篇综述给出了一个毫不含糊的“路线图”:六个开放挑战,每一个都配有具体的挑战描述、当前最先进的尝试、为什么还不够好、以及下一步该做什么。这正是它区别于“呼吁式综述”的地方——每个挑战都落到可执行的技术动作上,而不是喊口号。
第一个挑战是工具链碎片化。四大框架各有各的输入格式和优化策略,导致从算法到硬件的技术栈无法复用。给出的下一步不是造第五个框架,而是建议在HLS4ML上构建统一的中间表征层,让FINN的量化策略和Vitis AI的算子库能够互相兼容。
第二个挑战是精度-效率表征不足。整个领域缺少统一的精度-效率衡量指标,导致“强不强”全靠嘴。论文建议建立统一基准测试套件,至少规定基础模型、数据集、硬件平台和功耗测量方法四个要素。
第三个挑战是自动化混合精度优化。现在混合精度靠人工经验试错,逐层设定位宽。现有搜索空间实在太大,单纯靠暴力搜索在FPGA上根本跑不完。下一步建议把强化学习或可微搜索方法跟HLS4ML的编译反馈结合起来,实现精度和资源利用率的联合自动优化。
第四个挑战是稀疏计算可靠性。非结构化稀疏在FPGA上会导致硬件利用率剧烈抖动,两个不同的稀疏模式跑出5倍性能差的例子比比皆是。下一步不是继续优化稀疏矩阵运算,而是建立“结构化剪枝优先”的编译策略,让稀疏模式在硬件生成前就规范化。
第五个挑战是持久性内存瓶颈。BRAM容量始终是FPGA上最紧的约束之一,而新出现的MRAM、ReRAM等非易失存储给混合存储层次带来了新可能。论文建议在DNNBuilder的逐层缓冲机制上引入混合存储层次调度,把频繁访问的权重放MRAM,把流式数据放DRAM。
第六个挑战是FPGA端训练。目前的FPGA加速几乎全部聚焦推理侧,但训练侧的稀疏梯度和混合精度需求同样迫切。论文指出,一个可行的路径是利用可重构分区在FPGA上同时承载前向和反向传播的数据流,把训练时的激活缓存压力通过在线重计算来释放。
表五:研究路线图:开放挑战、当前最先进尝试和具体的下一步行动。
这六条路线图有一个共同特点:不搞空中楼阁,每个下一步都从扩展现有技术出发。用本文作者的话说,这叫“基于已有技术延伸的具体行动,而不是对未来的泛泛呼吁”。在AI硬件这个领域,能做到这一点已经超过大多数综述了。

龙迷三问

下面是龙哥对于大家可能的一些问题的解答:
这篇论文到底在解决什么问题?综述2015-2026年间25个FPGA模型压缩-硬件协同设计案例,提出DSP消除、混合精度、稀疏利用、存储层次驱动、工具链部署五分类法,发现仅1篇报告统一基线的压缩比与精度变化,凝练六大开放挑战及具体研究路线。
这篇工作最值得看的点是什么?本文作为综述,系统整理了25个FPGA压缩-硬件协同设计案例研究,提出了五类分类法,并通过元分析揭示了领域内的关键特征化差距:仅1/25的研究报告了针对单一共同基线的压缩比和精度变化,仅2/25的研究报告了针对共同GPU基线的能效归一化数据。
这篇工作的边界或风险在哪里?优点:(1) 提出了新颖的FPGA资源导向的五类分类法,而非传统的按时间或算法族分类;(2) 进行了严格的元分析,明确标注了不可比的数据点,而非掩盖缺失数据;(3) 每个开放挑战都配有具体的下一步行动,而非泛泛的未来工作呼吁;(4) 覆盖了2015-2026年的最新工作,包括LLM和KAN等新兴模型。缺点:(1) 仅覆盖25个案例研究,样本量有限;(2) 作者明确承认这是定向文献搜索而非系统性搜索(PRISMA意义上的);(3) 某些分类存在重叠(如FlightLLM横跨多个类别);(4) 缺乏对工具链的深入技术比较。
如果你还有哪些想要了解的,欢迎在评论区留言或者讨论~

龙哥点评

论文创新性分数:★★★★☆

本文是一篇综述,通过将25个FPGA压缩-硬件协同设计案例研究(2015-2026)组织为五类分类法(DSP消除、DSP重利用/混合精度、稀疏性利用、内存层次驱动、工具链/部署级),并沿统一维度进行归一化元分析,揭示领域特征化差距并形式化六。

实验合理度:★★★★☆

不适用(综述论文)

学术研究价值:★★★★☆

本文是一篇综述,通过将25个FPGA压缩-硬件协同设计案例研究(2015-2026)组织为五类分类法(DSP消除、DSP重利用/混合精度、稀疏性利用、内存层次驱动、工具链/部署级),并沿统一维度进行归。

稳定性:★★★☆☆

现有材料未提供充分的极端条件、重复运行或扰动测试,稳定性暂按中性评价。

适应性以及泛化能力:★★★☆☆

现有材料未完整展示跨数据集、跨场景或分布外实验,泛化能力仍需进一步验证。

硬件需求及成本:★★★☆☆

不适用(综述论文);建议补充显存占用、推理时延和吞吐数据。

复现难度:★★★☆☆

现有材料未确认完整代码、配置、数据处理脚本和权重是否齐备,复现难度暂按中性评价。

产品化成熟度:★★★☆☆

论文验证以研究实验为主,真实部署中的时延、成本、维护和异常场景仍需补充验证。

可能的问题:(1) 仅覆盖25个案例研究,样本量有限;

主要参考文献

[1] Forcha P, Kajekusumadhar H, Peter M, et al. Model Compression and Hardware-Aware Acceleration for Deep Learning on FPGAs: A Co-Design Taxonomy and Comparative Analysis[J]. arXiv preprint arXiv:2608.21657, 2026.
[2] Deng L, Li G, Han S, et al. Model compression and hardware acceleration for neural networks: A comprehensive survey[J]. Proceedings of the IEEE, 2020, 108(4): 485-510.
[3] Han S, Mao H, Dally W J. Deep compression: Compressing deep neural networks with pruning, trained quantization and huffman coding[C]. ICLR 2016.
[4] Zhang C, Li P, Sun G, et al. Optimizing FPGA-based accelerator design for deep convolutional neural networks[C]. FPGA 2015.
[5] Umuroglu Y, Fraser N J, Gambardella G, et al. FINN: A framework for fast, scalable binarized neural network inference[C]. FPGA 2017.
[6] Duarte J, Han S, Harris P, et al. Fast inference of deep neural networks in FPGAs for particle physics[J]. Journal of Instrumentation, 2018, 13(07): P07027.

*本文仅代表个人理解及观点,不构成任何论文审核或者项目落地推荐意见,具体以相关组织评审结果为准。欢迎就论文内容交流探讨,理性发言哦~ 想了解更多原文细节的小伙伴,可以点击"阅读原文",查看更多原论文细节哦!       

end
压缩有五类,加速有四种,
到底怎么选,进群一起聊!
欢迎加入龙哥读论文粉丝群,扫描下方二维码或添加龙哥助手微信号加群:kangjinlonghelper。一定要备注:研究方向+地点+学校/公司+昵称(如 FPGA+上海+复旦+小龙),格式正确可更快被通过并邀请进群哦~
wechat_helper dianzan

转发文章 微博 X LinkedIn Facebook
龙哥读论文 · PaperDaily

本文基于龙哥读论文 PaperDaily 数据库整理,结合论文原文与工程视角进行解读。