Un tour d ’horizon de l’approche synchrone

20
Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes Un tour d ’horizon de l’approche synchrone Eric RUTTEN

description

Un tour d ’horizon de l’approche synchrone. Eric RUTTEN. Historique et évolution. début 80s : intuition, bases formelles langages et sémantique prototypes début 90s : environnements compilateurs et générateurs vérification et analyse début 00s : améliorations, extensions. Références. - PowerPoint PPT Presentation

Transcript of Un tour d ’horizon de l’approche synchrone

Page 1: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Un tour d ’horizon de l’approche synchrone

Eric RUTTEN

Page 2: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Historique et évolution

• début 80s : intuition, bases formelles– langages et sémantique– prototypes

• début 90s : environnements – compilateurs et générateurs– vérification et analyse

• début 00s : améliorations, extensions

Page 3: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Références

• littérature générale :– revue proceedings of the IEEE, 1991– livre de N. Halbwachs (Kluwer) 1993– article de N. Halbwachs, CAV 1998

• sites web :– www.esterel.org– www.irisa.fr/ep-atr– www-verimag.imag.fr/~synchron

Page 4: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Notions communes

• réaction et temps logique– temps-réel : rythme imposé par l’extérieur– entités : instant, événement, état, action– système de transition étiqueté (automate)

• composition synchrone– produit cartésien des états et étiquettes – plusieurs actions par transition

• outils formels pour analyse, mise en œuvre

Page 5: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Langages

• différents styles, multi-formalisme– de séquencement, impératifs : Esterel

(textuel), SyncCharts, Argos (graphiques)– flot de données, déclaratifs, équationnels

Lustre, Signal (textuel ou graphiques)– mixtes :

• Automates de modes, SignalGTi• Synchronie

Page 6: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Langages : contexte

• langages réactifs non-strictement synchrones

– StateCharts/StateMate– Reactive-C, SugarCubes, sE (O.-O.)

• mixtes asynchrones/synchrone : CRP, Electre

• langages de l’automatique discrète– Grafcet (réseaux de Petri)– IEC 61131, 60848, 61499

Page 7: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Langages : Esterel

• Exemple ABRO : texte et automate

• Esterel studio : graphique

R R

R

A B

B/O A/O

AB/O

loop [

await A||await B

]; emit Oeach R

Page 8: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Langages : Lustre

• textuel ou graphique (bloc-diagrammes)

• fonctionnel

• modèle en automate (circuit séquentiel)

Node ABRO (A,B,R:bool) returns (O: bool);let

O = (A or Ain) and (B or Bin)Ain = false -> pre(Ain) and not (R or O)Bin = false -> pre(Bin) and not (R or O)

tel;

Page 9: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Langages : Signal

• textuel ou graphique (bloc-diagrammes)

• relationnel (contraintes)

• modèle formel :– invariants : hiérarchisation des horloges– dynamique : système de transition implicite

process ABRO (A,B,R:bool; O: bool) (| O = (A or Ain) and (B or Bin) | Ain = (Ain$1 init false) and not (R or O) | Bin = (Bin$1 init false) and not (R or O) |)

Page 10: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Compilation

• d’abord vers un modèle :– automate explicite (OC) ou implicite (DC)– graphe de dépendances (DC+)

• ensuite, éventuellement (sauf si erreur cruel but fair), vers du code : – exécutable (C, Ada, fortran 77, ...)– vérifiable (formats pour model-checkers)– synthétisable (VHDL, …)

Page 11: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Compilation : analyse

• analyse de causalité– absence de cycle combinatoire, p. ex. :

– prise en compte des conditions

• hiérarchisation des conditions/horloges optimisations (code mort, …)

U= if C then V else W V = if C then W else U;

present A then emit B end ||present B then emit A end

Page 12: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Compilation : formats communs

• Étapes intermédiaires de compilation

IC DC

SC OC

impératifs déclaratifs

C, ... C, ...

Outilss/ circuits

Outilss/ graphes

Outilss/ automates

langages

DC+bDC+...

Page 13: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Mises en œuvre

• séquentielles– itératives, événementielles, ...

• distribuées (modularité)

– réplication, simplification, communications– partitionnement en sous-graphes

• matérielles : – FPGA, sémantique électrique »d’Esterel– génération de VHDL

Page 14: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Analyses formelles et vérification comportementale

• liées aux points précédents– compilation/optimisation pour la vérification– vérification pour la compilation/optimisation

• liées au synchrone – directement (technique réalisée et acquise)– indirectement (potentiel, concept clair)

Page 15: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Logique et model-checking

• propriétés : sur les successions d’états, événements ou actions

• modèles : systèmes de transition

– compacité (actions synchrones)– technologie BDD

• méthodologies : observateurs, langages graphiques logiques, réduction selon critère, ...

Page 16: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Synthèse de contrôleur discret

• contraintes sur la dynamique des comportements, à partir de :– automate « instrumenté » par des

événements contrôlables– propriétés à respecter (objectifs)

• calcul automatisé du contrôleur :– agissant sur les contrôlables– tel que les comportements soient corrects

Page 17: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Génération de tests

• complémentaire à la vérification (validation de l’exécutable, valeurs, …)

• utilisation du modèle pour produire des tests avec une bonne couverture

• synthèse de contrôleurs pour produire des jeux de tests menant le programme dans une région d’étude particulière

Page 18: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Extensions possibles et autres approches

• systèmes temporisés : e.g. KRONOS

• systèmes hybrides : e.g. D/DT

• démonstration de théorème : e.g. COQ, SMV, B

• analyse statique : e.g. Polyspace

Page 19: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Existence industrielle

• outils commerciaux et environnements– Esterel Technologies www.esterel.org– SCADE (Verilog/Telelogic) www.telelogic.se– SILDEX (TNI) www.tni.fr

• utilisations et coopérations– Snecma, Aérospatiale, Dassault, Motorola,

Schneider, ...– projets Esprit Syrf, Sacres, Crysis, SafeAir

Page 20: Un tour d ’horizon de l’approche synchrone

Mai 2001 Eric RUTTEN, projet BIP, INRIA Rhône-Alpes

Conclusions

• une communauté de recherche active

• une existence industrielle stable

• des thématiques en extension, en lien avec les domaines connexes

• développements motivés par leur utilité et les coopérations

• Workshop international annuel (WSP)