UBO - Université de Bretagne Occidentale
 
Présentations des interventions

Session : Développement d’applications temps réel
 
Problématique et retour d'expérience du développement des logiciels embarqués pour le spatial.
Paul ARBERET - Chef du service logiciel embarqué du CNES
l'objectif de cette intervention consiste à poser la problématique de développement, validation et maintenance des applications logicielles embarquées dans le contexte spatial (satellites, lanceurs) et le retour sur les 20 années d'expérience. L'exposé s'attardera en particulier, au travers d'exemples concrets, sur les solutions aux contraintes d'environnement et d'architecture de l'avionique spatiale et leurs impacts pour les logiciels bord. L'exposé sera etayé par des problématiques rencontrées dans le cadre de projets réels, en particulier les anomalies majeures détectées et la manière dont elles ont été résolues.
 
L'exposé détaillera ensuite l'évolution des techniques mises en œuvre en matière de génie logiciel et d'architecture temps réel des logiciels de vol pour répondre aux besoins des missions spatiales et aux contraintes industrielles. Dans un deuxième temps, la présentation visera à identifier les besoins futurs et les axes des travaux plus ou moins prospectifs en cours ou à venir pour préparer à l'avenir.
 
Modèles de temps et de contraintes temporelles de MARTE et leurs applications
Charles André (INRIA)
Le profil UML MARTE a été créé pour la modélisation et l'analyse des systèmes temps réel embarqués. A ce titre, il permet d'annoter des modèles UML avec des paramètres temporels (durée, période, échéance, etc.). MARTE va bien au-delà de la simple annotation. Il définit un modèle de temps et de contraintes temporelles qui traite à la fois du temps dit physique et du temps logique. Le temps "physique" (appelé chronométrique en MARTE) est utilisé principalement dans les applications multitâches temps réel. MARTE permet aussi la prise en compte de plusieurs référentiels temporels dans une même application ce qui s'avère très utile en modélisation de systèmes répartis ou de systèmes électroniques "multi-horloges".
Après une brève présentation du temps chronométrique, nous développons une facette moins connue de MARTE : le temps logique et le langage d'expression de contraintes appelé CCSL. Ceci introduit un modèle de "temps pour la conception" dans lequel la sémantique temporelle est directement intégrée au lieu d'être une simple annotation.
Session : Méthodes formelles
Initiation au model-checking
Serge Haddad (LSV)
Dans cet exposé nous discuterons de l'intérêt d'un langage d'expression de propriétés génériques et nous introduirons deux langages CTL et LTL basés sur la logique temporelle. Nous nous tournerons
ensuite vers la vérification de telles propriétés sur un système de transitions fini ce qu'on appelle traditionnellement le model-checking. A cette fin, nous rappellerons des algorithmes classiques pour les graphes (accessibilité et calcul de composantes fortement connexes). Puis nous développerons les algorithmes spécifiques au model-checking de CTL et de LTL. Finalement, nous survolerons les extensions du model-checking aux systèmes infinis, temporisés et probabilistes.
 
Théories de contrats pour le développement par composant des systèmes temps-réel
Jean-Baptiste Raclet (IRIT, Université Paul Sabatier – CNRS)
L'approche contrat vise à faire face aux difficultés significatives rencontrées par les concepteurs de systèmes en raison de la complexité croissante de leurs produits, associée à des exigences de correction de plus en plus importantes et des temps de déploiement sur le marché de plus en plus court.
Plus précisément, on distingue dans un contrat d'une part, des hypothèses sur l'environnement d'exécution du composant développé et d'autres part des garanties fournies par le composant lorsque son environnement respecte ces hypothèses. Cette double spécification permet d'établir des responsabilités entre les différents intervenants sur la chaîne de conception d'un système ainsi que de limiter les contextes d'exécution d'un composant.
Dans cet exposé, nous nous concentrerons sur des formalismes de contrats combinant des aspects fonctionnels et temps-réel. Dans un premier temps, nous définirons une méta-théorie de contrats regroupant des caractéristiques indispensables à une bonne théorie de contrats. Ensuite, nous passerons en revue quelques formalismes de contrats temporisés existants (contrats hypothèses/garanties à la SPEEDS, interfaces temporisées, automates modaux temporisés, automates temporisés à entrées/sorties) et verront de quelles façons ceux-ci répondent aux exigences de la méta-théorie.
 
