La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Introduction à l’informatique temps réel

Présentations similaires


Présentation au sujet: "Introduction à l’informatique temps réel"— Transcription de la présentation:

1 Introduction à l’informatique temps réel
Shebli Anvar Dapnia - CEA Saclay Jean-Philippe Babau Département Informatique - INSA Lyon Pierre-Yves Duval CPPM - IN2P3 – CNRS

2 Types de systèmes informatiques
Systèmes transformationnels (calcul scientifique, SGBD) les données sont disponibles au lancement les instants de production des résultats ne sont pas contraints Systèmes interactifs (systèmes transactionnels ou outils bureautiques) les résultats dépendent de données produites par l’environnement les instants de production respectent des valeurs statistiques Systèmes réactifs ou temps réel résultats entièrement conditionnés par l’environnement connecté les instants de production dépendent de la dynamique du procédé Introduction à l'Informatique Temps Réel - S. Anvar, J.-P. Babau, P.-Y. Duval

3 Définition (Groupe CNRS sur la problématique temps réel 1988)
Le comportement d’un système informatique est qualifié de temps réel lorsqu’il est assujetti à l’évolution d’un procédé qui lui est connecté et qu’il doit piloter ou suivre en réagissant à tous ses changements d’état. Introduction à l'Informatique Temps Réel - S. Anvar, J.-P. Babau, P.-Y. Duval

4 Propriétés Fortes interaction avec le procédé
IHM inexistant, limité ou particulier Contraintes temporelles période de scrutation, délais Contraintes de coût, d’espace, de consommation matériel taille mémoire Prédictibilité temps / espace Fiabilité / sûreté image de marque sécurité inaccessibilité Introduction à l'Informatique Temps Réel - S. Anvar, J.-P. Babau, P.-Y. Duval

5 Validité d’un programme TR
Outre la correction algorithmique le temps intervient dans la validité du programme: le temps de réaction doit être adapté aux événements externes Le programme doit pouvoir fonctionner en continu en maintenant sa capacité à traiter le flux de données d’entrée Faute temporelle  faute algorithmique exemple: flux audio Au sens strict, « valider » un système temps réel c’est démontrer rigoureusement que le système a le comportement spécifié (preuve de programme) Impossible avec les langages habituels Introduction à l'Informatique Temps Réel - S. Anvar, J.-P. Babau, P.-Y. Duval

6 Bogues célèbres Mission Vénus Avion F16 Métro de San-Francisco
passage à km ( prévu : 5000 ) remplacement d’une virgule par un point Avion F16 déclaré « sur le dos » à l’équateur erreur de signe Métro de San-Francisco train fantôme Lancement 1ère navette américaine faux départ erreur de synchronisation entre les deux ordinateurs 1er lancement Ariane V explosion en vol problème de communication, pas de test d'intégration Sonde Mars Pathfinder blocage mauvaise politique d ’ordonnancement Sonde Mars Spirit blocage par reboots intempestifs débogage invasif non inclus dans la spécification Introduction à l'Informatique Temps Réel - S. Anvar, J.-P. Babau, P.-Y. Duval

7 Systèmes dédiés L’architecture matérielle et logicielle est une composante essentielle du système L’architecture est adaptée aux besoins spécifiques de l’application sur critères de: Fiabilité / robustesse Prédictibilité Taille Consommation Coût Dimensionnement particulier du système Compromis matériels et logiciels Système d’exploitation par composants Introduction à l'Informatique Temps Réel - S. Anvar, J.-P. Babau, P.-Y. Duval

8 Systèmes complexes Hétérogènes Communicants Evolutifs Adaptatifs
Temps réel / non temps réel Critiques / non critiques Communicants Entités réparties Parallélismes Evolutifs Ajout / suppression / modification pendant la durée de vie Hot plug Adaptatifs Modes d’urgences, modes dégradés Garanties de QoS  différence avec logiciel conventionnel Introduction à l'Informatique Temps Réel - S. Anvar, J.-P. Babau, P.-Y. Duval

9 Exemple: régulation / asservissement pour contrôle numérique
Entrée de Référence r(t) rk A / D Loi de contrôle calcul uk D / A yk yk, rk sont les valeurs échantillonnées pour k=0,1,2,3 … à la fréquence T fixe qui dépend du procédé et de la loi de contrôle. A / D y(t) u(t) Par exemple, dans un contrôle de moteur d’automobile on échantillonne plus fréquemment l’angle de rotation du vilebrequin toutes les µsec que la température du moteur toutes les 10 sec capteur procédé actionneur Introduction à l'Informatique Temps Réel - S. Anvar, J.-P. Babau, P.-Y. Duval

