Faire progresser la simulation de logiciels automobiles avec SimSched
SimSched améliore les simulations de logiciels auto en intégrant un timing précis.
― 7 min lire
Table des matières
AUTOSAR, ou Architecture Ouverte de Système Automotif, c'est un standard dans le monde de l'auto. Ça aide à organiser le logiciel des véhicules de manière structurée. Cette architecture a trois couches : une pour les applications, une pour le runtime, et une pour le logiciel de base. La couche des applications, c'est là où les fonctions logicielles sont créées avec des Composants Logiciels (SW-Cs). Chaque composant a des entités exécutables qui décrivent ce que fait le logiciel et comment il se comporte.
Quand les ingés créent des logiciels pour des voitures, ils utilisent des outils comme Simulink pour représenter le comportement de ces composants. Mais Simulink part du principe que les actions dans son environnement se passent instantanément, ce qui n'est pas vraiment le cas dans la vraie vie. En vrai, ces actions prennent du temps. Cette différence peut causer des problèmes où des comportements inattendus ne se manifestent pas durant la simulation. Du coup, il faut un meilleur moyen de modéliser comment le temps impacte le comportement des logiciels dans les voitures.
SimSched est une extension de Simulink qui aide à simuler comment le logiciel fonctionne dans des conditions réelles. Ça permet aux ingés de modéliser le Timing des tâches de manière plus précise. Ça veut dire que quand ils simulent le comportement des composants logiciels, ils peuvent prendre en compte le vrai temps que chaque tâche prend dans un véhicule réel. Cet outil aide à créer une image plus précise de comment le logiciel va marcher quand il sera en pratique.
L'Importance de la Simulation
Aujourd'hui, les voitures sont pilotées par des systèmes logiciels complexes. Par exemple, les systèmes qui gèrent les fonctionnalités de sécurité ou aident à conduire de manière autonome dépendent énormément du logiciel. Les véhicules modernes peuvent avoir des millions de lignes de code pour que ces systèmes fonctionnent correctement. Avec tout ce qui est en jeu, c'est super important que les ingés développent et testent le logiciel avec précision avant qu'il ne soit mis dans de vraies voitures.
Les simulations sont cruciales pour tester les systèmes. Elles permettent aux ingés de voir comment les designs vont fonctionner et de déceler des problèmes potentiels bien avant que le produit final soit construit. Cependant, les méthodes de simulation traditionnelles dans Simulink ne prennent pas en compte combien de temps chaque action prend. Elles simplifient en supposant que tout se passe instantanément.
Le Rôle de SimSched
SimSched vise à régler ces problèmes en faisant du temps une partie centrale de ses simulations. En ajoutant des détails de timing aux modèles dans Simulink, SimSched permet aux ingés de voir combien de temps les tâches prendront vraiment. C'est crucial, car ça les aide à découvrir des problèmes de timing et les corriger pendant la phase de conception plutôt que pendant les tests ou après la sortie.
SimSched utilise un algorithme qui reflète comment les tâches sont réellement priorisées et exécutées en temps réel. Beaucoup de véhicules utilisent un système appelé "priority ceiling scheduling", qui aide à gérer comment les tâches partagent les ressources. Ça veut dire que les tâches peuvent s'interrompre les unes les autres selon leur importance. SimSched modélise ce comportement, permettant aux ingés de voir comment leur logiciel pourrait performer sous différentes conditions.
Bâtir sur des Travaux Précédents
SimSched est une amélioration par rapport à des travaux antérieurs présentés lors d'une conférence. Il introduit une interface graphique (GUI) qui simplifie le processus de modélisation. La nouvelle interface permet aux ingés de gérer facilement les composants et d'automatiser certaines parties de la préparation de la simulation. Cet outil ne nécessite pas de compétences en codage avancées, ce qui le rend plus accessible.
Le Besoin d'un Timing Précis
Dans l'industrie automobile, s'assurer que le logiciel fonctionne correctement selon des exigences de timing strictes, c'est essentiel. Des retards dans les temps de réponse peuvent entraîner des risques de sécurité graves. Donc, les ingés ont besoin d'un moyen de modéliser le timing de manière simple. SimSched répond à ce besoin en permettant aux utilisateurs de définir le timing des tâches directement dans le modèle Simulink.
AUTOSAR a formalisé ses exigences de timing, et SimSched s'aligne sur ces standards. Ça aide les ingés à définir leurs besoins en timing à plusieurs niveaux d'abstraction. En faisant cela, ils peuvent vérifier si leurs conceptions respecteront les exigences de timing spécifiques dans des conditions réelles.
Comment fonctionne SimSched
SimSched est conçu pour s'intégrer dans les workflows existants de Simulink, ce qui le rend facile à adopter pour les ingés déjà familiers avec l'environnement. En utilisant SimSched, les ingés peuvent spécifier différents paramètres pour leurs tâches, comme combien de temps elles prennent pour se compléter et l'ordre dans lequel elles doivent s'exécuter.
Pendant la simulation, SimSched maintient un emploi du temps basé sur ces paramètres. Le planificateur suivra quelles tâches doivent s'exécuter et quand, permettant un timing précis pendant les tests.
Avantages par rapport à d'autres Outils
SimSched est comparé à plusieurs outils existants et s'est révélé simple à utiliser. Il offre des avantages significatifs, y compris une saisie facile et une réduction des besoins en codage supplémentaire. D'autres outils peuvent être plus complexes, nécessitant des connaissances étendues en programmation ou une compréhension détaillée de leur fonctionnement interne.
L'Avenir de SimSched
Développer SimSched n'est que le début. Des travaux futurs pourraient élargir ses capacités pour gérer des situations plus complexes, comme des tâches qui ne suivent pas un emploi du temps strict. Cela pourrait impliquer d'ajouter un support pour une gamme plus large d'algorithmes de planification, permettant une modélisation plus réaliste de la façon dont les tâches interagissent dans différentes situations.
En étant capable de simuler une variété d'événements et de conditions, les ingés peuvent garder plus de contrôle sur leurs conceptions. À long terme, cela pourrait aider à améliorer la sécurité et la performance des logiciels automobiles.
Conclusion
SimSched offre une avancée significative dans la simulation des logiciels automobiles. Ça permet aux ingés de prendre en compte le timing dans leurs designs, ce qui est crucial dans l'industrie automobile où la sécurité et la performance ne peuvent pas être mises en danger. En améliorant comment les simulations capturent le comportement réel, SimSched vise à réduire le risque de problèmes inattendus une fois qu'un véhicule est sur la route.
Avec des améliorations continues et de la flexibilité, SimSched a le potentiel de devenir un outil standard dans le processus de développement de logiciels automobiles, aidant les ingés à créer des véhicules plus sûrs et plus fiables.
Titre: SimSched: A tool for Simulating Autosar Implementaion in Simulink
Résumé: AUTOSAR (AUTomotive Open System ARchitecture) is an open industry standard for the automotive sector. It defines the three-layered automotive software architecture. One of these layers is the application layer, where functional behaviors are encapsulated in Software Components (SW-Cs). Inside SW-Cs, a set of runnable entities represents the internal behavior and is realized as a set of tasks. To address AUTOSAR's lack of support for modeling behaviors of runnables, languages such as Simulink are employed. Simulink simulations assume Simulink block behaviors are completed in zero execution time, while real execution requires a finite execution time. This timing mismatch can result in failures to detect unexpected runtime behaviors during the simulation phase. This paper extends the Simulink environment to model the timing properties of tasks. We present a Simulink block that can schedule tasks with non-zero simulation times. It enables a more realistic analysis during model development.
Auteurs: Jian Chen, Manar H. Alalfi, Thomas R. Dean, Ramesh S
Dernière mise à jour: 2023-08-28 00:00:00
Langue: English
Source URL: https://arxiv.org/abs/2308.14974
Source PDF: https://arxiv.org/pdf/2308.14974
Licence: https://creativecommons.org/licenses/by-nc-sa/4.0/
Changements: Ce résumé a été créé avec l'aide de l'IA et peut contenir des inexactitudes. Pour obtenir des informations précises, veuillez vous référer aux documents sources originaux dont les liens figurent ici.
Merci à arxiv pour l'utilisation de son interopérabilité en libre accès.