Examen et corrigé de Langages Synchrones : Lustre et Esterel
Introduction à l'évaluation de Langages Synchrones
Ce document d'examen du module de Langages Synchrones s'adresse aux étudiants de niveau Master Informatique, au sein du parcours Systèmes et Applications Répartis de l'UPMC. Daté du 15 novembre 2010 et encadré par E. Encrenaz, le sujet propose une évaluation d'une durée de deux heures, autorisant les notes de cours et de travaux pratiques. L'épreuve est notée sur vingt-cinq points à titre indicatif, la note finale correspondant au minimum entre le score obtenu et la note maximale de vingt.
Structure et contenu de l'examen
Le sujet se compose de trois exercices indépendants portant sur l'analyse statique, la modélisation et la vérification de programmes écrits dans les langages synchrones Lustre et Esterel. Les questions sont conçues pour être relativement autonomes, permettant ainsi aux étudiants de progresser même si une question précédente n'a pas été entièrement résolue.
L'exercice initial se consacre à l'analyse statique de programmes Lustre. Il invite à étudier deux nœuds différents, nommés EA1 et EA2. Pour le premier nœud, il s'agit d'évaluer sa correction syntaxique et de déterminer son exécution à l'aide d'un chronogramme détaillé fourni dans les réponses. Pour le second nœud, l'analyse porte sur les problèmes de compilation, notamment en lien avec la causalité structurelle et constructive au sein d'un système d'équations booléennes.
Le second exercice aborde la modélisation et la vérification sous Lustre à travers un cas concret : la commande de clignotants d'automobile. Les différentes questions guident l'étudiant depuis la conception d'un nœud de commande gérant une manette à trois positions activée par des signaux de réinitialisation et de déplacement haut ou bas, jusqu'à l'écriture de propriétés sous forme d'observateurs. L'exercice intègre également la gestion du mouvement d'un volant mesuré par une vitesse angulaire, nécessitant l'association de plusieurs nœuds pour activer ou désactiver les feux.
Le troisième exercice explore le langage Esterel à travers un module unique comportant des boucles, des émissions de signaux, des instructions d'attente et des mécanismes d'interruption. Il demande de représenter l'exécution séquentielle pour un ensemble d'entrées donné, de construire la machine de Mealy correspondante en identifiant les points d'arrêt, et de vérifier formellement différentes propriétés temporelles sur le comportement du module.
Modalités de travail et apports pédagogiques
Ce type de sujet constitue un support de révision complet pour aborder les concepts fondamentaux de la programmation synchrone réactive. Il permet de s'exercer sur la vérification de programmes, la gestion du temps discret, l'analyse de boucles combinatoires et la traduction de spécifications textuelles en structures de contrôle formelles, qu'il s'agisse d'équations fléchées ou d'automates à états finis.
Questions fréquentes
Quel est le niveau académique concerné par ce document ?
Le document est destiné aux étudiants en Master Informatique, dans le cadre du parcours Systèmes et Applications Répartis à l'UPMC, pour le module de Langages Synchrones de l'année universitaire 2010-2011.
Quels langages de programmation synchrone sont étudiés dans ce sujet ?
L'examen couvre principalement deux langages synchrones : Lustre, utilisé pour les exercices d'analyse statique et de modélisation orientée flux de données, et Esterel, employé pour la programmation comportementale à base d'automates.
Comment s'articule la notation de cet examen ?
Le barème est établi sur vingt-cinq points à titre indicatif, mais la note finale retenue correspond au minimum entre les points obtenus et une note maximale fixée à vingt.
Testez vos connaissances
Question 1
Combien d'exercices indépendants composent cet examen de Langages Synchrones ?
- Deux exercices
- Trois exercices
- Quatre exercices
- Cinq exercices
Réponse correcte : Trois exercices
Explication : L'introduction du sujet précise explicitement que l'examen comprend trois exercices indépendants.
Question 2
Quel langage est utilisé dans le troisième exercice pour la compilation en automate ?
- Lustre
- Signal
- Esterel
- Scade
Réponse correcte : Esterel
Explication : L'exercice 3 est intitulé 'Esterel : Compilation en automate et vérification' et propose l'analyse d'un module écrit dans ce langage.
Question 3
Quelle est la durée officielle de l'épreuve indiquée sur le sujet ?
- 1 heure
- 1 heure et demie
- 2 heures
- 3 heures
Réponse correcte : 2 heures
Explication : L'en-tête du sujet mentionne clairement 'Examen, durée 2h'.
Télécharger Examen et corrigé de Langages Synchrones : Lustre et Esterel pdf