Model Based Testing : principes et application dans le cadre temporisé
Antoine Rollet (LaBRI)
L'objectif de cet exposé est de présenter quelques principes théoriques pour générer des tests à partir d'une spécification formelle dans le cadre de systèmes réactifs temporisés. Après avoir rappelé quelques principes sur le test formel à base de modèles et les différentes approches, nous allons nous focaliser dans un premier temps sur les systèmes à base de transitions (IOLTS) et les méthodes de génération associées, de façon non déterministe ou par objectif de test. Ensuite, nous verrons comment étendre ces travaux dans le cadre temporisé en utilisant notamment une extension des automates temporisés d'Alur et Dill avec entrées/sorties. Enfin, nous évoquerons quelques extensions plus récentes de ces travaux.
 
Modèles stochastiques pour les systèmes dynamiques à événements discrets
Patrice Moreaux (LISTIC)
Dans ce tutoriel, nous présentons d'abord le contexte des modèles stochastiques et leur usage dans l'étude des systèmes informatisés: évaluation de performances, sûreté de fonctionnement. Nous détaillons ensuite le modèle fondamental des chaînes de Markov et ses propriétés. Nous dressons un panorama des modèles de niveau sémantique plus élevé qui donnent naissance à un modèle markovien. Nous présentons enfin, quelques méthodes qui permettent de ramener l'étude de systèmes a priori non markoviens ou de taille empêchant leur analyse directe à des modèles analysables. Une bibliographie détaillée et une sélection de documents accessibles sur le WEB seront fournies. Une liste d'outils informatisés sera également proposée.
 
Contrôle temporisé
Eugene Asarin (LIAFA- Université Paris Diderot et CNRS)
L'approche temporisée au contrôle des systèmes ouverts temps réel est basée sur leur modélisation par des jeux temporisés. Un joueur E représente l'environnement. L'autre joueur C est le contrôleur qui souhaite que le système se comporte correctement quoique fasse son adversaire E. On synthétise  une stratégie gagnante pour C, et on l'utilise dans le système, ainsi le bon fonctionnement est assuré.

Dans l'exposé on survolera le modèle des jeux temporisé, les résultats théoriques, les algorithmes et les outils pour la solution de ces jeux, et on illustrera l'utilisation de cette approche par des études de cas en contrôle temps réel, ordonnancement et planification dans le contexte des contraintes temporelles fortes et de l'incertitude temporelle de certains événements.
Session : Enjeux industriels
Simulation multi-agents de modèles AADL
Pierre Dissaux (Ellidiss Technologies), Olivier Marc (Virtualys)
Le langage AADL (Architecture Analysis and Design Language) permet la modélisation d'architecture de systèmes temps réels à dominante logicielle. AADL est standardisé au niveau international sous la forme du document SAE AS-5506A. Le langage spécifie des catégories spécialisées de composants dont l'assemblage doit respecter un ensemble formalisé de règles statiques, mais aussi un comportement dynamique précisément défini par le standard. Ces caractéristiques donnent à AADL de bonnes propriétés d'analysabilité, propices à la mise en oeuvre de techniques de vérification diverses.
L'exposé présente une expérience originale de réalisation d'un environnement de simulation de modèles AADL s'appuyant sur un moteur multi-agents. Contrairement aux techniques de simulation temps-réel traditionnelles qui consistent à développer un émulateur d'un système d'exploitation centralisé (ordonnancement des tâches, communication inter-tâches, ...), l'approche multi-agents permet d'implémenter localement le comportement de chaque composant et d'observer globalement la résultante de leurs interactions.
Cette réalisation a été initiée en investissement propre par Ellidiss (www.ellidiss.fr), en partenariat avec Virtualys (www.virtualys.fr), puis a été intégrée à ce jour à deux produits: la chaîne d'outils TASTE développée pour l'agence spatiale européenne et AADL Inspector commercialisé par Ellidiss.
 
Quand modéliser est contre productif...
Jean-Philippe LERAT (Sodius)
C'est un lieu commun de faire l'apologie de la modélisation, seule capable de réduire la fameuse complexité. La plupart des présentations commencent par citer les chiffres du Standish Group sur le taux d'échec des projets et de clamer que la modélisation est la voie royale pour améliorer cette désolante situation. Or, cette étude date de 1985 et personne n'ose avouer la vérité: alors que la modélisation avance de tous les côtés, la débâcle n'est pas enrayée et la déception reste trop souvent la règle.
L'expérience montre trois pièges dans lesquels le diable se glisse pour ruiner les efforts méritoires en modélisation: la focalisation sur les produits et non sur les systèmes, la génération endogène de complexité par la modélisation et, pour finir, le mythe de l'information partagée par les modèles.
L'objectif de l'article reste de faire la promotion de la modélisation, mais au service des architectes et non à travers le point de vue technique des outils de modélisations.
 
