Deep Learning HDL Toolbox

 

Deep Learning HDL Toolbox

Prototyper et déployer des réseaux de Deep Learning sur FPGA et SoC

En savoir plus:

Inférence de Deep Learning sur des FPGA

Prototypez et déployez des réseaux de Deep Learning sur des cartes FPGA pour un déploiement en périphérie.

Processeur de Deep Learning programmable

Cette toolbox comprend un processeur de Deep Learning qui comporte une convolution générique et des couches entièrement connectées contrôlées par une logique d'ordonnancement. Ce processeur de Deep Learning effectue des inférences basées sur des FPGA pour les réseaux développés avec Deep Learning Toolbox™. Des interfaces mémoire à haute bande passante accélèrent les transferts en mémoire des données des couches et de pondération.

Architecture du processeur de Deep Learning

Compilation et déploiement

Compilez votre réseau de Deep Learning en un ensemble d'instructions qui seront exécutées par le processeur. Déployez sur le FPGA et réalisez des prédictions tout en collectant des métriques de performances sur carte.

Compilation et déploiement d'un réseau YOLO v2

Débuter avec des bitstreams prédéfinis

Prototypez votre réseau sans programmation de FPGA avec les bitstreams disponibles pour les kits de développement FPGA les plus courants.

Inférences basées sur des FPGA dans MATLAB

Exécutez des inférences de Deep Learning sur FPGA à partir de MATLAB.

Création d'un réseau pour le déploiement

Commencez par utiliser Deep Learning Toolbox pour concevoir, entraîner et analyser votre réseau de Deep Learning pour des tâches comme la détection ou la classification d'objets. Vous pouvez également commencer par importer un réseau entraîné ou des couches d'autres frameworks.

Déploiement de votre réseau sur le FPGA

Après avoir créé votre réseau entraîné, utilisez la commande deploy pour programmer le FPGA avec le processeur de Deep Learning et l'interface Ethernet ou JTAG. Puis utilisez la commande compile pour générer un ensemble d'instructions pour votre réseau entraîné sans avoir à reprogrammer le FPGA.

Utiliser MATLAB pour configurer la carte et l'interface, compiler le réseau et le déployer sur FPGA.

Exécution d'inférences basées sur des FPGA dans votre application MATLAB

Exécutez l'ensemble de votre application dans MATLAB®, y compris votre test bench, les algorithmes de prétraitement et de post-traitement, et les inférences de Deep Learning sur FPGA. La commande MATLAB predict suffit pour effectuer des inférences sur le FPGA et renvoyer les résultats dans l'espace de travail MATLAB.

Exécuter des applications MATLAB qui effectuent des inférences de Deep Learning sur FPGA.

Personnalisation de réseau

Réglez votre réseau de Deep Learning pour répondre aux exigences spécifiques de l'application sur votre FPGA ou SoC cible.

Profiler des inférences FPGA

Mesurez la latence au niveau des couches lorsque vous réalisez des prédictions sur le FPGA pour identifier les goulots d'étranglement dans les performances.

Profiler l'inférence de réseau de Deep Learning sur un FPGA à partir de MATLAB.

Ajuster le design du réseau

Ajustez la configuration de votre réseau avec Deep Learning Toolbox, en utilisant les métriques de profil. Utilisez par exemple Deep Network Designer pour ajouter ou supprimer des couches, ou créer de nouvelles connexions.

Quantification du Deep Learning

Optimisez l'utilisation des ressources en quantifiant votre réseau de Deep Learning vers une représentation virgule fixe. Analysez les compromis entre la précision et l'utilisation des ressources avec le support package Model Quantization Library.

Déploiement d'implémentations RTL personnalisées

Déployez des implémentations RTL personnalisées du processeur de Deep Learning sur n'importe quel FPGA, ASIC ou SoC avec HDL Coder.

Configuration personnalisée du processeur de Deep Learning

Précisez les options d'architecture hardware pour l'implémentation du processeur de Deep Learning, comme le nombre de threads parallèles ou la taille maximale des couches.

Générer du RTL synthétisable

Utilisez HDL Coder pour générer du RTL synthétisable à partir du processeur de Deep Learning pour une utilisation dans différentes cartes et workflows d'implémentation. Réutilisez le même processeur de Deep Learning pour le prototypage et le déploiement en production.

Générer du RTL synthétisable à partir du processeur de Deep Learning

Générer des coeurs IP pour l'intégration

Lorsque HDL Coder génère le RTL à partir du processeur de Deep Learning, il génère également un coeur IP avec des interfaces AXI standard pour l'intégration dans votre design de référence SoC.

Tableau d'interfaces de la plateforme cible montrant la correspondance entre les E/S et les interfaces AXI.