ALIDECS

Langages et Atelier Intégré pour le Développement
de Composants Embarqués Sûrs


Ce projet est une ACI "Sécurité & Informatique"

 









 

Comparaison avec Fractal

Comparaison avec Fractal

Dans le cadre des travaux de Verimag sur un modèle de composants pour l'embarqué (voir paragraphe 4.2 ci-dessous), nous avons fait une expérience de codage dans le modèle Fractal. L'idée est de se plier aux contraintes d'un modèle à composants qui a fait ses preuves, pour valider notre notion de composant.

Fractal n'étant pas prévu pour la description de comportements parallèles, cet aspect doit être codé. Pour coder les différents modes de comportement parallèle des composants, nous adoptons le principe de Ptolemy : un ensemble de composants qui doivent fonctionner en parallèle sont rassemblés dans un super-composant en compagnie d'un composant particulier qui correspond au ``directeur'' de Ptolemy et exprime la sémantique du parallélisme à cet endroit-là.

Contrairement à Ptolemy, toutefois, nous ne donnons pas un catalogue de directeurs non liés les uns aux autres. Nous préférons exprimer plusieurs directeurs (synchrone, asynchrone, GALS, etc.) en termes d'opérations de base plus fines. Un composant élémentaire a des entrées et des sorties de données, et des entrées et des sorties de contrôle. Les composants sont liés par des ``fils'' qui n'expriment a priori ni synchronisation, ni mémorisation. C'est le composant directeur qui décide ce qui se passe sur les fils, et comment les différents composants sont sollicités lors d'une exécution parallèle. Les composants ont toujours la même forme, quel que soit le directeur à appliquer, et les directeurs s'expriment sous forme de petits programmes dont les opérations de base sont : activation des différents composants par leurs entrées de contrôle, gestion de la mémoire éventuellement correspondant aux fils, etc.

Les modèles Fractal pour le synchrone (sémantique de Lustre ou des circuits synchrones), l'asynchrone (processus multiples sur mono-processeur avec mémoire partagée) et les GALS ont été développés.

Les détails peuvent être trouvés dans [4].

Pascal Raymond 2006-11-16