Introduction à la certification des systèmes temps réel critiques
Quentin Ochem (AdaCore)
L’une des applications les plus courantes des systèmes temps réel est la réalisation de fonctionnalités critiques pour des applications embarquées, par exemple en avionique, en ferroviaire ou dans le spatial. Les erreurs dans ce type d’applications ont des conséquences graves, que ce soit en termes de vies humaines ou de la perte d’investissements financiers importants. Des techniques de développement et de vérification on donc été mises en œuvre pour assurer un niveau de sûreté logicielle maximum. Cette présentation en décrira les grands principes, et exposera les défis que présente la complexité croissante de ces applications.
Session : Ordonnancement et support d’exécution
Ordonnancement et ordonnançabilité monoprocesseur
Emmanuel Grolleau (LISI)
L'étude de l'ordonnançabilité d'un système consiste à assurer que les contraintes de temps inhérentes aux tâches du système sont respectées. L'analyse d'ordonnançabilité est menée sur un modèle qui est une abstraction temporelle et structurelle de l'implémentation. L'analyse temporelle étant en général une étude du pire cas, plus le modèle représente finement le système réel, moins l'analyse est pessimiste, ce qui réduit le sur-dimensionnement, mais, en contrepartie, le problème d'ordonnançabilité devient plus complexe. Ce tutoriel aborde de façon unifiée les différents modèles de tâches, les techniques d'analyse proposées dans la littérature, ainsi que la complexité des problèmes soulevés.
 
Estimation de pires temps d'exécution (WCET - Worst-Case Execution Times)
Isabelle Puaut (IRISA)
Les systèmes temps-réel strict nécessitent de respecter leurs contraintes de temps dans tous les scéarios d'exécution, y compris le pire. Ainsi, les méthodes de vérification d'ordonnançabilité se basent sur la connaissance du pire temps d'exécution de chaque tâche du systèmes. Cette présentation dresse un état de l'art de l'existant en terme de méthodes d'estimation de pires-temps d'exécution (en anglais WCET, pour {\em Worst-Case Execution Times}). Après une brève une présentation des défis liés à l'estimation des WCET et une classification des grandes familles de techniques d'estimation (statiques, dynamiques) d'estimation des WCET, nous nous concentrerons sur les méthodes d'estimation opérant par analyse statique des programmes. Les principales phases de l'obtention des WCET (analyse du flot de contrôle, analyse de bas-niveau, calcul des WCET) sont distinguées. Nous insisterons tout particulièrement sur l'analyse dite de bas-niveau (niveau matériel) car les éléments matériels d'amélioration des performances tels que les caches ou l'exécution pipelinée nécessitent le développement de méthodes d'analyse adaptées. L'exposé se conclura par une étude des voies de recherche actuellement explorées par la communauté WCET.
 
Ordonnancement temps réel multiprocesseur – Panorama sur les politiques globales
Anne-Marie Déplanche (IRCCyN)
Depuis la fin des années 90, l’apparition sur le marché de processeurs multicœur aux performances accrues en a fait des architectures matérielles incontournables pour de plus en plus d’applications temps réel. Il en a résulté un renouveau d’intérêt pour la recherche en matière d’ordonnancement temps réel multiprocesseur, notamment en matière d’approches dites « globales » pour lesquelles les tâches peuvent migrer d’un processeur à l’autre pendant leur exécution (par opposition aux approches « par partitionnement » qui réalisent une affectation définitive des tâches aux processeurs). Cet article offrira un panorama de ces politiques globales : règles d’ordonnancement et performances associées en matière d’ordonnançabilité. Pour commencer, nous nous intéresserons aux algorithmes directement issus de l’ordonnancement monoprocesseur et à leurs dérivés. Nous poursuivrons par l’approche dite « PFair » qui, en allouant dans le temps les processeurs aux tâches de manière « fluide », atteint l’optimalité en matière d’utilisation des ressources d’exécution mais au prix de surcoûts d’exécution. Nous terminerons donc par la présentation de nouveaux algorithmes de même inspiration et récemment qualifiés de « DPFair » qui, tout en conservant la propriété d’optimalité, affichent des surcoûts moindres.
 
