Architectures du futur

 

 

irisa

Logo LEAT

Xilinx, Inc.

 

MCBD19814_0000[1]

  FOSFOR : Flexible Operating System FOr Reconfigurable platform

BD14710_

Présentation

BD10263_ Accueil

BD10263_ Partenaires

BD10263_ Présentation

BD21302_ Contacts

 

Documentation

BD14980_ Avancement

BD14792_ Accès restreints  

 

BD21295_ Actualités

http://pherma.irccyn.ec-nantes.fr/images/logos/anr.gif

Appel à projet 2007 ANR (ANR-07-AF)

Architectures du futur

Axe principal : Architectures innovantes

Axe secondaire N°1 : Méthodologies de conception des architectures sur puce

Axe secondaire N°2 : Environnements logiciels

Date de démarrage : 1 janvier 2008

Durée : 36 mois

 

Mots clés

RTOS distribué, Reconfiguration dynamique & partielle, Virtualisation OS, Gestion mémoire, Architectures, Système embarqué

 

Pôle de Compétitivité

 

Ce projet est labellisé par le pôle Solutions Communicantes Sécurisées (SCS) de la région Provence-Alpes-Côte d’Azur (PACA).

 

Objectifs

Notre objectif pour ce projet est donc de poser les jalons d’un OS temps réel d’un genre nouveau plus flexible et plus « scalable » assurant une qualité de services vis-à-vis de l’application. En première rupture avec les démarches classiques, cet OS pourra être totalement distribué et paraître homogène du point de vue de l’application sur l’ensemble de la plateforme, que les tâches soient déployées sur des unités de traitement logicielles ou matérielles. Ce qui signifie que les services seront indifféremment accessibles par les tâches (statiques et dynamiques) de l’application, que les services soient implémentés sur des processeurs généraux ou sur des zones reconfigurables.

Ce dernier aspect correspond à ce besoin de flexibilité et de scalabilité pour une meilleure réutilisation et une meilleure durée de vie des plateformes. Et pour cela, l'OS sera déployé sur l’architecture en autant de modules que d’unités d'exécution, chacun intégrant les mécanismes de virtualisation nécessaires pour que les tâches de l’application s'exécutent et communiquent sans connaissance a priori de leur affectation. Plus concrètement, le projet mettra en œuvre les principes énoncés à travers un démonstrateur. Celui-ci montrera la validité du concept à travers trois aspects :

- Premièrement, le démonstrateur devra être capable de s’adapter dynamiquement à la demande d’exécution de tâches temps réel nouvelles par rapport à celles en cours d’exécution. Pour cela, il devra prendre une décision sur l'ordonnançabilité des tâches dynamiques et continuer à fournir l’ensemble des services requis.

- Deuxièmement, le démonstrateur pourra aussi bien traiter des tâches logicielles que matérielles. En ce sens, il mettra en œuvre la reconfiguration dynamique partielle. En d’autres termes, il s’agira de calculer sur chaque module matériel un ordonnancement temporel et spatial afin de replier les différentes fonctionnalités sur les zones reconfigurables, en tenant compte des contraintes applicatives et de celles liées à la reconfiguration partielle.

- Troisièmement, l’OS sera distribué à la fois sur les unités de calcul logicielles et  matérielles. Pour cette troisième démonstration, la scalabilité et la flexibilité de l’OS ne seront pas atteintes sans un effort de virtualisation de la plateforme du point de vue des tâches applicatives, c’est-à-dire par l’ajout de couches d’abstraction et par la définition d’une structure modulaire de l’OS. Ces concepts seront appliqués systématiquement aux services fondamentaux du noyau : ordonnancement, communication et gestion mémoire qui sont les services minima nécessaires au déploiement d'une application sur le démonstrateur.

L’architecture visée pour le démonstrateur sera une plateforme matérielle représentative, à un facteur de scalabilité près, des architectures embarquées à venir : parallèle et hétérogène, constituées de un ou plusieurs processeur(s) généraliste(s), de une ou plusieurs zones reconfigurables partiellement et dynamiquement, d’un ensemble de ressources mémoires et d’une infrastructure de communication au niveau plateforme. Cette architecture sera prototypée sur des technologies existantes, à savoir probablement FPGA mono ou multi-puces pouvant être reconfigurées dynamiquement et partiellement.

 

