浙江大学学报(工学版), 2026, 60(11): 2406-2417 doi: 10.3785/j.issn.1008-973X.2026.11.010

计算机技术

基于可变精度脉动阵列结构的卷积神经网络加速器

秦婷,, 李钊,, 闫玉婷, 杜亚飞

山东理工大学 计算机科学与技术学院,山东 淄博 255049

Convolutional neural network accelerator based on variable-precision systolic-array structure

QIN Ting,, LI Zhao,, YAN Yuting, DU Yafei

School of Computer Science and Technology, Shandong University of Technology, Zibo 255049, China

通讯作者: 李钊,男,副教授. orcid.org/0009-0002-8661-4216. E-mail:lizhao_buaa@126.com

收稿日期: 2025-12-5  

基金资助: 国家重点研发计划资助项目(2022YFE0107300);山东省重点研发计划资助项目(2025TSGCCZZB0338).

Received: 2025-12-5  

Fund supported: 国家重点研发计划资助项目(2022YFE0107300);山东省重点研发计划资助项目(2025TSGCCZZB0338).

作者简介 About authors

秦婷(2001—),女,硕士生,从事深度学习模型压缩研究.orcid.org/0009-0007-8170-6513.E-mail:qin_ting7749@163.com , E-mail:qin_ting7749@163.com

摘要

为了缓解现有方法中资源配置不合理与精度下降的问题,提出基于可变精度脉动阵列结构的CNN加速器设计方案. 在算法层面,引入基于信息熵的量化策略,评估各层信息含量并为网络分配INT4/INT8混合精度;在量化感知训练中加入KL散度损失,降低低比特量化带来的精度损失. 在硬件架构层面,构建用于执行该量化策略的专用现场可编程门阵列(FPGA)加速器;以输出固定式脉动阵列为计算核心,集成可变精度处理单元;为每个处理单元设计数字信号处理器(DSP)模块,实现并行双乘法运算以提升计算密度. 加速器采用先进先出(FIFO)滑动窗口缓存以提高片上数据复用率,将批归一化操作融入卷积计算以构建端到端处理流水线. 在Xilinx Kintex-7平台上实测所提加速器的性能. 结果表明,加速器的吞吐量、单张图片推理延迟和功耗分别为96 GOP/s、0.56 ms和13.54 W,该方案具备面向边缘应用场景的实现可行性.

关键词: 卷积神经网络(CNN) ; 混合精度量化 ; 定点量化 ; 脉动阵列 ; 现场可编程门阵列(FPGA)

Abstract

A CNN accelerator design based on a variable-precision systolic-array architecture was proposed to address inefficient resource provisioning and accuracy degradation in existing approaches. At the algorithm level, an entropy-based quantization strategy was introduced to evaluate the information content of each layer, and mixed-precision configurations (INT4/INT8) were assigned across the network. A KL-divergence loss term was incorporated into quantization-aware training to reduce the accuracy degradation caused by low-bit quantization. At the hardware-architecture level, a dedicated field-programmable gate array (FPGA) accelerator was developed to implement the proposed quantization scheme. An output-stationary systolic array was adopted as the computation core, and variable-precision processing elements were integrated into the accelerator. Each processing element was designed with a single digital signal processor (DSP) block and was configured to perform two parallel multiplications to improve computational density. Furthermore, a FIFO-based sliding-window buffer was employed to enhance on-chip data reuse. Batch normalization was fused with convolution to establish an efficient end-to-end processing pipeline. The performance of the proposed accelerator was evaluated on a Xilinx Kintex-7 platform. Results showed that the accelerator achieved a throughput of 96 GOP/s, a latency of 0.56 ms per-image, and a power consumption of 13.54 W, respectively. The proposed design demonstrates implementation feasibility for edge-deployment scenarios.

Keywords: convolutional neural network (CNN) ; mixed precision quantization ; fixed-point quantization ; systolic array ; field-programmable gate array (FPGA)

PDF (908KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

秦婷, 李钊, 闫玉婷, 杜亚飞. 基于可变精度脉动阵列结构的卷积神经网络加速器. 浙江大学学报(工学版)[J], 2026, 60(11): 2406-2417 doi:10.3785/j.issn.1008-973X.2026.11.010

QIN Ting, LI Zhao, YAN Yuting, DU Yafei. Convolutional neural network accelerator based on variable-precision systolic-array structure. Journal of Zhejiang University(Engineering Science)[J], 2026, 60(11): 2406-2417 doi:10.3785/j.issn.1008-973X.2026.11.010

卷积神经网络(CNN)在目标检测[1-2]、自然语言处理[3-4]和语音识别[5-6]等领域的应用取得显著进展,但模型深度与复杂度持续提升,使推理阶段的算力、功耗与存储需求快速增长,CPU平台已难以满足要求. GPU与专用集成电路(application-specific integrated circuit, ASIC)平台受到关注. GPU并行能力强、训练效率高,但高功耗与体积限制了其在边缘端部署. ASIC能效突出,却因成本高、周期长且灵活性不足,难以适应算法快速迭代. 相比之下,现场可编程门阵列(field-programmable gate array, FPGA)具备可编程、低功耗与数据流并行优势,逐渐成为CNN加速的重要选择.

面向资源受限环境下的CNN模型部署,通常进行软件与硬件的协同优化. 在软件端,常用量化[7]、剪枝[8]与低秩分解[9]降低复杂度,其中量化通过缩减权重与激活位宽显著减少存储与计算开销. 统一精度量化[10]对网络各层使用相同位宽,忽视层间对量化噪声敏感性差异,容易导致关键层精度不足或非关键层资源浪费. 为了实现混合精度位宽分配,有研究者提出多种敏感度度量. HAWQ[11]与HAWQ-V2[12]基于平均Hessian轨迹评估层重要性并自动分配位宽,但主要反映损失函数的局部二阶性质;基于舍入误差的方法可与多种量化策略结合,未充分考虑激活的分层量化影响[13];比例因子学习方法能够区分层间敏感性,但对训练过程与数据依赖较强,泛化能力受限[14];基于网络正交性的度量[15]对特定结构依赖较大,难以普适迁移. 本研究从信息表达角度出发,引入信息熵[16]作为位宽分配准则. 通过度量各层输出特征分布的不确定性,从全局刻画信息表达与传递能力,协同衡量权重与激活的重要性,以更直接的方式完成位宽决策,减少复杂迭代搜索. 在硬件端,卷积算法优化是提升吞吐的关键[17]. 快速傅里叶变换(fast Fourier transform, FFT)结合重叠相加法(overlap-and-add)可降低计算复杂度[18],但分块重叠易带来冗余计算与边界误差;拼接填充法(concatenate-and-pad)通过消除重叠并改进频域处理提升效率[19],但FFT转换开销较大且更适合大卷积核. Winograd[20]通过减少乘法次数实现加速,有数据重排[21]与性能建模研究,但参数增大时转换代价上升. Lu等[22]提出Winograd卷积的性能模型,用于预测硬件设计的资源利用率. 脉动阵列凭借局部互连与深流水复用成为主流架构[23-25],但多数采用固定精度,难以按层动态匹配.

本研究设计输出固定式脉动阵列并集成可变精度处理单元(reconfigurable precision processing element, RmPE),以指令流驱动实现跨层精度切换;采用先进先出(first-in-first-out, FIFO)滑动窗口与算子融合来降低访存、提升吞吐. 信息熵驱动的INT4/INT8混合精度量化与动态可变精度脉动阵列协同设计能够在资源受限环境下实现CNN推理的精度与效率平衡. 本文的创新点如下:1)提出基于信息熵的混合精度量化方案,依据各层输出特征图信息熵自适应分配INT4/INT8位宽,在量化感知训练中引入KL散度损失以保持量化前后分布近似一致,降低精度损失. 2)设计并实现指令驱动的FPGA专用加速器架构,将量化决策有效映射到硬件执行逻辑. 以输出固定式脉动阵列为核心,提出可变精度处理单元,通过解析离线编译指令流,利用单个数字信号处理器(digital signal processor, DSP)实现并行双乘法,在资源不变前提下提升计算密度;采用参数化FIFO滑动窗口提升片上复用,结合算子融合构建低访存端到端流水线.

