previous up next top index
Précédent : Synthèse de types et systèmes Remonter : Modèle et langage (évolution) Suivant : Intervalles de temps et préemption


Horloges régulières en Signal

  Participants : Irina Smarandache, Paul Le Guernic, Thierry Gautier

Dans le cadre de l'action Cairn, menée en collaboration avec le projet Api, et dont l'objectif est l'utilisation conjointe des langages SIGNAL et ALPHA pour la spécification, la simulation et la réalisation matérielle et logicielle d'une application, nous étudions, sur un plan théorique et pratique, la co-simulation et l'intégration SIGNAL-ALPHA : interfaçage entre structures régulières (ALPHA) et irrégulières (SIGNAL)[15].

En ce qui concerne SIGNAL, il s'agit principalement de définir et de mettre en oeuvre un modèle d'horloges régulières similaire au calcul d'horloges booléennes existant actuellement. On définit ainsi en SIGNAL des transformations affines qui introduisent un nouveau type de contrainte sur les variables du langage et on se propose de spécifier et d'implémenter un calcul complémentaire au système de preuves existant dans le compilateur pour la vérification des nouvelles contraintes obtenues.

Une transformation affine de paramètres entiers positifs tex2html_wrap_inline1256 appliquée à l'horloge tex2html_wrap_inline1258 (associée à la variable x ) induit une horloge tex2html_wrap_inline1262 en insérant (n - 1) instants fictifs entre deux instants successifs de tex2html_wrap_inline1258 , puis en prenant chaque tex2html_wrap_inline1268 instant à partir de l'instant tex2html_wrap_inline1270 . On dira aussi que les horloges tex2html_wrap_inline1262 et tex2html_wrap_inline1258 sont dans la relation affine tex2html_wrap_inline1256 . Les paramètres tex2html_wrap_inline1256 peuvent être tels que tex2html_wrap_inline1270 est un entier arbitraire et n, d sont des entiers strictement positifs. Afin de vérifier des contraintes de synchronisation entre des horloges obtenues par transformations affines, on cherche à déterminer les conditions que les triplets tex2html_wrap_inline1256 \ doivent satisfaire pour que les horloges transformées soient synchronisables.

Dans ce but, un calcul formel a été mis en place dans la sémantique des traces de SIGNAL et les premiers résultats ont fourni une forme canonique pour une transformation affine générale. En effet, pour les horloges tex2html_wrap_inline1286 et tex2html_wrap_inline1288 , obtenues à partir de tex2html_wrap_inline1258 en appliquant respectivement les transformations affines tex2html_wrap_inline1292 et tex2html_wrap_inline1294 , on est en mesure de caractériser l'ensemble des conditions que les triplets tex2html_wrap_inline1292 et tex2html_wrap_inline1294 doivent satisfaire pour que tex2html_wrap_inline1286 et tex2html_wrap_inline1288 soient synchronisables (on dit alors que les relations tex2html_wrap_inline1292 et tex2html_wrap_inline1294 sont équivalentes). Ces résultats sont en cours d'implémentation.

Un certain nombre de propriétés restent à étudier : composabilité de transformations affines, inverse d'une transformation affine, ainsi que des opérations d'intersection et de réunion sur les nouvelles horloges.



previous up next top index Précédent : Synthèse de types et systèmes Suivant : Intervalles de temps et préemption Remonter : Modèle et langage (évolution)