Cufp: una biblioteca HLS para operadores de punto flotante personalizados
Autores: Hajizadeh, Fahimeh; Ould-Bachir, Tarek; David, Jean Pierre
Idioma: Inglés
Editor: MDPI
Año: 2024
Acceso abierto
Artículo científico
2024
Cufp: una biblioteca HLS para operadores de punto flotante personalizados
Categoría
Ingeniería y Tecnología
Subcategoría
Ingeniería Eléctrica y Electrónica
Palabras clave
Punto flotante
HLS
FPGA
Biblioteca
Precisión
Optimización
Licencia
CC BY-SA – Atribución – Compartir Igual
Consultas: 35
Citaciones: Sin citaciones
Las herramientas de Síntesis de Alto Nivel (HLS) han revolucionado el desarrollo de aplicaciones en FPGA al proporcionar un enfoque más eficiente y simplificado, impactando significativamente las metodologías de diseño digital. A pesar de la capacidad de las FPGAs para personalizar representaciones numéricas en las rutas de datos, la mayoría de los proyectos de HLS se han centrado en la precisión de punto fijo, mientras que las representaciones de punto flotante siguen limitadas a los formatos de precisión simple, doble y media proporcionados por los proveedores. Este artículo propone una biblioteca de punto flotante personalizada compatible con HLS para abordar estas limitaciones. Esta biblioteca permite a los programadores definir el número de bits del exponente y la mantisa en tiempo de compilación, brindando mayor flexibilidad y permitiendo el uso de precisión mixta. Además, esta biblioteca incluye implementaciones optimizadas de componentes comunes como la suma de vectores (VSUM), el producto punto (DP) y la multiplicación de matriz por vector (MVM). Los resultados demuestran que la biblioteca propuesta reduce la latencia y la utilización de recursos en comparación con los bloques de IP del proveedor, especialmente en las operaciones de VSUM, DP y MVM. Por ejemplo, la operación mvm que implica una matriz de 32 x 32, utilizando IP del proveedor requiere 22 ciclos de reloj, mientras que CuFP completa la misma tarea en solo 7 ciclos de reloj, utilizando aproximadamente un 60% menos de DSP, un 10% menos de LUT y un 60% menos de FF.
Descripción
Las herramientas de Síntesis de Alto Nivel (HLS) han revolucionado el desarrollo de aplicaciones en FPGA al proporcionar un enfoque más eficiente y simplificado, impactando significativamente las metodologías de diseño digital. A pesar de la capacidad de las FPGAs para personalizar representaciones numéricas en las rutas de datos, la mayoría de los proyectos de HLS se han centrado en la precisión de punto fijo, mientras que las representaciones de punto flotante siguen limitadas a los formatos de precisión simple, doble y media proporcionados por los proveedores. Este artículo propone una biblioteca de punto flotante personalizada compatible con HLS para abordar estas limitaciones. Esta biblioteca permite a los programadores definir el número de bits del exponente y la mantisa en tiempo de compilación, brindando mayor flexibilidad y permitiendo el uso de precisión mixta. Además, esta biblioteca incluye implementaciones optimizadas de componentes comunes como la suma de vectores (VSUM), el producto punto (DP) y la multiplicación de matriz por vector (MVM). Los resultados demuestran que la biblioteca propuesta reduce la latencia y la utilización de recursos en comparación con los bloques de IP del proveedor, especialmente en las operaciones de VSUM, DP y MVM. Por ejemplo, la operación mvm que implica una matriz de 32 x 32, utilizando IP del proveedor requiere 22 ciclos de reloj, mientras que CuFP completa la misma tarea en solo 7 ciclos de reloj, utilizando aproximadamente un 60% menos de DSP, un 10% menos de LUT y un 60% menos de FF.