1. CNN模型量化

1.1. 基于信息熵的位宽选择

混合精度量化旨在通过降低模型中参数的位宽来显著减少系统的计算和内存需求[26]. 相较于固定精度量化,混合精度量化允许在单一模型中采用不同的精度级别,在实现计算和存储资源优化利用的同时保持模型精度. 在实际应用中,不当的位宽分配策略不但无法充分利用量化的优势,还会导致计算资源的浪费和模型性能下降. 本研究采用信息熵作为位宽分配的标准. 信息熵能够衡量每个层输出的整体不确定性和信息含量,反映该层在整个网络中传输和表示信息的能力. 与仅依赖局部参数的方法不同,信息熵捕获每个层的全局敏感度特性. 通过分析信息熵,可以同时考虑权重和激活的量化需求,实现更平衡的位宽分配. 基于熵的位宽分配无需复杂的探索策略就能有效反应神经网络各层输出的复杂性,不仅能够量化每层输出的分布复杂性,捕捉局部特征,还能通过整合所有层的熵值来评估每层在整个网络中的全局重要性. 信息熵的计算公式为

$ H(X)=-\sum \limits_{i=1}^{n}P({x}_{i}){\mathrm{log}}_2 P({x}_{i}). $

式中:$ P({x}_{i}) $为数值$ {x}_{i} $出现的概率,n为可能输出事件的总数. 在模型前向传播过程中,计算每个层输出的信息熵,以衡量该层在量化过程中的相对重要性. 为了减弱单个计算的随机波动可能带来的影响,引入滑动窗口技术对这些熵值进行平滑处理. 当滑动窗口填满时,窗口内的熵值会被平均,之后窗口被清空并重新填充新数据,以降低噪声并获取更稳定的熵测量值. 最终,每个层的平均熵值被聚合和存储,形成熵值数据集,作为后续位宽分配的基础,流程如图1所示. 根据熵值数据集的分布特点来确定阈值. 具体而言,熵数据集的第50百分位被确定为动态阈值. 这种基于百分位的划分是有效的启发式策略,旨在将信息复杂度最高的二分之一层级分配给最高精度,同时将复杂度最低的一半层级分配给最低精度,从而在资源和性能间取得平衡. 根据每个层的平均信息熵与阈值的比较,自适应地分配位宽. 若该层平均熵高于或等于阈值,则分配高位宽,否则分配低位宽. 这种动态调整机制能够使位宽分配策略更合理地匹配每个网络层的需求,提升量化过程的准确性和稳定性.

图 1

图 1   基于信息熵的位宽分配流程图

Fig.1   Flowchart for bit-width allocation based on entropy


1.2. 基于KL散度算法的定点量化

在深度学习模型部署到计算资源受限的边缘设备时,定点量化是有效的模型压缩技术. 它将高精度浮点数转化为低精度数,能够显著减少模型的存储空间和计算开销. 然而,量化过程不可避免地引入信息损失,可能导致模型性能下降. 为了在模型压缩和性能之间取得最佳平衡,本研究引入KL散度(Kullback-Leibler divergence)损失函数对量化过程进行优化. 在定点量化过程中,量化精度的选择对于误差的大小以及计算和存储的效率至关重要. 传统的定点量化方法通过固定的量化步长$ s $将连续值映射到离散的定点数值. 对于给定的浮动数值$ x $,定点量化的过程可以表示为

$ {x}_{q}=\text{round}\left(\displaystyle\frac{\;x\;}{\;s\;}\right). $

式中:round(·)为四舍五入取整函数. 基于KL散度算法的定点量化通过将量化步长设定为$ {2}^{k} $来实现,其中k=6对应于8位定点量化的配置. 在该配置中,8位被分配为1位符号位、1位整数位和6位小数位,确保量化步长具有足够的精度. 由于2的幂次操作可以通过硬件中的位移运算高效实现,相比其他数值量化方法,这种方式的计算开销更低,特别适合用于硬件加速器中. 此外,在量化过程中,通常会对结果进行限制,以确保落在预定的量化范围内. 量化公式为

$ {x}_{q}=\text{Clamp}\;(\text{round}\;(x\cdot {2}^{k}),{Q}_{\min },{Q}_{\max }). $

式中:Clamp(·)为范围裁剪函数;Qmin和Qmax分别为量化范围上下限,确保量化值保持在范围$[ {Q}_{{\mathrm{min}}}, {Q}_{{\mathrm{max}}}] $. 经过训练后的ResNet20模型中所有权重参数的分布情况如图2所示. 权重分布呈现出明显的类高斯分布特征,绝大多数参数值都集中在零点附近的很小范围内. 这种分布特性为定点量化提供了重要依据,可以通过确定$ [{Q}_{{\mathrm{min}}},{Q}_{{\mathrm{max}}} ]$的量化范围来精确表示绝大部分的权重,只有少数离群值会被裁剪,从而在保证模型精度的同时,最大化地利用有限位宽.

图 2

图 2   ResNet20权重分布图

Fig.2   ResNet20 weight distribution


为了进一步优化量化误差,减少有量化导致的精度损失,KL散度被引入损失函数. KL散度能够衡量量化后信号分布与原始信号分布之间的差异[27],通过最小化KL散度,可以有效减少量化引入的误差. KL散度的表达式为

$ \text{KL}\;(P||Q)={\sum }_{i}P({x}_{i})\log \left(\frac{P({x}_{i})}{Q({x}_{i})}\right). $

式中:$ P(x) $为原始信号的概率分布,$ Q(x) $为量化后的信号分布. 由最小化KL散度确保量化后的分布尽可能接近原始分布. 在量化感知训练过程中,网络在训练时仍会通过量化和反量化操作进行权重更新. 具体而言,在每次前向传播时,网络的激活值和权重会被量化为定点表示,经过反量化后,模型计算量化后的输出. 通过计算量化后的输出与原始输出之间的均方误差,通过KL散度计算量化后的分布与原始分布之间的差异,两者结合,得到总损失函数为

