本文档属于类型a(单一原创研究论文),以下是针对该研究的学术报告:
作者及机构
本研究由国际半导体技术学院(National Yang Ming Chiao Tung University)的Shabirahmed Badashasab Jigalur(研究生会员,IEEE)、Chang-Ling Tsai、Yu-Chi Shih及Yen-Cheng Kuan(IEEE会员)共同完成,发表于2025年8月的《IEEE Embedded Systems Letters》第17卷第4期。
研究领域与动机
卷积神经网络(CNN)在计算机视觉任务中表现卓越,但随着模型深度增加,计算负载呈指数级增长。传统CNN加速方案受限于计算效率,而Winograd快速卷积算法能够显著减少乘加操作次数。Liu等人提出的稀疏Winograd-ReLU CNN(Winograd-ReLU CNN)通过将ReLU操作移至Winograd域,进一步提升了激活矩阵的稀疏性,从而降低计算复杂度。与此同时,RISC-V以其开放、可扩展的指令集架构(ISA)为硬件-软件协同设计提供了灵活性。
研究目标
本研究旨在开发一种基于RISC-V的FPGA加速器,通过处理器-协处理器并行架构,高效支持稀疏Winograd-ReLU CNN推理,兼顾高吞吐量与硬件资源效率,并验证其在多样化网络架构中的适用性。
核心组件
- RISC-V处理器:采用Andes NX27V核心,支持RISC-V IMAFD标准指令及向量扩展(”V”指令),配备向量处理单元(VPU)和自定义扩展接口(ACE)。
- 协处理器:包含16个并行计算单元,每个单元集成Winograd-ReLU卷积模块、输入/输出数据缓冲区和权重缓冲区。
关键技术
- Winograd-ReLU卷积流程(图2):
1. 输入变换(IT):将4×4输入激活块通过矩阵变换(公式1)映射至Winograd域。
2. ReLU稀疏化:在变换域内对激活值执行ReLU,生成稀疏矩阵。
3. 权重预处理:离线训练生成稀疏化的变换权重(TPWs),动态加载至协处理器。
4. 逐元素乘法(EWM):仅对非零元素执行乘法,显著减少计算量。
5. 输出变换(OT):通过公式2将结果转换回空间域,生成2×2输出块。
- 数据流优化:采用分块(Tilewise)数据流(图3),重用输入数据与权重,通过双缓冲机制实现流水线操作。
自定义指令开发
设计conv指令(表II),通过ACE接口实现处理器对协处理器的调用,字段包括操作码(opcode)、目标寄存器(rd)、输入矩阵寄存器(vs1/vs2)及功能码(func3/func7)。
硬件配置
- 平台:AMD VCU118 FPGA,主频250 MHz。
- 资源占用(表III):协处理器占据主要LUT与BRAM资源,处理器核心集成SRAM。
实验设计
- 模型部署:
- VGG16改进模型:将卷积核调整为4×4适配Winograd变换,16位量化后准确率92.4%。
- 行人-自行车分类模型(PBC):将原3×3卷积核压缩至Winograd兼容尺寸,8/16位混合量化后准确率86.02%。
- 性能测试:
- 吞吐量:VGG16推理中,卷积层平均吞吐量达5341.3 GOP/s,全网络推理为5104.6 GOP/s(表IV)。
- 并行效率:处理器执行ReLU/池化层的同时,协处理器处理卷积/全连接层(图4b),较纯处理器方案提升显著。
本研究通过创新架构设计与工程优化,为边缘侧CNN推理提供了高吞吐、低功耗的解决方案,其方法论对下一代AI加速器设计具有广泛启示意义。