Supports d’exécution : architecture, concurrence/synchronisation et prise en compte du temps
Yvon Kermarrec (Télécom Bretagne)
Cet exposé vise à présenter un lien entre les aspects langages et exécutif temps réel / système d’exploitation sous jacent et comment des aspects de haut niveau (synchronisation, terminaison, concurrence, par exemple) peuvent être implémentés. Nous illustrerons avec le langage Ada 95 en particulier et des exécutifs temps réel. L’exposé montrera également pourquoi il est nécessaire de restreindre les possibilités du langage lorsque l’on recherche le déterminisme. Ce dernier point sera détaillé dans thèmes suivants : le modèle hiérarchique de tâche et l’impact sur la détermination de la terminaison d’une application, les restrictions au langage Ada qui sont imposées par le profil Ravenscar pour les applications temps réel, les nouvelles formes de synchronisation introduites dans Ada 95 à partir des expériences avec Ada 83.
Un dernier thème de l’exposé sera consacré à comment les langages de programmation prennent en compte les potentialités des exécutifs (cette partie sera illustrée par l’annexe temps réel du langage Ada).
 
 
Ordonnancement temps réel orienté consommation
J.P. Diguet (LABSTiCC)
La conception de systèmes embarqués connaît deux types d’évolution. La première est la diffusion dans l’environnement humain de petits systèmes distribués, la seconde est la généralisation des architectures multiprocesseurs. Ces deux tendances ont en commun de fortes contraintes de consommation imposées par une quantité limitée d’énergie embarquée, un seuil maximal de puissance admissible, des risques de dysfonctionnement induits par l’augmentation de la température et globalement par la quantité totale d’énergie consommée. Ainsi, dans ces contextes mono ou multiprocesseurs, les méthodes d’ordonnancement temps réel et d’optimisation de la consommation doivent être considérées conjointement.
La présentation a pour objectif de dresser un panorama des méthodes et perspectives dans ce domaine. Les stratégies s’organisent en deux grandes familles de solutions complémentaires : DPM (/Dynamic Power Management/) et DVFS (/Dynamic Voltage Frequency Scaling/). La première vise à placer ponctuellement tout ou partie du système dans un état de veille, cette décision dépend du temps estimé d’inutilisation et du coût de remise en état actif. La seconde consiste à contrôler les couples tension/fréquence du système de manière à ralentir le circuit sans compromettre le respect des contraintes de temps.
Session : Développement d’applications temps réel
Co-simulation niveau système d'architectures logicielles avionique utilisant un modèle de calcul polychrone,
Jean Pierre Talpin (IRISA)
The design of embedded systems from multiple views and heterogeneous models is an ubiquitous activity in avionics as, in particular, different high-level modeling standards are adopted for specifying the functional components of a system and its architecture. The system-level simulation of such composite models is a necessary but difficult task, allowing to validate global design choices as early as possible in the system design flow. We propose an approach to the issue of composing, integrating and simulating such heterogeneous models in a system-level co-design flow. We case-study a system whose functional behavior is specified using synchronous data-flow and state diagrams in Simulink/Gene-Auto, and whose system architecture is modeled using the AADL standard. These high-level, synchronous and asynchronous, models are then translated into a common model, based on a polychronous model of computation, allowing for a Globally Asynchronous Locally Synchronous (GALS) interpretation of the composition. This translation is implemented as an automatic model transformation within Polychrony, a toolkit for embedded systems design which implements the suited multi-clocked synchronous model of computation and communication. Simulation, including profiling and value change dump demonstration, has been carried out based on the common model within Polychrony.
 
 
L'ingénierie dirigée par les modèles pour le temps-réel embarqué: modélisation et analyse
Sébastien Gérard et Sara Tucci, CEA, LIST
Le développement de systèmes temps réel embarqués, de plus en plus sophistiquées et avec des contraintes de fiabilité toujours plus grandes, nécessite de nouveaux paradigmes. Dans ce contexte, les approches contemporaines centrées sur le code ont atteint leurs limites. L'expérience a montré que l'ingénierie centrée sur les modèles et s'appuyant sur des langages de modélisation spécifique au domaine est une approche qui peut permettre de dépasser ces limitations. L'objet de cette session sera d'identifier tout d'abord les exigences pour un langage de modélisation à utiliser dans le domaine du temps réel et de l'embarqué. Ensuite, nous aborderons comment le profil UML, MARTE, un standard industriel répond à ces exigences. Nous verrons plus précisément dans quelle mesure MARTE permet une modélisation précise des phénomènes tels que le temps, la concurrence, les plates-formes logicielles et matérielles, ainsi que leurs caractéristiques quantitatives. Enfin, nous illustrerons MARTE sur une cas d'utilisation consistant à faire une modélisation d'architecture et une analyse d'ordonnançabilité.
 
