Cargando…

Optimized Memory Allocation and Power Minimization for FPGA-Based Image Processing

Memory is the biggest limiting factor to the widespread use of FPGAs for high-level image processing, which require complete frame(s) to be stored in situ. Since FPGAs have limited on-chip memory capabilities, efficient use of such resources is essential to meet performance, size and power constrain...

Descripción completa

Detalles Bibliográficos
Autores principales: Garcia, Paulo, Bhowmik, Deepayan, Stewart, Robert, Michaelson, Greg, Wallace, Andrew
Formato: Online Artículo Texto
Lenguaje:English
Publicado: MDPI 2019
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8320856/
https://www.ncbi.nlm.nih.gov/pubmed/34465704
http://dx.doi.org/10.3390/jimaging5010007
_version_ 1783730714348355584
author Garcia, Paulo
Bhowmik, Deepayan
Stewart, Robert
Michaelson, Greg
Wallace, Andrew
author_facet Garcia, Paulo
Bhowmik, Deepayan
Stewart, Robert
Michaelson, Greg
Wallace, Andrew
author_sort Garcia, Paulo
collection PubMed
description Memory is the biggest limiting factor to the widespread use of FPGAs for high-level image processing, which require complete frame(s) to be stored in situ. Since FPGAs have limited on-chip memory capabilities, efficient use of such resources is essential to meet performance, size and power constraints. In this paper, we investigate allocation of on-chip memory resources in order to minimize resource usage and power consumption, contributing to the realization of power-efficient high-level image processing fully contained on FPGAs. We propose methods for generating memory architectures, from both Hardware Description Languages and High Level Synthesis designs, which minimize memory usage and power consumption. Based on a formalization of on-chip memory configuration options and a power model, we demonstrate how our partitioning algorithms can outperform traditional strategies. Compared to commercial FPGA synthesis and High Level Synthesis tools, our results show that the proposed algorithms can result in up to 60% higher utilization efficiency, increasing the sizes and/or number of frames that can be accommodated, and reduce frame buffers’ dynamic power consumption by up to approximately 70%. In our experiments using Optical Flow and MeanShift Tracking, representative high-level algorithms, data show that partitioning algorithms can reduce total power by up to 25% and 30%, respectively, without impacting performance.
format Online
Article
Text
id pubmed-8320856
institution National Center for Biotechnology Information
language English
publishDate 2019
publisher MDPI
record_format MEDLINE/PubMed
spelling pubmed-83208562021-08-26 Optimized Memory Allocation and Power Minimization for FPGA-Based Image Processing Garcia, Paulo Bhowmik, Deepayan Stewart, Robert Michaelson, Greg Wallace, Andrew J Imaging Article Memory is the biggest limiting factor to the widespread use of FPGAs for high-level image processing, which require complete frame(s) to be stored in situ. Since FPGAs have limited on-chip memory capabilities, efficient use of such resources is essential to meet performance, size and power constraints. In this paper, we investigate allocation of on-chip memory resources in order to minimize resource usage and power consumption, contributing to the realization of power-efficient high-level image processing fully contained on FPGAs. We propose methods for generating memory architectures, from both Hardware Description Languages and High Level Synthesis designs, which minimize memory usage and power consumption. Based on a formalization of on-chip memory configuration options and a power model, we demonstrate how our partitioning algorithms can outperform traditional strategies. Compared to commercial FPGA synthesis and High Level Synthesis tools, our results show that the proposed algorithms can result in up to 60% higher utilization efficiency, increasing the sizes and/or number of frames that can be accommodated, and reduce frame buffers’ dynamic power consumption by up to approximately 70%. In our experiments using Optical Flow and MeanShift Tracking, representative high-level algorithms, data show that partitioning algorithms can reduce total power by up to 25% and 30%, respectively, without impacting performance. MDPI 2019-01-01 /pmc/articles/PMC8320856/ /pubmed/34465704 http://dx.doi.org/10.3390/jimaging5010007 Text en © 2019 by the authors. https://creativecommons.org/licenses/by/4.0/Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/ (https://creativecommons.org/licenses/by/4.0/) ).
spellingShingle Article
Garcia, Paulo
Bhowmik, Deepayan
Stewart, Robert
Michaelson, Greg
Wallace, Andrew
Optimized Memory Allocation and Power Minimization for FPGA-Based Image Processing
title Optimized Memory Allocation and Power Minimization for FPGA-Based Image Processing
title_full Optimized Memory Allocation and Power Minimization for FPGA-Based Image Processing
title_fullStr Optimized Memory Allocation and Power Minimization for FPGA-Based Image Processing
title_full_unstemmed Optimized Memory Allocation and Power Minimization for FPGA-Based Image Processing
title_short Optimized Memory Allocation and Power Minimization for FPGA-Based Image Processing
title_sort optimized memory allocation and power minimization for fpga-based image processing
topic Article
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8320856/
https://www.ncbi.nlm.nih.gov/pubmed/34465704
http://dx.doi.org/10.3390/jimaging5010007
work_keys_str_mv AT garciapaulo optimizedmemoryallocationandpowerminimizationforfpgabasedimageprocessing
AT bhowmikdeepayan optimizedmemoryallocationandpowerminimizationforfpgabasedimageprocessing
AT stewartrobert optimizedmemoryallocationandpowerminimizationforfpgabasedimageprocessing
AT michaelsongreg optimizedmemoryallocationandpowerminimizationforfpgabasedimageprocessing
AT wallaceandrew optimizedmemoryallocationandpowerminimizationforfpgabasedimageprocessing