$ \text{Loss}=\text{MSE}\;(P,Q)+\alpha \text{KL}\;(P||Q). $

其中$ \text{MSE} $衡量量化误差,KL散度优化确保量化后信号尽量保留原始信号的分布特征. 在训练过程中,网络通过最小化总损失函数,逐步优化权重,减少量化误差,最终通过反向传播调整网络参数. 训练完成后,模型保存的量化权重能够保持定点精度,使量化后的网络性能尽可能接近原始浮动精度模型,提高硬件实现效率.

2. CNN加速器设计

2.1. 加速器整体架构

本研究设计的加速器基于混合精度量化,旨在高效加速神经网络中的卷积运算. 该加速器整体架构设计结合卷积运算的计算特性和硬件资源的优化配置,通过输出固定式脉动阵列和可变精度设计的处理单元,实现卷积加速. 加速器不仅能够提高计算吞吐量,还能够平衡精度和资源,满足深度学习推理任务对精度、计算能力和能效的多重要求. 如图3所示,加速器采用基于输出固定式脉动阵列的卷积架构,将数据存储和计算局部化,减少对外部存储器的访问需求,提升计算效率和能效. 脉动阵列由多个处理单元组成,每个处理单元(processing element, PE)负责执行独立的乘加运算,且内部集成寄存器存储中间结果和最终计算结果. 数据流通过2个缓冲区,沿2个正交方向进入阵列,经过时序控制,每个PE能够在确定的时钟周期内完成卷积操作. 得益于高度流水线化的计算模式,脉动阵列在实现高并行计算的同时强化了本地数据复用,从架构层面显著减少了存储访问频率及能耗开销. 为了进一步提升计算速度和精度,同时优化能效,设计中引入混合精度量化,以适应不同卷积层对精度的要求. 为此,系统采用RmPE,通过在8位和4位精度模式之间动态切换,实现对不同卷积层计算精度的灵活调整,提升整体系统的计算效率和性能表现. 加速器通过引入FIFO滑动窗口缓存来优化输入数据处理,并与脉动阵列结构紧密结合,以提高计算效率. FIFO滑动窗口机制的主要作用是预处理输入数据,并将其组织为同尺寸数据窗口供脉动阵列使用. 这样,每个数据窗口可以被多个PE并行处理,减少对外部存储器的访问频率. 该机制不仅减少了存储带宽的压力,还提高了数据传输效率,进而提升了卷积计算的整体吞吐量和能效.

图 3

图 3   基于可变精度脉动阵列结构的加速器架构图

Fig.3   Architecture diagram of accelerator based on variable-precision systolic-array structure


2.2. 脉动阵列架构

卷积运算是深度学习模型中的核心计算,直接决定平台的计算性能与能效,本质是大规模矩阵乘法与复杂的数据访问,对算力密度与存储带宽提出了极高要求. 加速器采用基于输出固定式的脉动阵列结构,通过在片上实现数据局部化与深度流水化,有效提升卷积计算的吞吐率与能效. 输出固定是指在卷积计算过程中,每个PE对应输出特征图中的1个元素位置,其内部寄存器用于持续累积该位置的部分和,直到计算完成为止. 与之对应的输入特征数据和卷积核权重在阵列中分别沿水平方向与垂直方向流动,在每个时钟周期依次传递给下游的相邻PE. 这样,每个PE都可在数据流经过时完成对应乘加运算,并将结果保存在本地寄存器中.

相较于权重固定式或输入固定式结构,输出固定式数据流具有更明显的优势. 由于部分和的累积在PE本地寄存器内完成,计算过程中无需跨单元传输结果,也减少了对片外存储的频繁访问,有效降低了带宽压力. 输入特征与权重在阵列内可被多次复用,提高了数据复用率并降低访存能耗. 该结构下PE控制逻辑一致、通信模式规整,更利于时序收敛与深度流水化实现. 因此,输出固定式在保证计算正确性的前提下能够更充分利用片上资源,实现更高的能效与吞吐率,用于卷积加速. 如图4所示为输出固定式脉动阵列的运行机制,该结构的核心特征在于卷积计算的部分和始终固定在各PE的内部寄存器内,无需频繁搬移到阵列外部. 设输入特征图矩阵A,卷积核权重W,则每次计算时A的列与W的行在阵列中逐级移动. A的数据自上方缓冲区垂直输入各PE列,W的数据自左侧缓冲区水平输入各PE行. 在阵列运行的稳态阶段(输入和权重已充满阵列后),所有PE可在每个时钟周期同时执行乘加运算,并将输入与权重分别传递给下游单元,直至所有部分和累积完成. 每个PE不仅承担局部运算,还通过内部寄存器存储并累积当前部分和,实现阵列内的结果逐步累加. 基本运算表示为

图 4

图 4   脉动阵列结构图

Fig.4   Diagram of systolic-array structure


$ \mathrm{output}=\mathrm{input}* \mathrm{weight}+\mathrm{partial}\_ \mathrm{sum}. $

其中输入激活值input来自上方PE或缓冲区,权重值weight来自左侧PE或缓冲区,partial_sum为内部寄存器的累积值. 经过若干时钟周期后,各PE内寄存器即保存最终卷积结果,随后可一次性读出,如算法1所示. 在硬件实现上,脉动阵列须与片上缓存和全局控制协同工作,因此输入特征与权重先加载到片上缓冲区,以降低对主存带宽的依赖. 阵列由同步时钟驱动,PE仅与邻近单元短距通信,从而简化布线并易于时序收敛;边缘PE通过接口连接外部通路,支持级联扩展. 由于数据局部性强,复用主要发生在阵列内部,降低外部I/O与功耗. 流水化设计提升吞吐与能效,并行能力随规模近线性增长但受资源与带宽约束,同时减少片外访问以缓解“存储墙”,因此在规整任务上较GPU更具能效稳定性,且规则拓扑匹配FPGA,适合低延迟边缘推理.

算法1: 输出固定式脉动阵列结构

输入:矩阵A (维度$ N\times M $)、矩阵B (维度$ M\times L $)

输出:矩阵C (维度$ N\times L $), $ \boldsymbol{C}\mathbf{=}\boldsymbol{A}\times \boldsymbol{B} $

1:for all PE(i, j) from (0, 0) to (N−1, L−1) in parallel do

2:  if i == 0

3:   A_in := Load next row from A buffer

4:  else

5:   A_in := 从上方的PE(i−1, j)接收数据 (Receive from PE(i−1, j))

6:  if j == 0

7:   B_in := Load next column from B buffer

8:  else

9:   B_in := 从左侧的PE(i, j−1)接收数据 (Receive from PE(i, j−1))

10:  C(i, j) := C(i, j)+A_in$* $B_in

11:  将A_in传递给下方的PE(i+1, j) (Pass A_in to PE(i+1, j))

12:  将B_in传递给右侧的PE(i, j+1) (Pass B_in to PE(i, j+1))

