Проектирование и реализация ускорителя сверточной нейронной сети с алгоритмом Винограда на основе FPGA

NIU Zhao-xu ,  

SUN Hai-jiang ,  

摘要

Для ускорения вычислений сверточных нейронных сетей в сценариях с низким энергопотреблением и периферийными вычислениями разработан ускоритель сверточной нейронной сети на базе алгоритма Винограда, реализованный на программируемой логической матрице (FPGA). Во-первых, данные изображений и веса были квантованы до 8-битовых фиксированных чисел, а также спроектирован процесс квантизации в аппаратном ходе свёртки, что увеличило скорость передачи данных и вычислений. Затем разработан модуль повторного использования кеша входных данных, который объединяет данные с нескольких входных каналов перед их передачей, повторно используя перекрывающиеся строковые данные. Далее разработан конвейерный свёрточный модуль алгоритма Винограда, реализующий комбинированное повторное использование данных столбцов, что максимизирует использование данных на кристалле, снижая объем хранения и нагрузку на пропускную способность. В конце ускоритель был развернут на плате разработки Xilinx ZCU104. По результатам экспериментов, производительность свёрточного слоя ускорителя достигла 354,5 GOPS, эффективность использования DSP на кристалле составила 0,69, что на 1,6 раза выше по сравнению с аналогичными исследованиями. Данный ускоритель способен эффективно выполнять задачи классификации дистанционных изображений на базе сети VGG-16 с высоким энергопотреблением.

关键词

Сверточная нейронная сеть;Программируемая логическая матрица;Алгоритм Винограда;Конвейер;Параллельные вычисления

阅读全文

以上内容由讯飞翻译自动生成,翻译内容仅供参考。对于因使用本网站翻译内容产生的相关后果,本网站不承担任何商业和法律责任。

The above content is generated by Large Model Translation. The translated content is for reference only. We do not assume any commercial or legal responsibilty for any consequences arising from the use of our website