Contributions to the safe design of safe embedded systems
Contributions à la conception sûre des systèmes embarqués sûrs
Abstract
In this document, I present my research results on the safe design of safe embedded systems. The first part concerns the automatic distribution of synchronous programs. The automatic aspect provides an essential safety level in the design of distributed systems because it is the most delicate part of the specification that is being automated. Thanks to it, the absence of deadlock and the functional equivalence between the centralized source program and the distributed final program can be formally proved. The second part deals with the scheduling and the distribution of dataflow task graphs onto distributed memory architectures, with fault-tolerance and reliability constrains. I mainly present multiprocessor static scheduling heuristics with fault-tolerance and reliability goals, but also the use of formal methods such as discrete controller synthesis and automatic program transformations. Finally, the third part concerns automated highways, with two aspects : the longitudinal control of autonomous vehicles, and the insertion protocols in automated highways.
Je présente dans ce document mes résultats de recherche sur la conception sûre de systèmes embarqués sûrs. La première partie concerne la répartition automatique de programmes synchrones. Le caractère automatique de la répartition apporte un réel degré de sûreté dans la conception de systèmes répartis car c'est la partie la plus délicate de la spécification qui est automatisée. Grâce à cela, l'absence d'inter-blocage et l'équivalence fonctionnelle entre le programme source centralisé et le programme final réparti peuvent être formellement démontrées. La deuxième partie traite le sujet de l'ordonnancement et de la répartition de graphes de tâches flots-de-données sur des architectures à mémoire répartie, avec contraintes de tolérance aux fautes et de fiabilité. Je présente principalement des heuristiques d'ordonnancement statique multiprocesseur avec pour but la tolérance aux fautes et la fiabilité des systèmes, mais également l'utilisation de méthodes formelles telles que la synthèse de contrôleurs discrets ou les transformations automatiques de programmes. Enfin, la troisième partie concerne les autoroutes automatisées, avec deux volets : la commande longitudinale de véhicules autonomes et les stratégies d'insertion dans les autoroutes automatisées.
Keywords
embedded systems
formal methods
synchronous programming
automatic distribution of programs
dependability
fault-tolerance
reliability
static multi-processor scheduling
discrete controller synthesis
automatic program transformations
automated highways
autonomous vehicles
longitudinal control law
systèmes embarqués
méthodes formelles
programmation synchrone
répartition automatique de programmes
sûreté de fonctionnement
tolérance aux fautes
fiabilité
ordonnancement statique multi-processeurs
synthèse de contrôleurs discrets
transformations automatiques de programmes
autoroutes automatisées
véhicules autonomes
loi de commande longitudinale
Loading...