13:end for

14:return C

2.3. 可变精度处理单元设计

在RmPE设计中,为了区别于传统固定位宽的并行实现方式,提升混合精度场景下DSP资源利用率,本研究利用DSP48E1输入端口的位宽特性,对输入数据进行位域分段映射与打包,在单个DSP内组织两路特征数据的并行计算. 具体而言,单元内部引入由指令流驱动的“精度模式”控制信号,用于选择不同位宽下的输入预处理与打包映射规则,使硬件能够在不引入额外乘加阵列的前提下,实现INT4/INT8计算模式的快速切换(控制在单个时钟周期内生效). 为了满足高频时序约束,在输入重排、模式选择以及累加反馈等关键组合路径上插入流水寄存器,以缩短关键路径并提升整体工作频率.

为了提升卷积计算能效并优化资源利用率,基于DSP48E1构建“单单元双路并行乘法”结构,通过统一的8-bit数据通路实现混合精度复用. 针对混合精度加速器常见的冗余逻辑问题,在输入端加入符号扩展预处理模块:当精度模式为8-bit时,特征数据A1和A2直接按预定义位移关系打包并映射至DSP输入端口的高/低位字段;当精度模式为4-bit时,先将4-bit操作数进行符号扩展至与8-bit通路数值等价的表示,再采用与8-bit相同的打包/映射方式送入DSP. 卷积核权重W与两路特征数据同时进入DSP48E1,完成并行乘法与累加,在不同位宽下均保持一致的双路吞吐能力,避免跨单元归并带来的额外时延与面积开销,缓解多精度任务下的资源失配问题,如图5所示. 在DSP48E1内部,数据将同时参与2个乘法操作:$ {A}_{1}\times W $和$ {A}_{2}\times W $. 通过灵活的数据路径和控制逻辑,DSP48E1能够并行计算这2个乘积并将其存储到累加器中. 每个乘积的累加过程也在DSP48E1内部进行,进一步减少计算过程中跨单元的数据传输,提升计算速度. 具体如算法2所示. RmPE引入名为“精度模式(mode)”的控制信号,以适配不同卷积层的精度配置. 该单元的核心在于为不同位宽构建统一的双并行乘法计算通路. 在8 bit模式下,RmPE利用数据打包技术将输入数据直接送入计算通路,并行执行两路$ 8\times 8 $乘法运算. 在4 bit模式下,硬件先通过符号扩展电路将4-bit数据对齐至8-bit,再利用相同的硬件路径实现并行的两路乘法运算. 这种设计使得加速器在精度切换过程中能够保持较为稳定的硬件利用率,实现量化策略与底层算力密度的有效匹配. 尽管FPGA硬核乘法器的物理位宽不可变,但通过灵活配置输入路径和数据控制逻辑,RmPE实现了多精度计算的高效模拟,为神经网络的变精度推理提供了硬件基础.

图 5

图 5   双乘法过程图

Fig.5   Double multiplication process diagram


算法 2: 可变精度处理单元的双乘法设计

输入: 特征图数据A和B、权重数据C

输出:乘法计算结果A × C和B × C

1:if input_data is 4_bit

2:  A_8bit := SignExtend (A, from=4, to=8)

3:  B_8bit := SignExtend (B, from=4, to=8)

4:else

5:  A_8bit := A;B_8bit := B

6:packed_AB := Concatenate (A_8bit, B_8bit)

7:(Res_AC, Res_BC) := ParallelMultiply(Packed_AB, C)

  // 其中: Res_AC = Packed_AB[15:8] * C

  // 其中: Res_BC = Packed_AB[7:0] * C

8:return (Res_AC, Res_BC)

总体而言,基于DSP48E1的RmPE结合了“双乘法并行”和可变精度的设计理念,实现了高性能、低延迟的并行计算. 在不增加DSP数量的前提下,可变精度PE单元设计提升了计算吞吐量,并优化了能效,适用于大规模深度学习推理任务.

2.4. 先进先出滑动窗口缓存

卷积运算的核心是对输入特征图应用滑动窗口操作. 集成的FIFO滑动窗口机制不是简单的缓冲结构,而是专为输出固定式脉动阵列定制的参数化并行馈送网络. 该设计支持根据卷积核尺寸$ K $动态配置FIFO的深度与并行输出通道数,实现与脉动阵列RmPE规模匹配的一对一数据分发. 由于采用输出固定模式,部分和始终保留在RmPE内部,FIFO提供的$ K\times K $窗口数据在阵列内实现水平与垂直方向的最大化复用. 对于任意$ K\times K $卷积核,单次访存的数据重用率提升了$ {K}^{2} $倍. 这种设计降低了传统权重固定模式下复杂的全局广播时序压力.

如图6所示,以$ 3\times 3 $为例,FIFO滑动窗口由数据输入端、分层、FIFO缓存(FIFO_0和FIFO_1)及9路并行输出端组成. 当处理特定像素点时,系统同步从输入端、存储前一行的FIFO_0以及存储前两行的FIFO_1中提取数据,实时构建完整的$ 3\times 3 $邻域窗口. 随着像素推进,FIFO内部数据自动移位更新,旧数据被自然替换,形成连续的滑动窗口操作. 输出端提供的9个标准化通道(c1~c9)将数据适配脉动阵列的行输入要求,降低后续处理中的数据重组开销,确保每个时钟周期均能提供完整的并行窗口流. 与传统方案相比,该机制通过重叠区域的数据多次复用,提升访存效率. 此外,基于参数化的设计,系统可根据网络层需求动态调整缓存策略,实现硬件利用率的最优化.

图 6

图 6   先进先出滑动窗口行缓存数据对齐结构图

Fig.6   Data alignment structure in FIFO-based sliding-window line buffer


为了实现FIFO滑动窗口模块与脉动阵列的高效对接,系统采用直接映射的数据通路. 如图7所示,FIFO各行的输出数据直接连接到脉动阵列对应行,避免引入额外的数据格式转换与重排缓冲,降低控制复杂度与中间访存开销. 阵列输出端通过累加器与输出缓存对各处理单元结果进行收集与累加. 累加器采用流水化结构,以支持连续卷积窗口的结果输出.

图 7

图 7   集成可变精度处理单元与先进先出时序对齐组件的脉动阵列总体硬件结构图

Fig.7   Overall hardware architecture of systolic array integrating reconfigurable precision processing elements and FIFO based timing alignment modules


在时序调度方面,为了适配不同卷积核尺寸对数据到达顺序的要求,硬件引入可配置的数据倾斜控制,如图8所示. 图中上半部分为$ K=3 $,控制逻辑在FIFO_Row0/1/2的读出路径上施加固定的行间周期偏移,其中FIFO_Row0为0周期延迟,FIFO_Row1为1周期延迟,FIFO_Row2为2周期延迟. 因此同一拍输入数据在3行上的出现时刻被错开,形成输入倾斜. 例如D0.0先从FIFO_Row0输出,随后在下一拍/下两拍分别从FIFO_Row1、FIFO_Row2输出,保证同一$ 3\times 3 $卷积窗口所需的3行数据在阵列内部能够按列对齐并同步参与计算,无需额外的重排/缓存电路. 图中下半部分为$ K=1 $,行间延迟单元不启用,数据走直通路径以实现同步输出. 通过这种方式,系统在保持直接映射连接的同时,实现不同核尺寸下的时序对齐,减少对额外重排电路的依赖.

