Conception de SoC à Base d'Horloges Abstraites : Vers l'Exploration d'Architectures en MARTE - TEL - Thèses en ligne
Thèse Année : 2011

Clock Based SoC Design, Towards a Design Space Exploration in MARTE

Conception de SoC à Base d'Horloges Abstraites : Vers l'Exploration d'Architectures en MARTE

Résumé

Modern high-performance embedded applications as found in multimedia, biomedical signal processing or biometric data processing are increasingly complex and resource-demanding. The quest for the ultimate execution performance on single processor chips is unfortunately a deadend. Instead, the promising solution is Multi-Processor System-on-Chip (MPSoC). However, the design of MPSoCs for high-performance embedded applications is a very difficult task due to a number of crucial constraints to meet: functionality correctness, temporal performance, energy efficiency and optimized memory size. Among the necessary ingredients for a successful design, we mention first the need of expressive enough programming models for describing the potential parallelism inherent to target applications. Second, we need ways avoiding tedious explorations of best architecture configurations for system execution (e.g. processors type and frequency, memory footprint), especially for complex data-intensive applications mapped on massively parallel architectures. Third, several abstraction levels must be taken into account to better address design complexity. Considering a single simulation level at which all implementation details are considered yields very accurate results, but is more time consuming and tedious, even sometimes impossible due to system complexity. For this reason, starting the design process at a high abstraction level, where only key information about the system are described makes it easier to take early decisions about the configuration choices at a very low cost. In order to deal with the above challenges concerning the design of high-performance applications on MPSoCs, we propose in this thesis to use the MARTE/UML profile for the modeling of system functionality, execution architectures and allocation of both parts. The MARTE profile is expressive enough to describe high performance applications (e.g. RSM and GCM packages and the CCSL language) and MPSoC architectures (e.g. HRM package). For the verification of the system and the design space exploration, we define an abstraction of the resulting model with abstract clocks, inspired by those of synchronous reactive languages. The traces associated with such clocks capture the behavior of a system by representing the activity of processing units, i.e. processors, when achieving functionality. An analysis technique, also inspired by the synchronous approach, is also defined. It enables to verify functional constraints: data dependencies induced by a MARTE model, activation rate constraints between components. In addition, it allows us to deal with non functional properties: execution time, deadline preservation, energy consumption. These properties are directly related to the number of processors involved in system execution as well as their associated frequency values. From an overall viewpoint, the main contribution of this thesis is the definition an abstract clock-based framework that aims to facilitate MPSoC design space exploration at a high abstraction level. It has been made concrete within an environment, referred to as GASPARD, dedicated to the codesign of high-performance embedded systems. Our solution is validated on a case study consisting of a JPEG encoder, with very promising results.
Les applications modernes embarquées à hautes performances telles que l'on trouve dans les domaines du multimédia, du traitement de signaux biomédicaux et du traitement de données biométriques, sont de plus en plus complexes et exigeantes en termes de ressources. L'augmentation des performances de puces, contenant un seul processeur, n'est plus une solution adoptée. Par conséquent, une solution prometteuse est les systèmes-sur-puce multiprocesseurs (MPSoC). Cependant, la conception de MPSoC dédiés aux traitements d'applications hautes performances est un travail très difficile en raison d'un certain nombre de contraintes à assurer : la correction fonctionnelle, les performances temporelles, l'efficacité énergétique et la taille optimisée de mémoire. Parmi les ingrédients nécessaires pour une construction correcte et optimisée, nous citons premièrement le besoin de modèles de programmation assez expressifs pour décrire le parallélisme potentiel inhérent des applications cibles. Deuxièmement, nous devons trouver des moyens pour éviter des explorations fastidieuses afin de trouver la meilleure configuration d'architecture pour l'exécution d'une application (par exemple le type et la fréquence des processeurs, l'empreinte mémoire), en particulier pour des applications complexes manipulant de grandes quantités de données et exécutées par des architectures massivement parallèles. Troisièmement, plusieurs niveaux d'abstraction doivent être pris en compte afin de mieux traiter la complexité de la conception. En considérant un niveau de simulation unique où tous les détails d'implémentations sont considérés, les résultats obtenus auront une grande précision. Cependant, cette technique de simulation est longue et fastidieuse, voir parfois impossible en raison de la grande complexité de systèmes. Pour cette raison, le commencement du processus de conception, à un haut niveau d'abstraction, où seulement des informations essentielles de systèmes sont décrites, rend plus facile, et à un très faible coût, la prise de décision sur des choix de configuration. Afin de relever les défis mentionnés ci-dessus concernant la conception des applications MPSoC à haute performance, nous proposons dans le cadre de cette thèse, l'utilisation du profil UML/Marte pour la modélisation de fonctionnalité, d'architectures et d'associations des deux dernières. Ce profil est suffisamment expressif pour décrire des applications hautes performances (par exemple les paquetages RSM et GCM et le langage CCSL) et des architectures MPSoC massivement parallèles (par exemple le paquetage HRM). Pour l'analyse et la vérification de systèmes et l'exploration de l'espace de conception, nous définissons une abstraction de modèles obtenue via des horloges abstraites, inspirées de ceux des langages réactifs synchrones. Les traces d'horloges abstraites capturent les comportements de systèmes en représentant l'activité des unités de traitements durant l'exécution de fonctionnalités. Une technique d'analyse, également inspirée de l'approche synchrone, est définie. Cette technique permet de vérifier des contraintes temporelles : dépendances de données induites par un modèle Marte, les taux d'activations entre des composants. En outre, elle permet d'analyser des contraintes non fonctionnelles : estimation de temps d'exécution, le respect des temps d'échéance, estimation de la consommation d'énergie. Ces propriétés sont directement liées au nombre de processeurs impliqués dans l'exécution du système ainsi que la valeur de leurs fréquences associées. D'un point de vue général, la contribution principale de cette thèse est la définition d'un cadre de travail, à base d'horloges abstraites, qui facilite l'exploration de l'espace de conception des MPSoC à un haut niveau d'abstraction. Le travail a été concrétisé dans un environnement, dénommé Gaspard2, dédié à la conception conjointe de systèmes embarqués à hautes performances. Notre solution est validée sur une étude de cas d'un encodeur JPEG, et retournant des résultats prometteurs.
Fichier principal
Vignette du fichier
thesis.pdf (10.08 Mo) Télécharger le fichier
Loading...

Dates et versions

tel-00597031 , version 1 (30-05-2011)

Identifiants

  • HAL Id : tel-00597031 , version 1

Citer

Adolf Samir Abdallah. Conception de SoC à Base d'Horloges Abstraites : Vers l'Exploration d'Architectures en MARTE. Modélisation et simulation. Université des Sciences et Technologie de Lille - Lille I, 2011. Français. ⟨NNT : ⟩. ⟨tel-00597031⟩
436 Consultations
403 Téléchargements

Partager

More