Retombées scientifiques et techniques

L’objectif principal de ce projet est d’étudier, d’ajouter ou de modifier des services d’un OS pour le rendre plus flexible. La solution envisagée est l’utilisation de la reconfiguration dynamique et partielle rendu possible dans certains circuits. Nous ne sommes qu’aux prémisses de l’utilisation de cette nouvelle technologie due à sa complexité et à son manque de maturité. C’est pourquoi nous nous sommes fixés des objectifs sur trois types de services : l’ordonnancement, les communications et la mémoire. Ces trois services sont essentiels dans un OS. Nous rappelons que, dans ce projet, l’ordonnancement des tâches est hétérogène (matériels et/ou logiciels) ainsi que les communications matérielles/logicielles alors que la mémoire doit supporter les données de communications, la gestion des données internes de l’OS et les flux de reconfiguration du matériel. Ceci est un véritable challenge pour ce projet. Les résultats que nous obtiendrons seront triples :

- Montrer que la reconfiguration dynamique et partielle est une solution à promouvoir au niveau industriel,

- Montrer que certains services que nous avons virtualisés, seront capables de proposer à l’utilisateur une garantie de services pour soulager le concepteur de certaines hypothèses comme le respect de l’exécution d’une tâche en temps réel ou avec une qualité de service donnée.

- Démontrer qu’un OS flexible de nouvelle génération virtualisant la plateforme et les services de l’OS est une solution innovante et intéressante pour un industriel en terme de développement et de garantie de service rendu.

Dans un premier temps, les retombées scientifiques et techniques sont immédiates grâce au démonstrateur réel d’un OS flexible qui implémente une partie de nos études. Nous sommes convaincus que le projet FOSFOR sera une étape importante vers la conception d’OS flexibles.

Dans le futur, ces travaux assureront une base solide pour permettre de franchir une prochaine étape qui serait, par exemple, d’enrichir l’OS de services d’auto-adaptivité. Ce concept pourrait être possible grâces aux recherches amont que nous aurons effectuées dans ce projet sur les services de base d’un OS flexible.

 

Retombées industrielles et économiques escomptées

Le projet FOSFOR va faciliter l’accès des entreprises françaises et a fortiori européennes aux technologies reconfigurables dynamiquement. Les services et l’environnement associé qui seront développés pour virtualiser une architecture distribuée constituée de blocs reconfigurable permettront de développer efficacement les applications temps réel tout en respectant les contraintes d’embarquabilité.  Des algorithmes qui jusqu’à présent ne pouvaient pas être utilisés par les industriels faute d’architecture ayant une densité de performance suffisante pourront être exploités ce qui ouvrira la voie à de nouveau produits et services.

Le marché des capteurs images a continué de croître ces dernières années poussé notamment par les téléphones portables équipés de caméra, et par la surveillance vidéo (marché de la sécurité). FOSFOR est l’opportunité d’intégrer du traitement intelligent au plus prêt du capteur ce qui ouvre de nouveaux marchés dans le domaine des caméras intelligentes. Ce marché représente au moins 50 Millions d’euro/an pour THALES.

Les architectures flexibles vont permettre la conception de systèmes de traitement de l’information très adaptables au contexte pour les petits UAV (Uninhabited Aerial Vehicles) et les véhicules autonomes. Plusieurs champs d’application vont bénéficier de cette avancée technologique : les petit UAV pour la défense, le contrôle aérien du trafic autoroutier, l’inspection de structures civiles, etc.

Le marché automobile est encore un autre domaine d’application très important où les problèmes de flexibilité au contexte de la conduite ou les contraintes d’embarquabilité sont très forts. Typiquement, on retrouve ces contraintes dans la détection d’obstacle ou la dynamicité est très forte et avec un besoin en puissance de calcul très important. Citons également l’assistance au conducteur et la surveillance interne à l’habitacle.  (Somnolence, position du conducteur et des passagers).

© LEAT, Mars 2008