图 8

图 8   适配不同卷积核尺寸的可配置先进先出滑动窗口缓存的数据对齐时序图

Fig.8   Timing diagram of data alignment for configurable FIFO sliding window buffer adapting to different kernel sizes


通过将FIFO滑动窗口与脉动阵列结合,系统在数据重用、存储带宽优化和计算效率提升方面都实现显著改进. 与传统的直接内存访问方式相比,FIFO滑动窗口减少了外部存储器的访问次数,提高了数据访问效率,降低了系统功耗. 流水线并行处理的实现进一步提升了加速器计算吞吐量.

2.5. 卷积后处理单元与算子融合技术

在CNN硬件推理中,批归一化 (batch normalization, BN) 层与激活的后处理若独立执行,会增加中间特征图的访存与数据搬移并引入额外延迟. 为此,采用卷积后处理单元与算子融合,将后处理与卷积计算在数据流上合并,以减少中间数据读写和冗余计算,提升整体效率并降低资源与能耗.

2.5.1. 批归一化层融合优化

在深度卷积神经网络中,BN层是提高网络训练稳定性和收敛速度的关键组件. 在推理阶段,BN层的计算会引入额外的内存访问开销和计算延迟. 为了优化硬件实现效率,采用参数融合技术,将BN层的缩放与偏移参数在推理前预先吸收到卷积权重与偏置中. 标准的BN计算公式为

$ y=\gamma \cdot \frac{x-\mu }{\sqrt{{\sigma }^{2}+\varepsilon }}+\beta . $

式中:$ x $为输入特征图,$ \mu $和$ {\sigma }^{2} $分别为批统计均值和方差,$ \gamma $和$ \beta $为可学习的缩放和偏移参数,$ \varepsilon $为数值稳定性常数. 在推理阶段,BN层的$ \mu $和$ {\sigma }^{2} $为固定值. 设原始卷积操作为

$ {y}_{{\mathrm{conv}}}=W\cdot x+b. $

融合BN层后的等效卷积操作表示为

$ {y}_{{\mathrm{fused}}}={W}_{{\mathrm{fused}}}\cdot x+{b}_{{\mathrm{fused}}}. $

其中融合后的权重和偏置为

$ \left.\begin{array}{l}{W}_{{\mathrm{fused}}}=W\cdot \dfrac{\gamma }{\sqrt{{\sigma }^{2}+\varepsilon }},\\{b}_{{\mathrm{fused}}}=\dfrac{\gamma \cdot (b-\mu )}{\sqrt{{\sigma }^{2}+\varepsilon }}+\beta .\end{array}\right\} $

所有融合参数在模型部署前一次性计算,硬件端只需进行一次卷积加法操作,无需专设BN算子和访存,有效简化硬件结构、降低面积和延迟,提升了流水线的整体吞吐率.

2.5.2. 硬件激活函数实现

除了BN融合外,激活函数的硬件集成也是关键的卷积后处理环节. 在如ResNet的主流网络结构中,普遍采用ReLU激活函数. 在传统方案中,激活算子往往独立于卷积流水线,导致中间数据反复写回存储和多次访存操作. 本研究将ReLU激活函数直接嵌入卷积计算流水线的尾部,实现高度集成的端到端数据流. ReLU激活函数的数学定义为

$ f(x)={\mathrm{max}}(0,x)\begin{cases} x, x\geqslant 0;\\0, x \lt 0.\end{cases} $

在8-bit有符号定点数的硬件中,ReLU函数可以通过检测符号位来高效实现. 设输入数据为8-bit有符号数$ {\mathrm{x\_ in }}$[7:0],其中$ {\mathrm{x\_ in}} $x[7]为符号位,仅需一条简单的与门操作即可完成,无需比较器或多路选择器,硬件实现的逻辑表达式为

$ \left.\begin{array}{l}{\mathrm{sel}}=({\mathrm{x\_ in}}\geqslant 0)?1\colon 0.\\{\mathrm{y\_ out}}={\mathrm{sel}}\ast {\mathrm{x\_ in}}.\end{array}\right\} $

其中$ {\mathrm{sel}} $为选择信号,当输入大于0时为1,否则为0. 更简洁的硬件描述语言表达为

$ {\mathrm{y\_ out}}={\mathrm{x\_ in}}\& \{8\sim {\mathrm{x\_ in}}[7]\}. $

即当符号位为0时,直接输出$ x $,否则输出0. 卷积后处理单元与算子融合技术延迟低、资源占用极小,适合在卷积流水线末端以组合逻辑实现,保证每个卷积输出都能以最小时延完成激活,避免了中间数据的反复存储访问,实现了端到端的高效数据流处理.

2.6. 加速器的实现流程

为了实现高效CNN推理加速,硬件加速器采用模块化设计,将系统划分为职责清晰的功能模块,以提升可维护性与可扩展性,通过模块协同实现计算资源优化与数据流高效管理. 系统流程从训练阶段参数准备开始,经数据传输、指令解析与资源调度,最终完成卷积计算,形成端到端处理链路. 在训练阶段,采用量化感知训练(quantization-aware training, QAT)进行混合精度量化训练,将量化后的卷积核、偏置、量化位宽与缩放因子等参数以层次化结构化文件保存,确保每层卷积所需信息完整. PC端Python脚本依据基于信息熵的位宽分配策略,将量化决策与网络结构信息编译为定制硬件控制指令. 指令包含数据地址映射、输入输出通道数、位宽模式及模块类型标识等关键参数,为硬件端后续的动态配置提供直接依据. 基于上述参数文件与指令,系统通过通用异步收发传输器(universal asynchronous receiver/transmitter, UART)将数据传输至加速器板卡,并统一写入双倍数据速率(double data rate, DDR)形成有序队列. 控制器作为核心协调单元,经AXI4接口读取DDR中的指令与参数,在接收到控制信号后对指令进行语法解析与语义分析,提取配置项,并依据模块类型标识与精度模式动态选择执行路径:残差块自动配置跳跃连接通路,不同位宽卷积驱动RmPE与FIFO缓存调整数据扩展逻辑与访存节拍. 在执行阶段,仲裁器与全局状态机保障各模块协同运行. 仲裁器采用优先级调度处理资源访问冲突,减少瓶颈与延迟;全局状态机实时监测数据流状态,确保各计算模块按指令顺序稳定执行. 总体而言,加速器采用指令驱动的软硬协同模式,实现“算法给出执行策略,指令驱动资源映射”的闭环,使离线混合精度决策能够在硬件端实时转化为RmPE通路切换与FIFO吞吐调节,获得实际性能收益.

3. 实验及结果分析

