Calcul des etats atteignables de programmes Esterel partitionne ...
Calcul des etats atteignables de programmes Esterel partitionne ...
Calcul des etats atteignables de programmes Esterel partitionne ...
- No tags were found...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Chapitre 2Contexte <strong>de</strong> l’Etu<strong>de</strong>Ce chapitre présente le contexte <strong>de</strong> nos travaux. La section 2.1 présente le langage <strong>Esterel</strong>ainsi que ses modèles sémantiques. La section 2.2 décrit plus particulièrement le modèle à partirduquel est calculé l’espace <strong><strong>de</strong>s</strong> états <strong>atteignables</strong> <strong><strong>de</strong>s</strong> <strong>programmes</strong> <strong>Esterel</strong> (section 2.3). Enfin,la section 2.4 introduit les notions théoriques qui permettent <strong>de</strong> modéliser et <strong>de</strong> calculer cetespace <strong>de</strong> manière symbolique et la section 2.5 présente une solution permettant d’implémenterce calcul à l’ai<strong>de</strong> <strong>de</strong> BDDs.2.1 <strong>Esterel</strong>A l’origine, le langage <strong>Esterel</strong> [12] a été conçu par <strong>de</strong>ux chercheurs (Jean-Paul Marmoratet Jean-Paul Rigault) dans le but <strong>de</strong> programmer le comportement d’une voiture automatiquepour un concours organisé par un journal d’électronique. Né d’un besoin anecdotique, ce langagea su trouver sa place dans le mon<strong>de</strong> <strong><strong>de</strong>s</strong> systèmes temps-réels en réalisant son <strong><strong>de</strong>s</strong>sein initial :permettre l’expression d’algorithmes <strong>de</strong> contrôle au moyen d’un langage clair et intuitif. Ainsile langage <strong>Esterel</strong> est-il particulièrement adapté aux applications dans lesquelles le contrôletient une place prépondérante comme les systèmes temps-réel, les systèmes embarqués, les protocoles<strong>de</strong> communication ou les interfaces homme-machine. <strong>Esterel</strong> est un langage impératif,déterministe, réactif [41] et synchrone [40] :– Réactif : Par opposition à un programme transformationnel qui traite un ensemble <strong>de</strong>données pour produire un résultat, un programme <strong>Esterel</strong> à pour vocation <strong>de</strong> réagircontinuellement à <strong><strong>de</strong>s</strong> événements provenant <strong>de</strong> son environnement. Un programme réactifproduit sans cesse <strong>de</strong> nouvelles sorties en réponse à <strong><strong>de</strong>s</strong> événements extérieurs. Ces <strong>programmes</strong>se composent souvent <strong>de</strong> sous-<strong>programmes</strong> s’exécutant en parallèle et communicantentre eux.– Synchrone : Par rapport aux <strong>programmes</strong> réactifs, l’hypothèse synchrone stipule quechaque réaction est synchrone avec l’événement qui l’a provoquée : la durée d’une réactionest supposée nulle. De cette manière, chaque événement divise naturellement le temps eninstants. En <strong>Esterel</strong>, les instants sont ca<strong>de</strong>ncés par les émissions d’un signal particulierappelé “tick” et les autres événements sont supposés synchrones avec les émissions <strong>de</strong> cesignal.– Déterministe : Une même séquence d’événements produit toujours la même séquence<strong>de</strong> réactions.9