SoC Blockset

 

SoC Blockset

Concevoir, évaluer et implémenter des architectures SoC hardware et software

En savoir plus:

Simuler et analyser des architectures SoC

Développez et combinez des algorithmes software, la logique hardware, les systèmes de mémoire et les E/S dans votre application SoC. Évaluez les architectures alternatives avant le déploiement sur le hardware.

Analyser l'utilisation des ressources des algorithmes

Analysez les modèles Simulink ou les fonctions MATLAB pour générer des rapports qui résument le nombre d'opérateurs arithmétiques requis pour l'implémentation. Utilisez ces rapports pour comparer différentes architectures, exécuter des études de compromis, et explorer le partitionnement hardware/software.

Affichez l'estimation du nombre et du type d'opérateurs requis pour implémenter les fonctions MATLAB ou les modèles Simulink.

Transactions de mémoires

Modélisez et simulez les transactions de mémoires partagées entre la logique hardware et les processeurs embarqués. Configurez des contrôleurs de mémoire DMA pour arbitrer le trafic mémoire. Prenez en compte la latence mémoire et le débit dans la simulation.

Exécution de tâches

Modélisez l'exécution d'une tâche sur un processus embarqué, gérée par le système d'exploitation. Simulez les tâches avec un timing précis, prenant en compte les changements de contexte, la préemption des tâches et la durée d'exécution. Modélisez les interruptions du software générées par le FPGA. Appliquez des statistiques pour simuler la durée des tâches non-déterministes, ou appliquez des durées de tâche enregistrées pendant le test du hardware.

Visualisez la préemption des tâches, les changements de contexte et la durée d'exécution avec des diagrammes de temps.

Prototypes de modèles SoC

Créez des modèles complets d'applications SoC en partant de zéro avec une approche pas à pas ou partez de modèles prédéfinis pour le cotraitement hardware/software incluant des modèles pour des applications de vision et de communication.

Créez des modèles d'applications SoC à partir de modèles prédéfinis.

Simulation avec données d'E/S enregistrées

Enregistrez des sources hardware périphériques telles que des signaux RF ou des données HDMI et lisez ensuite les enregistrements en tant que sources lors de simulations ou de tests du hardware.

Lecture des enregistrements en tant que source pour la simulation.

Analyse des performances système

Évaluez la performance de la mémoire et l'exécution des tâches en simulation et effectuez un profilage sur la carte.

Analyse de l'exécution des tâches

Simulez le système software des applications SoC en exécutant les modèles Simulink incorporant des tâches pilotées par des timers et des événements. Visualisez le timing d'exécution, la préemption, les dépassements, les drops et l'utilisation du cœur. Rejouez les exécutions de tâches dans une simulation en utilisant les données de timing des tâches capturées lors de simulations antérieures ou directement depuis des cartes SoC.

Analyse statistique des temps d'exécution d'une tâche.

Performance de mémoire DDR

Analysez la bande passante mémoire de designs système. Visualisez les résultats de simulation et les métriques de bande passante avant de les déployer sur la carte SoC.

Simulation de transactions de mémoire partagée et analyse de performance.

Contrôle de performance de la mémoire interne et profilage de l'exécution des tâches

Mesurez la performance de la mémoire et l'exécution de tâches sur une carte SoC, puis visualisez et analysez ces mesures pour adapter un modèle SoC à vos exigences de performance système. Vous pouvez interagir en temps réel avec les cartes SoC depuis MATLAB ou depuis votre test bench Simulink.

Mesure de l'exécution de tâches avec le profileur d'instrumentation du code.

Déploiement sur des cartes SoC et FPGA

Générez des designs de référence et du code RTL pour la logique programmable. Générez du code C/C++ pour les tâches du processeur. Déployez des applications hardware/software complètes sur des cartes de développement.

Génération d'un projet de software embarqué

Lorsqu'il est utilisé avec Embedded Coder®, SoC Blockset génère des projets de software embarqués complets à partir de modèles incluant les ordonnanceurs, les tâches software et l'intégration des drivers d'E/S.

Génération de projets de software embarqués complets à partir de modèles.

Génération de designs de référence

Générez des designs de référence pour la logique programmable. Les designs de référence sont des réseaux configurés de cœurs IP avec des chemins de données et de contrôle qui peuvent être connectés à des mémoires externes et des applications software. SoC Blockset se connecte aux outils de design Xilinx et Intel pour produire des bitstreams, puis programme des cartes FPGA et SoC.

Générez des designs de référence pour une utilisation avec des IP d'algorithmes HDL générés avec HDL Coder.

Simuler et déployer dans des microcontrôleurs et des microprocesseurs

Développez des algorithmes software, incorporant des effets du système d'exploitation et des composants hardware, puis déployez sur le hardware.

Modélisation des périphériques

Effectuez des simulations en boucle fermée incluant le comportement des périphériques tels que les ADC et PWM. Les modèles peuvent prendre en compte la synchronisation et la latence ADC-PWM.

Utiliser les blocs ADC, PWM et Task Manager pour modéliser le comportement déclencheur

Modélisation d'architecture multiprocesseurs

Partitionnez les algorithmes entre plusieurs processeurs pour obtenir une modularité du design et améliorer la performance. Modélisez l'exécution multiprocesseurs et la communication des données entre processeurs.

Les canaux IPC simulent la communication entre des processus sur machines bare-metal s'exécutant sur des processeurs distincts.

Déployer sur des cartes microcontrôleurs et microprocesseurs

Effectuez un prototypage rapide sur des cartes hardware en générant des applications software avec Embedded Coder. Effectuez un profilage sur la carte pour mettre au point les applications.

Déployer les applications software sur le TI Delfino F28379D LaunchPad