选择ResNet模型作为实验对象,在CIFAR数据集上开展验证实验. 实验包括模型的训练与量化、量化模型的保存和参数提取、FPGA加速器平台的部署与实现以及性能评估.

3.1. 量化实验结果分析

为了验证基于信息熵的混合精度量化在CNN加速器中的有效性,针对ResNet20与ResNet56开展量化实验. 实验基于PyTorch,在NVIDIA GeForce RTX 4090完成,数据集为CIFAR-100,按标准划分为50 000张训练集与10 000张测试集. 量化阶段采用本研究提出的位宽策略,训练迭代轮次为60. 优化器为带动量随机梯度下降(stochastic gradient descent, SGD),初始学习率为0.1,使用余弦退火调度,设置前5个迭代轮次为预热以提升训练稳定性. 此外,权重衰减系数设定为1.0×10−4,批量大小为256. 实验结果如表1所示,其中AccFP为模型在全精度下的准确率,AccINT为在INT4/8混合精度下的准确率,$ L $为损失,$ R_{\mathrm{C}}$为压缩比. 实验结果表明,全精度下ResNet20与ResNet56准确率分别为74.46%和74.56%. 采用INT4/8混合精度量化后,ResNet20与ResNet56精度损失分别为0.72和0.47,仍处于合理范围内,同时降低计算与存储开销. 压缩比方面,ResNet20达7.8×,ResNet56达16.2×,说明该方法在存储节省上具有优势,且在更深网络中可依据层特征分布动态调整精度获得更高压缩效果,适用于边缘设备与硬件加速推理.

表 1   CIFAR-100数据集上不同模型的性能量化实验结果

Tab.1  Experimental results on quantization performance for different models on CIFAR-100 dataset

模型AccFP/%AccINT/%LRC
ResNet2074.4673.740.727.8×
ResNet5674.5674.090.4716.2×

新窗口打开| 下载CSV


为了验证以信息熵分布第50百分位作为动态阈值的合理性,在CIFAR-100上对ResNet20进行阈值敏感性分析,如表2所示,Pp为百分位数. 当阈值为30百分位时,约70%卷积层采用INT8,Top-1准确率达74.10%,压缩比为5.2×,压缩收益有限;当阈值提高到70百分位时,压缩比提升至10.2×,由于更多关键层被量化为INT4,准确率降至72.15%. 相比之下,50百分位在保持准确率为73.74%的同时实现压缩比为7.8×,准确率较FP32仅损失0.72. 结果表明,50百分位阈值在精度保持与资源压缩之间取得了更优平衡,实现了较均衡的层级划分.

表 2   不同百分位阈值设置下ResNet20的性能对比实验结果

Tab.2  Performance comparison of ResNet20 under different percentile threshold

PpTop-1/%RC
3074.105.2×
5073.747.8×
7072.1510.2×

新窗口打开| 下载CSV


如表3所示,PACT[28]和LSQ[29]均采用固定4-bit量化,这2种方法在2个模型上的准确率均低于本研究所提方法,其中PACT的准确率下降幅度更大,下降了约2个百分点. 该结果反映出固定位宽策略未区分不同层的量化敏感度差异,在部分层(尤其是对精度更敏感的层)可能引入更大的量化误差,进而影响整体性能. 相比之下,所提方法依据层敏感度进行位宽分配,对敏感层采用较高位宽,对相对不敏感层采用较低位宽,在精度与压缩之间形成差异化配置. 与同样采用可变位宽策略的LIMPQ相比,所提方法的位宽配置更低,在实验中准确率更高. LIMPQ通过学习缩放因子估计层敏感度并将位宽量化至4位混合精度量化,在ResNet20上准确率下降较为明显,且在所测试模型上的准确率均低于所提方法. 上述结果表明,采用信息熵对层敏感度进行度量可以得到不同的位宽分配方案,并在本实验设置下对应更高的准确率表现.

表 3   CIFAR-100数据集上不同方法的Top-1准确率对比

Tab.3  Top-1 accuracy comparison of different methods on CIFAR-100 dataset

模型方法量化精度Top-1/%
ResNet20BaselineFP3274.46
PACTINT465.56
LSQINT471.37
LIMPQ4MP73.95
本研究INT4/874.01
ResNet56BaselineFP3274.10
PACTINT470.35
LSQINT473.56
LIMPQ4MP73.80
本研究INT4/874.06

新窗口打开| 下载CSV


3.2. 仿真实验结果分析

加速器在Windows环境下开发,使用PyTorch完成网络搭建、量化训练与参数提取. 硬件结构在Vivado 2018.2中采用Verilog HDL实现,平台为Xilinx Kintex-7. 为了对比ResNet20在FPGA上的推理优势,分别在CPU、GPU与FPGA上测试,CPU启用MKL,GPU运行CUDA+cuDNN,关闭非关键后台以保证公平. 实验测量CIFAR-100中单张$ 3\times 32\times 32 $图像的推理时间与能耗. CPU/GPU通过多批次大小取最优并换算单张时间,FPGA在批次大小为1下测试. 各平台的详细硬件参数配置如表4所示. 实验对比结果如表5所示,其中f为频率,t为延迟,P为功耗,S为加速比. 实验结果表明,ResNet20加速器在混合精度量化、算子融合与并行计算优化后,计算速度为CPU的5.96倍,功耗仅为CPU的6.4%;在功耗仅为GPU的6.7%条件下仍获得更快速度. 以上性能来源于输出固定式脉动阵列的并行处理,以及PE利用单个DSP实现双乘法以提升计算密度,同时FIFO滑动窗口片上缓存提高数据复用,减少外部存储访问并提供连续数据流.

表 4   测试平台配置表

Tab.4  Test platform configuration

实验平台硬件型号计算配置存储配置软件环境
CPUIntel(R) Xeon(R) Gold 6242R20 Cores/40 Threads64 GB DDR4MKL Enabled
GPUNVIDIA RTX 2070 SUPER2560 CUDA Cores8 GB GDDR6CUDA/cuDNN Enabled
FPGAXilinx Kintex-7 (XC7K325T)28 nm/840 DSPs1 GB DDR3Vivado 2018.2

新窗口打开| 下载CSV


表 5   不同平台下ResNet20单张图像推理性能对比

Tab.5  Comparison of ResNet20 single-image inference performance across different platforms

实验平台f/MHzt/msP/WS
CPU31743.34212.001.00
GPU16051.52202.002.20
FPGA1000.5613.545.96

新窗口打开| 下载CSV


3.3. 加速器性能分析

加速器在FPGA上的资源消耗如表6、表7所示,其中η为资源利用率. 查找表LUT与触发器FF的资源利用率分别为17.12%和9.84%,块随机存取存储器和数字信号处理单元DSP的资源利用率分别为16%和29.11%,以上列举的实验结果主要与PE的双乘法设计有关并集中了承载计算负载. 总体上,FPGA片上资源利用情况能够满足设计需求,其中计算相关资源得到充分利用,同时LUT、FF和BRAM仍保留一定余量,为后续功能扩展提供空间. 结合表6的模块化统计,计算核心乘累加模块占据主要资源开销,消耗262个DSP,约占系统DSP使用量的100%;LUT与FF分别占总量的95.2%和94.7%,主要用于可变精度数据通路、FIFO滑动窗口缓存以及脉动阵列流水线寄存器. 相比之下,仲裁器、控制器及后处理单元池化(Pool/Temp_add)等辅助模块占比很低,说明资源主要集中在计算单元上,且该结构有助于减少控制逻辑冗余. 在实现0.56 ms低延时的同时,整体仍保持较大资源裕量与可扩展性.

