Modeling and scheduling embedded real-time systems using Synchronous Data Flow Graphs - TEL - Thèses en ligne Accéder directement au contenu
Thèse Année : 2018

Modeling and scheduling embedded real-time systems using Synchronous Data Flow Graphs

Modélisation et ordonnancement des systèmes temps réel embarqués utilisant des graphes de flots de données synchrones

Résumé

Real-time embedded systems change our lives on a daily basis. Their complexity is increasing with the diversity of their applications and the improvements in processor architectures. These systems are usually multi-periodic, since their components communicate with each other at different rates. Real-time systems are often critical to human lives, their malfunctioning could lead to catastrophic consequences. Therefore, one of the major challenges faced by academic and industrial communities is the efficient use of powerful and complex platforms, to provide optimal performance and meet the time constraints. Real-time system can be found in autonomous systems, such as air-planes, self-driving cars and drones. In this context, our study focuses on modeling and scheduling critical real-time systems using data flow formalisms. The contributions of this thesis are threefold: First, we define a general and intuitive communication model within multi-periodic systems. We demonstrate that the communications between multi-periodic tasks can be directly expressed as a particular class of “Synchronous Data Flow Graph” (SDFG). The size of this latter is equal to the communication graph size. Moreover, the SDFG model has strong mathematical background and software analysis tools which provide a compromise between the application expressiveness and analyses. Then, the SDFG model allows precise definition of the latency. Accordingly, we express the latency between two communicating tasks using a closed formula. In the general case, we develop an exact evaluation method to calculate the worst case system latency from a given input to a connected outcome. Then, we frame this value using two algorithms that compute its upper and lower bounds. Finally, we show that these bounds can be computed using a polynomial amount of computation time, while the time required to compute the exact value increases linearly according to the average repetition factor. Finally, we address the mono-processor scheduling problem of non-preemtive strictly periodic systems subject to communication constraints. Based on the SDFG theoretical results, we propose an optimal algorithm using MILP formulations. The scheduling problem is known to be NP-complete in the strong sense. In order to solve this issue, we proposed three heuristics: linear programming relaxation, simple and ACAP heuristics. For the second and the third heuristic if no feasible solution is found, a partial solution is computed.
Les systèmes embarqués temps réel impactent nos vies au quotidien. Leur complexité s’intensifie avec la diversité des applications et l’évolution des architectures des plates-formes de calcul. En effet, les systèmes temps réel peuvent se retrouver dans des systèmes autonomes, comme dans les métros, avions et voitures autonomes. Ils sont donc souvent d’une importance décisive pour la vie humaine, et leur dysfonctionnement peut avoir des conséquences catastrophiques. Ces systèmes sont généralement multi-périodiques car leurs composants interagissent entre eux à des rythmes différents, ce qui rajoute de la complexité. Par conséquent, l’un des principaux défis auxquels sont confrontés les chercheurs et industriels est l’utilisation de matériel de plus en plus complexe, dans le but d’exécuter des applications temps réel avec une performance optimale et en satisfaisant les contraintes temporelles. Dans ce contexte, notre étude se focalise sur la modélisation et l’ordonnancement des systèmes temps réel en utilisant un formalisme de flot de données. Notre contribution a porté sur trois axes: Premièrement, nous définissons un mode de communication général et intuitif au sein de systèmes multi-périodiques. Nous montrons que les communications entre les tâches multi-périodiques peuvent s’exprimer directement sous la forme d’une classe spécifique du “Synchronous Data Flow Graph” (SDFG). La taille de ce graphe est égale à la taille du graphe de communication. De plus, le modèle SDFG est un outil d’analyse qui repose sur de solides bases mathématiques, fournissant ainsi un bon compromis entre l’expressivité et l’analyse des applications. Deuxièmement, le modèle SDFG nous a permis d’obtenir une définition précise de la latence. Par conséquent, nous exprimons la latence entre deux tâches communicantes à l’aide d’une formule close. Dans le cas général, nous développons une méthode d’évaluation exacte qui permet de calculer la latence du système dans le pire des cas. Ensuite, nous bornons la valeur de la latence en utilisant deux algorithmes pour calculer les bornes inférieure et supérieure. Enfin, nous démontrons que les bornes de la latence peuvent être calculées en temps polynomial, alors que le temps nécessaire pour évaluer sa valeur exacte augmente linéairement en fonction du facteur de répétition moyen. Finalement, nous abordons le problème d’ordonnancement mono-processeur des systèmes strictement périodiques non-préemptifs, soumis à des contraintes de communication. En se basant sur les résultats théoriques du SDFG, nous proposons un algorithme optimal en utilisant un programme linéaire en nombre entier (PLNE). Le problème d’ordonnancement est connu pour être NP-complet au sens fort. Afin de résoudre ce problème, nous proposons trois heuristiques: relaxation linéaire, simple et ACAP. Pour les deux dernières heuristiques, et dans le cas où aucune solution faisable n’est trouvée, une solution partielle est calculée.
Fichier principal
Vignette du fichier
KHATIB_Jad_2018.pdf (2.57 Mo) Télécharger le fichier
Origine : Version validée par le jury (STAR)
Loading...

Dates et versions

tel-02890430 , version 1 (06-07-2020)

Identifiants

  • HAL Id : tel-02890430 , version 1

Citer

Jad Khatib. Modeling and scheduling embedded real-time systems using Synchronous Data Flow Graphs. Embedded Systems. Sorbonne Université, 2018. English. ⟨NNT : 2018SORUS425⟩. ⟨tel-02890430⟩
177 Consultations
537 Téléchargements

Partager

Gmail Facebook X LinkedIn More