Vérification formelle de spécifications AADL via FIACRE
Mamoun Filali (IRIT-CNRS), François Vernadat (LAAS-CNRS, INSA), Bernard Berthomieu (LAAS-CNRS), Jean-Paul Bodeveix (IRIT, UPS), Silvano Dal Zilio (LAAS-CNRS).
Cet exposé présente le langage FIACRE, issu du projet TOPCASED. Fiacre (Format intermédiaire pour l'assemblage de composants répartis) est un langage pivot comportemental permettant de factoriser les traductions des langages de modélisation tels que SDL, UML et AADL vers les outils de model-checking.
  • La première partie présente les concepts du langage Fiacre et la chaîne de compilation permettant d'utiliser les model-checkers CADP et TINA.
  • la seconde partie, présente un exemple d'utilisation du langage FIACRE dans le cadre de la traduction du langage d'architecture AADL.
  • La conclusion donne un apercu des travaux et projets en cours dans le contexte de ce langage.
Session : Réseaux temps réel et qualité de service
Tour d'horizon des protocoles MAC pour communications temps-réel dans les réseaux de capteurs sans fils
Isabelle Augé-Blum (CITI)
Les réseaux de capteurs sans fils sont consistués de nombreux composants électroniques capables de mesurer des grandeurs physiques de l'environnement, de les traiter et de les communiquer à un collecteur, via une interface radio. La communication jusqu'au collecteur se fait en multi-sauts et sans infrastructure, les capteurs étant capables de relayer l'information et de s'auto-organiser.
Les applications pour ce type de réseaux sont nombreuses, certaines ayant de fortes contraintes temps-réel (surveillance d'intrusions, de catastrophes naturelles, …). Les protocoles de communications doivent donc respecter ces contraintes temps-réel (en plus des classiques contraintes d'efficacité énergétique).
La difficulté principale vient de la dynamicité du lien radio, entrainant de constants changements de voisinage. Le but de cette communication est de présenter un état de l'art des protocoles MAC pour réseaux de capteurs sans fils avec contraintes temps-réel.
 
Communication in vehicular networks
Bertrand Ducourthial (Heudiasyc)
These last years, Intelligent Transport System gain attention of the research community. It is expected that ITS will reduce the road fatalities (around 40,000 deaths per year in USA or Europe), increase the productivity and the profitability of the infrastructures, avoid traffic jams and reduce the impact of road transports on the environment.
ITS involve the road infrastructure, the car manufacturers, the telecommunication infrastructures... They often rely on embedded systems and wireless networking facilities.
A key issue of the Intelligent Transport System is the vehicular network. Many applications will rely on vehicle-to-vehicle communications as well as vehicle-to-infrastructure communications. Vehicular networks are a special case of mobile ad hoc networks, with high mobility and specific mobility patterns. There are still many open issues in these networks to overcome the dynamic. However, some applications have strict constraints on timing and throughput, such as road safety applications, one of the main motivation for ITS.
The seminar will present the vehicular networks, their motivations, standard and open issues.
 
Qualité de service et systèmes contrôlés ́en réseau Qds & SCR
Jean-Philippe Georges (CRAN)
Les systèmes de contrôle-commande industriels et embarqués se caractérisent par l’interconnexion en réseau de multiples équipements via des réseaux non plus d´ediés, mais partagés avec d’autres applications. Dans ces systèmes contrôlés en réseau, il est nécessaire que la Qualité de Service du réseau ait un impact limité sur la Qualité de Performance du systéme. Pour les réseaux basés sur des équipements sur étagère, il s’agit donc d’adresser les scénarios pour lesquels les protocoles de communication communs échouent à la satisfaction des exigences de par de longs d´élais ou la rupture de la connectivité de bout en bout. La problématique générale vise à doter les applications distribuées des moyens en communication qu’elles requiérent, et/ou définir leur commande en fonction du service offert par le réseau. Il s’agit donc de contrôler et/ou adapter le système de communication (qualité de service) et/ou l’application. Cette présentation s’intéresse plus particulièrement aux travaux concernant la commande dynamique (réservation de mémoire, contrôle d’admission, ordonnancement, etc.) de la qualité de service réseau (disponibilité, délais, pertes, etc.) en fonction des exigences du système contrôlé.
 
Intergiciels pour le temps réel
Jérôme Hugues (ISAE)
Les intergiciels (ou middleware) visent à fournir une couche d'abstraction au dessus des mécanismes de base du système d'exploitation, et d'un ou plusieurs mécanismes de transport afin d'assurer un échange d'information ou une exécution décentralisée. Dans cet exposé, nous commencerons par présenter différents modèles de répartition, pour ensuite illustrer par le biais de deux standards (DDS et CORBA Component Model, CCM) les problèmes de déploiement et de configuration des applications réparties, ainsi que des éléments d'implantation. Nous conclurons par une discussion sur l'adéquation entre intergiciel et contraintes dures des systèmes temps réel.

Mentions Légales | Accueil | Plan du site | Edition en ligne