Modélisation d'un processeur à exécution simultanée de flots pour le temps réel strict - Université Toulouse III - Paul Sabatier - Toulouse INP Accéder directement au contenu
Thèse Année : 2009

Modeling a Simultaneous multithreadeing processor for hard real time systems

Modélisation d'un processeur à exécution simultanée de flots pour le temps réel strict

Résumé

In a real-time system, tasks must be completed before a deadline date. For the schedule, it is necessary to know their worst case execution time. These systems become more complex, they require an increasing power. To meet this demand, we can use processors that operate in addition to instruction-level parallelism, task-level parallelism. Thus, they are capable of performing several tasks in parallel. But the complexity of these processors impact the tightness of the worst case execution time. CarCore is a processor designed by the team of Professor Ungerer, University of Augsburg (Germany). It allows the simultaneous execution of multiple tasks within a single core. It was designed to temporally isolate a task of the influence of other tasks it performs. We propose a model of this processor that allows the evaluation of worst case execution time of real-time tasks with static methods. We highlight the two sources of overstatement related to our model which can occasionally cause overestimation of respectively one and three cycles. In analyzing these sources of overestimation, we show that static analysis methods do not seem to be sufficient to remove them. We also offer an analysis of the impact of some modifications of the processor core on the estimated worst case execution time. These parameters are, in particular, the size of the instructions window and the length of the pipeline. For the latter, we are considering the addition of stages in 4 significant areas of the pipeline. Our work opens perspectives such as amendment of the pipeline that will allow the execution of several real-time tasks or increasing processor performance without decreasing the precision of the evaluation of worst case execution time.
Dans un système temps réel, les tâches doivent se terminer avant une date échéance. Pour les ordonnancer, il est nécessaire de connaître leur pire temps d'exécution. Ces systèmes gagnant en complexité, ils demandent une puissance de calcul de plus en plus grande. Pour faire face à cette demande, on peut utiliser des processeurs qui exploitent, en plus du parallélisme d'instructions, le parallélisme de tâches. C'est-à-dire qu'ils sont capables d'exécuter plusieurs tâches en parallèle. Mais la complexité de ces processeurs nuit à la prévisibilité du pire temps d'exécution des tâches. CarCore est un processeur conçu par l'équipe du professeur Ungerer de l'Université d'Augsbourg (Allemagne). Il permet l'exécution simultanée de plusieurs tâches au sein d'un même coeur. Il a été conçu pour isoler temporellement une tâche de l'influence des autres tâches qu'il exécute. Nous proposons une modélisation de ce processeur qui permet l'évaluation du pire temps d'exécution de la tâche temps réel avec des méthodes statiques. Nous mettons en évidence les deux sources de surestimation liées à notre modèle qui peuvent entraîner ponctuellement des surestimations de respectivement 1 et 3 cycles. En analysant ces sources de surestimation, nous montrons que des méthodes d'analyse statique ne semblent pas être suffisantes pour les supprimer. Nous proposons aussi une analyse de l'impact de quelques modifications du processeur sur le pire temps d'exécution estimé. Ces paramètres sont en particulier la taille de la fenêtre d'instructions et la longueur du pipeline. Pour cette dernière, nous envisageons l'ajout d'étages en 4 endroits significatifs du pipeline. Notre travail ouvre sur des perspectives comme des propositions de modification du pipeline qui permettront l'exécution de plusieurs tâches temps réel ou encore l'augmentation des performances du processeur sans que la précision de l'évaluation du pire temps d'exécution n'en souffre.
Fichier principal
Vignette du fichier
main.pdf (1.48 Mo) Télécharger le fichier
Loading...

Dates et versions

tel-00453319 , version 1 (04-02-2010)

Identifiants

  • HAL Id : tel-00453319 , version 1

Citer

Cédric Landet. Modélisation d'un processeur à exécution simultanée de flots pour le temps réel strict. Réseaux et télécommunications [cs.NI]. Université Paul Sabatier - Toulouse III, 2009. Français. ⟨NNT : ⟩. ⟨tel-00453319⟩
186 Consultations
2336 Téléchargements

Partager

Gmail Facebook X LinkedIn More