REVISTA DE LA UNIVERSIDAD DEL ZULIA. 3ª época. Año 12 N° 32, 2021
César Arturo Niño Carmonal et al. ///Evaluación del rendimiento de las arquitecturas de hardware… 358-373
DOI: http://dx.doi.org/10.46925//rdluz.32.22
359
Performance evaluation of HPS and HPS+FPGA hardware
architectures for an image processing system
ABSTRACT
The objective of this work was to evaluate the performance of hardware architectures: Hard
Processor System (HPS) and the union of an HPS with a programmable gate array or FPGA (HPS
+ FPGA) for an image processing system. The following are evaluated: the execution time of the
image processing algorithms and the energy consumption. For a SoC Platform, hardware design
is performed at Verilog using the IP video cores of the Intel University Program (UP) - FPGA.
The software for control and visualization of results using OpenCV is also developed. We
worked with 320x240 pixels images. For a real time application it was observed an improvement
of 38.8% in the execution time and a 6.85% higher consumption in the HPS+FPGA Architecture
with respect to the HPS Architecture. The HPS+FPGA Architecture outperforms HPS and keeps
power consumption low.
KEYWORDS: Processing Algorithms, Hardware Architectures, SoC Platform, Performance,
Image Processing
Introducción
La implementación de visión artificial en sistemas embebidos requiere de hardware cada
vez más eficiente en términos de capacidades computacionales y consumo de energía. Para la
implementación de estos sistemas se vienen utilizando plataformas SoC con algunos problemas
de rendimiento como el observado en el trabajo de Espinoza (2016), quien implementó
clasificadores HAAR en una laptop donde no hubo retardo; mientras que en un Raspberry PI el
retardo fue de 1000 a 2000 milisegundos. Para mejorar esto, se recurre a métodos de aceleración
mediante hardware; como por ejemplo, mediante los FPGA, ya que proporcionan una mayor
eficiencia energética que las GPU y las CPU y un mayor rendimiento que las CPU como
menciona Mittal y Vetter (2015).
Para desarrollar el presente trabajo se utilizó una Plataforma SoC (System on chip,
Sistema en un chip) basada en un microcontrolador ARM (Advanced Risc Machine), y FPGA
(Field Programmable Gate Array, arreglo de compuertas programables) Terasic Inc. (2018). El
término SoC en el nombre de la plataforma es debido a que la tarjeta cuenta con un chip central
conformado por un ARM, una FPGA, módulos de comunicación, controladores de memoria,