10 Exemple: navigation aérienne Interfaces opérateurs
sol Niveau 2 Capteurs à terre Radars … Calculs d’états Contrôle de l’espace aérien Niveau 1 Données de navigation Calculs d’états Gestion du vol Niveau 2 Le système de contrôle de l’espace aérien est au plus haut niveau de la hiérarchie. Il régule le flux des avions vers les aéroports. Pour cela il fixe des points de rendez-vous aux avions à divers points fixes sur le chemin vers leur destination. Niveau 1 Le système de gestion du vol utilise des points fixes comme entrée et calcule les paramètres de la trajectoire et la vitesse de l’avion pour arriver au rendez-vous à l’heure prévue. Ce niveau de guidage doit sélectionner la meilleure trajectoire parmi plusieurs possibles sur la base d’algorithmes d’optimisation de fonctions de coût (consommation de carburant) avec des contraintes (vitesses maxi et mini, taux de descente ou montée acceptable, topologie du sol, orientation et altitude de l’aéroport cible …). Ces algorithmes d’optimisation peuvent être non linéaires et consommer beaucoup de ressource. En revanche ils ne exécutent pas fréquemment. Par ailleurs ils peuvent être précalculés des que le plan de vol est connu pour les trajectoire de décollage ou d’approche par exemple. Ces opération peuvent se faire dans une plage de quelque secondes à quelques minutes et des solutions sub-optimales peuvent être choisie en cas d’urgence. Niveau 0 Les paramètres ainsi calculés (vitesse de croisière, angle, vitesse de montée ou descente … sont les consignes du système de régulation de vol qui a la charge de les maintenir quelles que soient les perturbations atmosphériques ou conditions d’environnement (vent, température, humidité, …). Ces calculs et les corrections correspondantes doivent être faits fréquemment, ils consomment peu de ressources et ont une durée exécution stable. Calculs d’états Régulation du vol avions Niveau 0 Capteurs embarqués actionneurs Introduction à l'Informatique Temps Réel - S. Anvar, J.-P. Babau, P.-Y. Duval

11 Exemple: Multimédia Stockage, transmission & affichage de flux
vidéo, audio, image ou graphique ont des contraintes temporelles fortes Cas de l’image Standard vidéo 30 img/s (TVHD 60 img/s), téléconférence 10 à 20 MPEG-2 débit en compression selon l’application de 1,5 à 35 Mb/s MPEG-2 est un très gros consommateur de CPU (surtout en compression) Cas du son De 16 kb/s (téléphone) à 128 kb/s (qualité CD) L’oreille est très sensible aux glitchs ou trous de quelques centaines de millisecondes Dans une diffusion son & image la synchronisation des lèvres impose un décalage de moins de 80 ms entre les flux audio et vidéo Introduction à l'Informatique Temps Réel - S. Anvar, J.-P. Babau, P.-Y. Duval

12 Multimédia Les applications multimédia ont donc des spécifications temporelles fortes, particulièrement sur les applications interactives (TV en direct) Compression & transmission des deux flux doivent respecter des contraintes de: synchronisation des flux régularité des flux délai de bout en bout Introduction à l'Informatique Temps Réel - S. Anvar, J.-P. Babau, P.-Y. Duval

13 Définitions Un système est dit embarqué lorsqu’il est intimement lié à un procédé à contrôler Un système est embarqué est dit enfoui lorsque son fonctionnement interne est peu ou pas du tout accessible Un système est qualifié de temps réel lorsqu’il est assujetti à des contraintes temporelles explicites Un système est dit concurrent lorsqu’il est composé de modules pouvant s’exécuter en parallèle Un système est dit critique lorsque son cahier des charges n’autorise aucune défaillance Introduction à l'Informatique Temps Réel - S. Anvar, J.-P. Babau, P.-Y. Duval

14 Développement de systèmes TR (1)
Spécification / modélisation / conception Encore peu répandu: UML, SDL, ...  approches « maison » Multitâche (LACATRE, chronogrammes, …) Approches synchrones (Esterel, Signal) Codesign (Approches heuristiques, SystemC, …) Programmation Systèmes logiciels sans OS OS temps réel RTOS (VxWorks, LynxOS, …) OS généralistes (NT, Linux, Java, …) OS embarqués (RTX, Windows CE, JavaCard, … ) Langages: ASM, C, C++, Java (technologies objets en expansion) Encore peu de réutilisation Introduction à l'Informatique Temps Réel - S. Anvar, J.-P. Babau, P.-Y. Duval

15 Développement de systèmes TR (2)
Communication Bus (VME, CompactPCI) Mémoire partagée, interruptions Réseaux de terrain (CAN, TTP, FIP) Réseaux (socket, TCP/IP) Middleware de communication (Corba TR, ControlHost, Design Patterns) Vérification / validation Ordonnancement, logique temporelle Approches synchrones (Esterel, Signal) Introduction à l'Informatique Temps Réel - S. Anvar, J.-P. Babau, P.-Y. Duval


Télécharger ppt "Introduction à l’informatique temps réel"

Présentations similaires


Annonces Google