Les experts domaine et les ingénieurs hardware utilisent MATLAB et Simulink pour développer des prototypes et des applications de production destinés à être déployés sur des FPGA AMD®, des SoC Zynq®-7000, des RFSoC/MPSoC Zynq UltraScale+, et des SoC adaptatifs Versal®.
Avec MATLAB et Simulink, vous pouvez :
- Modéliser l'architecture hardware au niveau système
- Programmer votre FPGA ou SoC sans écrire de code
- Simuler et débugger votre FPGA ou SoC avec les produits MATLAB et Simulink
- Générer du code HDL et C de production pour une intégration dans des FPGA ou SoC
Utiliser MATLAB avec des FPGA et des SoC Zynq de AMD
Modélisation et simulation
Simulink pour l'approche Model-Based Design vous permet de réduire le temps de développement de vos applications FPGA et Soc Zynq AMD en modélisant l'implémentation hardware à un haut niveau et en la simulant dans le contexte du système. Vous pouvez également quantifier en virgule fixe (30:45) pour utiliser plus efficacement les ressources, ou bien générer du HDL en virgule flottante native (9:19) synthétisable afin de programmer des FPGA plus simplement.
HDL Coder génère du code VHDL® ou Verilog® synthétisable directement depuis les blocs Simulink et les fonctions MATLAB compatibles HDL, pour des applications telles que le traitement du signal, les télécommunications, le contrôle de moteur et d'électronique de puissance et le traitement d'images/de vidéos.
AMD Vitis Model Composer ajoute des blocs spécifiques à AMD dans Simulink pour la simulation au niveau système et le déploiement du hardware. Vous pouvez intégrer des blocs Model Composer avec des blocs Simulink natifs pour la génération de code HDL.
SoC Blockset vous permet d'analyser les performances de l'interaction hardware-software des cartes Zynq UltraScale+ MPSoC et RFSoC, notamment l'utilisation de la mémoire et les effets de l'ordonnancement/de l'OS.
Prototype d'une application de télécommunications exécutée sur une plateforme radio logicielle SoC Zynq AMD avec une analyse temps réel dans MATLAB et Simulink.
Prototypage sur des plateformes basées sur des FPGA et SoC Zynq
Pour commencer avec le prototypage, vous pouvez télécharger des support packages pour cibler des plateformes d'évaluation préconfigurées, basées sur des FPGA et des SoC Zynq de AMD, pour la radio logicielle over-the-air temps réel, le contrôle de moteur BLDC, le traitement de vidéos et d'images avec une entrée caméra temps réel ou encore le traitement des inférences de Deep Learning. HDL Coder vous guide ensuite tout au long des étapes de programmation de votre FPGA ou SoC directement depuis Simulink et sans que vous ayez besoin d'écrire de code HDL.
Vous avez le choix entre plusieurs techniques pour débugger votre prototype FPGA directement depuis MATLAB et Simulink. Vous pouvez insérer une IP pour : lire ou écrire dans des registres AXI (5:40) et transférer des fichiers de signaux ou d'images volumineux entre MATLAB et des emplacements mémoire embarqués , capturer des données de signaux internes au FPGA pour les analyser dans MATLAB , ou tester votre algorithme sur un kit d'évaluation en mode FPGA-in-the-loop (2:52) avec votre test bench MATLAB ou Simulink.
En savoir plus
- Émission et réception OFDM avec les modules Analog Devices AD9361/AD9364
- Utiliser MATLAB pour le prototypage d'un réseau de Deep Learning sur FPGA Xilinx (3:25)
- Safran construit un récepteur SDR pour une balise de localisation d'urgence en utilisant l'approche Model-Based Design et un hardware System on Module (SoM) d'Analog Devices
- Workflow de Model-Based Design indépendant du hardware pour le prototypage rapide des applications de traitement d'images (24:36)
- Logic Analyzer
Découvrir les produits
Génération de code HDL et de cœurs IP pour l'intégration en production
La plupart des blocs qui supportent la génération de code HDL font figurer les propriétés du bloc HDL qui vous permettent d'indiquer des options d'implémentation hardware personnalisées telles que l'insertion de pipeline, le partage des ressources et le mapping en RAM. Les paramètres de génération de code HDL vous donnent les moyens de personnaliser les optimisations, les styles de reset, les clock enable, les conventions de nommage, etc. En plus d'être en capacité de concevoir des architectures d'implémentation dans Simulink, vous disposez d'un contrôle total sur l'optimisation de la vitesse et de la surface pour les cartes FPGA et SoC Zynq de AMD.
Vous pouvez générer du code RTL synthétisable lisible en vue d'une intégration dans le contenu non algorithmique dans Vivado®. Si vous installez le support package HDL Coder pour Zynq, vous pouvez générer un wrapper de cœur IP compatible avec divers protocoles AXI pour la communication avec le processeur Arm® et d'autres dispositifs IP. Vous pouvez utiliser le support package Embedded Coder pour Zynq pour générer le software des drivers et de l'application afin de programmer le processeur d'application Arm.
Découvrir les produits
Extension du support de la plateforme cible
Si vous devez effectuer un déploiement vers une plateforme basée sur des FPGA ou SoC qui n'est pas comprise dans un support package proposé par MathWorks, vous pouvez créer ou télécharger un design de référence et l'intégrer à HDL Coder. Vous pouvez développer le design de référence avec SoC Blockset ou Vivado. Les designs de référence tiers pour les plateformes basées sur des FPGA ou des SoC de AMD sont disponibles sur File Exchange auprès de fournisseurs tels que Analog Devices®, Avnet®, Speedgoat et Trenz Electronics.