Chapitre IV - CEG4566/CSI4541 – RNM – SITE – uOttawa – Hiver 2013 1 CEG4561/CSI

Chapitre IV - CEG4566/CSI4541 – RNM – SITE – uOttawa – Hiver 2013 1 CEG4561/CSI4541 – Conception de systèmes temps réel Chapitre 4 – Outils de spécification et de validation des systèmes en temps réel 4.1 Introduction Question : Pourquoi des outils de spécifications et de validation? 4.1.1. Conception d’un système temps réel • Description et expression des contraintes temps réel • Représentation simultanée de l’évolution logique et temporelle du système • Prédiction et estimation des temps de réponse • Sélection de l’architecture, du matériel et du logiciel • Le matériel conditionne les coûts de production • Le logiciel conditionne les coûts de développement • Compromis et équilibre matériel-logiciel Outils de spécifications et de validation 4.1.2. Spécifications et cahier des charges Tout système temps réel doit faire l’objet d’un cahier des charges ou spécification. Les problèmes techniques sont dénotés cahier des charges du système, ils sont solutionnés comme suit : Implémentation de la solution Essais et tests Analyse fine du problème Étude et définitions, cahier des charges Position du problème Chapitre IV - CEG4566/CSI4541 – RNM – SITE – uOttawa – Hiver 2013 2     Rédaction d’un cahier des charges : La rédaction doit faire apparaitre : a. Les relations opératrices dans une expression claire sous forme graphique, les textes restant souvent imprécis, surtout lorsque le système évolue sur des voies parallèles. b. L’importance des spécifications, qui sont de trois ordres : - Les spécifications fonctionnelles : - Les différentes fonctions que doit assurer le système doivent être décrites d’une manière claire et précise. - La chronologie des actions doit être conforme au processus. - Faire apparaitre la sécurité de fonctionnement qui ne dépend pas de la technologie. - Les spécifications technologiques : - Ont un aspect physique et technique. - Les spécifications opérationnelles : - Utiliser le retour de service si le système a déjà fonctionné pour améliorer la fiabilité, élimination des pannes, facilité de la maintenance, etc.… 4.1.3 Place de la simulation dans l’étude des systèmes temps réel La simulation est un processus qui consiste à : - Concevoir un modèle du système (réel) étudié, - Mener des expérimentations sur ce modèle (et non pas des calculs), - Interpréter les observations fournies par le déroulement du modèle et formuler des décisions relatives au système. Outils de modélisation et de validation 4.1.3.1. Méthodologie générale On distingue classiquement quatre phases distinctes : La modélisation (représenter le comportement du système), la programmation, l'expérimentation et l'interprétation des résultats (accompagnée d’actions). Chapitre IV - CEG4566/CSI4541 – RNM – SITE – uOttawa – Hiver 2013 3 (a) Modèle conceptuel : Le modèle n'est qu'une approximation du système, il est conditionné par l'objectif de l'étude. (b) Expérimentation : Il s'agit de construire des théories, ou hypothèses, qui prennent en compte le comportement observé. Note : Le passage du système au modèle conceptuel est une étape essentielle pour la simulation. 4.1.3.2. L’étape de modélisation L’étape de modélisation est une phase essentielle à la simulation. Différents points doivent être abordés : • Définir l'objectif de la modélisation (lié au cahier des charges) : Pourquoi modélise-t-on? Qu'étudie-t-on ? Que veut-on améliorer, ou faire ? • Définir les éléments du système (via la réalisation d'une fonction, ou d'un processus) et les limites du système (les entrées, les sorties). • Définir les interactions entre ces éléments (hiérarchie). • Définir la dynamique du système (entités qui circulent entre les éléments, comportement du système au cours du temps). • Abstraction (choisir les éléments du système pertinents pour l'étude). • Formalisation, conceptualisation : Modèle mathématique, modèle logiciel (Esterel, Simulink), modèle graphique (réseaux de Petri, Grafcet, Automates). 4.1.4 Notions sur les Automates finis • Système à événements discrets avec variables dans {0,1} • Les variables internes "codent" des états - Un état par variable pour rester simple - Y1 = 1 pour l'état 1, Y2 = 1 pour l'état 2 etc... (les autres Yi = 0) • On se restreint à un ensemble fini d'états • Dans un état on est "réceptif" à un petit nombre de variables d'entrée Chapitre IV - CEG4566/CSI4541 – RNM – SITE – uOttawa – Hiver 2013 4 4.1.4.1 Définition : C'est un triplet (E, Y, F) • Y : Ensemble fini d'états • E : Ensemble fini d'entrées • F : fonction "états suivants", F : Y x E → Y Y = {Y1, Y2, Y3, Y4, Y5, Y6} E = {E1, E2, E3, E4, E5} A chaque instant un seul Yi = 1 (état courant) tous les autre sont = 0 4.1.4.2. Exemple pratique : • Notion de séquence : le Pas 1 avant le pas 2, • Un élément mémoire par pas 4.1.4.3. Limite des automates finis : a. Explosion combinatoire des états b. La complexité des systèmes à événements discrets vient de : • coopération : les automates décrivent des processus ayant un but commun • compétition : les automates partagent des ressources Chapitre IV - CEG4566/CSI4541 – RNM – SITE – uOttawa – Hiver 2013 5 c. Pseudo parallélisme - entrelacement (interleaving) • les événements sont tous ordonnés (ordre total), temps linéaire d. Parallélisme vrai • évolutions simultanées des processus, indépendance entre des horloges locales • les événements ne sont reliés que par des relations d'ordre partiel e. Risque de blocage mortel, incohérence dans les communications  D’où l’idée des Réseaux de Petri Idées de départ de Carl Adam Petri (1960-1962) • Un ensemble d'automates à états finis qui communiquent • Avoir à la fois la représentation des automates (indépendance des évolutions internes) et celle des communications par les mêmes primitives (communications asynchrones par échange de messages, communication synchrones par rendez-vous, synchronisations, ressources partagées) • Graphes avec 2 types de nœuds "états" et "transitions" Histoire : • 1962 thèse de Carl Adam Petri à Darmstadt, Bonn Domaines d’application : • 1977 Systèmes de production, Automate Programmable Industriel, Grafcet • 1980 Évaluation des performances, simulation à événements discrets • 1980 Validation de protocoles de communication • 1986 Systèmes temps réels, systèmes distribués, génie logiciel • 1986 Systèmes d'information, gestion, interfaces homme-machine • 1989 Modèles de raisonnement, planification 4.2 Introduction aux réseaux de Petri Note : Pour une introduction aux réseaux de Petri et aux GRAFCET, voir les annexes du chapitre IV (partie 1 : RdP, partie 2 : Grafcet) 4.3 Introduction aux GRAFCET Note : Pour une introduction aux réseaux de Petri et aux GRAFCET, voir les annexes du chapitre IV (partie 1 : RdP, partie 2 : Grafcet) Chapitre IV - CEG4566/CSI4541 – RNM – SITE – uOttawa – Hiver 2013 6 4.4 Introduction au langage SDL (Specification and Description Language) 4.4.1 Principes de l’approche orientée modèle L’approche orientée modèle : • PIM: Platform Independent Model • PDM: Platform Definition Model • PSM: Platform Specific Model L’intérêt de la démarche est de transformer le modèle abstrait (PIM) à l’aide de la définition de la plateforme (PDM) pour obtenir un modèle concret (PSM). La plateforme PIM (Platform Independent Model) : • Le modèle abstrait doit être indépendant de la plateforme d’implémentation, • Le modèle abstrait doit pouvoir être traduit sur une plateforme d’implémentation, • Pour cela on s’appuie généralement sur une machine virtuelle qui offre: • un certain nombre de services, • une sémantique suffisamment forte pour être expressive. 4.4.2 Définition du langage SDL (Voir lien sur la page web du cours pour plus de détails) • Le SDL est un standard de l’ITU (International Telecommunication Union) sous la référence Z.100. • Objectif est de décrire de manière non ambiguë les protocoles de télécommunications afin d’assurer l’interopérabilité des équipements, • Utilisé par l ’ETSI (European Telecommunications Standards Institute) pour décrire les protocoles de télécommunications (X25, GSM, UMTS…), • SDL est mis à jour tous les 4 ans, on admet que la première version mature du langage date de 1988. • Les modèles SDL sont indépendants de l’implémentation, • Le SDL définit une sémantique forte, • Le SDL intègre des types de données abstraits : Les types de données abstraits SDL offrent les types de base comme INTEGER, REAL, CHARSTRING et des types structurés comme les structure (STRUCT), les énumérés (LITERALS), les constantes (SYNONYMS). La syntaxe ressemble à celle du Pascal, par exemple une assignation s'écrira ':='. • Orienté temps réel événementiel, • Graphique, Chapitre IV - CEG4566/CSI4541 – RNM – SITE – uOttawa – Hiver 2013 2 • Orienté objet depuis sa version de 1992: SDL’92. • Les modèles SDL peuvent être informels (une action peut être décrite en langage naturel) • Les modèles SDL peuvent être incomplets (les opérateurs sont définis à l’extérieur du modèle) • Les modèles SDL peuvent introduire une certaine forme d’indéterminisme (opérateur ANY) • Les modèles SDL peuvent être formels (complet et non ambiguë) • La sémantique et les services intrinsèques au langage permettent de définir une SDL virtual machine qui répond à la définition d’un Modèle Indépendant de la Plateforme (PIM). • La définition des interfaces des opérateurs et l’implémentation des services SDL définissent le modèle de la plateforme (PDM), • Il est alors possible de générer le modèle d’implémentation spécifique (PSM) comme par exemple la uploads/Industriel/ chap-iv-h13.pdf

  • 23
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager