thesis

Compilation du langage esterel en systemes d'equations booleennes

Defense date:

Jan. 1, 1994

Edit

Institution:

Paris, ENMP

Disciplines:

Directors:

Abstract EN:

Pas de résumé disponible.

Abstract FR:

Le travail que nous presentons dans cette these formalise la traduction du langage reactif synchrone esterel en systemes d'equations booleennes (un modele abstrait des circuits digitaux) et compare plusieurs algorithmes de traduction. De plus, nous faisons le lien entre cette traduction et la compilation classique d'esterel en automates et nous presentons en detail le compilateur esterel v4, qui implemente un de ces algorithmes. Pour obtenir une traduction exacte et efficace d'esterel pur (c'est-a-dire sans manipulation de donnees) en systemes d'equations booleennes, nous construisons une suite de semantiques en prouvant formellement et en detail l'equivalence entre les semantiques successives. En partant de la semantique comportementale classique du langage esterel pur, nous derivons une nouvelle semantique, dite par ensembles de points d'arret, qui procede par reecritures d'ensembles de points de controle dans le texte du programme. Cette semantique, d'interet technique, nous permet ensuite de construire une premiere traduction d'esterel pur en systemes d'equations. Cette traduction est relativement inefficace, mais elle est complete et correcte. Nous proposons ensuite plusieurs ameliorations de la premiere traduction, et nous obtenons une seconde traduction. Nous decrivons egalement l'algorithme de gerard berry utilise dans le compilateur esterel v4 et nous le comparons a nos traductions. Enfin, nous decrivons les mises en uvre des traductions en equations: le compilateur esterel v4, base sur une extension a esterel-complet de l'algorithme de gerard berry, puis un prototype de compilateur implementant nos traductions. Nous presentons egalement un nouveau processeur du compilateur esterel v4, sscoc, qui expanse, partiellement ou totalement, les systemes d'equations en automates. Ce processeur permet d'envisager de nouveaux compromis dans la compilation d'esterel, entre la taille du code genere et le temps d'execution