De l'évaluation de performances du système de communication à la validation de l'architecture opérationnelle - cas du système embarqué dans l'automobile
Résumé
Ce chapitre présente une approche de validation d'applications temps réel réparties, par la mise en oeuvre de techniques d'évaluation de performances. Les notions seront introduites au travers d'un exemple d'application embarquée distribuée autour du réseau CAN. l'approche consiste à d'abord construire un modèle dont l'exploitation permet de quantifier les paramètres de performances temporelles (essentiellement les temps de réponse). La vérification de propriétés temporelles se fait par confrontation des valeurs obtenues avec les contraintes, issues du cahier des charges de l'application, imposées sur ces paramètres. Après une introduction aux techniques de l'évaluation de performances (files d'attente, simulation pour obtenir des résultats statistiques d'une part et analyse déterministe pour le pire cas d'autre part), nous montrerons les différents modèles que nous avons été amené à développer et à évaluer selon les objectifs que nous fixons : étude des performances du réseau CAN sans prise en compte d'un modèle d'application, vérification d'ordonnançabilité des messages périodiques en faisant abstraction des tâches qui les émettent, vérification conjointe de l'ordonnançabilité des tâches et des messages d'une application, étude de la robustesse de l'application face aux erreurs de transmission en évaluant la probabilité du non respect des échéances de messages, dimensionnement optimal de l'application par minimisation du temps moyen de réponse du trafic apériodique tout en garantissant l'ordonnançabilité des messages périodiques. Nous insisterons sur la nécessité de prendre en compte les performances du système support ainsi que les aléas de l'environnement dans la validation d'une application telle que celles qui sont embarquées dans l'automobile et cela dès la phase de conception. Enfin, en perspective nous introduirons le besoin de mener une étude comparative sur les performances dans le cas de deux politiques d'échange de messages : conduit par le temps (time-triggered) et par événements (event-driven) afin de trouver un bon compromis robustesse du système / minimisation du trafic.