logo móvil
Contáctanos

Una biblioteca de patrones funcionales de síntesis de alto nivel altamente configurable

Autores: Huang, Lan; Gao, Teng; Li, Dalin; Wang, Zihao; Wang, Kangping

Idioma: Inglés

Editor: MDPI

Año: 2021

Descargar PDF

Acceso abierto

Artículo científico
2021

Una biblioteca de patrones funcionales de síntesis de alto nivel altamente configurable


Categoría

Ingeniería y Tecnología

Subcategoría

Ingeniería Eléctrica y Electrónica

Palabras clave

Fpga
Síntesis de alto nivel
Hls
Concurrencia
Estructuras de flujo de datos
Patrones funcionales

Licencia

CC BY-SA – Atribución – Compartir Igual

Consultas: 42

Citaciones: Sin citaciones


Descripción
FPGA ha desempeñado recientemente un papel cada vez más importante en la informática heterogénea, pero los flujos de diseño de nivel de transferencia de registros no solo son ineficientes en el diseño, sino que también requieren que los diseñadores estén familiarizados con la arquitectura del circuito. La síntesis de alto nivel (HLS) permite a los desarrolladores diseñar circuitos FPGA de manera más eficiente con un lenguaje de programación más familiar, un mayor nivel de abstracción y una adaptación automática de las restricciones temporales. Al utilizar herramientas HLS, como Xilinx Vivado HLS, se requieren patrones de diseño específicos y técnicas para crear circuitos de alto rendimiento. Además, diseñar estructuras eficientes de concurrencia y flujo de datos requiere una comprensión profunda del hardware, imponiendo mayores costos de aprendizaje a los programadores. En este documento, proponemos un conjunto de bibliotecas de patrones funcionales basados en el modelo MapReduce, implementado por plantillas de C++, que pueden implementar rápidamente modelos de computación paralela y en serie de alto rendimiento en FPGA con parámetros simples especificados. El uso de esta biblioteca de patrones permite una adaptación flexible de estructuras paralelas y de flujo en algoritmos, lo que mejora en gran medida la eficiencia de codificación. Las contribuciones de este documento son las siguientes. (1) Se definen cuatro operadores funcionales estándar adecuados para la computación paralela de hardware. (2) Se describen patrones de programación concurrente funcional basados en plantillas de C++ y Xilinx HLS. (3) La eficiencia de este paradigma de programación se verifica con dos algoritmos de diferente complejidad.

Otros recursos que podrían interesarte

Temas Virtualpro