Accessibilité améliorée aux FPGA pour l'accélération matérielle dans les systèmes de calcul de périphérie

Mise à jour : 3 septembre 2021

Puce Technologie a ajouté un flux de travail de conception HLS, appelé SmartHLS, à son PolarFire FPGA familles qui améliore considérablement la productivité et la facilité de conception en permettant aux algorithmes C++ d'être directement traduits en code RTL optimisé FPGA.

« SmartHLS améliore notre suite d'outils de conception Libero SoC et rend les vastes avantages de nos plateformes primées PolarFire et PolarFire SoC de milieu de gamme accessibles à une communauté diversifiée de développeurs d'algorithmes sans qu'ils aient à devenir des experts en matériel FPGA », a déclaré Bruce Weyer, vice-président président de l'unité commerciale FPGA de Microchip. « Avec notre kit de développement logiciel VectorBlox Neural Network, ces outils amélioreront considérablement la productivité des concepteurs dans la création de solutions de pointe utilisant des algorithmes basés sur C/C++ pour des applications telles que la vision embarquée, l'apprentissage automatique, le contrôle moteur et l'automatisation industrielle à l'aide de FPGA. accélérateurs matériels.

Basée sur l'environnement de développement intégré open source Eclipse, la suite de conception utilise du code logiciel C++ pour générer un composant IP HDL à intégrer dans ses projets Libero SmartDesign. Cela permet aux ingénieurs de décrire le comportement du matériel à un niveau d'abstraction plus élevé que ce qui est possible avec les outils RTL FPGA traditionnels.

Il améliore la productivité tout en réduisant le temps de développement grâce à une API multithread qui exécute les instructions matérielles simultanément et simplifie l'expression du parallélisme matériel complexe par rapport aux autres offres HLS.

L'outil SmartHLS nécessite jusqu'à 10 fois moins de lignes de code qu'une conception RTL équivalente, le code résultant étant plus facile à lire, comprendre, tester, déboguer et vérifier. L'outil simplifie également l'exploration des compromis de conception de la microarchitecture matérielle et permet aux implémentations logicielles C++ préexistantes d'un développeur d'être désormais utilisées avec les FPGA PolarFire et les SoC FPGA.