Modélisation d'un processeur VLIW en vue de la génération automatique de code de traduction binaire

De Ensiwiki.

Aller à : Navigation, rechercher


Sommaire

  • 1 Modélisation d'un processeur VLIW en vue de la génération de code de traduction binaire dynamique
    • 1.1 Thème général
    • 1.2 Contexte du travail
    • 1.3 Sujet
    • 1.4 Résultats attendus
    • 1.5 Compétences attendues

Modélisation d'un processeur VLIW en vue de la génération de code de traduction binaire dynamique

Labo TIMA
Equipe System Level Synthesis Group
Encadrants Frederic.Petrot@imag.fr,Nicolas.Fournel@imag.fr

Thème général

Ce TER se situe dans le domaine de la simulation rapide des systèmes intégrés multiprocesseur, et vise plus précisément la simulation accélérée des processeurs. Des techniques de traduction dynamique (bien plus efficaces que l'interprétation) ont été mises au point, mais son aussi plus complexes. L'objectif de ce TER est d'étudier comment modéliser un processeur VLIW en vue de la génération de code pour un traducteur binaire dynamique, en l'occurence QEMU.

Contexte du travail

Les techniques de virtualisation se sont beaucoup développées ces dernières années, et visent à exécuter un OS "au dessus" d'un autre OS, et permettent l'exécution "en douceur" d'instructions privilégiées en les substituant à l'exécution par d'autres. Certaines solutions de virtualisation poussent encore plus loin, en permettant l'exécution d'un OS compilé pour une machine cible (par ex. un Mips ou un Arm) différente de la machine hôte (typiquement x86, PowerPc ou Sparc). Pour que l'exécution soit efficace, ces solutions reposent sur des techniques sophistiquées de traduction binaire dynamique, qui à la volée transforment le code cible en code hôte, avec les problèmes que cela peut comporter.

Dans ce TER, nous utiliserons l'approche QEMU[1], qui a fait ses preuves. Attention, il s'agit de la version 0.11.x de QEMU, qui n'est bien évidemment pas celle documentée à l'URL ci-dessus.

Sujet

L'objectif du TER est d'étudier la bonne manière de modéliser un processeur de type VLIW pour permettre d'exécuter efficacement ce type de code avec les techniques de traduction binaire dynamique. Le processeur visé est le TMS320C67x[2] de Texas instrument, représentatif d'architectures complexes (plusieurs bancs de registres à accès simultanés et dissymétriques]. Il n'existe à l'heure actuel aucun processeur de ce genre modélisé en QEMU, ce qui est un manque important pour modéliser des plate-formes intégrés complètes, comme l'OMAP de TI. L'approche reste à définir, et peut soit être "manuelle" s'il s'avère que la complexité de la modélisation de l'architecture est pré-sentie trop importante, soit reposer sur l'exploitation d'un langage de description d'architecture, ce qui généraliserait les résultats.

Résultats attendus

Le TER sera considéré comme un succès si une méthode de traduction générale est définie et qu'un début de mise en œuvre est proposé afin d'en faire une preuve de concept.

Compétences attendues

Architecture, logiciel de base, C, pugnacité, capacité à rentrer dans du code.

Récupérée de « http://ensiwiki.ensimag.fr/index.php/Mod%C3%A9lisation_d%27un_processeur_VLIW_en_vue_de_la_g%C3%A9n%C3%A9ration_automatique_de_code_de_traduction_binaire »
Catégorie : TER
Affichages
  • Page
  • Discussion
  • Voir le texte source
  • Historique
Outils personnels
  •  
  • Connexion
Actualité
  • Soutenances de PFE
  • Projet système
  • Projets spécialité
  • Lexique franco-anglais
  • Stage Unix de rentrée
  • Projet C
  • Plannings des stages
Navigation
Logo Ensimag
  • Accueil
  • FAQ
  • Mode d'emploi
  • Droit d'auteur
  • Modifications récentes
  • Page au hasard
Boîte à outils
  • Pages liées
  • Suivi des pages liées
  • Pages spéciales
  • Version imprimable
  • Lien historique
  • Principaux contributeurs
Powered by MediaWiki
Attribution-Share Alike 3.0 Unported
  • Dernière modification de cette page le 26 octobre 2009 à 13:39.
  • Cette page a été consultée 313 fois.
  • Contenu disponible sous Attribution-Share Alike 3.0 Unported.
  • Politique de confidentialité
  • À propos de Ensiwiki
  • Avertissements