分享自:

4、基于RISC-V的深度可分离卷积神经网络加速器

期刊:计算机学报DOI:10.11897/sp.j.1016.2024.02536

基于RISC-V的深度可分离卷积神经网络加速器的学术报告

一、研究作者与发表信息
本文由华东师范大学计算机科学与技术学院的曹希彧(博士研究生)、陈鑫(硕士)及魏同权(通信作者,副教授)共同完成,发表于《计算机学报》(*Chinese Journal of Computers*)第47卷第11期(2024年11月)。研究得到国家自然科学基金(62272169)及上海市科技重大专项(2021SHZDZX)等项目的资助。

二、学术背景与研究目标
1. 科学领域:本研究属于边缘计算与硬件加速的交叉领域,聚焦于资源受限环境下深度可分离卷积神经网络(Depthwise Separable Convolutional Neural Networks)的高效部署。
2. 研究动机:RISC-V作为一种开源精简指令集架构(Reduced Instruction Set Computer-V),虽具有低功耗和灵活性优势,但其基础架构难以满足卷积神经网络(CNN)的高性能计算需求,尤其在边缘设备中。现有加速器存在硬件资源浪费、算法未优化及调用繁琐等问题。
3. 研究目标:设计一款基于RISC-V的轻量化加速器,通过算法优化(如Winograd快速卷积)和硬件共享结构,提升深度可分离卷积的计算效率,并实现灵活的指令调用。

三、研究方法与流程
1. 加速器硬件设计
- 系统架构:采用RISC-V处理器与加速器协同工作模式,通过自定义指令集实现交互。加速器支持深度卷积(Depthwise Convolution)和点卷积(Pointwise Convolution)两种算子。
- 关键创新
- Winograd算法优化:在深度卷积中应用F(2×2, 3×3) Winograd算法,将乘法次数从36次降至16次,减少计算冗余。
- 数据存取优化:将输入数据切割为2×2块,组合为4×4数据片,降低传输冗余量(理论减少数据量约3倍)。
- 模块共享:点卷积与深度卷积共享乘法器、存储单元和后处理模块,提高资源利用率。

  1. 软件指令设计

    • 指令扩展:在RISC-V中新增自定义指令集,涵盖数据输入、计算启动和结果取回等操作。
    • 函数封装:修改TensorFlow Lite库的卷积函数,实现加速器的自动调用,简化部署流程。
  2. 实验验证

    • 硬件平台:基于FPGA(Field Programmable Gate Array)实现加速器,部署量化后的MobileNetV1网络。
    • 性能指标:对比基础RISC-V处理器,点卷积加速104.40倍,深度卷积加速123.63倍,能效比达8.7 GOPS/W,功耗仅0.123W。

四、主要研究结果
1. 计算效率提升
- Winograd算法使深度卷积的乘法操作减少55.6%,数据拼接策略降低传输带宽压力。
- 模块共享设计减少硬件资源消耗,如乘法器复用率提升60%。
2. 指令调用优化:自定义指令集实现单周期配置加速器,相比传统手动编码部署效率提升3倍。
3. 能效比优势:加速器在MobileNetV1上的推理性能达10.05 GOPS/W,优于同类工作(如Askarimmat等人设计的DNN加速器功耗达21.066W)。

五、研究结论与价值
1. 科学价值
- 提出首个基于RISC-V的深度可分离卷积专用加速器,填补了开源架构在边缘端CNN加速的空白。
- 通过算法-硬件协同优化(如Winograd与数据块拼接),为低功耗计算提供了新思路。
2. 应用价值:适用于物联网(IoT)、自动驾驶等资源受限场景,支持轻量化模型的实时推理。

六、研究亮点
1. 算法创新:Winograd算法与数据块拼接的结合,显著减少计算与传输开销。
2. 硬件设计:模块共享机制突破传统加速器的资源隔离问题,实现面积-性能平衡。
3. 软硬件协同:指令扩展与库函数修改简化了部署流程,提升易用性。

七、其他贡献
实验部分对比了现有加速器(如Liang等人的张量加速器),凸显本设计在能效比(8.7 GOPS/W vs. 2.06 GOPS/W)和灵活性(支持动态配置)上的优势。

总结:该研究为RISC-V生态下的边缘智能部署提供了高效解决方案,其方法可扩展至其他轻量化网络(如EfficientNet),具有广泛的工程应用前景。

上述解读依据用户上传的学术文献,如有不准确或可能侵权之处请联系本站站长:admin@fmread.com