表 6   加速器各模块资源使用统计

Tab.6  Resource usage statistics for each accelerator module

模块LUTFFDSPBRAM
仲裁器37238101.0
控制器30351300.5
乘累加模块280363205326277.0
池化模块31540500.5
临时累加模块42347801

新窗口打开| 下载CSV


表 7   ResNet20加速器总体资源使用情况

Tab.7  Overall resource usage of ResNet20 accelerator

资源类型资源总量已用资源η/%
LUT203 80029 42917.12
FF407 60033 8309.84
DSP84026229.11
BRAM4458016.00

新窗口打开| 下载CSV


针对不同硬件平台及工艺制程带来的能效基准差异,引入归一化指标能效比进行评价分析,计算公式为

$ \text{EER}=\frac{T}{P} .$

式中:$ T $为加速器的计算吞吐量,$ P $为硬件系统的总功耗. 在实验评估中,$ P $由单张图片推理能耗与推理延时的比值计算得出. 不同加速器在计算精度、吞吐量及能效等维度的对比结果如表8所示. 在计算精度与复杂度权衡方面,文献[30]采用32位浮点数进行计算,虽然维持了原始模型精度,但是硬件资源需求与计算开销相对较高. 本研究通过基于信息熵的混合精度量化策略将位宽压缩至INT4/8,在ResNet20准确率仅损失0.72%的前提下,显著降低了模型的存储空间与计算复杂度. 在算力产出层面,虽然文献[31]与本研究均基于Kintex-7平台实现,但其采用的INT6-8量化位宽分配策略未充分挖掘底层硬件在低比特下的计算潜力. 本研究通过RmPE处理单元的双乘法架构创新,利用单个DSP实现两路并行乘加运算,在相同资源规模下提升了算力密度. 与采用FFT算法的文献[32]相比,本研究所提架构减少了频域转换带来的额外计算代价与转换开销,利用参数化FIFO缓存机制配合输出固定式脉动阵列,提升了单次访存的数据重用率,缓解了片外访存压力. 尽管文献[33]受益于16 nm先进工艺及更高工作频率在绝对吞吐量上表现占优,但本研究在28 nm成熟工艺下实现的7.09 GOP/W能效水平,验证了指令驱动架构在资源利用与能效优化方面的可行性. 此外,文献[34]主要针对轻量化网络设计,在处理具有残差结构的深层ResNet网络时,单位能效表现低于本研究所提方案. 本研究所提加速器在实现0.56 ms推理延时的同时,针对ResNet56复杂的计算任务仍能保持7.10 GOPs/W的稳定能效产出,证明了该架构在应对不同深度网络任务时的通用适配性与硬件一致性.

表 8   加速器性能对比实验结果

Tab.8  Experimental results on accelerator performance comparison

方案实验平台量化精度f/MHzt/msT/(GOP·s−1)EER/(GOP·W−1)
文献[30]Zynq ZU7EVFP321002.9161.4611.80
文献[31]Kintex 7INT6-81000.47179.0013.44
文献[32]Zynq 7020FP1615442.00——
文献[33]Zynq MpSoCINT83001.53130.0031.71
文献[34]ZYNQ-7020FP16100——7.39
本研究Kintex-7(ResNet20)INT4/81000.5696.007.09
本研究Kintex-7(ResNet56)INT4/81001.2396.007.10

新窗口打开| 下载CSV


4. 结 语

本研究1)设计并实现了面向边缘计算应用的CNN硬件加速器,通过软硬件协同设计,该加速器在计算性能、功耗与资源利用之间取得了良好的平衡. 2)以输出固定式脉动阵列为核心,设计支持INT4/INT8的可变精度处理单元,该单元利用单个DSP硬核实现了高效的双乘法并行计算. 3)结合FIFO滑动窗口缓存机制,优化片上数据流转与复用,显著降低了对外部存储的依赖. 基于可变精度脉动阵列结构的卷积神经网络加速器共同确保了硬件资源的高效利用. 实验结果表明,所设计加速器在Xilinx Kintex-7平台上表现出色,单张图片的推理延时低至0.56 ms,满足边缘端的实时性需求;整体功耗控制在13.54 W,展现了低功耗优势,适配资源受限的边缘设备部署场景. 本研究采用的混合精度量化策略使ResNet20模型的压缩倍率相较于原始FP32模型得到提升,降低了存储空间. 本研究主要针对CNN推理场景开展优化,当前设计仍依赖离线确定的量化配置,对于不同网络结构和任务场景下的动态适配能力仍有提升空间. 未来将进一步研究面向多类型神经网络的自适应混合精度配置方法,结合可重构硬件架构实现算法参数与计算资源的动态协同优化.

参考文献

陈江浩, 杨军

结合深度可分离卷积的多源遥感融合影像目标检测

[J]. 浙江大学学报: 工学版, 2025, 59 (12): 2545- 2555

[本文引用: 1]

CHEN Jianghao, YANG Jun

Object detection for multi-source remote sensing fused images based on depthwise separable convolution

[J]. Journal of Zhejiang University: Engineering Science, 2025, 59 (12): 2545- 2555

[本文引用: 1]

AHMED W, KOMMINENI V K, KÖNIG-RIES B, et al

Evaluating the method reproducibility of deep learning models in biodiversity research

[J]. PeerJ Computer Science, 2025, 11: e2618

[本文引用: 1]

BHARATHI V, RANJITHA M

An optimized deep learning method for automatic translator for ancient hieroglyphic language from scanned images to English text

[J]. SN Computer Science, 2025, 6 (6): 639

DOI:10.1007/s42979-025-04165-0      [本文引用: 1]

EL-TAHER A, AZAB S, MOHAMMED A. From artifact to text: a novel deep learning approach for ancient Egyptian language processing [C]// Proceedings of the Intelligent Methods, Systems, and Applications. Giza: IEEE, 2025: 434–441.

[本文引用: 1]

JHA K, JAIN A, SRIVASTAVA S

A challenge-response based authentication approach for multimodal biometric system using deep learning techniques

[J]. Scalable Computing: Practice and Experience, 2025, 26 (5): 2118- 2129

[本文引用: 1]

CHANDRABANSHI V, DOMNIC S

Leveraging 3D-CNN and graph neural network with attention mechanism for visual speech recognition

[J]. Signal, Image and Video Processing, 2025, 19 (10): 844

DOI:10.1007/s11760-025-04438-4      [本文引用: 1]

