Participants : Christophe Wolinski, Apostolos Kountouris, Gábor Paller, Paul Le Guernic
La conception d'architectures en utilisant SIGNAL et VHDL et d'une manière générale, la conception conjointe de systèmes matériel--logiciel deviennent un thème majeur du projet.
Les axes suivants ont été étudiés :
Dans le cadre du premier thème nous avons travaillé sur un aspect de répartition automatique du code dans un système hétérogène. Nous avons ainsi développé un nouvel algorithme permettant de réaliser le placement et l'ordonnancement statique des processus dans un tel système hétérogène [16]. Cet algorithme est utilisable pour des applications modélisables par SDF (``static data flow'') où le nombre de jetons produits et consommés par chaque opérateur est fixe et réduit à un. Le système matériel visé est un système composé de différents types de processeurs ou de circuits spécialisés connectés au moyen d'un réseau de communication caractérisé par une émission non bloquante et une réception bloquante. Le temps de communication dans ce système peut être différent selon la direction de transmission mais il reste fixe et connu à l'avance. Cet algorithme modélise les processeurs (nombre de processeurs : N) par des points fixes dans l'espace N-1 où les distances entre les points sont égales. Les opérateurs sont modélisés par des points mobiles dans l'espace N-1. Les mouvements de ces points sont assurés grâce à des forces qui représentent :
Dans le deuxième thème, nous avons commencé à travailler sur un système global destiné à la génération automatique de code et la génération automatique de circuits synchrones à partir de spécifications faites en SIGNAL . Les premiers résultats concernent la génération automatique du code, la génération de processeurs spécialisés en VHDL et la génération d'interface regroupant tous les composants du système hétérogène. Ces études s'inscrivent en particulier dans le cadre du projet Cairn.
Dans le troisième thème, nous avons étudié la possibilité de
créer un outil pour l'évaluation de différentes architectures
cibles. L'idée principale de cet outil est le ``profiling'' de
programmes SIGNAL et leur paramétrisation pour tenir compte de
l'architecture cible. Le ``profiling'' est un homomorphisme
dépendant de l'architecture cible qui à un programme SIGNAL
quelconque associe un autre programme SIGNAL qui contient les
équations donnant les dates de disponibilité des signaux du
premier . Une première
mise en oeuvre est en voie d'intégration dans l'environnement
SIGNAL .