Microsoft PowerPoint - olcsemlastfinal.pptSADANI Tarek
delay(t1) Délai déterministe
Simulation
• Applications
Multimedia synchronization protocols
Real-time distributed systems
Interactive multimedia documents
b P
ba
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
a; delay(2) latency (2) b {3}; P
ba
hide a, b in
a; delay(2) latency (5) b {3}; P
t 3
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
Le graphe de régions
RTL utilise un algorithme réalisant simultanément l’analyse
d’accessibilité et la minimisation du système de transition
[YL93].
Dans le graphe de régions résultant:
Un nœud (ou classe) est défini par un état de contrôle et
une région représentée par un polyèdre convexe de
dimension égale au nombre d’horloge.
Un arc représente soit l’occurrence d’une action RT-LOTOS
soit une progression temporelle. La valeur effective de
cette durée dépend de la configuration de la classe à
l’origine de la transition et par conséquent, ne peut pas
être explicitée globalement au niveau de la transition
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
Les réseaux de Petri temporels / Classes d’états
• RdpT (ou TPNs) obtenus en associant deux dates min et max à
chaque transition.
• Un RdpT est un tuple <P,T,PRE,POST, m0,Is> Is associe un
intervalle temporel à chaque transition.
• Un état d’un réseau temporel est un couple e=(m,I) m est un
marquage et I: t →I+ une fonction qui associe un
intervalle temporel à chaque transition sensibilisée par m. Les
états admettent en général une infinité de successeurs.
• Les classes d’états fournissent des représentations finies
(obtenus par regroupement de certains états).
Tout graphe de classes bissimilaire au graphe des états, préserve
toutes ses propriétés de branchement.
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
L’outil TINA: http://www.laas.fr/tina/
Un éditeur graphique (de réseaux, d’automates)
Des outils de constructions de comportement et d’analyse
structurelle
Composants
• Un composant est un t-uple C = <∑ , Act, Lab, I, F >
où
• ∑ = <P, T, Pre, Post, Mo, IS> est un RdPT.
• Act= Ao ∪∪∪∪ Ah ∪∪∪∪ {exit}. Ao et Ah sont des ensembles finis,
disjoints d’étiquettes de transitions. Ao ∪∪∪∪{exit} représente les
points d’accès du composant.
• Lab: T (Act ∪∪∪∪ Time) est une fonction d’étiquetage qui
étiquette chaque transition de ∑ avec un nom d’action ou une
étiquette “Time“ label définie sur {tv, delay, latency}.
• I est un ensemble de places définissant les interfaces d’entrée
du composant.
• F est le singleton, définissant l’interface de sortie du
composant.
Process C[a]: exit:= Hide b in a; b; exit
endproc
5
>>
H2: RDpT encapsulé 1-borné
H3: Si places « input » marquées alors toutes les autres places non
marquées
H4: Si place « out » marquée alors toutes les autres non
marquées.
Hypothèse d’induction
a{d};P
Process P[a]: exit:= a{2}; exit endproc
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
endproc
Le Disrupt « [> »
Behaviour P[a][> Q[d] where process P[a] :exit := a{2};
exit
endproc process Q[d] :exit := d; stop
endproc
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
Specification Sender2 :exit
(Sender[send_data,end_transfert,receive_ack]
|[end_transfert]|
endproc
endproc
endspec
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
Système de contrôle ferroviaire
• Soit un système simple de contrôle ferroviaire sur lequel un
train effectue des passages répétés. [MAS 99]
La barrière est contrôlée par un « Sensor » : quand le train
atteint « sensor1 » la barrière entame sa descente (down) et elle
est fermée (closed) dans un délai de 8 à 16 secondes.
Quand le train atteint le « sensor2 », la barrière commence sa
montée et elle est ouverte (open) au bout d’un délai de 10 à 20
secondes.
Après que le train ait passé le « sensor1 », il lui faudra entre 15
et 20 secondes pour entrer (enter) dans le passage à niveau et 10 à
15 secondes pour atteindre le « sensor2 ».
Après, le train mettra entre 100 et 150 secondes pour atteindre «
sensor1 » et boucler
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
Train[sensor1,enter,sensor2] |[sensor1,sensor2]|
sensor1; delay(15,20) enter; delay(10,15)sensor2;
delay(100,150)Train[sensor1,enter,sensor2]
endproc process Barrier[sensor1,closed,sensor2,open] : noexit
:=
sensor1; delay(8,16)closed; sensor2; delay(10,20)open;
Barrier[sensor1,closed,sensor2,open]
endproc endspec
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
Scénario multimedia
• Un auteur de scénario multimedia souhaite présenter trois médias
A,B,C de durées respectives [3,6], [3,5] et [3,8] (A doit durer au
moins 3 secondes et au plus 6 secondes).
• Contraintes de synchronisation globales:
B et C doivent commencer simultanémént
le début du scénario est déterminé par le début de A, et sa
terminaison est déterminée par la fin de A et de B, ou par
la fin de C.
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
Scénario multimédia: spécification RT-LOTOS
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
0.000s REACHABILITY ANALYSIS --------- bounded
424 classe(s), 1152 transition(s)
Pas d’équivalence observationnelle
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
Behaviour P[a,b] |[b]| Q[b]
where
endproc
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
Behaviour P[a] Where
endproc
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
• Les “Cyclers” coopèrent en controlant chacun une tache.
• Un Cycler Ci, commence par recevoir un signal gi indiquant qu’il
peut commencer, dés lors il active la tache i via l’action
ai.
• Après il attend la terminaison de cette dernière (action
bi).
• En parallèle Il informe le cycler ci+1 qu’il peut commencer son
exécution via l’action gi+1 et revient à son état initial.
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
gi; latency(10)ai; delay(10,100)( ( bi;
latency(10)gi+1;cycler[gi,ai,bi,gi+1])
[] (gi+1; latency(10)bi;cycler[gi,ai,bi,gi+1])
endproc
Specification SCHEDULER : noexit Behaviour Hide g1…gn,a1..an,b1…bn
in (cycler[g1,a1,b1,g2]
|[g1,g2]| (
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
CPU(s)Classes/ transitions
CPU(s)Classes/ transitions
2363172/343<1357/6879
490153/305<1311/5968
97134/267<1232/4327
18115/229<1219/4146
396/191<1161/3165
<177/153<1127/2324
<158/115<181/1413
<131/57<135/502
RTLRTL2TINA + TINAN
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
Dinner temporisé: Specification RT-LOTOS
CPU(s)
Systèmes de Commandes A340: [BON 02]
• Une fonction maître FR, périodique de période 20ms, exécutée sur
le calculateur CR et qui produit une commande CmdR. FR est
initialement en mode commande jusqu'à sa défaillance ;
• Une fonction secours Fl, périodique de période 20ms, exécutée sur
le calculateur CL et qui en cas de défaillance de Fr, produit la
commande CmdL. Fr est considérée comme défaillante selon FL, si
celle-ci n’a reçu aucune commande CmdR pendant 2 cycles
d’horloges(40ms). Dans ce cas FL passe en mode commande (jusqu'à sa
défaillance) et émet CmdL ;
• Une fonction de second secours FB, périodique de période 20 ms,
exécutée sur le calculateur CB et qui, en cas de défaillance de FR
et de FL, produit la commande CmdB. FR et FL sont considérées comme
défaillantes, selon FB, si celle-ci n’a reçu aucune commande CmdR
ou CmdL pendant 5 cycles d’horloge (100ms). Dans ce cas FB passe en
mode commande et émet Cmdb.
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
430s142/208<1s3208 / 10617L=[0,5]
430s104/152<1s1373 / 4096L=[0,2]
430s100/143<1s346/ 688L=[0,1]
RTLRTL2TINA + TINA
Soit un Système S2 composé de 3 fonctions F1, F2, F3 organisées
selon le principe de redondance précédent, et tel que la latence de
communication entre deux fonctions Fj et Fi j<i est comprise
entre 0 et L cycles.
Séminaire OLC: 0 3/03/2005ENSICA/LAAS-CNRS
Conclusion et travaux futurs
RTL2TINA +TINA vs RTL
• Intégration de RTL2TINA dans Ttool (profil Turtle)
• Nouveaux opérateurs RT- LOTOS (stopwatch TPNs)