NAGEL M, FOURNARAKIS M, AMJAD R, et al. A white paper on neural network quantization [EB/OL]. (2021–06–15) [2025–11–10]. https://arxiv.org/pdf/2106.08295.

[本文引用: 1]

HAN S, MAO H, DALLY W J. Deep compression: compressing deep neural networks with pruning, trained quantization and Huffman coding [EB/OL]. (2016–02–15) [2025–11–10]. https://arxiv.org/pdf/1510.00149.

[本文引用: 1]

SAHA R, SAGAN N, SRIVASTAVA V, et al. Compressing large language models using low rank and low precision decomposition [C]// Proceedings of the 38th International Conference on Neural Information Processing Systems. [S.l.]: Curran Associates Inc. , 2024: 88981–89018.

[本文引用: 1]

WANG S, KANG Y

Gradient distribution-aware INT8 training for neural networks

[J]. Neurocomputing, 2023, 541: 126269

[本文引用: 1]

DONG Z, YAO Z, GHOLAMI A, et al. HAWQ: Hessian aware quantization of neural networks with mixed-precision [C]// Proceedings of the IEEE/CVF International Conference on Computer Vision. Seoul: IEEE, 2020: 293–302.

[本文引用: 1]

DONG Z, YAO Z, CAI Y, et al. HAWQ-V2: Hessian aware trace-weighted quantization of neural networks [C]// 34th Conference on Neural Information Processing Systems. Vancouver: [s.n.], 2020: 1–12.

[本文引用: 1]

KLOBERDANZ E, LE W. MixQuant: mixed precision quantization with a bit-width optimization search [EB/OL]. (2023–09–29)[2025–11–10]. https://arxiv.org/pdf/2309.17341.

[本文引用: 1]

TANG C, OUYANG K, WANG Z, et al. Mixed-precision neural network quantization via learned layer-wise importance [C]// Computer Vision – ECCV 2022. Cham: Springer, 2022: 259–275.

[本文引用: 1]

MA Y, JIN T, ZHENG X, et al

OMPQ: orthogonal mixed precision quantization

[J]. Proceedings of the AAAI Conference on Artificial Intelligence, 2023, 37 (7): 9029- 9037

[本文引用: 1]

SHANNON C E

A mathematical theory of communication

[J]. The Bell System Technical Journal, 1948, 27 (3): 379- 423

[本文引用: 1]

BOUDJADAR J, ISLAM S U, BUYYA R

Dynamic FPGA reconfiguration for scalable embedded artificial intelligence (AI): a co-design methodology for convolutional neural networks (CNN) acceleration

[J]. Future Generation Computer Systems, 2025, 169: 107777

[本文引用: 1]

ZHANG C, PRASANNA V. Frequency domain acceleration of convolutional neural networks on CPU-FPGA shared memory system [C]// Proceedings of the 2017 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays. Monterey: ACM, 2017: 35–44.

[本文引用: 1]

ZENG H, CHEN R, ZHANG C, et al. A framework for generating high throughput CNN implementations on FPGAs [C]// Proceedings of the 2018 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays. Monterey: ACM, 2018: 117–126.

[本文引用: 1]

WINOGRAD S. Arithmetic complexity of computations [M]. Philadelphia: Society for Industrial and Applied Mathematics, 1980.

[本文引用: 1]

PODILI A, ZHANG C, PRASANNA V. Fast and efficient implementation of convolutional neural networks on FPGA [C]// Proceedings of the IEEE 28th International Conference on Application-specific Systems, Architectures and Processors. Seattle: IEEE, 2017: 11–18.

[本文引用: 1]

LU L, LIANG Y, XIAO Q, et al. Evaluating fast algorithms for convolutional neural networks on FPGAs [C]// Proceedings of the IEEE 25th Annual International Symposium on Field-Programmable Custom Computing Machines. [S.l.]: IEEE, 2017: 101–108.

[本文引用: 1]

ZHANG X, SONG X, LIU S, et al

MRSA: a multi-mode reconfigurable systolic array architecture based on channel-wise stationary dataflow for CNNs

[J]. Microelectronics Journal, 2026, 168: 106983

[本文引用: 1]

JOSE A, JACOB J. Novel FPGA based systolic array design for dynamic workflows [C]// Proceedings of the 2nd International Conference on Trends in Engineering Systems and Technologies. Ernakulam: IEEE, 2025: 1–5.

YE H, ZHENG X, HUA S, et al. Systolic array-based CNN accelerator for gesture recognition [EB/OL]. [2025–11–10]. https://www.cs.columbia.edu/~sedwards/classes/2025/4840-spring/proposals/Systolic.pdf.

[本文引用: 1]

XU H, LI Z, JIN Z, et al. Effective and efficient mixed precision quantization of speech foundation models [C]// Proceedings of the ICASSP 2025 - 2025 IEEE International Conference on Acoustics, Speech and Signal Processing. Hyderabad: IEEE, 2025: 1–5.

[本文引用: 1]

KUMAR N, NARANG A, LALL B

Kullback–Leibler divergence-based regularized normalization for low-resource tasks

[J]. IEEE Transactions on Artificial Intelligence, 2024, 5 (6): 2638- 2650

[本文引用: 1]

CHOI J, WANG Z, VENKATARAMANI S, et al. PACT: parameterized clipping activation for quantized neural networks [EB/OL]. (2018–07–17) [2025–11–10]. https://arxiv.org/pdf/1805.06085.

[本文引用: 1]

ESSER S K, MCKINSTRY J L, BABLANI D, et al. Learned step size quantization: US11423054 [P]. 2023–11–21.

[本文引用: 1]

ISIK M, INADAGBO K, AKTAS H. Design optimization for high-performance computing using FPGA [C]// Information Management and Big Data. Cham: Springer, 2024: 142–156.

[本文引用: 2]

HE Y, LIU W, TAHIR M, et al

Research on efficient CNN acceleration through mixed precision quantization: a comprehensive methodology

[J]. International Journal of Advanced Computer Science and Applications, 2023, 14 (12): 806- 817

[本文引用: 2]

ABTAHI T, SHEA C, KULKARNI A, et al

Accelerating convolutional neural network with FFT on embedded hardware

[J]. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 2018, 26 (9): 1737- 1749

[本文引用: 2]

画芊昊, 李博, 杜宸罡

基于FPGA的深度可分离卷积加速器研究

[J]. 计算机测量与控制, 2024, 32 (5): 267- 273

[本文引用: 2]

HUA Qianhao, LI Bo, DU Chengang

Research on deep separable convolution accelerator based on FPGA

[J]. Computer Measurement and Control, 2024, 32 (5): 267- 273

[本文引用: 2]

李珍琪, 王强, 齐星云, 等

轻量化卷积神经网络硬件加速设计及FPGA实现

[J]. 计算机工程与科学, 2025, 47 (4): 582- 591

[本文引用: 2]

LI Zhenqi, WANG Qiang, QI Xingyun, et al

Design and FPGA implementation of lightweight convolutional neural network hardware acceleration

[J]. Computer Engineering and Science, 2025, 47 (4): 582- 591

[本文引用: 2]

/

〈 〉