INRIA
Address 2004 route des lucioles, BP 93
Zip Code F-06902
City Sophia-Antipolis CDX
Country France
Phone +33 (0) 4 92 38 79 41
Fax +33 (0) 4 92 38 77 65
Contact Robert de Simone , Pr. Laurence Pierre
www http://www.inria.fr/recherche/equipes/tick.en.html

Activités

  1. Motivation
  2. Formats intermédiaires
  3. Rapport de DEA PDF
  4. Présentation au workshop SYNCHRON'02 ( slides en anglais )

Présentation - Motivation

top

Présentation

Le stage que j'ai choisi se déroule à l'INRIA de Sophia-Antipolis au sein du projet TICK dirigé par Robert de Simone. L'équipe se focalise sur les activités liées au langage synchrone Esterel. Esterel, Lustre et Signal sont les trois principaux représentants de la classe des langages synchrones, nés du fruit de la recherche de laboratoires français. Esterel est actuellement compilé en systèmes d'équations booléennes, elles mêmes formant une représentation textuelle des schémas de portes logiques des circuits digitaux. Ce niveau de granularité dans la cible de traduction apparait cependant trop fin du point du vue de la conservation de la structure d'automate représentée par un programme Esterel, qui disparait totalement. La problématique consiste donc à proposer une alternative mettant en relation Esterel et le langage de description de matériel, VHDL, de sorte à conserver le haut niveau de structure comportementale tel qu'exprimé en Esterel.

Une des motivations se porte sur un processus de simulation efficace. En effet, la compilation actuelle d'Esterel en équations triées génère beaucoup trop de connexions superflues qui sont un frein à une simulation/exécution efficace en nombre d'instructions. Une autre motivation est de préserver la structuration hiérarchique du programme Esterel d'origine vers le code produit. Actuellement, le compilateur Esterel génère un code dont les instructions sont difficiles à associer à celles du programme Esterel d'origine. De plus, l'exécution au niveau ``équations'' demande d'évaluer toutes les équations à chaque réaction. Le sujet proposé traite donc de la traduction d'un programme Esterel exprimé dans un de ses formats intermédiaires vers une architecture VHDL comportementale. L'utilisation de VHDL comportemental permettra en l'occurence d'exciter uniquement les signaux présents dans la réaction en occultant les réactions à l'absence.

La proposition IEEE P1076.6/D2.01, Draft Standard For VHDL Register Transfer Level Synthesis décrit le sous-ensemble de VHDL accepté par les outils de synthèse actuellement distribués sur le marché tel que DC de Synopsys. Le travail réalisé dans le cadre du stage de DEA permettra d'aboutir à une transformation d'Esterel en VHDL comportant des instructions non-synthétisables. Par la transformation inverse --- quand elle sera possible --- il nous sera donc possible d'utiliser les outils associés à Esterel pour synthétiser des descriptions VHDL dépassant le cadre actuel du VHDL synthétisable.

Planification de l'étude

Détermination d'un format Esterel intermédiaire qui conserve la structure du programme Esterel d'origine

Plusieurs formats intermédiaires Esterel offrent divers avantages. Mais lequel d'entre eux choisir permettant une traduction la plus facile possible en VHDL? Plusieurs critères déterminants entrent en jeu: la conservation de la structure du programme Esterel, une API disponible permettant le parcours de l'arbre syntaxique abstrait, la résolution potentielle des problèmes de duplication nécessaire de code pour désambigüer des comportements, problèmes connus en Esterel sous les noms de schizophrénie et réincarnation. Autant de critères qui rendent le choix difficile entre les formats les plus connus tels que IC/LC, GRC ou encore le format EC développé au sein des laboratoires Synopsys.

J'ai réalisé un document préliminaire qui décrit les constructions de ces langages. Il présente au travers d'un exemple succint la manière dont le programme Esterel est traduit dans ces formats intermédiaires. A fil de l'étude, la sémantique de GRC apparait comme le format le plus proche permettant la transformation d'un programme Esterel en VHDL comportemental. Ce travail est quasiment achevé.
Détermination de la traduction des instructions de ce format en VHDL de sorte à préserver la sémantique d'origine
Cette activité permet de proposer une architecture de transformation de l'arbre syntaxique abstrait de GRC en VHDL. Nous commençons par proposer des équivalences entre les constructions de GRC et celles de VHDL. Il importe donc ici de respecter la sémantique de simulation. Ce travail est actuellement en cours de réalisation.
Proposition d'une maquette
Au terme de cette phase, une maquette sera produite de sorte à présenter une première étape dans le processus de vie du produit permettant d'obtenir à partir d'un programme Esterel structuré une architecture VHDL mettant en oeuvre des combinaisons de comportements. Les différentes architectures logicielles possibles sont actuellement en cours d'étude.

top home contact