A Block-Based and Highly Parallel CNN Accelerator for Seed Sorting

Seed sorting is critical for the breeding industry to improve the agricultural yield. The seed sorting methods based on convolutional neural networks (CNNs) have achieved excellent recognition accuracy on large-scale pretrained network models. However, CNN inference is a computationally intensive pr...

Full description

Bibliographic Details
Main Authors: Xiaoting Sang, Zhenghui Hu, Huanyu Li, Chunlei Li, Zhoufeng Liu
Format: Article
Language:English
Published: Hindawi Limited 2022-01-01
Series:Journal of Electrical and Computer Engineering
Online Access:http://dx.doi.org/10.1155/2022/5608573
_version_ 1811186931602554880
author Xiaoting Sang
Zhenghui Hu
Huanyu Li
Chunlei Li
Zhoufeng Liu
author_facet Xiaoting Sang
Zhenghui Hu
Huanyu Li
Chunlei Li
Zhoufeng Liu
author_sort Xiaoting Sang
collection DOAJ
description Seed sorting is critical for the breeding industry to improve the agricultural yield. The seed sorting methods based on convolutional neural networks (CNNs) have achieved excellent recognition accuracy on large-scale pretrained network models. However, CNN inference is a computationally intensive process that often requires hardware acceleration to operate in real time. For embedded devices, the high-power consumption of graphics processing units (GPUs) is generally prohibitive, and the field programmable gate array (FPGA) becomes a solution to perform high-speed inference by providing a customized accelerator for a particular user. To date, the recognition speeds of the FPGA-based universal accelerators for high-throughput seed sorting tasks are slow, which cannot guarantee real-time seed sorting. Therefore, a block-based and highly parallel MobileNetV2 accelerator is proposed in this paper. First, a hardware-friendly quantization method that uses only fixed-point operation is designed to reduce resource consumption. Then, the block convolution strategy is proposed to avoid latency and energy consumption increase caused by large-scale intermediate result off-chip data transfers. Finally, two scalable computing engines are explicitly designed for depth-wise convolution (DWC) and point-wise convolution (PWC) to develop the high parallelism of block convolution computation. Moreover, an efficient memory system with a double buffering mechanism and new data reordering mode is designed to address the imbalance between memory access and parallel computing. Our proposed FPGA-based MobileNetV2 accelerator for real-time seed sorting is implemented and evaluated on the platform of Xilinx XC7020. Experimental results demonstrate that our implementation can achieve about 29.4 frames per second (FPS) and 10.86 Giga operations per second (GOPS), and 0.92× to 5.70 × DSP-efficiency compared with previous FPGA-based accelerators.
first_indexed 2024-04-11T13:53:27Z
format Article
id doaj.art-201b7d193cb24129bc1d521165e65492
institution Directory Open Access Journal
issn 2090-0155
language English
last_indexed 2024-04-11T13:53:27Z
publishDate 2022-01-01
publisher Hindawi Limited
record_format Article
series Journal of Electrical and Computer Engineering
spelling doaj.art-201b7d193cb24129bc1d521165e654922022-12-22T04:20:26ZengHindawi LimitedJournal of Electrical and Computer Engineering2090-01552022-01-01202210.1155/2022/5608573A Block-Based and Highly Parallel CNN Accelerator for Seed SortingXiaoting Sang0Zhenghui Hu1Huanyu Li2Chunlei Li3Zhoufeng Liu4School of Electronic and Information EngineeringHangzhou Innovation InstituteCollege of Oceanography and Space InformaticsSchool of Electronic and Information EngineeringSchool of Electronic and Information EngineeringSeed sorting is critical for the breeding industry to improve the agricultural yield. The seed sorting methods based on convolutional neural networks (CNNs) have achieved excellent recognition accuracy on large-scale pretrained network models. However, CNN inference is a computationally intensive process that often requires hardware acceleration to operate in real time. For embedded devices, the high-power consumption of graphics processing units (GPUs) is generally prohibitive, and the field programmable gate array (FPGA) becomes a solution to perform high-speed inference by providing a customized accelerator for a particular user. To date, the recognition speeds of the FPGA-based universal accelerators for high-throughput seed sorting tasks are slow, which cannot guarantee real-time seed sorting. Therefore, a block-based and highly parallel MobileNetV2 accelerator is proposed in this paper. First, a hardware-friendly quantization method that uses only fixed-point operation is designed to reduce resource consumption. Then, the block convolution strategy is proposed to avoid latency and energy consumption increase caused by large-scale intermediate result off-chip data transfers. Finally, two scalable computing engines are explicitly designed for depth-wise convolution (DWC) and point-wise convolution (PWC) to develop the high parallelism of block convolution computation. Moreover, an efficient memory system with a double buffering mechanism and new data reordering mode is designed to address the imbalance between memory access and parallel computing. Our proposed FPGA-based MobileNetV2 accelerator for real-time seed sorting is implemented and evaluated on the platform of Xilinx XC7020. Experimental results demonstrate that our implementation can achieve about 29.4 frames per second (FPS) and 10.86 Giga operations per second (GOPS), and 0.92× to 5.70 × DSP-efficiency compared with previous FPGA-based accelerators.http://dx.doi.org/10.1155/2022/5608573
spellingShingle Xiaoting Sang
Zhenghui Hu
Huanyu Li
Chunlei Li
Zhoufeng Liu
A Block-Based and Highly Parallel CNN Accelerator for Seed Sorting
Journal of Electrical and Computer Engineering
title A Block-Based and Highly Parallel CNN Accelerator for Seed Sorting
title_full A Block-Based and Highly Parallel CNN Accelerator for Seed Sorting
title_fullStr A Block-Based and Highly Parallel CNN Accelerator for Seed Sorting
title_full_unstemmed A Block-Based and Highly Parallel CNN Accelerator for Seed Sorting
title_short A Block-Based and Highly Parallel CNN Accelerator for Seed Sorting
title_sort block based and highly parallel cnn accelerator for seed sorting
url http://dx.doi.org/10.1155/2022/5608573
work_keys_str_mv AT xiaotingsang ablockbasedandhighlyparallelcnnacceleratorforseedsorting
AT zhenghuihu ablockbasedandhighlyparallelcnnacceleratorforseedsorting
AT huanyuli ablockbasedandhighlyparallelcnnacceleratorforseedsorting
AT chunleili ablockbasedandhighlyparallelcnnacceleratorforseedsorting
AT zhoufengliu ablockbasedandhighlyparallelcnnacceleratorforseedsorting
AT xiaotingsang blockbasedandhighlyparallelcnnacceleratorforseedsorting
AT zhenghuihu blockbasedandhighlyparallelcnnacceleratorforseedsorting
AT huanyuli blockbasedandhighlyparallelcnnacceleratorforseedsorting
AT chunleili blockbasedandhighlyparallelcnnacceleratorforseedsorting
AT zhoufengliu blockbasedandhighlyparallelcnnacceleratorforseedsorting