logo EDITE Sujets de doctorat

Méthode de conception de systèmes temps réels embarqués multi-cœurs en milieu automobile

Sujet proposé par
Directeur de thèse:
Doctorant: Enagnon Cedric KLIKPO
Unité de recherche UMR 7606 Laboratoire d'informatique de Paris 6

Domaine: Sciences et technologies de l'information et de la communication

Projet

L’électronique tient aujourd’hui une place fondamentale dans un véhicule automobile. Les contraintes économiques et la demande de nouvelles fonctionnalités couteuses en calculs (comme par exemple les systèmes d’aide à la conduite) nécessitent le développement de « systèmes embarqués » spécifiques, regroupant sous ce terme les aspects logiciels permettant à un équipement ou une machine de remplir une fonction donnée.

L’industrie automobile se tourne depuis plusieurs années vers la mise en place d’architectures intégrées, permettant de mutualiser plusieurs fonctions sur un même calculateur. Il est alors extrêmement important d’apporter le niveau de performance requis tout en assurant le respect des contraintes liées à la sûreté de fonctionnement, en adéquation avec la criticité des fonctions hébergées. Le standard AUTOSAR a été mis en place il y a une une dizaine d’années pour faciliter le processus de développement de ces systèmes. Il standardise la description de l’architecture logicielle et facilite la réutilisation des composants applicatifs en les dissociant des couches matérielles. La sûreté de fonctionnement est quant à elle ciblée par la norme ISO 26262 depuis 2011.

Les nouvelles applications embarquées au sein d’un véhicule vont entrainer une multiplication du nombre de calculateurs et un processus de conception plus complexe. De plus, l’émergence des architectures multi-cœurs à des coûts raisonnables permet de disposer d’une puissance qui permet de répondre au besoin de performance, tout en s’affranchissant des limites physiques liées à l’évolution des architectures mono-cœur (augmentation de la fréquence, miniaturisation des transistors). Dans ce contexte, le standard AUTOSAR offre depuis la révision 4.0 la possibilité de développer des applications logicielles sur de telles architectures.

Dans le cadre des travaux réalisés dans la tâche multi-cœur du projet ELA de l’IRT SystemX, nous nous intéressons à ces architectures et à leur impact sur le développement d’une application. Le principal challenge à relever dans ce contexte est d’être capable de migrer les applications spécifiques d’une architecture mono-cœur vers une architecture multi-cœurs en garantissant le maintien des performances et des contraintes liées à la sureté de fonctionnement.

Le but de cette thèse est de proposer une nouvelle méthodologie pour porter sur une architecture multi-cœurs un ensemble d’applications embarquées dans un véhicule automobile. L’ensemble des choix architecturaux et l’impact du parallélisme sur le processus de développement industriel seront évalués avec une métrique appropriée.

Enjeux

Deux questions ouvertes sont au centre de cette thèse :


La première est de choisir et utiliser une modélisation adéquate du comportement des applications ciblées pour avoir une description aussi proche possible de la réalité de leurs communications. Cette représentation devra prendre en compte les flots de contrôle, les types de dépendances et les contraintes temporelles pour avoir une description la plus précise possible du fonctionnement de l’application.


La seconde est comment utiliser cette modélisation pour calculer, en fonction d’une description de l’architecture multi-cœur utilisée, une répartition adéquate de l’application sur les cœurs. Cette allocation devra fixer un ensemble de paramètres locaux aux cœurs (nombre de tâches, périodes, priorités, …) et fixer les processus de communication entre les cœurs de sorte à assurer à la fois l’ensemble des contraintes temporelles et les performances globales du système.

Remarques additionnelles

L’ensemble du travail s’inscrit dans le contexte AUTOSAR et ISO 26262. Les outils développés nécessiteront une modélisation formelle du comportement de systèmes temps-réels. Ils pourront ainsi intégrer des éléments de logique temporelle et temporisée. Les choix pourront être validées à partir de techniques de model-checking quand cela est possible, ou par simulation.