“Una gran mayoría de algoritmos de computación de borde, visión por computadora y control industrial son desarrollados de forma nativa en C ++ por desarrolladores con poco o ningún conocimiento de los FPGA hardware ”, según la empresa.
Llamada SmartHLS, la herramienta permite que los algoritmos C ++ se traduzcan directamente a código RTL optimizado para FPGA (nivel de transferencia de registro).
En detalle, el usuario implementa su diseño en software C ++ y verifica la funcionalidad con pruebas de software. A continuación, LegUp compila el programa C ++ en módulos de hardware Verilog de funcionalidad equivalente.
SmartHLS puede ejecutar una co-simulación con Modelsim para verificar el comportamiento del hardware con precisión de ciclo y confirmar que la funcionalidad del hardware coincide con el software, y puede generar los núcleos IP de hardware para la integración en sistemas más grandes mediante SmartDesign. LegUp también puede ejecutar la síntesis Libero en el Verilog generado para determinar el área FPGA y Fmax. Además de PolarFire, la herramienta admite FPGA SmartFusion2.
“Escribir código de software C ++ es más fácil para los ingenieros que diseñar en RTL porque el código de software es más conciso, con 5-10 veces menos líneas de C ++ requeridas que RTL”, dijo Microchip. “El software también es más fácil de entender y modificar para futuras mejoras o mantenimiento en comparación con RTL. La concisión y la legibilidad del software significan menos errores en el diseño de su FPGA ".
La página del producto SmartHLS está aquí