Publications

Publications

< retour aux publications

Outils de Génération du Logiciel pour les Systèmes sur Puce Multi-Processeur Hétérogènes

Auteur(s) : A. Chagoya-Garzon, X. Guérin, F. Rousseau

Doc. Source: Journées Nationales du RÉseau Doctoral en Microélectronique (JNRDM’09)

Les applications multimedia imposent des contraintes drastiques entermes de temps de mise sur le marché ("time to market") et de qualitéd'implémentation. L'utilisation de systèmes multi-processeur (MPSoCs)hétérogènes avec des éléments d'E/S spécifiques permettent d'atteindre les objectifs de temps de calcul et de communication, mais programmerefficacement ces architectures est un enjeu majeur.Chaque processeur exécute un ensemble de couches logicielles - destâches applicatives, un système d'exploitation (SE), une bibliothèque decommunication et une couche donnant accès aux ressources matérielles(Hardware Abstraction Layer ou \\emph{HAL}) - dont le développement est l'un des obstacles à la réduction du "time to market". Dans cet article, nous présentons un flot de génération de ces couches logicielles. A partir d'une spécification décrite dans un modèle de haut niveau représentant l'application, la plateforme cible, et l'affectation des tâches de l'application sur les ressources matérielles de la plateforme, nous générons le code C optimisé et multi-tâche pour la plateforme cible.Ce générateur offre la possibilité de choisir parmi plusieurs SE et divers mécanismes de communication. La séparation entre le HAL et les couches logicielles supérieures offre aussi la possibilité de cibler des plateformes différentes. A. L'efficacité de notre approche a été validée à l'aide d'une application de décodage vidéo MJPEG sur une plateforme