INS - Ingénierie Numérique et Sécurité

Conception de systèmes embarqués utilisant l'arithmétique virgule fixe – DEFIS

Résumé de soumission

De très nombreux systèmes embarqués intègrent des traitements mathématiques. Pour satisfaire les contraintes d’implémentation inhérentes aux systèmes embarqués, l’arithmétique virgule fixe est largement utilisée. Les applications sont conçues et simulées en virgule flottante, mais au final, elles sont implantées au sein d’architectures utilisant l’arithmétique virgule fixe. Le nombre limité de bits pour coder les données nécessite cependant une analyse détaillée de la dynamique des données et de la précision des calculs. Le codage en virgule fixe est une tache fastidieuse, longue et source d’erreurs qui ralentit l’implémentation des applications embarquées. Ainsi, la réduction du temps de mise sur le marché couplée à l’augmentation de la complexité des applications nécessitent des outils de développement de haut niveau permettant d’automatiser la conversion en virgule fixe.

L’objectif principal du projet DEFIS est de proposer de nouvelles approches pour améliorer l’efficacité du processus de conversion en virgule fixe et de fournir un flot de conception complet permettant d’optimiser la spécification virgule fixe d’applications complexes. Les bénéfices obtenus avec ce flot en termes de temps de développement et de qualité de la solution générée seront démontrés à travers un ensemble d’expérimentations. Cette infrastructure permettra de réduire significativement le temps développement en automatisant la conversion en virgule fixe et de maitriser le compromis entre les performances (qualité) de l’application et le coût de l’implémentation. De plus, ce flot garantira et validera le comportement numérique de l’application.

Dans le flot DEFIS, l’application est décrite au niveau système à travers un ensemble de blocs pouvant être spécifiés à l’aide d’un code C utilisant des types en virgule flottante ou issus de blocs paramétrables. Afin de traiter une application complète, cette infrastructure composée de quatre modules suit une approche hiérarchique. Le premier module définit pour chaque bloc la contrainte de précision des calculs en fonction des performances globales (qualité) de l’application. Le second module correspond aux transformations au niveau algorithmique dont l’objectif est de trouver la meilleure structure de calcul. Le troisième module évalue la dynamique des données pour déterminer le nombre de bits nécessaire pour coder la partie entière. Deux types de méthode seront utilisés afin de garantir l’absence de débordements ou de limiter leur probabilité d’apparition. Finalement, le quatrième module détermine le nombre de bits pour la partie fractionnaire. L’objectif est d’optimiser la spécification virgule fixe pour minimiser le cout de l’implémentation pour une contrainte de précision donnée. Ce processus d’optimisation nécessite d’évaluer de nombreuses fois la précision des calculs. Les approches existantes proposées par les partenaires du projet vont être étendues et combinées pour obtenir une approche efficace, précise, et supportant une large gamme d’applications.

Après la détermination et l’optimisation de la spécification virgule fixe, l’infrastructure génère un nouveau code C intégrant des types virgule fixe. Ce code C est implanté dans les architectures ciblées à l’aide d’outils classiques. Trois plateformes sont considérées : un accélérateur SIMD conçu par Thalès et son outil de parallélisation associé, un FPGA associé à un outil de synthèse de haut niveau et un processeur (ARM) avec son compilateur C. L’infrastructure proposée sera validée sur deux applications fournies par les partenaires industriels. Les résultats, obtenus à l’aide de l’infrastructure développée dans ce projet, seront comparés avec une implémentation de référence fournie par les partenaires industriels. Cette référence a été optimisée manuellement. Pour analyser la qualité de notre approche, le gain en termes de temps de développement sera mesuré et le coût d’implémentation sera comparé à celui de la référence.

Coordination du projet

Olivier SENTIEYS (UNIVERSITE DE RENNES I) – sentieys@irisa.fr

L'auteur de ce résumé est le coordinateur du projet, qui est responsable du contenu de ce résumé. L'ANR décline par conséquent toute responsabilité quant à son contenu.

Partenaire

CEA COMMISSARIAT A L'ENERGIE ATOMIQUE ET AUX ENERGIES ALTERNATIVES - CENTRE D'ETUDES NUCLEAIRES SACLAY
INPIXAL INPIXAL
Thales THALES RESEARCH & TECHNOLOGY
LIP6 UNIVERSITE PARIS VI [PIERRE ET MARIE CURIE]
DALI-LIRMM UNIVERSITE DE PERPIGNAN
IRISA/Université de Rennes 1 UNIVERSITE DE RENNES I

Aide de l'ANR 966 214 euros
Début et durée du projet scientifique : octobre 2011 - 40 Mois

Liens utiles

Explorez notre base de projets financés

 

 

L’ANR met à disposition ses jeux de données sur les projets, cliquez ici pour en savoir plus.

Inscrivez-vous à notre newsletter
pour recevoir nos actualités
S'inscrire à notre newsletter