La complexité croissante des systèmes cyber-physiques (CPS) modernes nécessite l'utilisation de systèmes informatiques embarqués très performants pour satisfaire leurs contraintes temporelles. En règle générale, le système surveille un environnement physique à l'aide de capteurs, traite et réagit à l'état de l'environnement. Ce schéma acquisition-calcul-réaction doit être réalisé dans une fenêtre temporelle prédéfinie imposée par la vitesse d'évolution de l'environnement. De telles contraintes sont appelées contraintes en temps réel. La justesse de la conception du système repose sur sa capacité à fournir des garanties sur les contraintes temporelles. Une violation des contraintes de temps peut être une source sérieuse de ses dommages. La conception classique des plates-formes multicoeurs a des paramètres limités en termes de nombre de ressources informatiques, ce qui les rend obsolètes pour les applications CPS actuelles et futures. Cette limitation est simple pour les architectures d'interconnexion basés sur un seul bus partagé, à accès exclusif. Les réseaux sur puce NoC (Network-on-Chip en anglais) ont été proposés pour résoudre le problème des goulots d'étranglement du bus et pour fournir une architecture plus évolutive. Les NoC peuvent héberger des centaines de coeurs sur une seule puce connectée via un réseau. Les données sont déplacées d'un coeur à un autre, ou vers la mémoire principale, au moyen d'interfaces réseau représentées en grande partie par de simples routeurs. Cependant, ces fonctionnalités améliorées augmentent la complexité, car nous devons faire face au routage, aux protocoles de commutation, à la gestion de la congestion et au problème de réseau classique même lors de l'accès aux données dans la mémoire principale. La prise en charge des contraintes temps réel sur les architectures basées sur NoC nécessite une attention particulière. Le système doit être prévisible, c'est-à-dire qu'il doit être capable d'estimer des limites strictes et sûres pour les communications inter-tâches ainsi que de calculer le temps de réponse des tâches. L'objectif de la thèse est de fournir un support pour les applications temps réel dur sur les réseaux sur puce. Nous considérons les contraintes en temps réel et définissons les paramètres et configurations NoC. Nous avons proposé un placement des tâches et des communications afin que tous les délais soient respectés. Dans cette thèse, nous traitons des systèmes temps réel dur : les dépassements de délais ne sont pas tolérables, et les résultats produits après les délais ne sont plus utiles. Nous proposons de nouvelles techniques et une analyse d'ordonnancement pour un ensemble de tâches temps réel représentées par DAG (graphe acyclique dirigé) sur des ressources NoC. De plus, nous abordons les transferts mémoire-à-puce en étendant le modèle DAG au modèle de tâche AER (Acquisition, Execution, Restitution).
M. Giuseppe LIPARI Université de Lille Directeur de Thèse Mme Audrey QUEUDET Université de Nantes Rapporteure M. Mohammed BENMOHAMMED Université de Constantine 2 Rapporteur M. Mohammed Kamel BENHAOUA Université de Mascara Directeur de Thèse M. Abdoulaye GAMATIé Université de Montpellier Examinateur Mme Samia BOUCHERKHA Université de Constantine 2 Examinatrice M. Sidi Mohammed BENSLIMANE Ecole Supérieure en Informatique, Sidi Bel-Abbes Examinateur M. Houssam Eddine ZAHAF Université de Nantes Examinateur
Thèse de l'équipe SyCoMoRES soutenue le 09/11/2021