首页|基于RISC-V的神经网络专用指令和加速器设计

基于RISC-V的神经网络专用指令和加速器设计

王世航

基于RISC-V的神经网络专用指令和加速器设计

王世航1
扫码查看

作者信息

  • 1. 南方科技大学
  • 折叠

摘要

随着智能设备的发展,图像处理成为了智能设备的主要需求之一,而卷积神经网络(ConvolutionalNeuralNetwork,CNN)作为图像处理的主流算法,在图像识别任务中发挥了重要的作用。在边缘智能设备上部署和运行卷积神经网络,RISC-Ⅴ指令集处理器有着独特的优势,这主要得益于自定义指令扩展功能,RISC-Ⅴ架构可以针对许多领域特定的应用进行优化。在本文中,我们提出了7条RISC-Ⅴ单指令多数据(SIMD)自定义指令,其可以显著优化CNN推理计算中的卷积、激活和池化操作。以卷积加速指令为例,指令CONV23可以大大加快F(2×2,3×3)的运算速度,采用Winograd算法可以将乘法次数从36次减少到16次,执行时间也从140个时钟周期减少到21个时钟周期。与这7条指令对应,本文针对开源RISC-Ⅴ架构处理器CV32E40P设计了加速模块,这些自定义指令可以在加速模块中执行,除此之外,还可以在加速模块中复用数据,由此消除与内存访问相关的延迟和多余的能耗开销。 本文还针对LeNet-5和VGG16卷积网络模型基于CV32E40P-Accel架构进行了优化,命名为LeNet-Accel和VGG16-Accel。除此之外,本文根据设计出的指令和卷积神经网络结构的特点,使用了指令融合和层间融合进一步加速卷积神经网络的运算。基于FPGA的基准测试实验表明,使用CV32E40P-Accel处理器运行的LeNet-Accel和VGG16-Accel网络模型推理可大大降低运行时间,相比于原处理器减少了76.6%和88.8%,总能耗分别降低了74.8%和87.8%。不仅如此,本课题还将CV32E40P-Accel处理器外围加上总线和外设,构建成soc后烧录上板,在板上运行FreeRTOS系统,并通过uart协议和上位机交互,远程编译并运行LeNet-Accel网络,将其结果通过uart接口打印在终端上,这使得自定义指令搭建的网络更易于运行和调试。在IC流片流程中,基于TSMC90nm工艺库,CV32E40P-Accel处理器相较于CV32E40P,增加了108.30%面积和23.23%功耗。

关键词

卷积神经网络/自定义指令/RISC-Ⅴ处理器/硬件加速器

引用本文复制引用

授予学位

硕士

学科专业

电子科学与技术

导师

叶涛

学位年度

2023

学位授予单位

南方科技大学

语种

中文

中图分类号

TP
段落导航相关论文