Deep Learning HDL Toolbox propose des fonctions et des outils pour prototyper et implémenter des réseaux de Deep Learning sur des cartes FPGA et SoC. La toolbox offre des bitstreams prédéfinis pour exécuter une variété de réseaux de Deep Learning sur les cartes FPGA et SoC AMD® et Intel® supportées. Les outils de profilage et d’estimation vous permettent de personnaliser un réseau de Deep Learning en explorant les compromis entre design, performance et utilisation des ressources.
Avec Deep Learning HDL Toolbox, vous pouvez personnaliser l'implémentation hardware de votre réseau de Deep Learning et générer du code Verilog®, SystemVerilog et VHDL® portable et synthétisable pour le déployer sur n'importe quel FPGA ou SoC (avec HDL Coder et Simulink).
Utiliser un processeur de Deep Learning basé sur FPGA
La toolbox inclut un processeur de Deep Learning utilisant des couches de Deep Learning génériques contrôlées par une logique de programmation. Le processeur effectue des inférences basées sur des FPGA pour les réseaux développés avec Deep Learning Toolbox.
Compiler et déployer des réseaux
Compilez un réseau de Deep Learning en un ensemble d'instructions qui seront exécutées par le processeur de Deep Learning. Déployez votre réseau sur une carte FPGA et réalisez des prédictions tout en collectant des métriques de performances sur celle-ci.
Introduction aux bitstreams prédéfinis
Prototypez rapidement un réseau LSTM (Long Short-Term Memory) en utilisant les bitstreams prédéfinis disponibles. Personnalisez la configuration des bitstreams pour respecter les exigences d'utilisation des ressources.
Déployer des réseaux sur FPGA
Utilisez Deep Learning Toolbox pour développer des réseaux RNN et CNN ou pour importer un réseau. Programmez ensuite un FPGA grâce à la commande deploy
et déployez le code sur des FPGA AMD ou Intel.
Effectuer des inférences basées sur des FPGA dans des applications MATLAB
Exécutez une application complète dans MATLAB, comprenant notamment 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 la carte FPGA et renvoyer les résultats dans l'espace de travail MATLAB.
Profiler l'inférence sur FPGA et ajuster le design des réseaux
En utilisant des métriques de profil, ajustez la configuration de votre réseau en mesurant la latence au niveau des couches lorsque vous réalisez des prédictions sur la carte FPGA afin d'identifier les goulots d'étranglement impactant la performance.
Compresser un réseau de Deep Learning pour le déploiement sur FPGA
Réduisez l'utilisation des ressources en compressant votre réseau de Deep Learning grâce aux techniques de quantification et d'élagage. Analysez les compromis entre la précision et l'utilisation des ressources avec le support package Model Quantization Library.
Personnaliser la configuration du processeur de Deep Learning
Précisez les options d'architecture hardware pour l'implémentation du processeur de Deep Learning, notamment le nombre de threads parallèles ou la taille maximale des couches.
Générer du RTL synthétisable et des cœurs IP
Utilisez HDL Coder pour générer du RTL synthétisable depuis le processeur de Deep Learning. Générez des cœurs IP en utilisant les interfaces AXI standards pour une intégration dans des designs SoC AMD et Intel.