12.07.2015 Views

Calcul des etats atteignables de programmes Esterel partitionne ...

Calcul des etats atteignables de programmes Esterel partitionne ...

Calcul des etats atteignables de programmes Esterel partitionne ...

SHOW MORE
SHOW LESS
  • 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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!