6 research outputs found

    ReSP: A Nonintrusive Transaction-Level Reflective MPSoC Simulation Platform for Design Space Exploration

    Full text link

    Early and Accurate Modeling of Streaming Embedded Applications

    Get PDF
    This thesis presents automatic generation of fast and accurate timed models of streaming embedded applications, before the complete software-hardware platform is available. We focus on streaming applications, because they tend to be the most compute-intensive applications on mobile devices. Therefore, it is critical to optimize the hardware-software platform for streaming applications, as early as possible in the design process. As such, fast, accurate and early models are essential for hardware-software optimization. Our design methodology is as follows. First, a measurement model is generated and executed, on the target processor, to predict the computation delays in an application. Next, the delays are annotated in the application code to generate a host-compiled model of the application. Our experiments show that such models can be generated and simulated at very high speed and accurately predict the computation load offered by the application. Our results with large streaming media applications, such as music and voice codecs, show that the estimation errors are less than 3.3%, while providing very high simulation speed. Therefore, using our models, embedded system designers can perform early optimizations to the system architecture with high confidence

    Contribution au domaine de la conception des Systèmes Embarqués et Pervasifs Faible Consommation

    Get PDF
    La première partie est consacré à l’Estimation de la Consommation des Architectures Logicel. Ce travail est en continuité de mes travaux de thèse et ont démarré avec le projet SPICES piloté par le Dr Eric Senn. Ce projet avait pour but, pour notre partie, de modéliser et d’estimer la consommation des services d’un système d’exploitation à haut niveau. Ces travaux ont fait l’objet de la thèse de Saadia Dhouib (2006-2009) co dirigée par Eric Senn et Jean Philippe Diguet.La seconde aborde le problème du placement des données en mémoire pour les architectures logiciel. L’idée de ces travaux était de permettre un placement optimum des structures de données d’une application dans une hiérarchie mémoire fixée. Ce travail a été le début de la collaboration avec Marc Sevaux et André Rossi sur ces aspects et ont été poursuivis dans la thèse réalisée par Maria Soto (2008-2011).La troisième présente les travaux autour de l’estimation et l’optimisation de la consommation des interconnexions dans les systèmes sur puce (SoC). Dans un système sur puce la consommation d’énergie générée par les interconnexions peut devenir non négligeable ; il devient donc indispensable de pouvoir optimiser cette consommation. Afin de pouvoir juger des optimisations proposées, un modèle d’estimation est nécessaire car le temps de conception et de simulation (au niveau électrique) est prohibitif. Ces travaux ont fait l’objet de la thèse d’Antoine Courtay (2005-2008) co dirigée par Olivier Sentieys et Nathalie Julien.Enfin la dernière aborde mes derniers travaux de recherche sur la conception de systèmes pervasifs pour le domaine maritime. Ces travaux aborde plusieurs sous thèmes comme: -la mesure de la performance pour la course au large ; travaux de thèse de Ronan Douguet (2010-2014)-l’utilisation de la réalité augmentée pour l’aide à la navigation ; travaux de thèse de Jean Christophe Morgère (2011-2015)-l’optimisation temps réel d’énergies renouvelables pour voilier du futur ; travaux de thèse de Mathilde Tréhin (2013- ?)-les algorithmes et plateforme faible consommation pour la conception d’un pilote automatique haute performance pour le nautisme ; travaux de thèse d’Hugo Kerhascoet (2014-2017

    Simulation Native des Systèmes Multiprocesseurs sur Puce à l'aide de la Virtualisation Assistée par le Matériel

    Get PDF
    L'intégration de plusieurs processeurs hétérogènes en un seul système sur puce (SoC) est une tendance claire dans les systèmes embarqués. La conception et la vérification de ces systèmes nécessitent des plateformes rapides de simulation, et faciles à construire. Parmi les approches de simulation de logiciels, la simulation native est un bon candidat grâce à l'exécution native de logiciel embarqué sur la machine hôte, ce qui permet des simulations à haute vitesse, sans nécessiter le développement de simulateurs d'instructions. Toutefois, les techniques de simulation natives existantes exécutent le logiciel de simulation dans l'espace de mémoire partagée entre le matériel modélisé et le système d'exploitation hôte. Il en résulte de nombreux problèmes, par exemple les conflits l'espace d'adressage et les chevauchements de mémoire ainsi que l'utilisation des adresses de la machine hôte plutôt des celles des plates-formes matérielles cibles. Cela rend pratiquement impossible la simulation native du code existant fonctionnant sur la plate-forme cible. Pour surmonter ces problèmes, nous proposons l'ajout d'une couche transparente de traduction de l'espace adressage pour séparer l'espace d'adresse cible de celui du simulateur de hôte. Nous exploitons la technologie de virtualisation assistée par matériel (HAV pour Hardware-Assisted Virtualization) à cet effet. Cette technologie est maintenant disponibles sur plupart de processeurs grande public à usage général. Les expériences montrent que cette solution ne dégrade pas la vitesse de simulation native, tout en gardant la possibilité de réaliser l'évaluation des performances du logiciel simulé. La solution proposée est évolutive et flexible et nous fournit les preuves nécessaires pour appuyer nos revendications avec des solutions de simulation multiprocesseurs et hybrides. Nous abordons également la simulation d'exécutables cross- compilés pour les processeurs VLIW (Very Long Instruction Word) en utilisant une technique de traduction binaire statique (SBT) pour généré le code natif. Ainsi il n'est pas nécessaire de faire de traduction à la volée ou d'interprétation des instructions. Cette approche est intéressante dans les situations où le code source n'est pas disponible ou que la plate-forme cible n'est pas supporté par les compilateurs reciblable, ce qui est généralement le cas pour les processeurs VLIW. Les simulateurs générés s'exécutent au-dessus de notre plate-forme basée sur le HAV et modélisent les processeurs de la série C6x de Texas Instruments (TI). Les résultats de simulation des binaires pour VLIW montrent une accélération de deux ordres de grandeur par rapport aux simulateurs précis au cycle près.Integration of multiple heterogeneous processors into a single System-on-Chip (SoC) is a clear trend in embedded systems. Designing and verifying these systems require high-speed and easy-to-build simulation platforms. Among the software simulation approaches, native simulation is a good candidate since the embedded software is executed natively on the host machine, resulting in high speed simulations and without requiring instruction set simulator development effort. However, existing native simulation techniques execute the simulated software in memory space shared between the modeled hardware and the host operating system. This results in many problems, including address space conflicts and overlaps as well as the use of host machine addresses instead of the target hardware platform ones. This makes it practically impossible to natively simulate legacy code running on the target platform. To overcome these issues, we propose the addition of a transparent address space translation layer to separate the target address space from that of the host simulator. We exploit the Hardware-Assisted Virtualization (HAV) technology for this purpose, which is now readily available on almost all general purpose processors. Experiments show that this solution does not degrade the native simulation speed, while keeping the ability to accomplish software performance evaluation. The proposed solution is scalable as well as flexible and we provide necessary evidence to support our claims with multiprocessor and hybrid simulation solutions. We also address the simulation of cross-compiled Very Long Instruction Word (VLIW) executables, using a Static Binary Translation (SBT) technique to generated native code that does not require run-time translation or interpretation support. This approach is interesting in situations where either the source code is not available or the target platform is not supported by any retargetable compilation framework, which is usually the case for VLIW processors. The generated simulators execute on top of our HAV based platform and model the Texas Instruments (TI) C6x series processors. Simulation results for VLIW binaries show a speed-up of around two orders of magnitude compared to the cycle accurate simulators.SAVOIE-SCD - Bib.électronique (730659901) / SudocGRENOBLE1/INP-Bib.électronique (384210012) / SudocGRENOBLE2/3-Bib.électronique (384219901) / SudocSudocFranceF
    corecore