Design and Analysis for Multi-Clock and Data-Intensive Applications on Multiprocessor Systems-on-Chip - TEL - Thèses en ligne Access content directly
Habilitation À Diriger Des Recherches Year : 2012

Design and Analysis for Multi-Clock and Data-Intensive Applications on Multiprocessor Systems-on-Chip

Abstract

With the increase in the integration of functions, modern embedded systems have become very smart and sophisticated. The typical examples of this tendency are last generation mobile phones, which provide users with a large panel of facilities for communication, music, video display, built-in camera, Internet access, etc. These facilities are achieved by applications processing huge amounts of information, referred to as data-intensive applications. Such applications are also characterized by multi-clock behaviors since they often include components operating at different activation rates during execution. Embedded systems often have real-time constraints. For instance, in a video processing application, there are usually rate or deadline constraints imposed to image display. For this purpose, execution platforms must provide the required computational power. Parallelism plays a central role in the answer to this expectation. The integration of multiple cores or processors on a single chip, referred to as multiprocessor systems-on-chip (MPSoCs) is a key solution to provide applications with sufficient performance at lower energy costs for execution. In order to find a good compromise between performance and energy consumption, resource heterogeneity is exploited in MPSoCs by including processing elements with different characteristics. For example, core processing units are combined with accelerators such as graphic processing units or field-programmable gate arrays. Besides heterogeneity, adaptivity is another important feature of modern embedded systems. It enables to manage in a flexible manner the performance parameters w.r.t. variations of system environment and execution platform. In such a context, the development of modern embedded systems has become very complex. It raises a number of challenges considered in our contributions, as follows: 1) First, since MPSoCs are distributed systems, how can one successfully address their design correctness, such that the functional properties of deployed multi-clock applications can be guaranteed? This is studied by considering a correct-by-construction design methodology for these applications on multiprocessor platforms. 2) Second, for data-intensive applications to be executed on such platforms, the next question is how can one adequately deal with their design and analysis, while fully taking into account their reactive nature and their potential parallelism? 3) Third, when considering the execution of these applications on MPSoCs, the final question is how can one analyze their non functional properties (for instance, execution time or energy) in order to predict their execution performances? The answer to this question is expected to serve for the exploration of complex design spaces. Our studies aim to answer the above three challenges in a pragmatic way, by adopting a model-based vision. For this purpose, they consider two complementary dataflow modeling paradigms: the polychronous modeling related to the synchronous reactive approach, and the repetitive structure modeling related to array-oriented data parallel programming. The former paradigm enables to reason on multi-clock systems in which components interact without assuming the existence of a global or reference clock. The latter paradigm offers a powerful specification of the massive parallelism in a system as factorized repetitive dependency relations over multidimensional structures.
Avec l'intégration croissante des fonctions, les systèmes embarqués modernes deviennent très intelligents et sophistiqués. Les exemples les plus emblématiques de cette tendance sont les téléphones portables de dernière génération, qui offrent à leurs utilisateurs un large panel de services pour la communication, la musique, la vidéo, la photographie, l'accès à Internet, etc. Ces services sont réalisés au travers d'un certain nombre d'applications traitant d'énormes quantités d'informations, qualifiées d'applications de traitements intensifs de données. Ces applications sont également caractérisées par des comportements multi-horloges car elles comportent souvent des composants fonctionnant à des rythmes différents d'activations lors de l'exécution. Les systèmes embarqués ont souvent des contraintes temps réel. Par exemple, une application de traitement vidéo se voit généralement imposer des contraintes de taux ou de délai d'affichage d'images. Pour cette raison, les plates-formes d'exécution doivent souvent fournir la puissance de calcul requise. Le parallélisme joue un rôle central dans la réponse à cette attente. L'intégration de plusieurs cœurs ou processeurs sur une seule puce, menant aux systèmes multiprocesseurs sur puce (en anglais, "multiprocessor systems-on-chip - MPSoCs") est une solution-clé pour fournir aux applications des performances suffisantes, à un coût réduit en termes d'énergie pour l'exécution. Afin de trouver un bon compromis entre performance et consommation d'énergie, l'hétérogénéité des ressources est exploitée dans les MPSoC en incluant des unités de traitements aux caractéristiques variées. Typiquement, des processeurs classiques sont combinés avec des accélérateurs (unités de traitements graphiques ou accélérateurs matériels). Outre l'hétérogénéité, l'adaptativité est une autre caractéristique importante des systèmes embarqués modernes. Elle permet de gérer de manière souple les paramètres de performances en fonction des variations de l'environnement et d'une plate-forme d'exécution d'un système. Dans un tel contexte, la complexité du développement des systèmes embarqués modernes paraît évidente. Elle soulève un certain nombre de défis traités dans nos contributions, comme suit : 1) tout d'abord, puisque les MPSoC sont des systèmes distribués, comment peut-on aborder avec succès la correction de leur conception, de telle sorte que les propriétés fonctionnelles des applications multi-horloges déployées puissent être garanties ? Cela est étudié en considérant une méthodologie de distribution "correcte-par-construction" pour ces applications sur plates-formes multiprocesseurs. 2) Ensuite, pour les applications de traitement intensif de données à exécuter sur de telles plates-formes, comment peut-on aborder leur conception et leur analyse de manière adéquate, tout en tenant pleinement compte de leur caractère réactif et de leur parallélisme potentiel ? 3) Enfin, en considérant l'exécution de ces applications sur des MPSoC, comment peut-on analyser leurs propriétés non fonctionnelles (par exemple, temps d'exécution ou énergie), afin de pouvoir prédire leurs performances ? La réponse à cette question devrait alors servir à l'exploration d'espaces complexes de conception. Nos travaux visent à répondre aux trois défis ci-dessus de manière pragmatique, en adoptant une vision basée sur des modèles. Pour cela, ils considèrent deux paradigmes complémentaires de modélisation flot de données : la "modélisation polychrone" liée à l'approche synchrone réactive, et la "modélisation de structures répétitives" liée à la programmation orientée tableaux pour le parallélisme de données. Le premier paradigme permet de raisonner sur des systèmes multi-horloges dans lesquels les composants interagissent, sans supposer l'existence d'une horloge de référence. Le second paradigme est quant à lui suffisamment expressif pour permettre la spécification du parallélisme massif d'un système.
Fichier principal
Vignette du fichier
Gamatie-HDR.pdf (2.09 Mo) Télécharger le fichier
Loading...

Dates and versions

tel-00756967 , version 1 (24-11-2012)
tel-00756967 , version 2 (09-09-2013)

Identifiers

  • HAL Id : tel-00756967 , version 2

Cite

Abdoulaye Gamatié. Design and Analysis for Multi-Clock and Data-Intensive Applications on Multiprocessor Systems-on-Chip. Embedded Systems. Université des Sciences et Technologie de Lille - Lille I, 2012. ⟨tel-00756967v2⟩
335 View
1877 Download

Share

Gmail Facebook X LinkedIn More