MATLAB, Simulink et Polyspace pour les systèmes embarqués

Concevoir, coder et vérifier des systèmes embarqués

Via une simple pression sur un bouton, MATLAB and Simulink vous permettent de générer du code et de l'exécuter sur du hardware. Le codage n'est toutefois qu'une tâche parmi d'autres. Découvrez comment utiliser MATLAB, Simulink et Polyspace pour concevoir, coder et vérifier votre prochain système embarqué, depuis le prototypage jusqu'à la production. Vous pouvez :

  • Générer du code optimisé en C, C++, CUDA, Verilog, VHDL et Structured Text  
  • Utiliser des outils de design en virgule flottante et fixe pour faire des compromis coût/performance
  • Vérifier et profiler le code généré grâce à des tests In-the-Loop
  • Vous conformer à des normes telles qu'AUTOSAR, ISO 26262, DO-178, MISRA C et CERT C
  • Prototyper sur des cartes courantes, d'Arduino® à Zynq®, avec les hardware support packages

« Grâce à l'approche Model-Based Design, notre premier vol a été un succès. Il n'y a eu aucun problème du point de vue du contrôle ou de l'intégration. Avec Embedded Coder, la génération du code régissant le contrôle à partir de notre modèle Simulink a éliminé tous les ralentissements causés par la génération manuelle de code, ce qui a permis à l'équipe d'avoir davantage de temps à consacrer aux objectifs plus globaux du programme. »

Génération de code à partir de MATLAB

Générez du code C, C++, CUDA et HDL pour MATLAB en seulement trois étapes itératives. Exécutez et déployez le code n'importe où : des desktops aux dispositifs mobiles et aux systèmes embarqués. À mesure que votre design évolue, MATLAB Coder peut générer automatiquement du nouveau code, vous évitant de le faire manuellement. Cela accélère et facilite les itérations de design.

Vous pouvez intégrer le code généré sous forme de code source, de bibliothèques statiques ou de bibliothèques dynamiques, dans vos applications s'exécutant en dehors de MATLAB, sur desktop ou dans le cloud. Vous pouvez également packager le code généré sous forme de fonction MEX et l'utiliser directement dans MATLAB.

Génération de code embarqué avec MATLAB et Simulink
Kit d'évaluation pour systèmes embarqués

Génération de code à partir de Simulink

Utilisez Embedded Coder pour convertir vos modèles en code source et exécutables de haute qualité pour le prototypage et la production. Utilisez les paramètres C et C++ par défaut, ou optimisez les performances avec des instructions SIMD, des classes de stockage de données et des placements de code en mémoire. Générez du code source ANSI/ISO C/C++, MISRA-C ou AUTOSAR qui s'intègre à votre système run-time. Vous pouvez également générer un exécutable clé en main complet qui se télécharge et s'exécute automatiquement sur votre hardware personnalisé.

Examinez le code généré pour vos modèles grâce à des liens de traçabilité bidirectionnels, ou générez un rapport incluant le code, les données, les interfaces de fonctions et les métriques de code.

Virgule fixe

Passez rapidement des nombres en double précision à un riche ensemble de types de données et d'outils pour développer des algorithmes en virgule fixe (8, 16 et 32 bits) et en simple précision. Fixed-Point Designer propose des fonctions (opérations mathématiques, bit à bit, sur tableaux et matrices) qui optimisent votre design pour le calcul en virgule fixe et flottante.

Générez facilement du code C et C++ exact au bit près (bit-true), ainsi que du code Verilog® et VHDL® synthétisable à partir de votre code MATLAB, de vos modèles Simulink et de vos diagrammes Stateflow.

Grâce au remplacement du type de données, votre design embarqué en virgule fixe ou simple précision peut être instantanément converti en double précision pour analyser l'impact de la quantification. Des outils permettent d'identifier rapidement les sources de débordement, les pertes de précision et les plages ou précisions sous exploitées.

Fixed-Point Designer
Polyspace

Vérification des designs et du code

Créez, gérez et tracez des exigences dans les modèles, le code généré et les cas de test. Vérifiez la conformité des designs aux normes de modélisation telles que MAB. Développez et exécutez des tests basés sur les simulations (notamment les tests software-in-the-loop, processor-in-the-loop et hardware-in-the-loop). Embedded Coder vous permet de profiler le code généré au niveau des tâches et des fonctions.

Les produits Polyspace supportent le code manuel et le code généré. Ils vous permettent de prouver l'absence d'erreurs run-time, d'appliquer les règles de codage et de vérifier les vulnérabilités de sécurité selon des normes telles que CWE, CERT-C et ISO/IEC 17961.

Support des normes

Utilisez Embedded Coder pour générer du code conforme aux normes logicielles et de sécurité courantes telles qu'AUTOSAR et MISRA C. MathWorks propose des kits de qualification et de certification pour développer des systèmes et des outils de qualité conformément aux normes ISO 26262, IEC 61508, EN 50128, IEC 62304, DO-178, DO-254 et à d'autres normes industrielles applicables aux systèmes embarqués automobiles, médicaux, ferroviaires et aérospatiaux.

En savoir plus

Vérification des normes
Carte Discovery

Support hardware

Générez rapidement du code et compilez-le pour votre hardware, quelle que soit votre application : traitement du signal, computer vision, traitement d'images ou systèmes de contrôle.

Générez du code et prototypez-le sur des plateformes embarquées telles que Raspberry Pi™ ou Arduino®. Sur les plateformes mobiles, intégrez le code généré dans votre propre application et exécutez-le sur iPhone, iPad ou dispositif Android™, y compris en accédant aux capteurs embarqués comme la caméra vidéo, le microphone et l'accéléromètre. Déployez votre système embarqué sur de puissants microprocesseurs.

De plus, MathWorks et ses partenaires du programme Connections proposent des intégrations clés en main pour le hardware courant.

En savoir plus


Explore Examples

Démarrez par des tâches basiques et poursuivez avec des opérations plus avancées en suivant des exemples et tutoriels interactifs.